[发明专利]一种分布式数据库主键生成方法及装置在审

专利信息
申请号: 201611228520.3 申请日: 2016-12-27
公开(公告)号: CN108241715A 公开(公告)日: 2018-07-03
发明(设计)人: 李文;司孝波;孙迁;叶国华;胡胜;王康龙 申请(专利权)人: 苏宁云商集团股份有限公司
主分类号: G06F17/30 分类号: G06F17/30
代理公司: 江苏圣典律师事务所 32237 代理人: 许峰
地址: 210042 江苏省*** 国省代码: 江苏;32
权利要求书: 查看更多 说明书: 查看更多
摘要:
搜索关键词: 主键 业务类型 分布式数据库 分布式环境 服务器获取 主机标识 时间戳 计数器 从配置文件 数据库技术 数据库主键 自定义配置 存储空间 节约资源 配置循环 网络交互 占用空间 拼接 节约 全局
【说明书】:

发明涉及数据库技术领域,公开了一种分布式数据库主键生成方法及装置,可以在分布式环境下生成全局唯一的主键,所述生成方法无需网络交互,节约资源,生成的主键占用空间小,有利于节约存储空间。所述生成方法,包括:从配置文件获取业务类型,所述业务类型可自定义配置;从服务器获取时间戳和主机标识;配置循环计数器,生成自增数字;根据所述获取的业务类型、所述从服务器获取的时间戳和主机标识,和所述生成的自增数字,拼接生成主键。本发明适用于分布式环境下数据库主键的生成。

技术领域

本发明涉及数据库技术领域,具体来说,涉及一种分布式数据库主键生成方法及装置。

背景技术

在单机系统中,例如一个关系型数据库管理系统(英文简称:MySQL)实例,唯一识别码(对应英文:unique ID)的生成是非常简单的,直接利用MySQL自带的“自增ID功能”就可以实现。但是,在一个存在多个分库分表(对应英文:Shards)的分布式系统中插入数据,例如在多个MySQL实例组成的一个集群中插入数据。这个问题会变得非常复杂,且高并发场景下的性能存在瓶颈。因此,依靠现有的数据库的锁机制来确保主键的唯一性,已经逐渐淡出业内。

此外,现有技术中还存在以下一些方法:比如,直接利用UUID.randomUUID(Java类库中实现全局唯一标识符的方法)接口来生成unique ID。但是该方法生成的ID有128bits。同时该方法生成的ID中也没有带时间戳(对应英文:Timestamp),没有排序,无法保证趋势递增,不具备业务含义,同时可读性很差,并且往往是使用字符串存储,查询的效率比较低,存储空间比较大。

再如,现有技术中还存在利用一个中心服务器来统一生成unique ID,例如Redis数据库。但这种方法存在单点问题,一旦中心服务器不可用,整个服务就瘫痪了。另外,网络交互的时间在高并发场景下的影响也会被放大,最为关键的是在集群规模及业务规模达到一定的量级下,这个中心服务器的性能得不到有效的保证和持续的扩展。

发明内容

本发明的目的在于,提供一种分布式数据库主键生成方法及装置,可以在分布式环境下生成主键,且该生成方法无需网络交互,节约资源;生成的主键占用空间小,有利于节约存储空间。

为达到上述目的,本发明实施例采用以下技术方案:

第一方面,本发明实施例提供一种分布式数据库主键生成方法,包括:

从配置文件获取业务类型,所述业务类型可自定义配置;

从服务器获取时间戳和主机标识;

配置循环计数器,生成自增数字;

根据所述获取的业务类型、所述从服务器获取的时间戳和主机标识,和所述生成的自增数字,拼接生成主键。

结合第一方面,作为第一种可能实现的方式,所述时间戳长度根据业务需求自定义调整,最小单位是毫秒。

结合第一方面,作为第二种可能实现的方式,所述主机标识由统一配置中心配置和维护,包括IP地址和端口号;或者,所述主机标识由程序运行获取,包括IP地址和进程ID。

结合第一方面,作为第三种可能实现的方式,所述配置循环计数器,生成自增数字,包括:配置循环计数器,从最小值向最大值自动生成自增数字,所述的自增数字为整数;当自增数字达到最大值后,所述循环计数器从最小值开始重新生成自增数字。

结合第一方面或第一方面的第三种可能实现的方式,作为第四种可能实现的方式,所述配置循环计数器,包括:创建原子计数器实例,并使用获取单元和自增单元来获取和设置值。

结合第一方面,作为第五种可能实现的方式,所述拼接生成主键在内存中运行。

第二方面,本发明实施例提供一种分布式数据库主键生成装置,包括:

下载完整专利技术内容需要扣除积分,VIP会员可以免费下载。

该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于苏宁云商集团股份有限公司,未经苏宁云商集团股份有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服

本文链接:http://www.vipzhuanli.com/pat/books/201611228520.3/2.html,转载请声明来源钻瓜专利网。

×

专利文献下载

说明:

1、专利原文基于中国国家知识产权局专利说明书;

2、支持发明专利 、实用新型专利、外观设计专利(升级中);

3、专利数据每周两次同步更新,支持Adobe PDF格式;

4、内容包括专利技术的结构示意图流程工艺图技术构造图

5、已全新升级为极速版,下载速度显著提升!欢迎使用!

请您登陆后,进行下载,点击【登陆】 【注册】

关于我们 寻求报道 投稿须知 广告合作 版权声明 网站地图 友情链接 企业标识 联系我们

钻瓜专利网在线咨询

周一至周五 9:00-18:00

咨询在线客服咨询在线客服
tel code back_top