データのマージ (V2)
このインターフェースを使用すると、既存の collection に対して、データありまたはデータなしで field を追加できます。
- データありで field を追加する場合は、データファイルを AWS S3 bucket または Zilliz Cloud Volume にアップロードし、データがソース collection と同じ merge key を共有していることを確認する必要があります。マージされたデータは、指定した新しい collection に保存されます。
- データなしで追加する場合、新しい field は null 値で作成されます。
この操作を実行するには、project admin 以上の権限が必要です。詳細については、Merge Data を参照してください。
https://api.cloud.zilliz.com
export BASE_URL="https://api.cloud.zilliz.com"
認証トークンは、適切な権限を持つ API key である必要があります。
この操作の対象 collection を保持する cluster の名前。
この操作の対象 collection を保持する database の名前。
この操作の対象 collection の名前。
作成する collection を保持する database の名前。
作成する collection の名前。この collection にマージされたデータが格納されます。
上記で指定した collection とマージするデータ。データソースとして、PARQUET 形式のデータファイルを AWS S3 bucket または Zilliz Cloud Volume にアップロードし、その後、必要に応じてアクセス認証情報とともにデータファイルの URL を指定する必要があります。
データソースの種類。volume を使用する場合、このパラメータを volume に設定します。
PARQUET ファイルを保持する Zilliz Cloud Volume の名前。このパラメータは、type を volume に設定した場合にのみ適用されます。volume の作成方法の詳細については、Create Volume 操作のドキュメントを参照してください。
既存の collection とマージする PARQUET ファイルの URL。
データマージ操作は、リレーショナルデータベースシステムにおける LEFT JOIN 操作に似ており、merge field はソース collection と列指向データを含む Parquet ファイルの間で共有キーとして機能します。merge field として、この共有キーの名前を指定する必要があります。merge field は、既存の collection と Parquet ファイルの両方に存在している必要があります。一般的なケースでは、primary key を merge field として使用できます。
新しい collection に作成する field の schema。schema は field schema の配列である必要があります。
追加する field の schema。
追加する現在の field の名前。
追加する現在の field のデータ型。
追加する現在の field の追加設定。
VARCHAR field 値の最大長。このパラメータは、dataType が VARCHAR に設定されている場合にのみ適用されます。
この操作の対象 collection を保持する cluster の名前。
この操作の対象 collection を保持する database の名前。
この操作の対象 collection の名前。
作成する collection を保持する database の名前。
作成する collection の名前。この collection にマージされたデータが格納されます。
上記で指定した collection とマージするデータ。データソースとして、PARQUET 形式のデータファイルを AWS S3 bucket または Zilliz Cloud Volume にアップロードし、その後、必要に応じてアクセス認証情報とともにデータファイルの URL を指定する必要があります。
データソースの種類。AWS S3 bucket を使用する場合は、これを s3 に設定します
既存の collection とマージする PARQUET ファイルの URL。
PARQUET ファイルを保持する bucket にアクセスするための認証情報。このパラメータは、type を s3 に設定した場合にのみ適用されます。
PARQUET ファイルを保持する bucket の access key。
PARQUET ファイルを保持する bucket の secret key。
データマージ操作は、リレーショナルデータベースシステムにおける LEFT JOIN 操作に似ており、merge field はソース collection と列指向データを含む Parquet ファイルの間で共有キーとして機能します。merge field として、この共有キーの名前を指定する必要があります。merge field は、既存の collection と Parquet ファイルの両方に存在している必要があります。一般的なケースでは、primary key を merge field として使用できます。
既存の collection に追加する field の schema。schema は field schema の配列である必要があります。
追加する field の schema。
追加する現在の field の名前。
追加する現在の field のデータ型。
追加する現在の field の追加設定。
VARCHAR field 値の最大長。このパラメータは、dataType が VARCHAR に設定されている場合にのみ適用されます。
export TOKEN="YOUR_API_KEY"
curl --request POST \
--url "${BASE_URL}/v2/etl/merge" \
--header "Authorization: Bearer ${TOKEN}" \
--header "Request-Timeout: 5" \
--header "Content-Type: application/json" \
-d '{
"clusterId": "in00-xxxxxxxxxxxxxxx",
"dbName": "my_database",
"collectionName": "my_collection",
"destDbName": "my_database",
"destCollectionName": "my_merged_collection",
"dataSource": {
"type": "volume",
"volumeName": "my_volume",
"dataPath": "/path/to/your/data.parquet"
},
"mergeField": "id",
"newFields": [
{
"fieldName": "my_field1",
"dataType": "VARCHAR",
"params": {
"maxLength": 512
}
}
]
}'
bulk-import job の ID。
レスポンスコード。
作成された data-merge job の ID を含むレスポンス payload。
作成された data-merge job。
現在の data-merge job の ID。
エラーメッセージを返します。
レスポンスコード。
エラーメッセージ。
{
"code": 0,
"data": {
"jobId": "job-xxxxxxxxxxxxxxxxxxxxx"
}
}