一种适用于网管系统的OneID生成方法及生成器技术方案

技术编号:35183683 阅读:27 留言:0更新日期:2022-10-12 17:53
本发明专利技术公开了一种适用于网管系统的OneID生成方法及生成器,涉及网络大数据技术领域。该方法包括:创建端口信息与端口信息ID的一对一映射关系,并存储于数据库中;当需要生成网管系统的OneID时,接收传入的对应的网元ID、盘ID和端口信息的值;根据数据库中存储的端口信息与端口信息ID的映射关系,将传入的端口信息转换成对应的端口信息ID;若传入的盘ID/网元ID不为空,则将盘ID/网元ID与转换成的端口信息ID进行组合,生成OneID;若盘ID和网元ID均为空,则直接将转换成的端口信息ID作为OneID。本发明专利技术不但能够简便高效的生成OneID,而且能在保证OneID绝对唯一的同时还支持一对一映射关系。系。系。

【技术实现步骤摘要】
一种适用于网管系统的OneID生成方法及生成器


[0001]本专利技术涉及网络大数据
,具体来讲是一种适用于网管系统的OneID(唯一身份标识)生成方法及生成器。

技术介绍

[0002]随着网络规模越来越大,网络产生的数据也向海量发展。网管系统对数据采集、管理、分析能力已凸显短板,而网络大数据无论是数据体量和质量,还是对数据的查询、计算和查询性能都有了更高的要求。所以引入了大数据的思维和技术来求解。将网络数据导入到大数据系统进行分析,通过分析报表能提高网络运维人员的工作效率、降低运营成本。
[0003]在网管系统的数据分析中,大多以具体端口进行聚类或者连接查询分析,具体端口的确定涉及到三个内部标识:网元ID(Ne

ID),盘ID(Board

ID),端口信息(port

Key)。前两个是int类型,在原系统中已保证了唯一性,且互相唯一,端口信息(port

Key)是字符串类型,其长度不定,且存在一定的重复性。
[0004]在计算分析时,三个等值连接条件性能低于单个等值连接条件,字符串类型的等值连接效率是低于数字类型的,且由于port

Key长度不定导致有些过长的port

Key等值连接时效率很差从而使得整体效率不理想。于是,为了解决这一问题,提出了将三个内部标识映射成大数据系统中的唯一ID(OneID)且保证二者之间一对一映射关系的设想。
[0005]目前,各知名的OneID生成器都是利用时间戳采用随机算法实现。由于是基于时间戳生成,会导致在不同时间生成时,会出现相同三个内部标识映射出不同的多个唯一ID(OneID),出现一对多的映射关系,即现有方案只能保证唯一,不支持一对一映射关系,存在重复性且缓存量大等问题。

技术实现思路

[0006]本专利技术的目的在于提供一种适用于网管系统的OneID生成方法及生成器,不但能够简便高效的生成OneID,而且能在保证OneID绝对唯一的同时还支持一对一映射关系。
[0007]为达到以上目的,第一方面,本专利技术实施例提供一种适用于网管系统的OneID生成方法,该方法包括:
[0008]创建端口信息与端口信息ID的一对一映射关系,并存储于数据库中;
[0009]当需要生成网管系统的OneID时,接收传入的对应的网元ID、盘ID和端口信息的值;
[0010]根据所述数据库中存储的端口信息与端口信息ID的映射关系,将传入的端口信息转换成对应的端口信息ID;
[0011]若传入的盘ID/网元ID不为空,则将盘ID/网元ID与转换成的端口信息ID进行组合,生成OneID;若盘ID和网元ID均为空,则直接将转换成的端口信息ID作为OneID。
[0012]作为一个优选的实施方案,所述端口信息为字符串类型,所述端口信息ID为int类型;所述创建端口信息与端口信息ID一对一映射关系,并存储于数据库中,包括以下操作:
[0013]选择数据库,并在所选数据库上创建自增序列;
[0014]通过调用所述自增序列,为每个端口信息生成一对一对应的端口信息ID;
[0015]将端口信息与对应的端口信息ID,以键值对形式存入缓存,形成端口信息与端口信息ID的一对一映射关系。
[0016]作为一个优选的实施方案,所述端口信息为字符串类型,所述端口信息ID为int类型;所述创建端口信息与端口信息ID一对一映射关系,并存储于数据库中,包括一下操作:
[0017]采用md5算法生成端口信息对应的端口信息ID;
[0018]查询当前端口信息与所生成的端口信息ID,是否已在数据库中有重复的对应关系,若是,则将所生成的端口信息ID加1,再重复进行查重操作,直至成功存入数据库;若否,则直接存入数据库。
[0019]作为一个优选的实施方案,将盘ID/网元ID与转换成的端口信息ID进行组合,生成OneID时,所生成的OneID采用64位long类型;且所述OneID的前32位为盘ID/网元ID,后32位为端口信息ID。
[0020]作为一个优选的实施方案,所述若传入的盘ID/网元ID不为空,则将盘ID/网元ID与转换成的端口信息ID进行组合,生成OneID,包括以下操作:
[0021]判断传入的盘ID是否为空;
[0022]若不为空,则将传入的盘ID左移32位后与端口信息ID相加组合,生成OneID;
[0023]若为空,则判断传入的网元ID是否为空,若不为空,则将传入的网元ID左移32位后与端口信息ID相加组合,生成OneID。
[0024]第二方面,本专利技术实施例还提供一种适用于网管系统的OneID生成器,该OneID生成器包括创建模块、接收模块、转换模块以及生成模块;
[0025]所述创建模块,用于:创建端口信息与端口信息ID的一对一映射关系,并存储于数据库中;
[0026]所述接收模块,用于:当需要生成网管系统的OneID时,接收传入的对应的网元ID、盘ID和端口信息的值;
[0027]所述转换模块,用于:根据所述数据库中存储的端口信息与端口信息ID的映射关系,将传入的端口信息转换成对应的端口信息ID;
[0028]所述生成模块,用于:若传入的盘ID/网元ID不为空,则将盘ID/网元ID与转换成的端口信息ID进行组合,生成OneID;若盘ID和网元ID均为空,则直接将转换成的端口信息ID作为OneID。
[0029]作为一个优选的实施方案,所述端口信息为字符串类型,所述端口信息ID为int类型;所述创建模块创建端口信息与端口信息ID一对一映射关系,并存储于数据库中,包括以下操作:
[0030]选择数据库,并在所选数据库上创建自增序列;
[0031]通过调用所述自增序列,为每个端口信息生成一对一对应的端口信息ID;
[0032]将端口信息与对应的端口信息ID,以键值对形式存入缓存,形成端口信息与端口信息ID的一对一映射关系。
[0033]作为一个优选的实施方案,所述端口信息为字符串类型,所述端口信息ID为int类型;所述创建模块创建端口信息与端口信息ID一对一映射关系,并存储于数据库中,包括以
下操作:
[0034]采用md5算法生成端口信息对应的端口信息ID;
[0035]查询当前端口信息与所生成的端口信息ID,是否已在数据库中有重复的对应关系,若是,则将所生成的端口信息ID加1,再重复进行查重操作,直至成功存入数据库;若否,则直接存入数据库。
[0036]作为一个优选的实施方案,所述生成模块将盘ID/网元ID与转换成的端口信息ID进行组合,生成OneID时,所生成的OneID采用64位long类型;且所述OneID的前32位为盘ID/网元ID,后32位为端口信息ID。
[0037]作为一个优选的实施方案,所述生成模块将盘ID/网元ID与转换成的端口信本文档来自技高网
...

【技术保护点】

【技术特征摘要】
1.一种适用于网管系统的OneID生成方法,其特征在于,该方法包括:创建端口信息与端口信息ID的一对一映射关系,并存储于数据库中;当需要生成网管系统的OneID时,接收传入的对应的网元ID、盘ID和端口信息;根据所述数据库中存储的端口信息与端口信息ID的映射关系,将传入的端口信息转换成对应的端口信息ID;若传入的盘ID/网元ID不为空,则将盘ID/网元ID与转换成的端口信息ID进行组合,生成OneID;若盘ID和网元ID均为空,则直接将转换成的端口信息ID作为OneID。2.如权利要求1所述的适用于网管系统的OneID生成方法,其特征在于,所述端口信息为字符串类型,所述端口信息ID为int类型;所述创建端口信息与端口信息ID一对一映射关系,并存储于数据库中,包括以下操作:选择数据库,并在所选数据库上创建自增序列;通过调用所述自增序列,为每个端口信息生成一对一对应的端口信息ID;将端口信息与对应的端口信息ID,以键值对形式存入缓存,形成端口信息与端口信息ID的一对一映射关系。3.如权利要求1所述的适用于网管系统的OneID生成方法,其特征在于,所述端口信息为字符串类型,所述端口信息ID为int类型;所述创建端口信息与端口信息ID一对一映射关系,并存储于数据库中,包括一下操作:采用md5算法生成端口信息对应的端口信息ID;查询当前端口信息与所生成的端口信息ID,是否已在数据库中有重复的对应关系,若是,则将所生成的端口信息ID加1,再重复进行查重操作,直至成功存入数据库;若否,则直接存入数据库。4.如权利要求1所述的适用于网管系统的OneID生成方法,其特征在于:将盘ID/网元ID与转换成的端口信息ID进行组合,生成OneID时,所生成的OneID采用64位long类型;且所述OneID的前32位为盘ID/网元ID,后32位为端口信息ID。5.如权利要求4所述的适用于网管系统的OneID生成方法,其特征在于,所述若传入的盘ID/网元ID不为空,则将盘ID/网元ID与转换成的端口信息ID进行组合,生成OneID,包括以下操作:判断传入的盘ID是否为空;若不为空,则将传入的盘ID左移32位后与端口信息ID相加组合,生成OneID;若为空,则判断传入的网元ID是否为空,若不为空,则将传入的网元ID左移32位后与端口信息ID相加组合,生成OneID。6.一种适用于网管系统的OneID生成器,其特征在于,该OneID生成器包括创建模块、接收模块、转换模块以...

【专利技术属性】
技术研发人员:李平
申请(专利权)人:烽火通信科技股份有限公司
类型:发明
国别省市:

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

1