**1\. 写在前面**
(1)如果你的业务预算或机器资源有限,强烈不推荐使用clickhouse,因为这套架构成本比较高。
(2)最小集群部署所需机器:ck节点需要2台256G内存/40c cpu物理机,磁盘使用SSD,加上3台zookeeper和2台chproxy应用主机或者云主机。
(3)Clickhouse自带了丰富的功能来应对复杂的业务场景和大数据量,所以在使用期间需要运维和开发侧都投入人力对这些功能(表引擎类型)学习和掌握。
**2\. 业务在数据层的表现**
(1)业务大多数是读请求,存储宽表,无大字段,较少的并发(单台100-200qps左右)。
(2)数据批写入(1000条以上,线上业务建议5w-10w),不修改或少修改已添加的数据。
(3)无事务要求,对数据一致性要求低。
(4)对于简单查询,允许延迟大约50毫秒,每一个查询除了一个大表外都很小。
(5)处理单个查询时需要高吞吐量(每个服务器每秒高达数十亿行)。
**3.具体业务场景**
(1)用户行为分析,精细化运营分析:日活,留存率分析,路径分析,有序漏斗转化率分析,Session分析等;
(2)实时日志分析,监控分析;
(3)实时数仓。
- 导读
- 概述
- 第一章 安装部署
- 1.1. docker安装clickhouse
- 第二章 使用实践与规范
- 2.1. ClickHouse应用场景
- 2.2. 表引擎选择
- 2.2.1. MergeTree表引擎
- 2.2.2. ReplicatedMergeTree表引擎
- 2.2.3. ReplacingMergeTree表引擎
- 2.2.4. SummingMergeTree表引擎
- 2.2.5. Aggregatingmergetree表引擎
- 2.3. 开发规范
- 2.4. 集群架构
- 2.4.1. 常用架构
- 2.4.2. zookeeper的关键作用
- 2.4.3. chproxy
- 2.5. 客户端工具选择
- 2.6. 可用性说明
- 2.7. 集群配置参数调优
- 第三章 数据类型&语法以及常用函数
- 3.1. 基础数据类型
- 3.2. SQL函数
- 3.3. DDL与DML基本语法
- 3.4. UPDATE 和 DELETE操作
- 3.4.1. 数据UPDATE和DELETE操作示例
- 3.4.2. 数据的实时更新操作(Real-time UPDATE)
- 第四章 clickhouse实战篇
- 4.1. JDBC操作clickhouse
- 4.2. clickhouse集成mybatis