クイックスタート
このクイックスタートチュートリアルでは、CelerData クラスターにテストデータを挿入し、そのデータをクエリする手順を案内します。
Step 1: データベースとテーブルを作成する
MySQL クライアントから CelerData クラスターに接続した後、データベースを作成し、テストデータをインポートするテーブルを作成します。
-
次の SQL ステートメントを実行して、
celerdata
という名前のデータベースを作成します。CREATE DATABASE IF NOT EXISTS celerdata;
-
作成したデータベースに切り替え、その中に
example
という名前のテーブルを作成します。USE celerdata;
CREATE TABLE IF NOT EXISTS example (
celerdata_id INT,
name STRING,
city_code INT,
reg_date DATE,
verified BOOLEAN
)
DISTRIBUTED BY HASH(city_code);
NOTE
- CelerData クラスターでテーブルを作成するには、
DISTRIBUTED BY HASH
句を指定してテーブルのデータ分散計画を立てる必要があります。デフォルトでは、データは 10 個の tablets に分散されます。
デフォルトでは、CelerData クラスター内のテーブルには 3 つのデータレプリカが作成されます。各レプリカは異なる BE ノードに存在します。したがって、クラスターに BE ノードを多くまたは少なく作成した場合は、ステートメントの最後に
PROPERTIES("replication_num" = "<be_node_count>")
を追加してテーブルプロパティreplication_num
を指定する必要があります。詳細な手順については、CREATE TABLE を参照してください。テーブルタイプ が指定されていない場合、デフォルトで重複キーテーブルに基づいてテーブルが作成されます。詳細については、重複キーテーブル を参照してください。
本番環境でのクラスターの高性能を保証するために、
PARTITION BY
句を使用してテーブルの動的データパーティショニング計画を立てることを強くお勧めします。
Step 2: INSERT を使用してデータをロードする
おなじみの SQL ステートメント - INSERT を使用してテストデータをロードできます。テストデータのフィールドは、テーブル example
の列に正確にマッピングできます。
次の SQL ステートメントを実行して、テーブル example
にテストデータをロードします。
INSERT INTO example
WITH LABEL test_insert
VALUES
(001,"tom",100000,"2022-03-13",true),
(002,"johndoe",210000,"2022-03-14",false),
(003,"maruko",200000,"2022-03-14",true),
(004,"ronaldo",100000,"2022-03-15",false),
(005,"pavlov",210000,"2022-03-16",false),
(006,"mohammed",300000,"2022-03-17",true);
ロードトランザクションが成功すると、次のメッセージが返されます。
Query OK, 6 rows affected (0.04 sec)
{'label':'test_insert', 'status':'VISIBLE', 'txnId':'5'}
NOTE
INSERT INTO VALUES を介してデータをロードするのは、小規模なデータセットでデモを検証する必要がある場合にのみ適用されます。大規模なテストや本番環境には推奨されません。
Step 3: クエリを実行する
CelerData にテストデータがロードされたら、そのデータに対していくつかのクエリを実行できます。
NOTE
CelerData は SQL-92 と互換性があります。
-
テーブル
example
のすべての行をリストする簡単なクエリを実行します。SELECT * FROM example;
返される結果は次のとおりです。
+--------------+----------+-----------+------------+----------+
| celerdata_id | name | city_code | reg_date | verified |
+--------------+----------+-----------+------------+----------+
| 1 | tom | 100000 | 2022-03-13 | 1 |
| 4 | ronaldo | 100000 | 2022-03-15 | 0 |
| 2 | johndoe | 210000 | 2022-03-14 | 0 |
| 5 | pavlov | 210000 | 2022-03-16 | 0 |
| 6 | mohammed | 300000 | 2022-03-17 | 1 |
| 3 | maruko | 200000 | 2022-03-14 | 1 |
+--------------+----------+-----------+------------+----------+
6 rows in set (0.00 sec) -
指定された条件で標準クエリを実行します。
SELECT celerdata_id, name
FROM example
WHERE reg_date <= "2022-03-14";返される結果は次のとおりです。
+--------------+---------+
| celerdata_id | name |
+--------------+---------+
| 3 | maruko |
| 1 | tom |
| 2 | johndoe |
+--------------+---------+
3 rows in set (0.01 sec)
What's next
このチュートリアルで示した機能に加えて、CelerData は次のこともサポートしています。
- 様々な データタイプ
- 複数の テーブルタイプ
- 柔軟なパーティショニング戦略
- クラシックなデータベースクエリインデックス、ビットマップインデックス や ブルームフィルターインデックス を含む
- マテリアライズドビュー