一种数据处理的方法、系统及终端与流程

文档序号:12375383阅读:198来源:国知局
一种数据处理的方法、系统及终端与流程

本发明涉及计算机领域,特别涉及一种数据处理的方法、系统及终端。



背景技术:

目前在各企业的营收活动里面,需要观察和计算某些业务一个长会话里面的指标和业务数据,从而得到业务指标,但是现有技术的方案都只能对一个请求和一个应答的会话进行业务统计,这样对于各企业来说,仅通过一个会话的统计数据是不能够准确的得到业务指标,因此需要重复这样的操作,且还需要进行额外的汇总工作,使企业不能够快速便捷的获取业务指标,即目前还没有针对长会话的一种串联,统计机制,更没有支持的组包和学习机制;因此,如何对长会话内数据进行串联统计等数据处理,是本领域技术人员需要解决的技术问题。



技术实现要素:

本发明的目的是提供一种数据处理的方法、系统及终端,通过上述基于业务场景的长会话的数据解码,串联,可以全面客观地反馈业务指标和运行情况,为进一步有数据仓库分析提供了大量可靠的数据。

为解决上述技术问题,本发明提供一种数据处理的方法,包括:

收集指定长会话中各请求的数据包;其中,所述数据包包括请求数据包和应答数据包;

对所述数据包进行解码;

根据配置的串联标识,将解码后的数据包进行组包;

利用统计算法统计组包后数据的预定业务指标。

其中,利用统计算法统计组包后数据的预定业务指标,包括:

根据预定业务指标,设置对应的统计业务数据集合;

根据所述统计业务数据集合提取所述组包后数据中对应的数据,并将提取的数据存储到固态硬盘中。

其中,将提取的数据存储到固态硬盘中,包括:

将提取的数据作为map的值存储到所述固态硬盘中的hash表中对应位置。

其中,根据所述统计业务数据集合提取所述组包后数据中对应的数据之后,还包括:

根据配置的学习标识,判断提取的数据是否存在业务学习项;

若存在,则将所述业务学习项对应的数据作为map的值存储到所述固态硬盘中的hash表中对应位置。

其中,利用统计算法统计组包后数据的预定业务指标之前,还包括:

判断所述固态硬盘的共享存储中是否存有统计后的预定业务指标数据;

若存有,则将所述统计后的预定业务指标数据与所述组包后数据进行组合,并将组合后的数据作为组包后数据。

其中,对所述数据包进行解码之后,还包括:

根据配置的组包标识,判断解码后的数据包是否需要组包;

若不需要,则根据配置的串联标识,将解码后的数据包进行组包;

若需要,则保存所述解码后的数据包并等待进行组包的数据包,当收集到组包的数据包时,对所述组包的数据包进行解码后与保存的所述解码后的数据包进行组包。

本发明还提供一种数据处理的系统,包括:

收集模块,用于收集指定长会话中各请求的数据包;其中,所述数据包包括请求数据包和应答数据包;

解码模块,用于对所述数据包进行解码;

第一组包模块,用于根据配置的串联标识,将解码后的数据包进行组包;

统计模块,用于利用统计算法统计组包后数据的预定业务指标。

其中,所述统计模块,包括:

设置单元,用于根据预定业务指标,设置对应的统计业务数据集合;

统计单元,用于根据所述统计业务数据集合提取所述组包后数据中对应的数据,并将提取的数据存储到固态硬盘中。

其中,该系统还包括:

第一判断模块,用于根据配置的组包标识,判断解码后的数据包是否需要组包;

第二组包模块,与当解码后的数据包需要组包,则保存所述解码后的数据包并等待进行组包的数据包,当收集到组包的数据包时,对所述组包的数据包进行解码后与保存的所述解码后的数据包进行组包。

本发明还提供一种终端,包括:根据上述任一项所述的数据处理的系统。

本发明所提供的数据处理的方法,包括:收集指定长会话中各请求的数据包;其中,所述数据包包括请求数据包和应答数据包;对所述数据包进行解码;根据配置的串联标识,将解码后的数据包进行组包;利用统计算法统计组包后数据的预定业务指标;

可见,该方法通过对收集到的基于业务场景的长会话的数据包进行数据解码及串联,可以全面客观地反馈业务指标和运行情况,为进一步有数据仓库分析提供了大量可靠的数据;本发明还通过了一种数据处理的系统及终端,具有上述有益效果,在此不再赘述。

附图说明

为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据提供的附图获得其他的附图。

图1为本发明实施例所提供的数据处理的方法的流程图;

图2为本发明实施例所提供的数据处理的系统的结构框图。

具体实施方式

本发明的核心是提供一种数据处理的方法、系统及终端,通过上述基于业务场景的长会话的数据解码,串联,可以全面客观地反馈业务指标和运行情况,为进一步有数据仓库分析提供了大量可靠的数据。

为使本发明实施例的目的、技术方案和优点更加清楚,下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。

请参考图1,图1为本发明实施例所提供的数据处理的方法的流程图;该方法可以包括:

S100、收集指定长会话中各请求的数据包;其中,所述数据包包括请求数据包和应答数据包;

其中,在一些营收活动里面,需要观察和计算某些业务一个长会话里面的指标和业务数据,不仅仅针对一个请求包和应答包;因此,这里需要收集对应业务的长会话中的所有请求的数据包。例如利用服务进程收集数据包;这里为了能够收集完整的长会话中的数据包,因此这里数据包的来源可以来自PC端的数据,也包括来自手机终端和WEB端的数据。例如将从各种不同终端中得到的数据进行综合分析,可以从整体上对业务进行全面的了解。

例如在YY直播的营收活动(例如YY直播中一个直播间的礼物营收情况)里面,需要收集YY直播中直播间直播过程中在对应直播间产生长会话中的留言数据(例如聊天数据),其中,留言数据可以包括来自PC端登录该直播间产生留言数据,也包括来自手机终端登录该直播间产生留言数据和WEB端登录该直播间产生留言数据。

S110、对所述数据包进行解码;

其中,该步骤对收集到的数据包进行解码,得到解码后数据。

S120、根据配置的串联标识,将解码后的数据包进行组包;

其中,串联标识的配置是根据具体业务需求进行设置,该串联标识能够识别与业务相关的数据,利用这些标识去识别对应的需要进行串联的业务数据。例如具体的可以通过哪些标识可以组成对应的业务,将这些标识配置成一个集合,当解码后的数据满足该集合时中的选项时,即该数据可以进行串联组包。串联标识的复杂程度与业务的具体情况有关,例如当一个大的业务中具有很多子业务的时候其串联标识就会复杂因为其要包含各个子业务对应的业务标识,若仅针对其中一个子业务进行统计分析时,对应的该子业务的串联标识就会简单点,即该串联标识只需要可以表示该子业务即可。

下面举例说明上述过程,例如某业务用频道,PK名称,营运标识,PK结束时间作为标识该业务的串联标识,则查找解码后数据中存在这些串联标识中的若干的数据,将符合串联标识的数据进行组包。例如将YY直播中直播间的频道信息作为串联标识,则被解码后留言数据会在相应字段记录该留言数据对应的YY直播中直播间的频道信息(串联标识),将具有相同频道信息字段的数据包进行组包即将关于该直播间的对应时段内的所有留言数据进行组包。

S130、利用统计算法统计组包后数据的预定业务指标。

其中,统计组包后得到的长会话中有关业务的数据,得到预定业务指标,根据该预定业务指标可以对该业务进行分析(如KPI分析)。

具体的,要提取组包后数据中的与预定业务指标相对应的数据,需要预先设定好提取哪些数据即提取数据的指标集合,该提取数据的指标集合与具体的业务及对应预定业务指标有关。例如将YY直播中直播间的礼物种类、各礼物种类的数量、各礼物种类对应的收入、及该直播间的礼物总收入作为预定业务指标。

这里并不对具体的统计算法进行限定,用户可以根据具体指标的情况,以及业务特点选取合适的统计算法。

进一步,为了保证统计和串联的数据的可靠性,可将数据实时保存在硬盘里,可以保证数据包的串联和统计的数据不会丢失。

优选的,利用统计算法统计组包后数据的预定业务指标可以包括:

根据预定业务指标,设置对应的统计业务数据集合;

根据所述统计业务数据集合提取所述组包后数据中对应的数据,并将提取的数据存储到固态硬盘中。

具体的,在存储数据的时候需要选用合适的存储结构对数据进行存储,例如可以使用ssdb的hash、zset、set等存储结构对数据进行存储。

可选的,将提取的数据存储到固态硬盘中,包括:

将提取的数据作为map的值存储到所述固态硬盘中的hash表中对应位置。

具体的,可以将业务标识作为map的key记录,需要统计的数据作为map的value记录到ssdb的hash里面。

其中,这里的统计业务数据集合的获取可以根据选择存储结构(如hash表结构)中需要填充的数据种类进行获取。

基于上述技术方案,本发明实施例提的数据处理的方法,通过对收集到的基于业务场景的长会话的数据包进行数据解码及串联,可以全面客观地反馈业务指标和运行情况,为进一步有数据仓库分析提供了大量可靠的数据。

基于上述实施例,为了进一步提高预定业务指标统计的准确性和全面性,该实施例中根据所述统计业务数据集合提取所述组包后数据中对应的数据之后,还包括:

根据配置的学习标识,判断提取的数据是否存在业务学习项;

若存在,则将所述业务学习项对应的数据作为map的值存储到所述固态硬盘中的hash表中对应位置。

具体的,在向map里记录数据的时候,如果查找到里面的业务学习项,需要把相关业务识别项(比方小米手机里的某个版本号在某一个协议里面带了即小米手机版本号在一个业务会话里面会存在用户UID和小米标识对应小米版本号的对应关系下,就可以通过这个会话生成一批用户UID和小米识别码与小米版本号的关系,将它们记录到map里面,这样另一个会话里面虽然并没有记录小米版本号,但是可以通过上述map查询到这个用户的版本号,并将该版本号记录到统计项里面)记录到学习的map里面。

其中,通过设置学习标识该方法支持业务的自我学习,一个子业务可以通过另一个子业务获取相对应的业务数据。如果某些业务包并不具备相应的业务数据,那么可以根据其它会话给出的业务数据去自我学习,一方面保证各种终端的数据包最终能串联成功,另一方面也提供了些其它会话的业务数据给本会话使用,提高数据的全面性。

基于上述任意实施例,为了进一步解决多个进程里同一业务数据的串联和统计问题,该实施例中利用统计算法统计组包后数据的预定业务指标之前,还包括:

判断所述固态硬盘的共享存储中是否存有统计后的预定业务指标数据;

若存有,则将所述统计后的预定业务指标数据与所述组包后数据进行组合,并将组合后的数据作为组包后数据。

具体的,该步骤针对进程获取的长会话进行统计之前,可以先判断固态硬盘的共享存储中是否存有同一业务(同一串联标识或者存在串联标识集合中某一个标识对应的业务)对应的统计后的数据,若存在,则为了提高数据的准确性,将之前统计得到的数据与本次长会话得到数据进行组合后再重新进行统计,以更新预定业务指标。即当下一个数据包来了,按照相应的标识,找到map里的value,再把统计数据填进去。在当串联结束,开始做统计的时候,会把共享存储中相关业务的所有数据导出来,按统计算法给全面可靠的预定业务指标。

即该过程支持了多个进程间关联数据间可以做串联操作,即通过ssdb的共享存储可以解决多个进程里同一业务数据的串联和统计问题。

例如,在统计直播间对应的组包数据之前,先判断固态硬盘的共享存储中是否存在该直播间对应的数据(通过数据中的串联标识进行判断),若存在,则将该数据与组包数据进行重组后在进行预定业务指标的统计。

基于上述任意实施例,为了进一步解决组包数据的完整性问题,该实施例中对所述数据包进行解码之后,还包括:

根据配置的组包标识,判断解码后的数据包是否需要组包;

若不需要,则根据配置的串联标识,将解码后的数据包进行组包;

若需要,则保存所述解码后的数据包并等待进行组包的数据包,当收集到组包的数据包时,对所述组包的数据包进行解码后与保存的所述解码后的数据包进行组包。

具体的,根据组包标识判断解码后的数据包是否是完整的一个数据包,若是则不需要组包,若不是,则说明该数据包是一个分片还具有其他分片,将各个分片组合在一起才是一个完整的数据包。即如果发现这个数据包是需要组包的,那么保存这个数据包到ssdb里面,等下一个数据包来的时候,重新组成一个新的大数据包,然后再进行解码,串联和学习。即支持数据包的重新组包后再做解码,串联操作,很好解决了在某个业务点上数据包不完整,还没办法串联的情况。

基于上述技术方案,本发明实施例提的数据处理的方法,通过收集整个长会话里面的所有请求和应答数据包,然后对数据包进行解码,根据长会话标识串联,若数据包不完整,可以等待下一个包到后组包解码串联,最后将里面的统计指标和业务数据导出来,统计出的预定业务指标作为观察和KPI分析等的依据,即可以全面客观地反馈业务指标和运行情况,为进一步有数据仓库分析提供了大量可靠的数据。

下面对本发明实施例提供的数据处理的系统及终端进行介绍,下文描述的数据处理的系统及终端与上文描述的数据处理的方法可相互对应参照。

请参考图2,图2为本发明实施例所提供的数据处理的系统的结构框图;该系统可以包括:

收集模块100,用于收集指定长会话中各请求的数据包;其中,所述数据包包括请求数据包和应答数据包;

解码模块200,用于对所述数据包进行解码;

第一组包模块300,用于根据配置的串联标识,将解码后的数据包进行组包;

统计模块400,用于利用统计算法统计组包后数据的预定业务指标。

基于上述实施例,所述统计模块400包括:

设置单元,用于根据预定业务指标,设置对应的统计业务数据集合;

统计单元,用于根据所述统计业务数据集合提取所述组包后数据中对应的数据,并将提取的数据存储到固态硬盘中。

基于上述实施例,所述统计单元具体为将提取的数据作为map的值存储到所述固态硬盘中的hash表中对应位置的单元。

基于上述任意实施例,所述统计模块400还包括:

学习标识配置单元,用于根据配置的学习标识,判断提取的数据是否存在业务学习项;

学习数据存储单元,用于若提取的数据中存在业务学习项,则将所述业务学习项对应的数据作为map的值存储到所述固态硬盘中的hash表中对应位置。

基于上述任意实施例,该系统还包括:

第二判断模块,用于判断所述固态硬盘的共享存储中是否存有统计后的预定业务指标数据;

重组模块,用于若所述固态硬盘的共享存储中存有统计后的预定业务指标数据,则将所述统计后的预定业务指标数据与所述组包后数据进行组合,并将组合后的数据作为组包后数据。

基于上述任意实施例,该系统还包括:

第一判断模块,用于根据配置的组包标识,判断解码后的数据包是否需要组包;

第二组包模块,与当解码后的数据包需要组包,则保存所述解码后的数据包并等待进行组包的数据包,当收集到组包的数据包时,对所述组包的数据包进行解码后与保存的所述解码后的数据包进行组包。

基于上述技术方案,本发明实施例提的数据处理的系统,通过收集整个长会话里面的所有请求和应答数据包,然后对数据包进行解码,根据长会话标识串联,若数据包不完整,可以等待下一个包到后组包解码串联,最后将里面的统计指标和业务数据导出来,统计出的预定业务指标作为观察和KPI分析等的依据,即可以全面客观地反馈业务指标和运行情况,为进一步有数据仓库分析提供了大量可靠的数据。

本发明实施例还提供一种终端,包括:根据上述任意实施例所述的数据处理的系统。

说明书中各个实施例采用递进的方式描述,每个实施例重点说明的都是与其他实施例的不同之处,各个实施例之间相同相似部分互相参见即可。对于实施例公开的装置而言,由于其与实施例公开的方法相对应,所以描述的比较简单,相关之处参见方法部分说明即可。

专业人员还可以进一步意识到,结合本文中所公开的实施例描述的各示例的单元及算法步骤,能够以电子硬件、计算机软件或者二者的结合来实现,为了清楚地说明硬件和软件的可互换性,在上述说明中已经按照功能一般性地描述了各示例的组成及步骤。这些功能究竟以硬件还是软件方式来执行,取决于技术方案的特定应用和设计约束条件。专业技术人员可以对每个特定的应用来使用不同方法来实现所描述的功能,但是这种实现不应认为超出本发明的范围。

结合本文中所公开的实施例描述的方法或算法的步骤可以直接用硬件、处理器执行的软件模块,或者二者的结合来实施。软件模块可以置于随机存储器(RAM)、内存、只读存储器(ROM)、电可编程ROM、电可擦除可编程ROM、寄存器、硬盘、可移动磁盘、CD-ROM、或技术领域内所公知的任意其它形式的存储介质中。

以上对本发明所提供的数据处理的方法、系统及系统进行了详细介绍。本文中应用了具体个例对本发明的原理及实施方式进行了阐述,以上实施例的说明只是用于帮助理解本发明的方法及其核心思想。应当指出,对于本技术领域的普通技术人员来说,在不脱离本发明原理的前提下,还可以对本发明进行若干改进和修饰,这些改进和修饰也落入本发明权利要求的保护范围内。

当前第1页1 2 3 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1