概要
Tableの作成
ユーザーはCREATE TABLE文を使用してDorisでTableを作成できます。また、CREATE TABLE LIKEやCREATE TABLE AS句を使用して、別のTableからTable定義を導出することもできます。
Table名
Dorisでは、Table名はデフォルトで大文字小文字を区別します。初期クラスターセットアップ時にlower_case_table_namesを設定することで、大文字小文字を区別しないようにできます。Table名のデフォルト最大長は64バイトですが、table_name_length_limitを設定することで変更できます。この値を過度に高く設定することは推奨されません。Table作成の構文については、CREATE TABLEを参照してください。動的パーティションでは、これらのプロパティを個別に設定できます。
Tableプロパティ
Dorisでは、CREATE TABLE文でTableプロパティを指定できます。これには以下が含まれます:
-
buckets: Table内でのデータの分散を決定します。
-
storage_medium: HDD、SSD、またはリモート共有ストレージの使用など、データのストレージ方法を制御します。
-
replication_num: 冗長性と信頼性を確保するためのデータレプリカ数を制御します。
-
storage_policy: コールドデータとホットデータの分離ストレージのマイグレーション戦略を制御します。
これらのプロパティはパーティションに適用されます。つまり、パーティションが作成されると、そのパーティションは独自のプロパティを持ちます。Tableプロパティの変更は、将来作成されるパーティションにのみ影響し、既存のパーティションには影響しません。Tableプロパティの詳細については、ALTER TABLE PROPERTYを参照してください。
注意事項
-
適切なデータモデルの選択: データモデルは変更できないため、Table作成時に適切なデータモデルを選択する必要があります。
-
適切なバケット数の選択: 既に作成されたパーティションのバケット数は変更できません。パーティションの置換によってバケット数を変更するか、動的パーティションでまだ作成されていないパーティションのバケット数を変更できます。
-
カラム追加操作: VALUEカラムの追加または削除は軽量な操作で、数秒で完了できます。KEYカラムの追加または削除、またはデータ型の変更は重量な操作であり、完了時間はデータ量に依存します。大規模なデータセットの場合、KEYカラムの追加または削除やデータ型の変更を避けることを推奨します。
-
ストレージ戦略の最適化: 階層ストレージを使用してコールドデータをHDDやS3/HDFSに保存できます。