本发明涉及网络技术领域,尤其涉及一种业务数据识别码生成方法。
背景技术:
随着互联网企业的业务规模不断增大,业务变得越来越复杂,要处理的数据也越来越多,运营商通过互联网向用户提供各种应用服务(overthetop,ott)数据,ott集中管理平台为满足业务需要汇聚多方系统数据,在对海量数据进行处理时,容易出现数据冲突,搜索效率低的问题。
现有技术中,通过序号自增或随机数生成方式生成id编码,基于id编码对海量数据进行处理,然而,当需要汇聚多个系统的数据时,自增的id方式可能会产生数据冲突或自增数值范围超限,随机数方式生成的id编码没有规则,搜索效率低、浪费存储空间。
技术实现要素:
本发明提供了一种业务数据识别码生成方法,以解决现有技术中在对海量数据进行处理时,容易出现数据冲突,搜索效率低的问题。
本发明实施例提供了一种业务数据识别码生成方法,所述方法包括:
数据网关获取接口信息,所述接口信息中包含验证信息和第一业务数据;
所述数据网关将所述第一业务数据处理成第二业务数据,并将所述第二业务数据和所述验证信息发送至运营商服务器;
所述运营商服务器根据所述验证信息判断所述接口信息是否安全,如果是,则获取所述第二业务数据的区域编码信息和运营商编码信息;
根据所述区域编码信息和运营商编码信息生成所述第二业务数据的授权码;
根据所述授权码生成所述第二业务数据的识别码。
进一步的,所述数据网关将所述第一业务数据处理成第二业务数据具体包括:
所述数据网关对所述第一业务数据进行协议转换处理;
将协议转换处理后的第一业务数据按照预设规则进行过滤处理,得到第二业务数据。
进一步的,在根据所述区域编码信息和运营商编码信息生成所述第二业务数据的授权码之后,所述方法还包括:
所述运营商服务器对所述授权码的有效性进行验证。
进一步的,在根据所述授权码生成所述第二业务数据的识别码之前,所述方法还包括:
生成毫秒级时间戳。
进一步的,所述根据所述授权码生成所述第二业务数据的识别码具体包括:
将所述授权码和所述毫秒级时间戳进行合成处理,得到所述识别码。
进一步的,所述运营商服务器根据所述验证信息判断所述接口信息是否安全具体包括:
所述运营商服务器获取签名信息,判断所述签名信息与所述验证信息是否匹配,所述签名信息包括时间戳、随机数、访问方法、访问方法参数。
进一步的,在将所述第二业务数据和所述验证信息发送至运营商服务器之前,所述方法还包括:
所述数据网关判断所述第二业务数据是否具有许可权限。
进一步的,所述将所述第二业务数据和所述验证信息发送至运营商服务器具体包括:
将具有许可权限的第二业务数据和所述验证信息发送给所述运营商服务器。
进一步的,所述第一业务数据具体为ott业务数据。
本发明实施例提供的业务数据识别码生成方法,数据网关获取接口信息,接口信息中包含验证信息和第一业务数据;数据网关将第一业务数据处理成第二业务数据,并将第二业务数据和验证信息发送至运营商服务器;运营商服务器根据验证信息判断接口信息是否安全,如果是,则获取第二业务数据的区域编码信息和运营商编码信息;根据区域编码信息和运营商编码信息生成第二业务数据的授权码;根据授权码生成第二业务数据的识别码。本发明实施例提供的方法,能够有效解决多方媒体数据汇聚时可能产生的冲突;生成的识别码具有更少的编码位数,较全球唯一编码长度缩短10位,存储成本降低三分之一;生成的编码本身含业务规则,提高了搜索效率,降低了数据库压力;生成的编码串可读出区域信息、运营商信息、生成时间等信息。
附图说明
图1为本发明实施例提供的业务数据识别码生成方法的流程图。
具体实施方式
为了使本发明的目的、技术方案和优点更加清楚,下面将结合附图对本发明作进一步地详细描述,显然,所描述的实施例仅仅是本发明一部份实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其它实施例,都属于本发明保护的范围。
下面结合图1所示的业务数据识别码生成方法流程图,对本发明实施例提供的业务数据识别码生成方法进行详细说明。
如图1所示,本发明提供的业务数据识别码生成方法主要包括如下步骤:
步骤101,数据网关获取接口信息。
其中,接口信息中包含验证信息和第一业务数据。第一业务数据具体为ott业务数据。ott业务数据可以是第三方媒资信息库信息,即最新的节目,例如,电视剧、电影、综艺、动漫等ott最新内容。验证信息为第三方媒资系统应用程序编程接口(applicationprogramminginterface,api)信息。
第三方媒资系统接收到用户终端发送的数据获取请求之后,根据用户终端发送的数据获取请求从媒资信息库中获取对应的ott业务数据发送给数据网关。
步骤102,数据网关将第一业务数据处理成第二业务数据,并将第二业务数据和验证信息发送至运营商服务器。
具体的,数据网关接收到第一业务数据后进行拆包、然后进行通信协议内容翻译转换,对数据包的原地址、目的地址和端口号、网络协议进行授权,并对转换后的内容按照预设规则进行过滤,去除无用的、不安全的数据后得到第二业务数据进行存储。然后将第二业务数据和api接口信息发送到运营商服务器。
其中,运营商服务器具体包括运营商ott业务中心或地方平台,例如,中国移动、联通、电信、铁通的合作商服务器,可以包括一个服务器或者多个服务器组成的服务器集群。
在将第二业务数据和验证信息发送至运营商服务器之前,数据网关判断第二业务数据是否具有许可权限。将具有许可权限的第二业务数据和验证信息发送给运营商服务器。对于不具有许可权限的第二业务数据进行拦截或者丢弃处理。
步骤103,运营商服务器根据验证信息判断接口信息是否安全。
具体的,运营商服务器调用预先存储的签名信息,判断签名信息与api接口信息是否匹配,签名信息包括secretid及secretkey,由时间戳、随机数、访问方法、访问方法参数等组成。其中对时间戳进行验证包括,在预设的与时间戳临近的时间范围内,判断接口信息是否有效。其中,具体的与时间戳临近的时间范围可以根据需要进行设置。
如果运营商服务器预先存储的签名信息与api接口信息匹配,则说明该接口是合法的,则执行步骤104,否则丢弃数据。
步骤104,获取第二业务数据的区域编码信息和运营商编码信息。
区域编码信息是指ott业务数据接收方的区域编码信息。区域编码和运营商编码是从运营商服务器获取到的。
区域编码信息4位,可以采用省会电话区号(4位,不足4位前面补0),也可以自定义特殊编码。例如,区域编码(省/直辖市):
北京0010
江西0791
系统自定义特殊编码:
公网0000
运营商编码规则:运营商编码信息2位的,可以采用运营商首字母大写,也可以自定义特殊编码,例如:
dx电信
yd移动
lt联通
gw国网
系统自定义特殊编码:
pb公网
jz集中管理平台
步骤105,根据区域编码信息和运营商编码信息生成第二业务数据的授权码。
授权码为区域运营商编码,由区域编码+运营商编码组成,例如:
0010yd北京移动
0791yd江西移动
0000jz集中管理平台
在根据区域编码信息和运营商编码信息生成第二业务数据的授权码之后,运营商服务器对授权码的有效性进行验证。如果授权码经验证是有效的,则进行后续识别码的生成。
步骤106,根据授权码生成第二业务数据的识别码。
在根据所述授权码生成所述第二业务数据的识别码之前,需要生成毫秒级时间戳。
数据库可以通过以下函数获取当前13位毫秒级时间戳:
publicstaticlonggettimestamp(){
java.util.datedate=newjava.util.date();
returndate.gettime();
}
将授权码和毫秒级时间戳进行合成,得到识别码。
识别码编码规则采用区域运营商编码+毫秒级时间戳,总长度为19位,这样可以避免不同区域生成的id重复问题,例如:
集中平台生成的对象id为:0000jz1496448492772
江西移动生成的id为:0791yd1496448661732
运营商中心服务器生成ott业务数据的识别码的规则如下:
由集中管理平台汇入的业务数据采用集中平台的id编码规则重新生成id,记录源id和提供方cp(在集中管理平台新建一个中心播控的cp,同时标识哪些cp是与本系统直接有关的)。集中管理平台id编码为:中心区域编码+中心运营商编码+毫秒级时间戳。
运营商地方服务器生成ott业务数据的识别码的规则如下:
由地方平台汇入的业务数据采用本地区域运营商的id编码规则生成id,记录源id和提供方cp(对应的cp由本地平台按其id规则创建)地方区域id编码为:某个地方区域编码+地方运营商编码+毫秒级时间戳。
本发明实施例提供的业务数据识别码生成方法,数据网关获取接口信息,接口信息中包含验证信息和第一业务数据;数据网关将第一业务数据处理成第二业务数据,并将第二业务数据和验证信息发送至运营商服务器;运营商服务器根据验证信息判断接口信息是否安全,如果是,则获取第二业务数据的区域编码信息和运营商编码信息;根据区域编码信息和运营商编码信息生成第二业务数据的授权码;根据授权码生成第二业务数据的识别码。本发明实施例提供的方法,能够有效解决多方媒体数据汇聚时可能产生的冲突;生成的识别码具有更少的编码位数,较全球唯一编码长度缩短10位,存储成本降低三分之一;生成的编码本身含业务规则,提高了搜索效率,降低了数据库压力;生成的编码串可读出区域信息、运营商信息、生成时间等信息。
专业人员应该还可以进一步意识到,结合本文中所公开的实施例描述的各示例的单元及算法步骤,能够以电子硬件来实现,在上述说明中已经按照功能一般性地描述了各示例的组成及步骤。对每个特定的应用来使用不同方法来实现所描述的功能,但是这种实现不应认为超出本发明实施例的范围。具体地,所述运算和控制部分都可以通络逻辑硬件实现,其可以是使用集成电路工艺制造出来的逻辑集成电路,本实施例对此不作限定。
结合本文中所公开的实施例描述的方法或算法的步骤可以用硬件、处理器执行的软件模块,或者二者的结合来实施。软件模块可以置于随机存储器(ram)、内存、只读存储器(rom)、电可编程rom、电可擦除可编程rom、寄存器、硬盘、可移动磁盘、cd-rom、或技术领域内所公知的任意其它形式的存储介质中。
以上所述的具体实施方式,对本发明实施例的目的、技术方案和有益效果进行了进一步详细说明,所应理解的是,以上所述仅为本发明实施例的具体实施方式而已,并不用于限定本发明实施例的保护范围,凡在本发明实施例的精神和原则之内,所做的任何修改、等同替换、改进等,均应包含在本发明实施例的保护范围之内。