建表语句及插入数据
create database test; CREATE TABLE test.test_log(date Date, log String) ENGINE = ReplicatedMergeTree(’/clickhouse/{cluster}/tables/test_log’, ‘{replica}’, date, (date,log), 8192) CREATE TABLE test.test_log_all (date Date,log String) ENGINE = Distributed(ch_cluster, ‘test’, ‘test_log’, rand()) insert into test.test_log (date,log) values (‘2018-03-13’, ‘zhangsan’);
查询结果
- 从两台机器的test_log 表中查数据都是一条,正常。
- 从test_log_all 表查数据是两条。 这是什么原因呀,表复制和集群的分片到底是怎么回事呀,忘大家指导一下。
metrika.xml 配置
<yandex> <clickhouse_remote_servers> <ch_cluster> <shard> <internal_replication>true</internal_replication> <replica> <host>appli002</host> <port>9011</port> </replica> </shard> <shard> <internal_replication>true</internal_replication> <replica> <host>appli004</host> <port>9011</port> </replica> </shard> </ch_cluster> </clickhouse_remote_servers> <macros> <cluster>ch_cluster</cluster> <replica>appli002</replica> </macros> <networks> <ip>::/0</ip> </networks> <zookeeper-servers> <node index=“1”> <host>appli002</host> <port>2181</port> </node> <node index=“2”> <host>appli004</host> <port>2181</port> </node> <node index=“3”> <host>appli005</host> <port>2181</port> </node> </zookeeper-servers> <clickhouse_compression> <case> <min_part_size>10000000000</min_part_size> <min_part_size_ratio>0.01</min_part_size_ratio> <method>lz4</method> </case> </clickhouse_compression> </yandex>