有道无术,术可成;有术无道,止于术
ClickHouse 是一个用于联机分析(OLAP)的列式数据库管理系统(DBMS)。
-
OLTP:是传统的关系型数据库,主要操作增删改查,强调事务一致性,比如银行系统、电商系统。 -
OLAP:是仓库型数据库,主要是读取数据,做复杂数据分析,侧重技术决策支持,提供直观简单的结果。

https://clickhouse.tech/docs/zh/
①Mac 下的 Clickhouse 安装
https://blog.csdn.net/qq_24993831/article/details/103715194
②数据迁移:从 MySQL 到 ClickHouse
ClickHouse 支持 MySQL 大多数语法,迁移成本低,目前有五种迁移方案:
-
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')
③性能测试对比
性能测试对比如下图:

④数据同步方案
临时表如下:

新建 Temp 中间表,将 MySQL 数据全量同步到 ClickHouse 内 Temp 表,再替换原 ClickHouse 中的表,适用数据量适度,增量和变量频繁的场景。
开源的同步软件推荐 Synch,如下图:

⑤ClickHouse 为什么快?
有如下几点:
-
只需要读取要计算的列数据,而非行式的整行数据读取,降低 IO cost。 -
同列同类型,有十倍压缩提升,进一步降低 IO。 -
Clickhouse 根据不同存储场景,做个性化搜索算法。
①ClickHouse 与 MySQL 数据类型差异性

②删除或更新是异步执行,只保证最终一致性

-
ClickHouse官方手册 CK -
ClickHouse在携程酒店应用 蔡岳毅 -
ClickHouse引擎怎么选 Roin123
作者:起个帅的名
免责申明,信息来源于互联网,仅供学习参考,不可用于商业用途!
0 条评论