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)