Todos los productos
Search
Centro de documentos

ApsaraDB for ClickHouse:Creación de una tabla

Última actualización: Sep 17, 2026

Puede crear tablas locales y distribuidas en ApsaraDB for ClickHouse mediante Data Management Service (DMS).

Requisitos previos

Complete los pasos indicados a continuación en la guía de inicio rápido.

Procedimiento

  1. En la página SQL Console de la consola de DMS, introduzca una sentencia CREATE TABLE para crear una tabla local.

    Nota

    Las tablas locales almacenan los datos reales. Cada nodo de ClickHouse cuenta con sus propias tablas locales para gestionar y consultar los datos en ese nodo. Use las tablas locales para particionar los datos entre los nodos del clúster.

    Sintaxis:

    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, ...];

    Parámetros:

    Parámetro

    Descripción

    db

    Nombre de la base de datos. De forma predeterminada, se usa la base de datos actual.

    local_table_name

    Nombre de la tabla local.

    cluster

    Nombre del clúster. El valor es fijo: default.

    name1,name2

    Nombres de las columnas.

    type1,type2

    Tipos de datos de las columnas.

    engine_name

    Tipo de motor de la tabla. Para más información, consulte Table engines.

    Establezca este parámetro en MergeTree para clústeres de edición de réplica única o en ReplicatedMergeTree para clústeres maestro-réplica.

    Importante

    Al crear tablas en un clúster Double-replica Edition, debe usar motores de tabla Replicated de la familia MergeTree. Si usa motores de tabla no replicados, los datos no se pueden replicar entre réplicas, lo que podría provocar inconsistencias.

    PARTITION BY

    Clave de partición.

    ORDER BY

    Clave de ordenación.

    PRIMARY KEY

    Clave principal.

    SAMPLE BY

    Expresión de muestreo. Si usa una expresión de muestreo, la clave principal debe incluirla.

    SETTINGS

    Otros parámetros que afectan el rendimiento, como index_granularity.

    Nota

    Para más información sobre los parámetros, consulte Create Table.

    Ejemplo:

    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. Cree una tabla distribuida para facilitar la escritura y consulta de datos.

    Nota
    • ApsaraDB for ClickHouse Enterprise Edition no requiere crear tablas distribuidas. Para conocer los detalles sobre los motores de tabla compatibles con Enterprise Edition, consulte ApsaraDB for ClickHouse Enterprise Edition Compatibility Guide.

    • Las tablas distribuidas no almacenan datos directamente. Funcionan como una capa de consulta que enruta las solicitudes a las tablas locales de cada nodo y agrega los resultados. Úselas para consultar datos entre distintos nodos de un clúster de ClickHouse.

    Sintaxis:

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

    Parámetros:

    Parámetro

    Descripción

    db

    Nombre de la base de datos. De forma predeterminada, se usa la base de datos actual.

    d_table_name

    Nombre de la tabla distribuida.

    cluster

    Nombre del clúster. El valor es fijo: default.

    local_table_name

    Nombre de la tabla local creada.

    sharding_key

    Expresión de fragmentación.

    Nota

    Para más información sobre los parámetros, consulte Create Table.

    Ejemplo:

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

Siguiente paso

Import data