赞
踩
目前,在做项目时,遇到使用oracle数据库进行大表查询分析时,查询比较慢,而且随着表数据逐渐积累,数据量过亿(按月估计)。架构师针对几个关键要点(非实时数据、核心场景查询分析、对事务要求低、数据量极大、结构化数据)分析后建议考虑数据仓库的建设思路,考虑选择一种OLAP分析型数据替代现有的oracle来解决项目问题;同时也增强项目可扩展性,能做到无缝对接数据仓库。
针对架构师提到的几个核心考虑要素,对比了市场现有的OLAP数据库特点,最终选择clickhouse作为本次实验数据库。
ClickHouse的优势:
ClickHouse的限制:
ClickHouse的使用现状:
ClickHouse 是近年来备受关注的开源列式数据库,主要用于数据分析(OLAP)领域。目前国内社区火热,各个大厂纷纷跟进大规模使用:
在 1 亿数据集体量的情况下,ClickHouse 的平均响应速度是 Vertica 的 2.63 倍、InfiniDB 的 17 倍、MonetDB 的 27 倍、Hive 的 126 倍、MySQL 的 429 倍以及Greenplum 的 10 倍。详细的测试结果可以查阅:https://clickhouse.tech/benchmark/dbms/。
ClickHouse 非常适用于商业智能领域(也就是我们所说的 BI 领域),除此之外,它也能够被广泛应用于广告流量、Web、App 流量、电信、金融、电子 商务、信息安全、网络游戏、物联网等众多其他领域。
1台linux服务器,CentOS6.7,4核16G
登录官网下载:https://packages.clickhouse.com/tgz/lts/
安装包列表如下:
clickhouse-common-static-22.8.9.24-amd64.tgz
clickhouse-common-static-dbg-22.8.9.24-amd64.tgz
clickhouse-server-22.8.9.24-amd64.tgz
clickhouse-client-22.8.9.24-amd64.tgz
安装步骤说明:
- # 1、创建安装用户
- # -- 创建用户组
- groupadd clickhouse
- # -- 创建用户
- useradd -m -d /home/clickhouse -g clickhouse clickhouse
- # -- 修改密码
- passwd clickhouse
-
- # 2、设置clickhouse执行sudo权限
- # -- root用户下开放编辑文件权限
- chmod u+w /etc/sudoers
- # -- 编辑sudoers文件,找到rootALL=(ALL)ALL在它下面添加XXXALL=(ALL)ALL**(XXX是你的用户名)**
- vim /etc/sudoers
- clickhouse ALL=(ALL) ALL
- # -- root用户下收回编辑文件权限
- chmod u-w /etc/sudoers
-
- # 3、下载安装包 https://packages.clickhouse.com/tgz/lts/
- clickhouse-common-static-22.8.9.24-amd64.tgz
- clickhouse-common-static-dbg-22.8.9.24-amd64.tgz
- clickhouse-server-22.8.9.24-amd64.tgz
- clickhouse-client-22.8.9.24-amd64.tgz
-
- # 4、上传至108服务器目录/home/clickhouse
-
- # 5、切换至clickhouse用户
- su - clickhouse
-
- # 6、安装应用
- cd /home/clickhouse
-
- tar -xzvf clickhouse-common-static-22.8.9.24-amd64.tgz
- sudo clickhouse-common-static-22.8.9.24/install/doinst.sh
-
- tar -xzvf clickhouse-common-static-dbg-22.8.9.24-amd64.tgz
- sudo clickhouse-common-static-dbg-22.8.9.24/install/doinst.sh
-
- tar -xzvf clickhouse-server-22.8.9.24-amd64.tgz
- sudo clickhouse-server-22.8.9.24/install/doinst.sh
- ## 根据提示设置数据库用户密码 123456
- ## 根据提示设置允许所有网络连接
-
- tar -xzvf clickhouse-client-22.8.9.24-amd64.tgz
- sudo clickhouse-client-22.8.9.24/install/doinst.sh
-
- # 7、修改配置文件
- # -- (1) 修改/etc/clickhouse-server/config.xml监听地址,如果没权限就修改权限后修改
- vim /etc/clickhouse-server/config.xml
-
- << BLOCK
- 把
- <!-- <listen_host>0.0.0.0</listen_host> -->
- 修改为
- <listen_host>0.0.0.0</listen_host>
- BLOCK
-
- # -- (2) 修改文件/etc/clickhouse-server/config.d/listen.xml,修改为以下配置
- vim /etc/clickhouse-server/config.d/listen.xml
- <clickhouse>
- <listen_host>0.0.0.0</listen_host>
- </clickhouse>
-
-
- # 8、启动服务 切换至clickhouse用户
- # -- Start clickhouse-server with:
- sudo clickhouse start
-
- # -- Start clickhouse-client with:
- clickhouse-client --password
-
- # 9、状态查询
- sudo service clickhouse-server status
-
- # 10、日志查询(日志目录设置见config.xml)
- tail -100f /var/log/clickhouse-server/clickhouse-server.err.log
-
- # 11、卸载服务
- rm -fr /etc/clickhouse*
- rm -fr /var/lib/clickhouse*
- rm -fr /var/log/clickhouse*
- rm -fr /usr/bin/clickhouse*
- rm -fr /var/run/clickhouse*
clickhouse-client登录后,可以通过命令查看 select * from system.clusters
推荐使用DBeaver工具访问,工具安装参考文章无法联网的情况下,dbeaver离线安装数据库驱动-clickhouse-易微帮
错误1
Code: 210. DB::NetException: Connection refused (localhost:9000). (NETWORK_ERROR)
错误2
<Error> Application: DB::Exception: Listen [::]:8123 failed: Poco::Exception. Code: 1000, e.code() = 0, DNS error: EAI: Address family for hostname not supported (version 23.3.2.37 (official build))
错误基本都是由于配置信息错误引起,如果服务器不支持IPV6,请详细参考章节第五部分安装步骤7修改配置文件。
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。