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 来访问

相关推荐
SelectDB技术团队7 小时前
从 ClickHouse、Druid、Kylin 到 Doris:网易云音乐 PB 级实时分析平台降本增效
大数据·数据仓库·clickhouse·kylin·实时分析
risc1234565 天前
【ClickHouse】RollingBitmap
clickhouse
斯特凡今天也很帅5 天前
clickhouse如何查看操作记录,从日志来查看写入是否成功
数据库·clickhouse
袖清暮雨10 天前
ClickHouse讲解
大数据·数据库·数据仓库·clickhouse·oracle
江枫渔火L12 天前
使用clickhouse的ReplacingMergeTree引擎表做活跃玩家信息表
数据库·clickhouse
潇凝子潇14 天前
Doris ClickHouse Greenplum 对比
clickhouse·doris·greenplum
递归尽头是星辰15 天前
ClickHouse核心优势分析与场景实战
大数据·数据仓库·clickhouse·实时分析·实时查询
鲁尼的小宝贝16 天前
基于Flink的数据中台管理平台
java·大数据·clickhouse·flink·yarn
问道飞鱼21 天前
【大数据知识】今天聊聊Clickhouse部署方案
大数据·clickhouse·部署
Fireworkitte23 天前
ClickHouse详解
clickhouse