Doris 中的bitmap 序列化格式说明如下:
c++ 序列化和反序列化的示例 在 be/src/util/bitmap_value.h
的BitmapValue::write()
BitmapValue::deserialize()
方法中, Java示例在 fe/fe-common/src/main/java/org/apache/doris/common/io/BitmapValue.java
中的serialize()
方法中。
HLL 格式说明
值 | 描述 |
---|---|
0 | HLL_DATA_EMPTY,空 HLL, 后面data 部分为空,整个序列化结果只有一个字节 |
1 | HLL_DATA_EXPLICIT, 后面1个字节 explicit 数据块个数,后面接多个数据块,每个数据块由8个字节长度和数据组成, |
2 | HLL_DATA_SPARSE,只存非0 值,后面4个字节 表示 register 个数, 后面连续多个 register 结构,每个register 由前面2个字节的index 和1个字节的值组成 |
3 | HLL_DATA_FULL ,表示所有16 1024个register都有值, 后面连续16 1024个字节的值数据 |
c++ 序列化和反序列化的示例 在 be/src/olap/hll.h
的serialize()
deserialize()
方法中, Java示例在 fe/fe-common/src/main/java/org/apache/doris/common/io/hll.java
中的serialize()
deserialize()
方法中。