MapReduce服务 MRS-ClickHouse表创建:创建本地复制表和分布式表
创建本地复制表和分布式表
- 客户端登录ClickHouse节点,例如:clickhouse client --host node-master3QsRI --multiline --port 9440 --secure;
node-master3QsRI 参数为查看ClickHouse服务cluster等环境参数信息中2对应的host_name参数的值。
- 使用ReplicatedMergeTree引擎创建复制表。
例如,如下在default_cluster_1集群节点上和default数据库下创建表名为test的ReplicatedMergeTree表:
CREATE TABLE default.test ON CLUSTER default_cluster_1
(
`EventDate` DateTime,
`id` UInt64
)
ENGINE = ReplicatedMergeTree('/clickhouse/tables/{shard}/default/test', '{replica}')
PARTITION BY toYYYYMM(EventDate)
ORDER BY id;
参数说明如下:
- ON CLUSTER语法表示分布式DDL,即执行一次就可在集群所有实例上创建同样的本地表。
- default_cluster_1为查看ClickHouse服务cluster等环境参数信息中2查询到的cluster集群标识符。
CREATE TABLE default.test ON CLUSTER default_cluster_1( `EventDate` DateTime, `id` UInt64)ENGINE = ReplicatedMergeTree('/clickhouse/tables/{shard}/default/test', '{replica}')PARTITION BY toYYYYMM(EventDate)ORDER BY id┌─host─────────────────┬─port─┬─status─┬─error─┬─num_hosts_remaining─┬─num_hosts_active─┐│ node-group-1tXED0002 │ 9000 │ 0 │ │ 5 │ 3 ││ node-group-1tXED0003 │ 9000 │ 0 │ │ 4 │ 3 ││ node-master1dOnG │ 9000 │ 0 │ │ 3 │ 3 │└────────────────────┴────┴─────┴──── ┴─────────── ┴──────────┘┌─host─────────────────┬─port─┬─status─┬─error─┬─num_hosts_remaining─┬─num_hosts_active─┐│ node-master3QsRI │ 9000 │ 0 │ │ 2 │ 0 ││ node-group-1tXED0001 │ 9000 │ 0 │ │ 1 │ 0 ││ node-master2OXQS │ 9000 │ 0 │ │ 0 │ 0 │└────────────────────┴────┴─────┴──── ┴─────────── ┴──────────┘6 rows in set. Elapsed: 0.189 sec.
- 使用Distributed引擎创建分布式表。
例如,以下将在default_cluster_1集群节点上和default数据库下创建名为test_all 的Distributed表:
CREATE TABLE default.test_all ON CLUSTER default_cluster_1
(
`EventDate` DateTime,
`id` UInt64
)
ENGINE = Distributed(default_cluster_1, default, test, rand());
CREATE TABLE default.test_all ON CLUSTER default_cluster_1( `EventDate` DateTime, `id` UInt64)ENGINE = Distributed(default_cluster_1, default, test, rand())┌─host─────────────────┬─port─┬─status─┬─error─┬─num_hosts_remaining─┬─num_hosts_active─┐│ node-group-1tXED0002 │ 9000 │ 0 │ │ 5 │ 0 ││ node-master3QsRI │ 9000 │ 0 │ │ 4 │ 0 ││ node-group-1tXED0003 │ 9000 │ 0 │ │ 3 │ 0 ││ node-group-1tXED0001 │ 9000 │ 0 │ │ 2 │ 0 ││ node-master1dOnG │ 9000 │ 0 │ │ 1 │ 0 ││ node-master2OXQS │ 9000 │ 0 │ │ 0 │ 0 │└────────────────────┴────┴─────┴──── ┴─────────── ┴──────────┘6 rows in set. Elapsed: 0.115 sec.
Distributed引擎需要以下几个参数:
- default_cluster_1为查看ClickHouse服务cluster等环境参数信息中2查询到的cluster集群标识符。
- default本地表所在的数据库名称。
- test为本地表名称,该例中为2中创建的表名。
- (可选的)分片键(sharding key)
该键与config.xml中配置的分片权重(weight)一同决定写入分布式表时的路由,即数据最终落到哪个物理表上。它可以是表中一列的原始数据(如site_id),也可以是函数调用的结果,如上面的SQL语句采用了随机值rand()。注意该键要尽量保证数据均匀分布,另外一个常用的操作是采用区分度较高的列的哈希值,如intHash64(user_id)。
- GaussDB查询表结构_通配符字段查询表_高斯数据库查询表结构-华为云
- GaussDB查询库表_GaussDB查询数据库表_高斯数据库查询库表-华为云
- GaussDB查看表大小_GaussDB查询表空间_高斯数据库查看表大小-华为云
- MRS备份恢复_MapReduce备份_数据备份
- BPM厂商_BPM代表什么意思_BPM和ERP
- VPC路由表_如何使用VPC路由表_控制路由-华为云
- 华为云域名价格表
- MapReduce服务_什么是ClickHouse_如何使用ClickHouse
- GaussDB查看表字段_GaussDB查看表所在节点_高斯数据库查看表字段-华为云
- MapReduce服务_如何使用MapReduce服务_MRS集群客户端安装与使用