ClickHouse安装

一,ClickHouse介绍

ClickHouse 是一个开源的列式数据库管理系统(Column-Oriented DBMS),由俄罗斯的 Yandex 公司开发。它最初是为 Yandex 的 Metrica 分析服务设计的,用于处理大规模的数据分析任务。ClickHouse 能够提供快速的数据查询性能,即使在处理非常大的数据集时也能保持高效。

特点:

  • 高性能:ClickHouse 针对读取操作进行了优化,能够以极高的速度处理复杂的查询。
  • 列式存储:与传统的行式存储不同,列式存储可以更有效地压缩数据,并且在进行聚合查询时效率更高。
  • SQL 支持:虽然 ClickHouse 使用的是 SQL 的一个变种,但它支持大多数标准 SQL 查询,使得用户能够轻松地执行复杂的数据分析任务。
  • 分布式处理:ClickHouse 可以部署为分布式集群,支持跨多个节点的数据存储和处理,这有助于提高系统的可扩展性和可用性。
  • 易用性:安装和配置相对简单,同时也提供了丰富的文档和支持。
  • 灵活的数据类型:支持多种数据类型,包括数组、嵌套结构等,使得数据模型更加灵活。

应用场景:

  • 实时数据分析
  • 日志分析
  • 业务智能报告
  • 在线广告系统
  • 用户行为分析

关于列式存储:

1)采用行式存储时,数据在磁盘上的组织结构为:

每条记录的信息是在一起的,多条记录依次排列。
好处是想查某个人所有的属性时,可以通过一次磁盘查找加顺序读取就可以。但是当想查所有人的年龄时,需要不停的查找,或者全表扫描才行,遍历的很多数据都是不需要的。

2)采用列式存储时,数据在磁盘上的组织结构为:


按列来存储数据,同一个字段(列)的数据是放在一起的。

好处是如果要对某一列的数据做聚合计算的时候,只需要查询这个字段的数据块,而不是全表查询。

3)列式存储的好处:

  • 对于列的聚合、计数、求和等统计操作原因优于行式存储;
  • 由于某一列的数据类型都是相同的,针对于数据存储更容易进行数据压缩,每一列选择更优的数据压缩算法,大大提高了数据的压缩比重;
  • 由于数据压缩比更好,一方面节省了磁盘空间,另一方面对于cache也有了更大的发挥空间

二,安装

1,下载安装包

地址:https://packages.clickhouse.com/rpm/stable/

wget https://repo.yandex.ru/clickhouse/rpm/stable/x86_64/clickhouse-client-21.7.3.14-2.noarch.rpm
wget https://repo.yandex.ru/clickhouse/rpm/stable/x86_64/clickhouse-common-static-21.7.3.14-2.x86_64.rpm
wget https://repo.yandex.ru/clickhouse/rpm/stable/x86_64/clickhouse-common-static-dbg-21.7.3.14-2.x86_64.rpm
wget https://repo.yandex.ru/clickhouse/rpm/stable/x86_64/clickhouse-server-21.7.3.14-2.noarch.rpm

2,安装rpm

rpm -ivh *.rpm

3,配置

cd /etc/clickhouse-server/

vi config.xml

把<listen_host>0.0.0.0</listen_host>注释打开,保证服务能被非本机访问到。

这个配置文件中,ClickHouse有一些默认路径配置:

数据文件路径:<path>/var/lib/clickhouse/</path>

日志文件路径:<log>/var/log/clickhouse-server/clickhouse-server.log</log>

4,在安装过程中,会默认创建用户组和用户

clickhouse/clickhouse

5,在安装过程中,会让你输入一个密码,这个在后面登录的时候会用到。

6,启动

systemctl start clickhouse-server

7,查看启动状态

systemctl status clickhouse-server

ClickHouse默认会有两个端口,在本机上连是9000端口,通过连接工具用http连接是8123端口。

三,连接

1,使用clickhouse-client -m连接

clickhouse-client -m

如果报错:

(1)Code: 210. DB::NetException: Connection refused (localhost:9000). (NETWORK_ERROR)

就需要修改config.xml文件中的<listen_host>0.0.0.0</listen_host>,打开注释,重启

(2)Code: 516. DB::Exception: Received from localhost:9000. DB::Exception: default: Authentication failed: password is incorrect or there is no user with such name. (AUTHENTICATION_FAILED)

就需要加上密码,密码就是在安装步骤中设定的那个密码

clickhouse-client -m --password

如何免密:

cd /etc/clickhouse-server/users.d

删除下面的文件(defaultUser.xml)。

再连接的时候就不需要带密码了,clickhouse-client -m 就可以连接了。

2,数据库连接工具上连接

以DBeaver为例

填入主机IP,端口号是默认的8123.

因为我们没有密码,所以直接可以测试连接和完成保存了。

3,在浏览器连接

ClickHouse默认提供了一个WebUI工具,通过路径 IP:8123/play 来访问

相关推荐
Sais_Z2 小时前
ClickHouse的学习与了解
数据库·clickhouse
风中凌乱3 天前
ClickHouse-Backup的安装与部署
clickhouse
风中凌乱3 天前
clickhouse集群的安装与部署
clickhouse
白眼黑刺猬3 天前
ClickHouse从入门到企业级实战全解析课程简介
clickhouse
chenglin0167 天前
ClickHouse、Doris、OpenSearch、Splunk、Solr系统化分析
clickhouse·solr·lucene
慕y2747 天前
Java学习第一百一十七部分——ClickHouse
java·学习·clickhouse
zuozewei12 天前
随笔之 ClickHouse 列式分析数据库安装注意事项及基准测试
数据库·clickhouse
牛牛木有坏心眼(大数据进阶)13 天前
linux系统离线环境安装clickhouse客户端
linux·clickhouse
许心月13 天前
Clickhouse#表记录转换为insert语句
clickhouse
许心月13 天前
Clickhouse#记录隐藏字段
clickhouse