指定されたテーブルバケットおよび名前空間に Iceberg テーブルを作成します。
注意事項
テーブル名には小文字、数字、アンダースコア (_) のみを使用でき、先頭および末尾は小文字または数字である必要があります。
テーブル名は名前空間内で一意である必要があります。
--metadataパラメーターには、Iceberg テーブルのスキーマを定義する JSON 形式のテーブルメタデータが必要です。JSON はインラインで指定するか、file://プレフィックスを使用してローカルファイルから読み込むことができます。現在、
--formatパラメーターはICEBERGのみをサポートしています。
構文
ossutil tables-api create-table --table-bucket-arn value --namespace value --name value --format value [flags]パラメーター | 型 | 説明 |
--encryption-configuration | string | テーブルのサーバ側暗号化方式を指定します。構成は JSON 形式で記述してください。 |
--format | string | テーブルのフォーマットを指定します。現在、 |
--metadata | string | テーブルメタデータを JSON 形式で指定します。このメタデータにより、フィールド情報などを含む Iceberg テーブルのスキーマが定義されます。 |
--name | string | テーブル名を指定します。名前には小文字、数字、アンダースコア (_) のみを使用でき、先頭および末尾は小文字または数字である必要があります。 |
--namespace | string | テーブルを作成する名前空間を指定します。 |
--table-bucket-arn | string | テーブルバケットの Alibaba Cloud リソースネーム (ARN) を指定します。形式は |
create-table コマンドは CreateTable API オペレーションに対応しています。パラメーターの詳細については、「CreateTable」をご参照ください。
サポートされているグローバルコマンドラインオプションについては、「ossutil のグローバルオプション」をご参照ください。
--metadata パラメーターに指定する JSON の構文は次のとおりです。
{
"iceberg": {
"schema": {
"fields": [
{
"id": 1,
"name": "id",
"type": "long",
"required": true
},
{
"id": 2,
"name": "name",
"type": "string",
"required": false
},
{
"id": 3,
"name": "created_at",
"type": "timestamp",
"required": false
}
]
}
}
}各フィールドの属性は次のとおりです。
id:フィールド ID。一意かつ増分となる整数を指定する必要があります。
name:フィールド名。
type:フィールドのデータの型。サポートされる Iceberg の型には、
long、string、int、boolean、float、double、およびtimestampが含まれます。required:フィールドが必須かどうかを示すブール値。
trueの場合、そのフィールドは null にできません。
使用例
my_namespace名前空間内にmy_tableという名前の Iceberg テーブルを作成し、テーブルスキーマをインライン JSON として提供します。ossutil tables-api create-table --table-bucket-arn acs:osstables:cn-hangzhou:1234567890:bucket/my-table-bucket --namespace my_namespace --name my_table --format ICEBERG --metadata '{"iceberg":{"schema":{"fields":[{"id":1,"name":"id","type":"long","required":true},{"id":2,"name":"data","type":"string"}]}}}'ローカルの JSON ファイルから Iceberg テーブルを作成します。まず、テーブルメタデータを
table_metadata.jsonという名前のファイルに保存します。次に、file://プレフィックスを使用してファイルパスを指定します。ossutil tables-api create-table --table-bucket-arn acs:osstables:cn-hangzhou:1234567890:bucket/my-table-bucket --namespace my_namespace --name my_table --format ICEBERG --metadata file://table_metadata.json