メインコンテンツまでスキップ

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_num1として指定する必要があります。
  • テーブルタイプが指定されていない場合、デフォルトでDuplicate Keyテーブルが作成されます。詳細はDuplicate Keyテーブルを参照してください。
  • テーブルの列は、データのロードとクエリチュートリアルでStarRocksにロードするデータのフィールドと完全に対応しています。
  • テーブルのデータパーティショニングプランを戦略的に設計するために、PARTITION BY句を使用してテーブルのデータパーティショニングプランを指定することを強くお勧めします。詳細についてはデータパーティショニングとバケティングルールの設計を参照してください。

テーブルが作成されたら、DESCステートメントを使用してテーブルの詳細を確認し、SHOW TABLESを実行してデータベース内のすべてのテーブルを表示できます。StarRocksのテーブルはスキーマの変更が可能です。詳細はALTER TABLEを参照してください。

次の手順

StarRocksテーブルの概念的な詳細については、StarRocksテーブルデザインを参照してください。

このチュートリアルでデモンストレーションされていない次の機能もStarRocksでサポートされています。