日本熟妇hd丰满老熟妇,中文字幕一区二区三区在线不卡 ,亚洲成片在线观看,免费女同在线一区二区

本文介紹在云數(shù)據(jù)庫(kù)ClickHouse中創(chuàng)建表。

創(chuàng)建本地表

語(yǔ)法:

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

參數(shù)說(shuō)明:

參數(shù)

說(shuō)明

db

數(shù)據(jù)庫(kù)的名稱(chēng),默認(rèn)為當(dāng)前選擇的數(shù)據(jù)庫(kù),本文以default為例。

local_table_name

本地表名。

ON CLUSTER cluster

在每一個(gè)節(jié)點(diǎn)上都創(chuàng)建一個(gè)本地表,固定為ON CLUSTER default。

name1,name2

列名。

type1,type2

列類(lèi)型。

說(shuō)明

云數(shù)據(jù)庫(kù)ClickHouse支持的數(shù)據(jù)類(lèi)型,請(qǐng)參見(jiàn)數(shù)據(jù)類(lèi)型。

ENGINE = engine_name()

表引擎類(lèi)型。

雙副本版集群建表時(shí),需要使用MergeTree系列引擎中支持?jǐn)?shù)據(jù)復(fù)制的Replicated*引擎,否則副本之間不進(jìn)行數(shù)據(jù)復(fù)制,導(dǎo)致數(shù)據(jù)查詢結(jié)果不一致。使用該引擎建表時(shí),參數(shù)填寫(xiě)方式如下。

  • ReplicatedMergeTree('/clickhouse/tables/{database}/{table}/{shard}', '{replica}'),固定配置,無(wú)需修改。

  • ReplicatedMergeTree(),等同于ReplicatedMergeTree('/clickhouse/tables/{database}/{table}/{shard}', '{replica}')。

說(shuō)明

云數(shù)據(jù)庫(kù)ClickHouse支持的表引擎類(lèi)型,請(qǐng)參見(jiàn)表引擎

ORDER BY expr

排序鍵,必填項(xiàng),可以是一組列的元組或任意表達(dá)式。

[DEFAULT|MATERIALIZED|ALIAS expr]

默認(rèn)表達(dá)式。

  • DEFAULT:普通的默認(rèn)表達(dá)式。在字段缺省的情況下,自動(dòng)生成默認(rèn)值并填充。

  • MATERIALIZED:物化表達(dá)式。

  • ALIAS:別名表達(dá)式。

GRANULARITY

索引粒度參數(shù)。

[PARTITION BY expr]

分區(qū)鍵。一般按照日期分區(qū),也可以使用其他字段或字段表達(dá)式。

[PRIMARY KEY expr]

主鍵,默認(rèn)情況下主鍵和排序鍵相同。因此,多數(shù)情況下,不需要再專(zhuān)門(mén)使用PRIMARY KEY子句指定主鍵。

[SAMPLE BY expr]

抽樣表達(dá)式。如果要使用抽樣表達(dá)式,主鍵中必須包含此表達(dá)式。

[SETTINGS name=value, ...]

影響性能的額外參數(shù)。

說(shuō)明

SETTINGS中支持的參數(shù),請(qǐng)參見(jiàn)SETTINGS配置項(xiàng)

說(shuō)明

參數(shù)ORDER BY、GRANULARITY、PARTITION BY、PRIMARY KEYSAMPLE BY[SETTINGS name=value, ...]只有MergeTree系列表引擎支持。更多參數(shù)說(shuō)明,請(qǐng)參見(jiàn)CREATE TABLE。

示例:

CREATE TABLE local_table ON CLUSTER default
(
    Year UInt16,
    Quarter UInt8,
    Month UInt8,
    DayofMonth UInt8,
    DayOfWeek UInt8,
    FlightDate Date,
    FlightNum String,
    Div5WheelsOff String,
    Div5TailNum String
)ENGINE = MergeTree()
 PARTITION BY toYYYYMM(FlightDate)
 PRIMARY KEY (intHash32(FlightDate))
 ORDER BY (intHash32(FlightDate),FlightNum)
 SAMPLE BY intHash32(FlightDate)
SETTINGS index_granularity= 8192;

創(chuàng)建分布式表

分布式表是本地表的集合,它將多個(gè)本地表抽象為一張統(tǒng)一的表,對(duì)外提供寫(xiě)入、查詢功能。當(dāng)數(shù)據(jù)寫(xiě)入分布式表時(shí),會(huì)被自動(dòng)分發(fā)到集合中的各個(gè)本地表中。當(dāng)查詢分布式表時(shí),集合中的各個(gè)本地表都會(huì)被分別查詢,并且把最終結(jié)果匯總后返回。您需要先創(chuàng)建本地表,再創(chuàng)建分布式表。

語(yǔ)法:

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

參數(shù)說(shuō)明:

參數(shù)

說(shuō)明

db

數(shù)據(jù)庫(kù)的名稱(chēng),默認(rèn)為當(dāng)前選擇的數(shù)據(jù)庫(kù),本文以default為例。

distributed_table_name

分布式表名。

ON CLUSTER cluster

在每一個(gè)節(jié)點(diǎn)上都創(chuàng)建一個(gè)表,固定為ON CLUSTER default

local_table_name

已創(chuàng)建的本地表名。

sharding_key

分片表達(dá)式,用于決定將數(shù)據(jù)寫(xiě)到哪個(gè)分片。

sharding_key可以是一個(gè)表達(dá)式,例如函數(shù)rand(),也可以是一列,例如user_id(Integer類(lèi)型)。

示例:

CREATE TABLE distributed_table ON CLUSTER default
 AS default.local_table 
ENGINE = Distributed(default, default, local_table, rand());

通過(guò)復(fù)制表結(jié)構(gòu)創(chuàng)建表

您可以通過(guò)復(fù)制表結(jié)構(gòu)創(chuàng)建與源表具有相同結(jié)構(gòu)的表。

語(yǔ)法:

CREATE TABLE [IF NOT EXISTS] [db.]table_name2 ON CLUSTER cluster AS [db.]table_name1 [ENGINE = engine_name];

參數(shù)說(shuō)明:

參數(shù)

說(shuō)明

db

數(shù)據(jù)庫(kù)的名稱(chēng),默認(rèn)為當(dāng)前選擇的數(shù)據(jù)庫(kù),本文以default為例。

table_name1

被復(fù)制表結(jié)構(gòu)的源表,本文以已創(chuàng)建的本地表local_table為例。

table_name2

新創(chuàng)建的表。

ON CLUSTER cluster

在每一個(gè)節(jié)點(diǎn)上都創(chuàng)建一個(gè)表,固定為ON CLUSTER default。

[ENGINE = engine_name]

表引擎類(lèi)型。如果沒(méi)有指定表引擎,默認(rèn)與被復(fù)制表結(jié)構(gòu)的表相同。

說(shuō)明

云數(shù)據(jù)庫(kù)ClickHouse支持的表引擎類(lèi)型,請(qǐng)參見(jiàn)表引擎。

示例:

create table t2 ON CLUSTER default as default.local_table;

創(chuàng)建與查詢結(jié)果集結(jié)構(gòu)相同的表

使用指定的表引擎創(chuàng)建一個(gè)與SELECT子句查詢結(jié)果集相同結(jié)構(gòu)的表,并使用SELECT子句的結(jié)果進(jìn)行填充。

語(yǔ)法:

CREATE TABLE [IF NOT EXISTS] [db.]s_table_name ON CLUSTER cluster ENGINE = engine_name() AS SELECT ...

參數(shù)說(shuō)明:

參數(shù)

說(shuō)明

db

數(shù)據(jù)庫(kù)的名稱(chēng),默認(rèn)為當(dāng)前選擇的數(shù)據(jù)庫(kù),本文以default為例。

s_table_name

通過(guò)SELECT語(yǔ)句創(chuàng)建的表。

ON CLUSTER cluster

在每一個(gè)節(jié)點(diǎn)上都創(chuàng)建一個(gè)表,固定為ON CLUSTER default。

ENGINE = engine_name()

表引擎類(lèi)型。

說(shuō)明

云數(shù)據(jù)庫(kù)ClickHouse支持的表引擎類(lèi)型,請(qǐng)參見(jiàn)表引擎

SELECT ...

SELECT子句。

示例:

create table t3 ON CLUSTER default ENGINE =MergeTree() order by Year as select * from default.local_table;

參考文檔

  • 創(chuàng)建表的更多信息,請(qǐng)參見(jiàn)CREATE TABLE

  • 通過(guò)復(fù)制表結(jié)構(gòu)創(chuàng)建表的更多信息,請(qǐng)參見(jiàn)With a Schema Similar to Other Table。

  • 通過(guò)SELECT語(yǔ)句創(chuàng)建表的更多信息,請(qǐng)參見(jiàn)From SELECT query。