您的位置:首页 > 大数据 > Hadoop

Hadoop生态圈-CentOs7.5单机部署ClickHouse

2018-10-10 19:42 746 查看

                Hadoop生态圈-CentOs7.5单机部署ClickHouse

                                        作者:尹正杰

版权声明:原创作品,谢绝转载!否则将追究法律责任。

 

 

  到了新的公司,认识了新的同事,生产环境也得你去适应新的集群环境,我新入职的公司的大数据开发同时并不看好hbase,而是对clickhouse青睐有加,听他们口头把ClickHouse吹的那么的出神入化,听的我是有种迫不及待想要对它一探究竟。

  最新的一手资料请参考官网:https://clickhouse.yandex/

 

一.ClickHouse的独特功能 1>.真正的面向列的DBMS   因为有些系统可以单独存储不同列的值,但由于它们针对其他场景进行了优化,因此无法有效地处理分析查询。例如HBase,BigTable,Cassandra和HyperTable。在这些系统中,您将获得大约每秒十万行的吞吐量,但不会达到每秒数亿行。   值得注意的是,ClickHouse是一个数据库管理系统,而不是一个数据库。ClickHouse允许在运行时创建表和数据库,加载数据和运行查询,而无需重新配置和重新启动服务器。 2>.适用于在线查询   低延迟意味着可以在没有延迟的情况下处理查询,而无需在加载用户界面页面的同一时间提前准备答案。换句话说,在线。 3>.数据复制和数据完整性支持   使用异步多主机复制。写入任何可用副本后,数据将分发到后台的所有剩余副本。系统在不同的副本上维护相同的数据。在大多数故障后自动执行恢复,在复杂情况下 - 半自动执行。  4>.支持近似计算   ClickHouse提供了各种交易性能准确度的方法:   4.1>.聚合函数,用于近似计算不同值,中位数和分位数的数量。   4.2>.基于数据的一部分(样本)运行查询并获得近似结果。在这种情况下,从磁盘中检索的数据比例较少。   4.2>.为有限数量的随机密钥运行聚合,而不是为所有密钥运行聚合。在数据中密钥分发的某些条件下,这在使用较少资源的同时提供了相当准确的结果。 5>.SQL支持   ClickHouse支持基于SQL的声明性查询语言,在许多情况下与SQL标准相同。支持的查询包括GROUP BY,ORDER BY,FROM,IN和JOIN子句中的子查询以及标量子查询。不支持从属子查询和窗口函数。   以上说明并非我个人对ClickHouse的夸张说法,而是摘自官方文档的说明,可能官网对其软件有一定的夸张手法在里面,官网文档请参考:https://clickhouse.yandex/docs/en/   二.部署ClickHouse   推荐的安装方法参考:https://github.com/Altinity/clickhouse-rpm-install。文档写的头头是道,说下载一个安装shell脚本,结果你按照它的方法做会跑出一系列的坑,我在这里就不吐槽了,喜欢被虐的小伙伴可以去试试,我生产环境用的操作系统基本上都是CentOs的操作系统,我参考了网上多位网友的部署方法,找到了一种最简单有效的部署方法,我这里一句把坑给大家踩过了,只要我的按照步骤来部署就能成功! 1>.操作平台介绍
[root@yinzhengjie ~]# ip a | grep  global | awk '{print $2}' | awk -F '/' '{print $1}'
10.1.2.105
[root@yinzhengjie ~]#
[root@yinzhengjie ~]# hostname
yinzhengjie
[root@yinzhengjie ~]#
[root@yinzhengjie ~]# cat /proc/cpuinfo| grep "processor"| wc -l
14
[root@yinzhengjie ~]#
[root@yinzhengjie ~]# cat /proc/cpuinfo| grep "cpu cores"| uniq
cpu cores       : 7
[root@yinzhengjie ~]#
[root@yinzhengjie ~]# cat /proc/cpuinfo| grep "physical id"| sort| uniq| wc -l
2
[root@yinzhengjie ~]#
[root@yinzhengjie ~]# cat /proc/cpuinfo | grep name | cut -f2 -d: | uniq -c
14  Intel(R) Xeon(R) CPU E5-2620 v4 @ 2.10GHz
[root@yinzhengjie ~]#
[root@yinzhengjie ~]# free -m
total        used        free      shared  buff/cache   available
Mem:          11852        1406        8309         103        2136        9954
Swap:          6015           0        6015
[root@yinzhengjie ~]#
[root@yinzhengjie ~]# free -g
total        used        free      shared  buff/cache   available
Mem:             11           1           8           0           2           9
Swap:             5           0           5
[root@yinzhengjie ~]#
[root@yinzhengjie ~]#
[root@yinzhengjie ~]# uname -r
3.10.0-862.el7.x86_64
[root@yinzhengjie ~]#
[root@yinzhengjie ~]# uname -m
x86_64
[root@yinzhengjie ~]#
[root@yinzhengjie ~]# cat /etc/redhat-release
CentOS Linux release 7.5.1804 (Core)
You have new mail in /var/spool/mail/root
[root@yinzhengjie ~]#

[root@yinzhengjie ~]# ps -aux|grep clickhouse-server | grep -v grep
root     24998  0.1  0.3 319708 43372 pts/1    Sl+  20:48   0:00 clickhouse-server --config-file=/etc/clickhouse-server/config.xml
[root@yinzhengjie ~]#
[root@yinzhengjie ~]# kill -9 `ps -aux|grep clickhouse-server | grep -v grep | awk '{print $2}'`
[root@yinzhengjie ~]#
You have new mail in /var/spool/mail/root
[root@yinzhengjie ~]#
[root@yinzhengjie ~]# ps -aux|grep clickhouse-server | grep -v grep
[root@yinzhengjie ~]#
[root@yinzhengjie ~]#
[root@yinzhengjie ~]# kill -9 `ps -aux|grep clickhouse-server | grep -v grep | awk '{print $2}'`

5>.为clickhouse-server添加守护进程

[root@yinzhengjie ~]# nohup clickhouse-server --config-file=/etc/clickhouse-server/config.xml >/var/log/yinzhengjie-clickhouse.log 2>&1 &           #会在"/var/log"目录下生成一个名称为“yinzhengjie-clickhouse.log”的日志文件
[1] 26619
[root@yinzhengjie ~]#
[root@yinzhengjie ~]# tail -10f /var/log/yinzhengjie-clickhouse.log
2018.10.10 20:58:53.981429 [ 1 ] <Information> Application: Listening http://[::1]:8123
2018.10.10 20:58:53.981479 [ 1 ] <Information> Application: Listening tcp: [::1]:9999
2018.10.10 20:58:53.981516 [ 1 ] <Information> Application: Listening interserver: [::1]:9009
2018.10.10 20:58:53.981554 [ 1 ] <Information> Application: Listening http://10.1.2.105:8123
2018.10.10 20:58:53.981590 [ 1 ] <Information> Application: Listening tcp: 10.1.2.105:9999
2018.10.10 20:58:53.981624 [ 1 ] <Information> Application: Listening interserver: 10.1.2.105:9009
2018.10.10 20:58:53.981796 [ 1 ] <Information> Application: Ready for connections.
2018.10.10 20:58:55.973241 [ 2 ] <Debug> ConfigReloader: Loading config `/etc/clickhouse-server/config.xml'
2018.10.10 20:58:55.977391 [ 2 ] <Warning> ConfigProcessor: Include not found: clickhouse_remote_servers
2018.10.10 20:58:55.977455 [ 2 ] <Warning> ConfigProcessor: Include not found: clickhouse_compression
2018.10.10 20:59:09.185410 [ 3 ] <Trace> TCPConnectionFactory: TCP Request. Address: 10.1.2.105:41874
2018.10.10 20:59:09.185660 [ 3 ] <Debug> TCPHandler: Connected ClickHouse client version 1.1.54236, user: default.
2018.10.10 20:59:18.439436 [ 3 ] <Debug> executeQuery: (from 10.1.2.105:41874) select now()
2018.10.10 20:59:18.440437 [ 3 ] <Trace> InterpreterSelectQuery: FetchColumns -> Complete
2018.10.10 20:59:18.440867 [ 3 ] <Debug> executeQuery: Query pipeline:
Expression
Expression
One

2018.10.10 20:59:18.441657 [ 3 ] <Information> executeQuery: Read 1 rows, 1.00 B in 0.002 sec., 510 rows/sec., 510.97 B/sec.
2018.10.10 20:59:18.441764 [ 3 ] <Debug> MemoryTracker: Peak memory usage (for query): 1.00 MiB.
2018.10.10 20:59:18.441804 [ 3 ] <Debug> MemoryTracker: Peak memory usage (for user): 1.00 MiB.
2018.10.10 20:59:18.441849 [ 3 ] <Debug> MemoryTracker: Peak memory usage (total): 1.00 MiB.
2018.10.10 20:59:18.441882 [ 3 ] <Information> TCPHandler: Processed in 0.003 sec.

 

  好啦~分享就到这里了,时间过的咋就这么快呢?一不小心就晚上九点多了,关于ClickHouse集群的部署等我后期研究好了也会分享给大家的,我得赶紧走了,不然赶不上地铁啦!晚安,兄弟们!

内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: