list_refresh_external_collection_jobs()
この操作は、すべての、または指定されたコレクションの外部コレクション更新ジョブを一覧表示します。
これには、以下のように project endpoint を使用して設定された MilvusClient が必要です。
https://{project-id}.{region}.api.zillizcloud.com
リクエスト構文
def list_refresh_external_collection_jobs(
collection_name: str = "",
timeout: Optional[float] = None,
**kwargs,
) -> List:
パラメーター:
-
collection_name (string) -
対象コレクションの名前です。このパラメータを指定しない場合は、すべての外部コレクションの更新ジョブが返されます。
-
timeout (float) -
この操作のタイムアウト時間です。
これを None に設定すると、何らかの応答が到着するか、何らかのエラーが発生した時点でこの操作はタイムアウトします。
戻り値の型:
List
戻り値:
RefreshExternalCollectionJobInfo オブジェクトのリストです。各オブジェクトには、外部コレクション更新ジョブの詳細が記録されます。
パラメーター:
-
job_id (int) -
現在のリクエストで指定されたジョブ ID です。
-
collection_name (string) -
refresh_external_collection()で指定された外部コレクションの名前です。 -
state (string) -
指定されたジョブの現在の状態です。指定可能な値は次のとおりです。
-
RefreshPending
-
RefreshInProgress
-
RefreshFailed
-
RefreshCompleted
-
-
progress (int) -
指定されたジョブの現在の進行状況です。値は 0 から 100 までの整数です。
-
external_source (str) -
refresh_external_collection()で指定された外部ソース URI です。 -
external_specs (str) -
refresh_external_collection()で指定された外部仕様です。 -
reason (str) -
更新操作が失敗した場合のエラーメッセージです。通常時は空文字列です。
-
start_time (int) -
指定されたジョブが開始する時点のミリ秒単位のタイムスタンプです。
-
end_time (int) -
指定されたジョブが終了する時点のミリ秒単位のタイムスタンプです。
例
from pymilvus import MilvusClient
# 1. Set up a milvus client
client = MilvusClient(
uri="YOUR_PROJECT_ENDPOINT",
token="YOUR_API_KEY"
)
job_id = client.refresh_external_collection(
collection_name="test_collection"
)
while True:
progress = client.get_refresh_external_collection_progress(job_id=job_id)
print(f" {progress.state}: {progress.progress}%")
if progress.state == "RefreshCompleted":
elapsed = progress.end_time - progress.start_time
print(f" Completed in {elapsed}ms")
return job_id
elif progress.state == "RefreshFailed":
print(f" Failed: {progress.reason}")
return job_id
time.sleep(2)