压缩雪花ID集合的数据结构、数据压缩方法和查找方法技术

技术编号:36086568 阅读:34 留言:0更新日期:2022-12-24 11:02
本发明专利技术提供了一种压缩雪花ID集合的数据结构、数据压缩方法和查找方法,涉及数据压缩的技术领域,该压缩雪花ID集合的数据结构包括至少一个数据桶;每个数据桶均包括相应的桶索引和若干个单个压缩雪花ID;桶索引为当前数据桶相对于业务系统开始时间戳的偏移量;当前单个压缩雪花ID的数据索引为当前单个压缩雪花ID与前一单个雪花ID的偏移量;单个压缩雪花ID包括:编码数据头和编码数据体;编码数据头用于存储压缩后的时间戳数据的长度和序列号数据的长度;编码数据体用于存储时间戳数据、机器码数据和序列号数据,该结构解决了现有压缩算法应用于雪花ID时压缩效果差的技术问题,达到了提高压缩比例和压缩稳定性的技术效果。到了提高压缩比例和压缩稳定性的技术效果。到了提高压缩比例和压缩稳定性的技术效果。

【技术实现步骤摘要】
压缩雪花ID集合的数据结构、数据压缩方法和查找方法


[0001]本专利技术涉及数据压缩
,尤其是涉及一种压缩雪花ID集合的数据结构、数据压缩方法和查找方法。

技术介绍

[0002]Snowflake是Twitter开源的分布式ID生成算法,结果是64bit的Long类型的ID,有着全局唯一和有序递增的特点。目前对雪花ID进行压缩通常使用传统的数据压缩算法,现有的数据压缩算法大致可以分为以下五类:变长编码(variable

length codes,VLC)、统计压缩(statistical compression)、字典编码(dictionary encodings)、上下文模型(context modeling)和多上下文模型(multicontext modeling),每类算法的变种在输入数据、算法性能、内存要求以及输出大小方面存在细微的差别,具体包括:Huffman编码、LZ族系(如串表压缩算法LZW)、算术编码等几种常见通用的数据压缩算法。
[0003]上述比较通用的压缩算法的压缩效果很大程度上受限于本文档来自技高网...

【技术保护点】

【技术特征摘要】
1.一种压缩雪花ID集合的数据结构,其特征在于,包括至少一个数据桶;每个所述数据桶均包括相应的桶索引和若干个单个压缩雪花ID;所述桶索引为当前所述数据桶相对于业务系统开始时间戳的偏移量;当前单个压缩雪花ID的数据索引为当前所述单个压缩雪花ID与前一单个雪花ID的偏移量;所述单个压缩雪花ID包括:编码数据头和编码数据体;所述编码数据头用于存储压缩后的时间戳数据占用位数和序列号数据占用位数;所述编码数据体用于存储时间戳数据、机器码数据和序列号数据。2.一种雪花ID的数据压缩方法,其特征在于,包括:将预先定义的雪花ID进行重组,生成单个压缩雪花ID;所述单个压缩雪花ID包括编码数据头和编码数据体;所述编码数据头用于存储压缩后的时间戳数据占用位数和序列号数据占用位数;所述编码数据体用于存储时间戳数据、机器码数据和序列号数据;基于每个所述单个压缩雪花ID生成对应的数字索引,并将若干个所述单个压缩雪花ID按照所述数字索引生成压缩雪花ID集合。3.根据权利要求2所述的方法,其特征在于,将预先定义的雪花ID进行重组,生成单个压缩雪花ID,包括:删除预先定义的雪花ID中未存储实际数据的位,生成编码数据体;基于所述编码数据体中存储的实际数据的连续位的占用数量,生成编码数据头;根据所述编码数据头和所述编码数据体组成所述单个压缩雪花ID。4.根据权利要求3所述的方法,其特征在于,所述预先定义的雪花ID包括:初始时间戳数据位、初始机器码数据位和初始序列号数据位;所述初始时间戳数据位包括:无效时间戳位和有效时间戳位;所述有效时间戳位用于存储实际时间戳数据;所述初始机器码数据位包括:无效机器码位和有效机器码位;所述有效机器码位用于存储实际机器码数据;所述初始序列号数据位包括:无效序列号位和有效序列号位;所述有效序列号位用于存储实际序列号数据;删除预先定义的雪花ID中未存储实际数据的位,生成编码数据体的步骤,包括:将所述初始时间戳数据位中的无效时间戳位删除,生成中间时间戳数据位;将所述初始机器码数据位中的无效机器码位删除,生成中间机器码数据位;将所述初始序列号数据位中的无效序列号位删除,生成中间序列号数据位;根据所述中间时间戳数据位、所述中间机器码数据位和所述中间序列号数据位,生成编码数据体。5.根据权利要求4所述的方法,其特征在于,基于所述编码数据体中存储的实际数据的连续位占用数量,生成编码数据头的步骤,包括:将所述实际时间戳数据占用的连续位的数量,作为所述中间时间戳数据位的编码,生成时间戳编码数据头;将所述实际序列号数据占用的连续位的数量,作为所述中...

【专利技术属性】
技术研发人员:常玉春张文杰
申请(专利权)人:宁波小遛共享信息科技有限公司
类型:发明
国别省市:

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1