[发明专利]一种生成及使用分布式唯一ID的方法在审
申请号: | 201810039637.X | 申请日: | 2018-01-16 |
公开(公告)号: | CN108322222A | 公开(公告)日: | 2018-07-24 |
发明(设计)人: | 李熊发 | 申请(专利权)人: | 四川斐讯信息技术有限公司 |
主分类号: | H03M7/40 | 分类号: | H03M7/40;G06F17/30 |
代理公司: | 上海硕力知识产权代理事务所(普通合伙) 31251 | 代理人: | 郭桂峰 |
地址: | 610100 四川省成*** | 国省代码: | 四川;51 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 数据中心 时间戳区间 存储空间 数值区间 压缩算法 应用场景 字符转换 压缩 映射 预设 拼接 转换 | ||
1.一种生成分布式唯一ID的方法,其特征在于,包括:
步骤S100将数字ID的bit位划分为n个区间,n>=4的整数,其中,所述n个区间至少包括:时间戳区间、数据中心ID区间、数据中心中节点ID区间和毫秒内自增数值区间;
步骤S200获取所述n个区间的值后,拼接所述n个区间的值,生成数字ID;
步骤S300压缩所述数字ID的长度,生成分布式唯一ID。
2.根据权利要求1所述生成分布式唯一ID的方法,其特征在于,所述步骤S300压缩所述数字ID的长度,生成分布式唯一ID,具体包括:
步骤S310设定数字和字符的映射关系;
步骤S320将所述数字ID映射为M进制字符串,所述M进制字符串为所述分布式唯一ID,其中M>10的整数。
3.根据权利要求1所述生成分布式唯一ID的方法,其特征在于,在所述步骤S100和步骤S200之间,进一步包括:
步骤S110定义每一所述区间的长度。
4.根据权利要求1所述生成分布式唯一ID的方法,其特征在于,在所述步骤S200获取所述n个区间的值后,拼接所述n个区间的值,生成数字ID,具体包括:
步骤S210通过预设算法,获取一所述区间的值;
步骤S220判断是否获取全部所述n个区间的值,若没有获取全部所述n个区间的值,则获取下一所述区间的值,执行步骤S210;否则,执行步骤S230;
步骤S230将每一所述区间的值转换为bit位表示的值,记为V1,V2,…,Vn;
步骤S240根据每一所述区间的长度对V1,V2,…,Vn进行移位填充运算,再将移位填充后的结果V1',V2',…,Vn'进行或运算,生成数字ID,Value_ID=V1'||V2'||…||Vn'。
5.根据权利要求4所述生成分布式唯一ID的方法,其特征在于,所述步骤S210通过预设算法,获取一所述区间的值,具体包括:
步骤S211获取所述时间戳区间的值,则所述时间戳区间的值为二进制表示的(Tn-Ts),所述Ts为起始时间和所述Tn为当前时间。
6.根据权利要求4所述生成分布式唯一ID的方法,其特征在于,所述步骤S210通过预设算法,获取一所述区间的值,具体包括:
步骤S212获取所述数据中心ID区间的值,所述数据中心ID区间的值等于数据库为每个数据中心分配唯一的数据中心ID。
7.根据权利要求4所述生成分布式唯一ID的方法,其特征在于,所述步骤S210通过预设算法,获取一所述区间的值,具体包括:
步骤S213获取所述数据中心中节点ID区间的值,所述数据中心中节点ID区间的值等于数据库为每数据中心的每工作服务器分配唯一的工作ID。
8.根据权利要求4所述生成分布式唯一ID的方法,其特征在于,所述步骤S210通过预设算法,获取一所述区间的值,具体包括:
步骤S214获取所述毫秒内自增数值区间的值。
9.一种使用分布式唯一ID的方法,其特征在于,具体包括:
获取数字和字符的映射关系;
将分布式唯一ID映射为数字ID,所述分布式唯一ID为M进制字符串,其中M>10的整数;
将所述数字ID的bit位划分为预设n个区间,以获取任一所述区间的值,所述n个区间至少包括:时间戳区间、数据中心ID区间、数据中心中节点ID区间和毫秒内自增数值区间。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于四川斐讯信息技术有限公司,未经四川斐讯信息技术有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201810039637.X/1.html,转载请声明来源钻瓜专利网。