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 > > > >