开启掘金成长之旅!这是我参与「掘金日新计划 · 2 月更文挑战」的第 9 天,点击查看活动详情
生命不息,学习不止
题外话
周五了,没错,明天就放假了,大家都计划好去哪里玩了嘛,让我猜猜,是不是在家直接睡到中午,点个外卖,吃完睡到晚上,啊哈,被我猜中了吧,因为我就是这么打算的,哈哈哈哈
废话不多说,上货
索引
clickhouse的索引机制也非常的有特点,clickhouse索引支持主键索引和稀疏索引
主键索引和其他数据库索引没什么区别,会为每个数据片创建一个索引文件,索引文件包含每个索引索引行的主键值,clickhouse不要求主键唯一性,去重可以使用表引擎的几个tree实现
稀疏索引:clickhouse支持对任意列创建任意数量的索引,稀疏索引不会为了每个关键字创建索引记录,而是为记录文件的每个储存块位置设置一个键值对,找到具体数据需要从数据块中进行二次寻址
二次寻址一般是指二级索引,会比较区间最大值与最小值,不再则跳过
储存块是指一段数据中连续的的储存单元
大概可以参考下图
最左边的就是一级索引,存了多个储存块的二级索引起始值
绿色区域的第一列则是二级索引
一条查询进来先在一级索引进行比较,不符合直接跳跃下一索引,符合进入二级索引,再次重复比较过程
你以为结束了
下一篇我们继续挖坑
大家看完发现有什么错误,写在下面吧!跟我黑虎阿福比划比划!