遇到的问题:
Clickhouse本身是分布式的,数据要分布存储在不同的分片,来达到分布式计算的效果。那我们保存到Clickhouse的一个大Bitmap就要被拆分成n个小的Bitmap保存到不同的节点,而且要保证相同的offset在不同的Bitmap中都在相同的本地节点中,来达到本地碰撞计算的目的。RoaringBitmap压缩率越高那么保存起来越是节省资源,计算效率也会更快。
解决的思路和方向:
1、RoaringBitmap压缩的原理
RoaringBitmap本身会把数据按照一定的逻辑拆分成不同的小桶,那么保存数据时,没有offset段的那些小桶就不会被创建出来,通过这样的逻辑就实现了数据的压缩存储。
![](https://img.haomeiwen.com/i907347/13c95b7354425574.png)
网友评论