すべてのプロダクト
Search
ドキュメントセンター

ApsaraDB for ClickHouse:テーブルの作成

最終更新日:Sep 17, 2026

Data Management Service (DMS) を使用して、ApsaraDB for ClickHouse にローカルテーブルと分散テーブルを作成できます。

前提条件

クイックスタートガイドで以下の手順を完了している必要があります。

手順

  1. DMS コンソールの SQL Console ページで、CREATE TABLE ステートメントを入力してローカルテーブルを作成します。

    説明

    ローカルテーブルは実際のデータを格納します。各 ClickHouse ノードには独自のローカルテーブルがあり、そのノード上のデータを管理およびクエリします。クラスターのノード間でデータをパーティション分割するには、ローカルテーブルを使用します。

    構文:

    CREATE TABLE [IF NOT EXISTS] [db.]local_table_name ON CLUSTER cluster
    (
        name1 [type1] [DEFAULT|MATERIALIZED|ALIAS expr1],
        name2 [type2] [DEFAULT|MATERIALIZED|ALIAS expr2],
        ...
        INDEX index_name1 expr1 TYPE type1(...) GRANULARITY value1,
        INDEX index_name2 expr2 TYPE type2(...) GRANULARITY value2
    ) ENGINE = engine_name()
    [PARTITION BY expr]
    [ORDER BY expr]
    [PRIMARY KEY expr]
    [SAMPLE BY expr]
    [SETTINGS name=value, ...];

    パラメーター:

    パラメーター

    説明

    db

    データベースの名前。デフォルトでは、現在のデータベースが使用されます。

    local_table_name

    ローカルテーブルの名前。

    cluster

    クラスターの名前。値は default に固定です。

    name1,name2

    列の名前。

    type1,type2

    列の型。

    engine_name

    テーブルエンジンの種類。詳細については、「テーブルエンジン」をご参照ください。

    単一レプリカエディションのクラスターの場合は MergeTree、マスターレプリカクラスターの場合は ReplicatedMergeTree に設定します。

    重要

    ダブルレプリカエディションのクラスターでテーブルを作成する場合は、MergeTree ファミリの Replicated テーブルエンジンを使用する必要があります。非レプリケートテーブルエンジンを使用すると、レプリカ間でデータがレプリケートされないため、データの不整合が発生する可能性があります。

    PARTITION BY

    パーティションキー。

    ORDER BY

    ソートキー。

    PRIMARY KEY

    プライマリキー。

    SAMPLE BY

    サンプリング式。サンプリング式を使用する場合、プライマリキーにこの式を含める必要があります。

    SETTINGS

    パフォーマンスに影響を与えるその他のパラメーター (index_granularity など)。

    説明

    パラメーターの詳細については、「Create Table」をご参照ください。

    例:

    CREATE TABLE clickhouse_demo.ontime_local ON CLUSTER default
    (
        `Year`                            UInt16,
        `Quarter`                         UInt8,
        `Month`                           UInt8,
        `DayofMonth`                      UInt8,
        `DayOfWeek`                       UInt8,
        `FlightDate`                      Date,
        `Reporting_Airline`               String,
        `DOT_ID_Reporting_Airline`        Int32,
        `IATA_CODE_Reporting_Airline`     String,
        `Tail_Number`                     String,
        `Flight_Number_Reporting_Airline` String,
        `OriginAirportID`                 Int32,
        `OriginAirportSeqID`              Int32,
        `OriginCityMarketID`              Int32,
        `Origin`                          FixedString(5),
        `OriginCityName`                  String,
        `OriginState`                     FixedString(2),
        `OriginStateFips`                 String,
        `OriginStateName`                 String,
        `OriginWac`                       Int32,
        `DestAirportID`                   Int32,
        `DestAirportSeqID`                Int32,
        `DestCityMarketID`                Int32,
        `Dest`                            FixedString(5),
        `DestCityName`                    String,
        `DestState`                       FixedString(2),
        `DestStateFips`                   String,
        `DestStateName`                   String,
        `DestWac`                         Int32,
        `CRSDepTime`                      Int32,
        `DepTime`                         Int32,
        `DepDelay`                        Int32,
        `DepDelayMinutes`                 Int32,
        `DepDel15`                        Int32,
        `DepartureDelayGroups`            String,
        `DepTimeBlk`                      String,
        `TaxiOut`                         Int32,
        `WheelsOff`                       Int32,
        `WheelsOn`                        Int32,
        `TaxiIn`                          Int32,
        `CRSArrTime`                      Int32,
        `ArrTime`                         Int32,
        `ArrDelay`                        Int32,
        `ArrDelayMinutes`                 Int32,
        `ArrDel15`                        Int32,
        `ArrivalDelayGroups`              Int32,
        `ArrTimeBlk`                      String,
        `Cancelled`                       UInt8,
        `CancellationCode`                FixedString(1),
        `Diverted`                        UInt8,
        `CRSElapsedTime`                  Int32,
        `ActualElapsedTime`               Int32,
        `AirTime`                         Nullable(Int32),
        `Flights`                         Int32,
        `Distance`                        Int32,
        `DistanceGroup`                   UInt8,
        `CarrierDelay`                    Int32,
        `WeatherDelay`                    Int32,
        `NASDelay`                        Int32,
        `SecurityDelay`                   Int32,
        `LateAircraftDelay`               Int32,
        `FirstDepTime`                    String,
        `TotalAddGTime`                   String,
        `LongestAddGTime`                 String,
        `DivAirportLandings`              String,
        `DivReachedDest`                  String,
        `DivActualElapsedTime`            String,
        `DivArrDelay`                     String,
        `DivDistance`                     String,
        `Div1Airport`                     String,
        `Div1AirportID`                   Int32,
        `Div1AirportSeqID`                Int32,
        `Div1WheelsOn`                    String,
        `Div1TotalGTime`                  String,
        `Div1LongestGTime`                String,
        `Div1WheelsOff`                   String,
        `Div1TailNum`                     String,
        `Div2Airport`                     String,
        `Div2AirportID`                   Int32,
        `Div2AirportSeqID`                Int32,
        `Div2WheelsOn`                    String,
        `Div2TotalGTime`                  String,
        `Div2LongestGTime`                String,
        `Div2WheelsOff`                   String,
        `Div2TailNum`                     String,
        `Div3Airport`                     String,
        `Div3AirportID`                   Int32,
        `Div3AirportSeqID`                Int32,
        `Div3WheelsOn`                    String,
        `Div3TotalGTime`                  String,
        `Div3LongestGTime`                String,
        `Div3WheelsOff`                   String,
        `Div3TailNum`                     String,
        `Div4Airport`                     String,
        `Div4AirportID`                   Int32,
        `Div4AirportSeqID`                Int32,
        `Div4WheelsOn`                    String,
        `Div4TotalGTime`                  String,
        `Div4LongestGTime`                String,
        `Div4WheelsOff`                   String,
        `Div4TailNum`                     String,
        `Div5Airport`                     String,
        `Div5AirportID`                   Int32,
        `Div5AirportSeqID`                Int32,
        `Div5WheelsOn`                    String,
        `Div5TotalGTime`                  String,
        `Div5LongestGTime`                String,
        `Div5WheelsOff`                   String,
        `Div5TailNum`                     String
    )ENGINE = ReplicatedMergeTree()
     PARTITION BY toYYYYMM(FlightDate)
     PRIMARY KEY (intHash32(FlightDate))
     ORDER BY (intHash32(FlightDate))
     SAMPLE BY intHash32(FlightDate)
    SETTINGS index_granularity= 8192 ;
  2. データの書き込みとクエリを容易にするために、分散テーブルを作成します。

    説明
    • ApsaraDB for ClickHouse Enterprise Edition では、分散テーブルを作成する必要はありません。Enterprise Edition でサポートされているテーブルエンジンの詳細については、「ApsaraDB for ClickHouse Enterprise Edition 互換性ガイド」をご参照ください。

    • 分散テーブルはデータを直接格納しません。クエリレイヤーとして機能し、ノード間のローカルテーブルにクエリをルーティングして結果を集約します。ClickHouse クラスター内のノード間のデータクエリには、分散テーブルを使用します。

    構文:

    CREATE TABLE  [db.]d_table_name ON CLUSTER cluster
     AS db.local_table_name ENGINE = Distributed(cluster, db, local_table_name [, sharding_key])

    パラメーター:

    パラメーター

    説明

    db

    データベースの名前。デフォルトでは、現在のデータベースが使用されます。

    d_table_name

    分散テーブルの名前。

    cluster

    クラスターの名前。値は default に固定です。

    local_table_name

    作成したローカルテーブルの名前。

    sharding_key

    シャーディングキーに使用するシャーディング式。

    説明

    パラメーターの詳細については、「Create Table」をご参照ください。

    例:

    CREATE TABLE ontime_local_distributed ON CLUSTER default
     AS clickhouse_demo.ontime_local  
    ENGINE = Distributed(default, clickhouse_demo, ontime_local, rand());

次のステップ

データのインポート