Okay, I have updated the document: https://docs.google.com/document/d/1zKp_kqfoYgfmvfZ3DcNVMIXoYdxAsbe73eu98KEe3a8/edit?usp=sharing
> 2024年6月28日 下午2:05,Jingsong Li <jingsongl...@gmail.com> 写道: > > Can you update the google doc? > > On Fri, Jun 28, 2024 at 2:02 PM guanshi <1649067...@qq.com.invalid> wrote: >> >> I have taken your optimization suggestions, if there is only one value, >> offset will be negative, and its position is the inverse of the negative >> value, this situation does not require serialization of roaringBitmap. >> >>> 2024年6月28日 下午12:50,Jingsong Li <jingsongl...@gmail.com> 写道: >>> >>> if there is one value, what is size of the roaringbitmap? >>> >>> guanshi <1649067...@qq.com.invalid>于2024年6月28日 周五11:25写道: >>> >>>> Sorry, I forgot about the situation where there is only one null value, >>>> your design does not need to be changed. >>>> >>>>> 2024年6月28日 上午10:53,guanshi <1649067...@qq.com> 写道: >>>>> >>>>> Null value offset is not necessary because null value bitmap can be >>>> placed at the beginning of body. >>>>> >>>>>> 2024年6月27日 下午6:46,Jingsong Li <jingsongl...@gmail.com> 写道: >>>>>> >>>>>> Thanks guanshi for starting this discussion. >>>>>> >>>>>> I saw your suggestion in the document regarding omitting certain >>>>>> fields. The question is whether we should introduce a compact format. >>>>>> >>>>>> Indeed, there may be situations where there are many values, and >>>>>> introducing a compact format makes sense. >>>>>> >>>>>> Consider: >>>>>> >>>>>> -- head >>>>>> version: 1 byte >>>>>> row count: 4 bytes int >>>>>> non-null value bitmap number: 4 bytes int >>>>>> has null value: 1 byte >>>>>> null value offset: 4 bytes if has null value >>>>>> value x: var bytes for any data type (as >>>>>> bitmap identifier) >>>>>> offset: 4 bytes int >>>>>> >>>>>> -- body >>>>>> serialized bitmap1 >>>>>> serialized bitmap2 >>>>>> serialized bitmap3 >>>>>> >>>>>> Optimization: >>>>>> >>>>>> Offset can be a negative number, and when it is negative, it >>>>>> represents that there is only one value, and its position is the >>>>>> inverse of the negative value. >>>>>> >>>>>> Best, >>>>>> Jingsong >>>>>> >>>>>> On Thu, Jun 27, 2024 at 3:50 PM guanshi <1649067...@qq.com.invalid> >>>> wrote: >>>>>>> >>>>>>> Hello, this is the bitmap index format I designed, and I hope to >>>> discuss it with everyone: >>>>>>> >>>> https://docs.google.com/document/d/1zKp_kqfoYgfmvfZ3DcNVMIXoYdxAsbe73eu98KEe3a8/edit?usp=sharing >>>>> >>>> >>>> >>> >>