指定されたテーブルのメタデータ保存場所を更新します。このコマンドは、通常、Iceberg テーブルの新しいメタデータスナップショットをコミットした後に使用します。
注意事項
--version-tokenパラメーターにより楽観的ロックが有効になります。まずget-table-metadata-locationコマンドで現在のversionTokenを取得し、このパラメーターに渡す必要があります。取得後から更新完了までの間に他のクライアントがメタデータの保存場所を更新した場合、操作は失敗します。この仕組みにより、同時更新による上書きを防止します。--metadata-locationパラメーターは、新しいメタデータファイルへのパスを指定します。このパスは、有効な Iceberg メタデータファイルのパスである必要があります。--metadata-locationパラメーターおよび--version-tokenパラメーターはいずれも必須です。
コマンドフォーマット
ossutil tables-api update-table-metadata-location --table-bucket-arn value --namespace value --name value --metadata-location value --version-token value [flags]パラメーター | タイプ | 説明 |
--metadata-location | 文字列 | 新しいメタデータファイルへのパスです。有効な Iceberg メタデータファイルのパスである必要があります。このパラメーターは必須です。 |
--name | 文字列 | テーブル名です。このパラメーターは必須です。 |
--namespace | 文字列 | テーブルの名前空間の名前です。このパラメーターは必須です。 |
--table-bucket-arn | 文字列 | Table Bucket の Alibaba Cloud Resource Name (ARN) です。形式は |
--version-token | 文字列 | 楽観的ロック用のバージョントークンです。最新バージョンを使用して更新するには、 |
update-table-metadata-locationコマンドは、UpdateTableMetadataLocationAPI オペレーションに対応しています。API パラメーターの詳細については、「UpdateTableMetadataLocation」をご参照ください。サポートされているグローバルコマンドラインオプションについては、「ossutil グローバルオプション」をご参照ください。
使用例
my_table テーブルのメタデータファイルの保存場所を更新し、新しいメタデータパスとバージョントークンを指定します。
ossutil tables-api update-table-metadata-location --table-bucket-arn acs:osstables:cn-hangzhou:1234567890:bucket/my-table-bucket --namespace my_namespace --name my_table --metadata-location oss://my-table-bucket/metadata/my_namespace/my_table/metadata/00001-abc123.metadata.json --version-token abc123def456