ClickHouse入门
本文最后更新于 2023-10-12,文章内容可能已经过时。
ClickHouse:
一款查询引擎.
1.数据库基本概念:
1.1分类:
1.2 OLAP数据库:
1.3 sql:
1.4 数据库架构:
1.4.1解释器:
1.4.2分析器:
1.4.3优化器:
把ast变成一个一个的算子(执行计划).
1.4.4执行引擎:
1.4.5存储引擎:
2.列式存储:
2.1 行式存储与列式存储:
行式存储:每一行的顺序,连续的写到存储介质当中去.
列式存储:一列一列的写入.
2.2 列式存储的优点:
2.2.1 数据压缩:
比如主键在列上存储有某种规律(递增).
压缩算法:
2.2.2 聚合计算:
2.2.3 延迟物化:
把一种数据格式变成另一种数据格式。
2.2.4 向量化:
解释:
2.3 优缺点分析:
3.存储设计:
3.1 表定义和结构:
distable不存储数据,相当于view的功能.
localtable存储数据.
3.2 引擎架构:
bin存储数据,mrk存储索引.
3.3 索引设计:
3.3.1 hash index:
3.3.2 b-tree:
3.3.3 LSM tree:
稀疏索引:一些特定的数据,用于缩小查找范围.
3.4 索引实现:
普通的mark都存储的是这个mark中的最小值,但是由于最后一个mark并没有装满,为了获得确定的区间,primaryindex存储的是所有数据的最大值.
优化:二级索引:
3.5 数据合并:
3.6 数据查询:
4.应用场景:
map:kv.
5.总结:
评论
匿名评论
隐私政策
你无需删除空行,直接评论以获取最佳展示效果