查询速度提升200倍,ClickHouse到底有多快?
ClickHouse 是什么?
ClickHouse 是一个用于联机分析(OLAP)的列式数据库管理系统(DBMS)。
OLTP:是传统的关系型数据库,主要操作增删改查,强调事务一致性,比如银行系统、电商系统。
OLAP:是仓库型数据库,主要是读取数据,做复杂数据分析,侧重技术决策支持,提供直观简单的结果。
https://clickhouse.tech/docs/zh/
业务问题
ClickHouse 实践
①Mac 下的 Clickhouse 安装
https://blog.csdn.net/qq_24993831/article/details/103715194
②数据迁移:从 MySQL 到 ClickHouse
create table engin mysql,映射方案数据还是在 MySQL。
insert into select from,先建表,在导入。
create table as select from,建表同时导入。
csv 离线导入。
streamsets。
https://anjia0532.github.io/2019/07/17/mysql-to-clickhouse/
CREATE TABLE [IF NOT EXISTS] [db.]table_name ENGINE = Mergetree AS SELECT * FROM mysql('host:port', 'db', 'database', 'user', 'password')
③性能测试对比
性能测试对比如下图:
④数据同步方案
临时表如下:
⑤ClickHouse 为什么快?
有如下几点:
只需要读取要计算的列数据,而非行式的整行数据读取,降低 IO cost。
同列同类型,有十倍压缩提升,进一步降低 IO。
Clickhouse 根据不同存储场景,做个性化搜索算法。
遇到的坑
①ClickHouse 与 MySQL 数据类型差异性
②删除或更新是异步执行,只保证最终一致性
总结
ClickHouse官方手册 CK
ClickHouse在携程酒店应用 蔡岳毅
ClickHouse引擎怎么选 Roin123
最近热文
• 为什么 Java 中“1000==1000”为false,而”100==100“为true? • 太优秀了!26岁当上985博导,这才是乘风破浪的姐姐! • fastjson的作者,在阿里内网被喷,这到底是怎么一回事? • 为什么有些大公司技术弱爆了? 最近整理了一份大厂算法刷题指南,包括一些刷题技巧,在知乎上已经有上万赞。同时还整理了一份6000页面试笔记。关注下面公众号,在公众号内回复「刷题」,即可免费获取!回复「加群」,可以邀请你加入读者群!
明天见(。・ω・。)ノ♡
评论