本文承接PackedInts(一),继续介绍剩余的内容。
压缩实现
在上一篇文章中,我们介绍了Lucene 7.5.0中PackedInts提供的几种压缩实现,如下所示:
表1:
数据分布 | 是否有填充bit | 是否单block单值 | 实现类 |
一个block | 否 | 是 | Direct8 Direct16 Direct32 Direct64 |
是 | 否 | Packed64SingleBlock1 Packed64SingleBlock2 Packed64SingleBlock3 Packed64SingleBlock4 Packed64SingleBlock5 Packed64SingleBlock6 Packed64SingleBlock7 Packed64SingleBlock8 Packed64SingleBlock9 Packed64SingleBlock10 Packed64SingleBlock12 Packed64SingleBlock16 Packed64SingleBlock21 Packed64SingleBlock32 | |
两个block | 否 | 否 | Packed64 |
三个block | 否 | - | Packed8ThreeBlocks Packed16ThreeBlocks |
看这里:https://www.amazingkoala.com.cn/Lucene/yasuocunchu/2019/1218/119.html