Create a table
テーブルの作成
このクイックスタートチュートリアルでは、StarRocksでテーブルを作成するための必要な手順を説明し、StarRocksの基本的な機能を紹介します。
StarRocksインスタンスが展開された後(詳細についてはStarRocksの展開を参照)、データのロードとクエリを行うためにデータベースとテーブルを作成する必要があります。データベースとテーブルの作成には、対応するユーザ権限が必要です。このクイックスタートチュートリアルでは、StarRocksインスタンスで最高の権限を持つデフォルトのroot
ユーザで以下の手順を実行できます。
注記
既存のStarRocksインスタンス、データベース、テーブル、およびユーザ権限を使用してこのチュートリアルを完了することもできます。ただし、簡単のために、チュートリアルが提供するスキーマとデータを使用することをお勧めします。
ステップ1:StarRocksへのログイン
お使いのMySQLクライアントを介してStarRocksにログインします。デフォルトのユーザroot
とパスワードはデフォルトで空です。
mysql -h <fe_ip> -P<fe_query_port> -uroot
注記
- 別のFE MySQLサーバポート(
query_port
、デフォルト:9030
)を割り当てた場合は、-P
の値を適宜変更してください。- FE設定ファイルで
priority_networks
構成項目を指定した場合は、-h
の値を適宜変更してください。
ステップ2:データベースの作成
CREATE DATABASEを参照して、sr_hub
という名前のデータベースを作成します。
CREATE DATABASE IF NOT EXISTS sr_hub;
SHOW DATABASESを実行すると、このStarRocksインスタンス内のすべてのデータベースを表示できます。
ステップ3:テーブルの作成
USE sr_hub
を実行して、sr_hub
データベースに切り替え、CREATE TABLEを参照してsr_member
という名前のテーブルを作成します。
USE sr_hub;
CREATE TABLE IF NOT EXISTS sr_member (
sr_id INT,
name STRING,
city_code INT,
reg_date DATE,
verified BOOLEAN
)
PARTITION BY RANGE(reg_date)
(
PARTITION p1 VALUES [('2022-03-13'), ('2022-03-14')),
PARTITION p2 VALUES [('2022-03-14'), ('2022-03-15')),
PARTITION p3 VALUES [('2022-03-15'), ('2022-03-16')),
PARTITION p4 VALUES [('2022-03-16'), ('2022-03-17')),
PARTITION p5 VALUES [('2022-03-17'), ('2022-03-18'))
)
DISTRIBUTED BY HASH(city_code);
注記
- v3.1以降、テーブルの作成時にDISTRIBUTED BY句でバケットキーを指定する必要はありません。StarRocksはランダムバケッティングをサポートしており、データをすべてのバケットにランダムに分散させます。詳細についてはランダムバケッティングを参照してください。
- デプロイしたStarRocksインスタンスにはBEノードが1つしかないため、データのレプリカ数を表すテーブルプロパティ
replication_num
を1
として指定する必要があります。- テーブルタイプが指定されていない場合、デフォルトでDuplicate Keyテーブルが作成されます。詳細はDuplicate Keyテーブルを参照してください。
- テーブルの列は、データのロー ドとクエリチュートリアルでStarRocksにロードするデータのフィールドと完全に対応しています。
- テーブルのデータパーティショニングプランを戦略的に設計するために、
PARTITION BY
句を使用してテーブルのデータパーティショニングプランを指定することを強くお勧めします。詳細についてはデータパーティショニングとバケティングルールの設計を参照してください。
テーブルが作成されたら、DESCステートメントを使用してテーブルの詳細を確認し、SHOW TABLESを実行してデータベース内のすべてのテーブルを表示できます。StarRocksのテーブルはスキーマの変更が可能です。詳細はALTER TABLEを参照してください。
次の手順
StarRocksテーブルの概念的な詳細については、StarRocksテーブルデザインを参照してください。
このチュートリアルでデモンストレーションされていない次の機能もStarRocksでサポートされています。
- さまざまなデータ型
- 複数のテーブルタイプ
- 柔軟なパーティショニング戦略
- ビットマップインデックスやブルームフィルタインデックスなどのクラシックなデータベースクエリインデックス、ビットマップインデックス、ブルームフィルタインデックス
- マテリアライズドビュー