メインコンテンツまでスキップ

upload_file_to_volume()

この操作は、指定されたソースパスにあるローカルファイルを、指定されたマネージドボリューム内のターゲットファイルパスにアップロードします。

📘Notes

この操作はマネージドボリュームにのみ適用されます。外部ボリュームは読み取り専用です。

リクエスト構文

python
upload_file_to_volume(
source_file_path: str,
target_volume_path: str,
upload_concurrency: int = 5,
max_retries: int = 5,
retry_interval: float = 5.0,
progress_callback: Callable[[UploadProgress], None] | None = None,
part_size: int = 0,
) -> dict

パラメーター:

  • source_file_path (str) -
    [必須]
    アップロードするローカルファイルまたはディレクトリのパス。

  • target_volume_path (str) -
    [必須]
    Zilliz Cloudボリューム内の宛先パス。

  • upload_concurrency (int) -
    デフォルト: 5
    同時にアップロードするファイルの最大数。

  • max_retries (int) -
    デフォルト: 5
    各ファイルのアップロード試行の最大回数。

  • retry_interval (float) -
    デフォルト: 5.0
    アップロード試行間の遅延(秒単位)。

  • progress_callback (Callable[[UploadProgress], None] | None) -
    デフォルト: None
    アップロードの進捗スナップショットとともに呼び出されるコールバック。

  • part_size (int) -
    デフォルト: 0
    マルチパートアップロードのパートサイズ(バイト単位)。0 を使用すると、サイズが自動的に選択されます。

戻り値の型:

dict

戻り値:

volumeName、volume_name、およびアップロードされたターゲットパスを含む辞書。

例外:

  • MilvusException
    サーバーがリクエストを拒否した場合、または RPC が失敗した場合に発生します。正確な失敗の詳細については、サーバーのエラーメッセージを確認してください。

この例では、ファイルをボリュームにアップロードする方法を示しています。

python
from pymilvus.bulk_writer import VolumeFileManager, VolumeManager

manager = VolumeManager(cloud_endpoint="https://api.cloud.zilliz.com", api_key="YOUR_API_KEY")
manager.create_volume(project_id="proj-xxxx", region_id="aws-us-west-2", volume_name="book-volume", volume_type="EXTERNAL")
manager.describe_volume("book-volume")
manager.list_volumes(project_id="proj-xxxx", volume_type="EXTERNAL")

file_manager = VolumeFileManager(cloud_endpoint="https://api.cloud.zilliz.com", api_key="YOUR_API_KEY", volume_name="book-volume")
file_manager.upload_file_to_volume(source_file_path="./data/books.parquet", target_volume_path="datasets/books/books.parquet", upload_concurrency=4)
Ctrl I