clickhouse单机及集群快速部署

​ clickhouse列式存储DB由战斗民族俄罗斯程序员开发,由于其超高的查询性能,近来备受关注。

​ 之前的大数据分析,例如 Hadoop 家族由很多技术和框架组合而成,犹如一头大象被拆分后其实所剩下的价值也就是 HDFS、Kafka、Spark ,其他的几乎都没有任何价值。

​ 这些可以用 ClickHouse 一项技术代替。

​ 下面是100M数据集的跑分结果:ClickHouse比Vertia快约5倍,比Hive快279倍,比My SQL 快801倍;虽然对不同的SQL查询,结果不完全一样,但是基本趋势是一致的。ClickHouse跑分有多快?举个例子:ClickHouse 1秒,Vertica 5.42秒,Hive 279秒

​ clickhouse架构:

相关资料1

相关资料2

安装

clickhouse官网

首先安装工具包和秘钥:

1
2
sudo yum install yum-utils
sudo rpm --import https://repo.clickhouse.tech/CLICKHOUSE-KEY.GPG

针对RHEL/CentOS 用户,这里使用清华的镜像

新建 /etc/yum.repos.d/clickhouse.repo,内容为

1
2
3
4
[repo.yandex.ru_clickhouse_rpm_stable_x86_64]
name=clickhouse stable
baseurl=https://mirrors.tuna.tsinghua.edu.cn/clickhouse/rpm/stable/x86_64
enabled=1

然后进入安装,保持网络畅通即可:

1
sudo yum install clickhouse-server clickhouse-client

出现如下,则安装完成

1
2
3
4
已安装:
clickhouse-client-20.10.3.30-2.noarch clickhouse-common-static-20.10.3.30-2.x86_64 clickhouse-server-20.10.3.30-2.noarch

完毕!

需要先开启clickhouse服务,然后启动clickhouse客户端,常用命令:

1
2
3
4
5
6
7
8
9
10
11
# 关闭clickhouse服务
systemctl stop clickhouse-server.service

# 开启clickhouse服务
systemctl start clickhouse-server.service

# 查看clickhouse服务状态
systemctl status clickhouse-server.service

# 登陆客户端
clickhouse-client

单机部署

直接启动clickhouse客户端即可。

常见错误

集群部署

在其他节点重复以上安装步骤。

新建编辑文件:vim /etc/metrika.xml,并分发至集群各个节点。

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
<yandex>
<clickhouse_remote_servers>
<perftest_3shards_1replicas>
<shard>
<internal_replication>true</internal_replication>
<replica>
<host>hadoop01</host>
<port>9000</port>
</replica>
</shard>
<shard>
<replica>
<internal_replication>true</internal_replication>
<host>hadoop02</host>
<port>9000</port>
</replica>
</shard>
<shard>
<internal_replication>true</internal_replication>
<replica>
<host>hadoop03</host>
<port>9000</port>
</replica>
</shard>
</perftest_3shards_1replicas>
</clickhouse_remote_servers>


<zookeeper-servers>
<node index="1">
<host>hadoop01</host>
<port>2181</port>
</node>

<node index="2">
<host>hadoop02</host>
<port>2181</port>
</node>
<node index="3">
<host>hadoop03</host>
<port>2181</port>
</node>
</zookeeper-servers>

<macros>
<replica>hadoop01</replica>
</macros>


<networks>
<ip>::/0</ip>
</networks>


<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>

在各个节点重新启动clickhouse服务,然后开启客户端,并验证:select * from system.clusters;

出现集群各个节点说明部署成功。

1
2
3
4
5
6
7
SELECT *
FROM system.clusters

┌─cluster──────────────────────────────────────┬─shard_num─┬─shard_weight─┬─replica_num─┬─host_name─┬─host_address──┬─port─┬─is_local─┬─user────┬─default_database─┬─errors_count─┬─estimated_recovery_time─┐
│ perftest_3shards_1replicas │ 111 │ hadoop01 │ 192.168.150.490001default │ │ 00
│ perftest_3shards_1replicas │ 211 │ hadoop02 │ 192.168.150.590000default │ │ 00
│ perftest_3shards_1replicas │ 311 │ hadoop03 │ 192.168.150.690000default
Donate
  • Copyright: Copyright is owned by the author. For commercial reprints, please contact the author for authorization. For non-commercial reprints, please indicate the source.

扫一扫,分享到微信

微信分享二维码
  • Copyrights © 2020-2021 ycfn97
  • Visitors: | Views:

请我喝杯咖啡吧~

支付宝
微信