欢迎访问 生活随笔!

生活随笔

当前位置: 首页 > 运维知识 > 数据库 >内容正文

数据库

clickhouse mysql引擎_玩数据的,有必要搞搞这个大数据框架——ClickHouse

发布时间:2025/4/16 数据库 38 豆豆
生活随笔 收集整理的这篇文章主要介绍了 clickhouse mysql引擎_玩数据的,有必要搞搞这个大数据框架——ClickHouse 小编觉得挺不错的,现在分享给大家,帮大家做个参考.

一、 什么是ClickHouse?

ClickHouse是一个用于联机分析(OLAP)的列式数据库管理系统(DBMS)——开源的!。ClickHouse最初是一款名为Yandex.Metrica(俄罗斯最大的搜索引擎公司)的产品,主要用于WEB流量分析。ClickHouse的全称是Click Stream,Data WareHouse,简称ClickHouse。

二、为啥要搞ClickHouse呢? 搞数据分析,人家就是快!!!

2.1 ClickHouse 是列式数据库(具体原理请看下图)

列存储索引主要在下面三个特性上提升查询的性能:

  • 行存储使用逐行处理模式,每次只处理一行数据;而列存储索引使用批处理模式,每次处理一批数据行。
  • 行存储是逐行存储(Row Store),每一个Page存储多行数据,而列存储(Column Store)把数据表中的每一列单独存储在Page集合中,这意味着,Page集合中存储的是某一列的数据,而不是一行中所有列的数据。在读取数据时,行存储把一行的所有列都加载到内存,即使有些列根本不会用到;而列存储只把需要的列加载到内存中,不需要的列不会被加载到内存中。
  • 列存储索引自动对数据进行压缩处理,由于同一行的数据具有很高的相似性,压缩率很高,数据读取更快速。

行式数据库

列式数据库

2.2 ClickHouse 是性价比最高的列式数据库

上图列举了包含count、sum、group by、order by等情况的查询对比,同等条件下,ClickHouse的查询性能异常强悍:

是MySQL的839倍

是Greenplum的24倍

是Vertica的5倍

三、ClickHouse的基本尝试——Docker 安装 + Dbeaver客户端使用

3.1 ClickHouse 的Docker 安装

首先,创建Docker挂载目录

mkdir /data/clickhouse

然后,直接在命令行执行(Docker 的安装,请执行百度~):

docker run -d --name some-clickhouse-server --ulimit nofile=262144:262144 -p 9000:9000 -p 8123:8123 --volume=/data/clickhouse:/var/lib/clickhouse yandex/clickhouse-server

备注:/data/clickhouse挂载/var/lib/clickhouse

3.2 Clickhouse Dbweaver客户端的使用

直接到官网下载:https://dbeaver.io/download/

3.3 Clickhouse Python 程序的控制

首先,安装python对应的包

pip3 install --timeout 1000 clickhouse_driver

然后,通过Python实现增加,删除,修改,以及查询的功能

from clickhouse_driver import Client

client = Client('localhost')

res = client.execute('SHOW DATABASES')

print(res)

总结

以上是生活随笔为你收集整理的clickhouse mysql引擎_玩数据的,有必要搞搞这个大数据框架——ClickHouse的全部内容,希望文章能够帮你解决所遇到的问题。

如果觉得生活随笔网站内容还不错,欢迎将生活随笔推荐给好友。