ClickHouse读书笔记(一)—ClickHouse的前世今生
第一章的内容是ClickHouse的诞生背景,相比其他数据库的优缺点。读此书时,我对一些数据库的概念没有认知,很容易被卡住,讲着讲着就不知道是在讲什么,特此,记录一些概念性的东西。
1、名词
- BI系统:商业智能系统,Business Intelligence。
- OLAP:联机分析处理,On-Line Analytical Processing。是数据仓库系统的主要应用,支持复杂的分析操作,侧重决策支持,并且提供直观易懂的查询结果。 强调数据分析,强调SQL执行市场,强调磁盘I/O,强调分区等。
- OLTP:联机事务处理,On-Line Transaction Processing。是传统的关系型数据库的主要应用,主要是基本的、日常的事务处理,例如银行交易。强调数据库内存效率,强调内存各种指标的命令率,强调绑定变量,强调并发操作。
- 数据立方体:通过对数据进行预处理,空间换时间,提升查询性能。
- ROLAP:Relational OLAP,关系型OLAP,直接使用关系模型构建,可以转换为SQL查询,粗暴理解为好多个group by之类的操作。
- MOLAP:Multidimensional OLAP,多维型OLAP。缓解ROLAP的性能问题,以空间换时间,类似索引预处理。
- HOLAP:Hybrid OLAP,混合架构的OLAP。ROLAP+MOLAP。
- Hadoop:大数据生态,有三个核心组件分别是是分布式存储、运算、调度。
- RAID(Redundant Arrays of Independent Drives)是磁盘阵列,是由很多价格较便宜的磁盘,组合成一个容量巨大的磁盘组,利用个别磁盘提供数据所产生加成效果提升整个磁盘系统效能。利用这项技术,将数据切割成许多区段,分别存放在各个硬盘上。
- IOPS:Input/Output Operations Per Second,每秒读写次数。
- SSD:Solid State Drives,固态硬盘。
- ClickHouse:全称Click Stream,Data WareHouse,点击流数据仓库。
2、ClickHouse不适用的场景
ClickHouse是高性能的OLAP数据库,不应该用于OLTP事务性操作的场景,有以下不足:
- 不支持事务
- 不擅长根据主键按行粒度进行查询(虽然支持),故不应该把ClickHouse当作Key-Value数据库使用。
- 不擅长按行删除数据库(虽然支持)