一种数据处理方法及装置与流程

文档序号:12673975阅读:192来源:国知局
一种数据处理方法及装置与流程

本发明涉及计算机技术领域,尤其涉及一种数据处理方法及装置。



背景技术:

随着业务的发展需要,O2O平台需要对接的设备种类越来越多。不同设备向到O2O平台的APP客户端传输数据时,因为这些数据的数据格式、传输形式、协议不同,APP客户端接收数据时必须适应每种设备的接口要求;另外,O2O平台的APP服务端会因随着用户提出的不同业务要求而采用不同数据配置方式,多形式的业务要求对O2O平台冲击较大。

传统的数据处理流程如图1和图2所示,APP客户端按照不同设备提供不同数据接口实现原始数据采集;APP客户端将不同的原始数据进行相应的数据转换后向APP服务端发送;APP服务端接收到转换后的数据并按设备的接口文档说明对数据进行解析处理后,将解析后的数据根据业务要求对进行数据过滤、业务处理,最后将数据发送到APP客户端进行展示。

然而,O2O平台需要对接的设备会增加、减少和变化,在实际的运营过程中,设备数量变化和设备类型变化会造成定制化的APP客户端无法及时跟随设备变化而变化;同时用户提出的业务要求数量和业务要求自身的变化也越来越多,定制化的APP服务端同样具有无法及时变化的弊端,影响了业务处理整体速度。另外,APP客户端同时处理不同设备输出的数据,会出现因为一部分数据异常导致整个业务的崩溃的情况,影响整个APP服务端系统的稳定。



技术实现要素:

为解决上述技术问题,本发明实施例提供一种数据处理方法及装置,以增强系统的灵活性和稳定性。

本发明实施例的技术方案是这样实现的:

本发明实施例提供一种数据处理方法,包括:

接收APP客户端发送的采集自不同类型设备的具有不同数据格式的第一数据,并将所述第一数据转换为统一数据格式的第二数据;

根据已配置完成的数据过滤策略,对所述第二数据进行过滤处理,得到包含有效数据的第三数据;

根据已配置完成的数据分发策略,将获取到的第三数据分发到不同的业务节点;

对各个业务节点的所述第三数据分别进行处理。

上述方案中,所述将所述第一数据转换为统一数据格式的第二数据,包括:

将每个所述不同类型设备的对外接口协议进行适配;

通过字段的映射策略将所述第一数据转换为统一数据格式的第二数据。

上述方案中,在所述接收APP客户端发送的采集自不同类型设备的具有不同数据格式的第一数据,并将所述第一数据转换为统一数据格式的第二数据后,所述方法还包括:

针对不同类型设备的第二数据分别进行数据过滤策略的配置。

上述方案中,在所述根据已配置完成的数据过滤策略,对所述第二数据进行过滤处理,得到包含有效数据的第三数据后,所述方法还包括:

根据不同的业务应用场景,对不同类型设备的第三数据进行数据分发策略的配置。

上述方案中,所述将获取到的第三数据分发到不同的业务节点,包括:

使用观察者模式或中间件技术将所述第三数据向对应的不同业务节点分发。

上述方案中,所述针对不同类型设备的第二数据分别进行数据过滤策略的配置,具体包括:

针对不同类型设备的第二数据使用主备模式的redis缓存进行数据过滤策略的配置。

上述方案中,所述根据不同的业务应用场景,对不同类型设备的第三数据进行数据分发策略的配置,具体包括:

根据不同的业务应用场景,使用主备模式的redis缓存对不同类型设备的第三数据进行数据分发策略的配置。

上述方案中,所述方法还包括:

记录数据处理过程中的过程数据到数据日志。

上述方案中,所述第一数据的数据格式包括json格式、数组格式和xml格式,所述统一数据格式为json格式。

上述方案中,所述设备为穿戴式运动设备,所述第一数据为运动数据。

本发明实施例提供一种数据处理装置,所述装置包括:

转换单元,用于接收APP客户端发送的采集自不同类型设备的具有不同数据格式的第一数据,并将所述第一数据转换为统一数据格式的第二数据;

过滤单元,用于根据已配置完成的数据过滤策略,对所述第二数据进行过滤处理,得到包含有效数据的第三数据;

分发单元,用于根据已配置完成的数据分发策略,将获取到的第三数据分发到不同的业务节点;

处理单元,用于对对各个业务节点的所述第三数据分别进行处理。

上述方案中,所述转换单元包括:

适配子单元,用于将每个所述不同类型设备的对外接口协议进行适配;

映射子单元,用于通过字段的映射策略将所述第一数据转换为统一数据格式的第二数据。

上述方案中,所述装置还包括:第一配置单元,用于针对不同类型设备的第二数据分别进行数据过滤策略的配置。

上述方案中,所述装置还包括:第二配置单元,用于根据不同的业务应用场景,对不同类型设备的第三数据进行数据分发策略的配置。

上述方案中,所述分发单元还用于:

使用观察者模式或中间件技术将所述第三数据向对应的不同业务节点分发。

上述方案中,所述第一配置单元还用于:

针对不同类型设备的第二数据使用主备模式的redis缓存进行数据过滤策略的配置。

上述方案中,所述第二配置单元还用于:

根据不同的业务应用场景,使用主备模式的redis缓存对不同类型设备的第三数据进行数据分发策略的配置。

上述方案中,所述装置还包括日志单元,所述日志单元用于记录数据处理过程中的过程数据日志。

上述方案中,所述第一数据的数据格式包括json格式、数组格式和xml格式,所述统一数据格式为json格式。

上述方案中,所述设备为穿戴式运动设备,所述第一数据为运动数据。

本发明实施例所提供的数据处理方法及装置,通过接收APP客户端发送的采集自不同类型设备的具有不同数据格式的第一数据,然后第一数据转换为统一数据格式的第二数据并对第二数据按照业务策略进行配置后分发到不同节点,使APP客户端仅进行数据采集和转发,由APP服务端统一实现数据的转换,并按照业务策略对数据进行业务配置,在改变输入设备和业务要求时无需进行二次开发,相比较现有技术,增强了系统的灵活性和稳定性。

附图说明

图1为现有技术中的数据处理流程示意图;

图2为现有技术中的工作流程示意图;

图3为本发明实施例数据处理方法的实现流程图;

图4为本发明实施例中的数据处理流程示意图;

图5为本发明实施例中工作流程示意图;

图6为本发明实施例中的连接协议接口类的示意图;

图7为本发明实施例中的第一设备的数据格式的示意图;

图8为本发明实施例中的第二设备的数据格式的示意图;

图9为本发明实施例中的统一的json数据格式的示意图;

图10为本发明实施例数据处理装置的组成结构示意图。

具体实施方式

为了能够更加详尽地了解本发明的特点与技术内容,下面结合附图对本发明的实现进行详细阐述,所附附图仅供参考说明之用,并非用来限定本发明。

图3为本发明实施例数据处理方法的实现流程图,如图3所示,本发明实施例提供的数据处理方法包括:

步骤301,接收APP客户端发送的采集自不同类型设备的具有不同数据格式的第一数据,并将第一数据转换为统一数据格式的第二数据;

步骤302,根据已配置完成的数据过滤策略,对第二数据进行过滤处理,得到包含有效数据的第三数据;

步骤303,根据已配置完成的数据分发策略,将获取到的第三数据分发到不同的业务节点;

步骤304,对各个业务节点的第三数据分别进行处理。

其中,在步骤301中,将第一数据转换为统一数据格式的第二数据的过程具体包括协议适配和字段映射,其中,协议适配是将每个不同类型设备的对外接口协议进行适配;字段映射是通过字段的映射策略将第一数据转换为统一数据格式的第二数据。

在本发明实施例中,在步骤301之后,针对不同类型设备的第二数据分别进行数据过滤策略的配置。

在步骤302之后,根据不同的业务应用场景,对不同类型设备的第三数据进行数据分发策略的配置。

在本发明实施例中,如图4所示,APP客户端负责原始数据采集,不做任何数据处理,将采集后的数据直接透传给APP服务端。

协议适配可以实现接口通信畅通。协议适配支持主流的网络传输协议,如:http、https、TCP、UDP、soap、RPC等,并预留协议扩展接口;协议适配提供对外和对内API接口,方便不同设备或App客户端对接。

如图5所示,本发明实施例提供的数据处理方法中,APP客户端获取接入设备的数据并传送给APP服务端,APP服务端完成数据转换、策略配置、数据分发以及数据处理工作,并将最终数据发送给APP客户端进行展示。

如图6所示,可以定义一个连接协议接口类Connection,里面定义公共接口connection()。每种协议都有其具体的实现类(UdpConnection、TcpConnection、HttpConnection等)。若需对接新的设备,只需按照该设备接口的连接协议实现我们预定对接的接口。

进行协议适配时,APP服务端提前配置需接入的设备协议,当对应设备接入APP服务端时,APP服务端程序按照已配置好的协议与设备通信。

每个设备厂商的接口字段名称及其含义都不同。第一数据的数据格式包括json格式、数组格式和xml格式。例如,如图7所示,在第一设备中,数据格式为json格式;如图8所示,在第二设备中,数据格式为数组列表格式。此外,其它设备中的数据格式还可以为xml格式。

处理来自不同设备的数据时,通过字段的映射策略,可将数据转换成所需要的统一的json格式的数据模型,同时,该数据模型支持其他格式的扩展。

如图9所示,json格式包括渠道标识901和数据区902两部分。渠道标识901用来区分具体是从哪个设备上获取的数据;数据区902使用json格式的列表存储数据。

采用协议适配和字段映射的方式进行数据处理,可便捷实现第一数据到第二数据的转换,减少APP客户端和APP服务端开发时间,同时也具有灵活实用的特点,可减少APP的二次开发。

在各个设备为穿戴式运动设备时,第一数据为运动数据,第一数据包括运动距离、配速、步频、路径交叉点等数据。具体地,路径交叉点是指运动路径中重合的部分。比如,APP服务端从APP客户端获得的运动数据可参加与有效里程、速度、路径交汇点等数据有关的业务。因此,以上述列举的数据为例,,在执行步骤302之前的数据过滤策略配置过程中,根据业务要求为数据设置有效里程阈值、配速阈值、交叉点阈值等多个阈值,以过滤第二数据中相对于某种业务无效的数据,并生成包含有效数据的第三数据。比如,在某项跑步的赛事中,可以参加业务有效数据中,有效里程需要达到10公里、配速不能高于7分30秒/千米、路径交叉点需要低于10个。以配速为例,若高于7分30秒/千米则代表参加的远动员有作弊的嫌疑,因此,该运动设备产生的运动数据无法参与相关业务,需要被过滤掉。

以下,以某种业务要求场景为例,详述步骤303中的数据分发过程。如图4所示,该业务要求场景为:来自第一设备的数据参与了三种业务:排行、抽奖、其他;来自第二设备的数据参与了两种业务:抽奖、其他;来自第三设备和第四设备的数据参与了一种业务:其他。在本例中,其他业务可以包括智能推荐,即根据APP服务端获得的数据来向用户推荐相应课程或运动装备。

在以上业务要求的场景中,需对来自第一设备的数据分别进行来自排行、抽奖、其它三种业务的业务配置;对来自第二设备的数据分别进行来自抽奖、其它两种业务的业务配置;对来自第三设备的数据分别进行来自其它一种业务的业务配置。

因此,根据不同的业务应用场景,可以对不同类型设备的第三数据进行数据分发策略的配置。

在O2O平台运营时,需要根据具体的业务要求方的要求动态调整具体的业务场景,通过灵活的业务配置,系统可以支撑更多业务场景。

在本发明实施例中,在进行数据过滤策略和数据分发策略的配置时,针对不同类型设备的第二数据使用主备模式的redis缓存进行数据过滤策略的配置;根据不同的业务应用场景,使用主备模式的redis缓存对不同类型设备的第三数据进行数据分发策略的配置。

通过使用主备模式的redis缓存进行以上配置,可以实现在线调整业务规则,减少二次开发、多次开发APP客户端版本的工作。

在步骤303中,将第三数据向对应的不同业务节点分发时,使用观察者模式或中间件技术将第三数据向对应的不同业务节点分发。其中,优选使用中间件技术将第三数据向对应的不同业务节点分发。

数据分发工作将串行的业务线转化成并行的业务线,数据耦合性降低,提高了系统稳定性,实现了数据和业务分离。

在步骤304中,APP服务器将分发到各个业务节点的数据包进行具体的业务处理。如,将利用数据包内的第三数据进行排行或抽奖。

在本发明实施例中,APP服务端还记录数据处理过程中的过程数据到数据日志。

本发明实施例中的数据处理方法通过日志记录,可以方便地定位数据的具体走向以及出现问题的环节。

本发明实施例所提供的数据处理方法,通过接收APP客户端发送的采集自不同类型设备的具有不同数据格式的第一数据,然后第一数据转换为统一数据格式的第二数据并对第二数据按照业务策略进行配置后分发到不同节点,使APP客户端仅进行数据采集和转发,由APP服务端统一实现数据的转换,并按照业务策略对数据进行业务配置,在改变输入设备和业务要求时无需进行二次开发,相比较现有技术,增强了系统的灵活性和稳定性。

如图10所示,本发明实施例提供的数据处理装置包括:

转换单元1001,用于接收APP客户端发送的采集自不同类型设备的具有不同数据格式的第一数据,并将第一数据转换为统一数据格式的第二数据;

过滤单元1002,用于根据已配置完成的数据过滤策略,对第二数据进行过滤处理,得到包含有效数据的第三数据;

分发单元1003,用于根据已配置完成的数据分发策略,将获取到的第三数据分发到不同的业务节点;

处理单元1004,用于对对各个业务节点的第三数据分别进行处理。

其中,转换单元1001包括适配子单元和映射子单元,适配子单元,用于将每个不同类型设备的对外接口协议进行适配;映射子单元,用于通过字段的映射策略将第一数据转换为统一数据格式的第二数据。

在本发明实施例中,如图4所示,APP客户端负责原始数据采集,不做任何数据处理,将采集后的数据直接透传给APP服务端。

适配子单元有助于实现接口通信畅通。适配子单元支持主流的网络传输协议,如:http、https、TCP、UDP、soap、RPC等,并预留协议扩展接口适配子单元提供对外和对内API接口,方便不同设备或App客户端对接。

第一数据的数据格式包括json格式、数组格式和xml格式。处理来自不同设备的数据时,映射子单元可将数据转换成所需要的统一的json格式的数据模型,同时,该数据模型支持其他格式的扩展。

转换单元1001可便捷实现第一数据到第二数据的转换,减少APP客户端和APP服务端开发时间,同时也具有灵活实用的特点,可减少APP的二次开发。

本发明实施例提供的数据转换装置还包括:第一配置单元,用于针对不同类型设备的第二数据分别进行数据过滤策略的配置。

第二配置单元,用于根据不同的业务应用场景,对不同类型设备的第三数据进行数据分发策略的配置。

在本发明实施例中,各个设备为穿戴式运动设备,第一数据为运动数据。第一配置单元进行数据过滤策略配置时,根据业务要求为APP服务端获得的运动数据设置有效里程阈值、配速阈值、交叉点阈值等多个阈值,使过滤单元1002过滤第二数据中相对于某种业务无效的数据,并生成包含有效数据的第三数据。

第二配置单元根据具体的业务要求方的要求动态调整具体的业务场景,通过灵活的业务配置,系统可以支撑更多业务场景。

在进行数据过滤策略和数据分发策略的配置时,第一配置单元针对不同类型设备的第二数据使用主备模式的redis缓存进行数据过滤策略的配置。

第二配置单元根据不同的业务应用场景,使用主备模式的redis缓存对不同类型设备的第三数据进行数据分发策略的配置。

通过使用主备模式的redis缓存进行以上配置,可以实现在线调整业务规则,减少二次开发、多次开发APP客户端版本的工作。

分发单元1003将数据包向对应的不同业务节点分发时,使用观察者模式或中间件技术将第三数据向对应的不同业务节点分发。其中,分发单元1004优选使用中间件技术将第三数据向对应的不同业务节点分发。

分发单元1003将串行的业务线转化成并行的业务线,数据耦合性降低,提高了系统稳定性,实现了数据和业务分离。

处理单元1004将分发到各个业务节点的数据进行具体的业务处理。如,将利用数据进行排行或抽奖。

本发明实施例提供的数据处理装置还包括日志单元,所述日志单元用于记录数据处理过程中的过程数据日志。

使用日志单元,可以方便地定位数据的具体走向以及出现问题的环节。

本发明实施例所提供的数据处理装置,通过接收APP客户端发送的采集自不同类型设备的具有不同数据格式的第一数据,然后第一数据转换为统一数据格式的第二数据并对第二数据按照业务策略进行配置后分发到不同节点,使APP客户端仅进行数据采集和转发,由APP服务端统一实现数据的转换,并按照业务策略对数据进行业务配置,在改变输入设备和业务要求时无需进行二次开发,相比较现有技术,增强了系统的灵活性和稳定性。

在实际应用中,转换单元1001、过滤单元1002、分发单元1003、处理单元1004、日志单元、第一配置单元及第二配置单元均可由位于APP服务端的中央处器(CPU,Central Processing Unit)、微处理器(MPU,Micro Processor Unit)、数字信号处理器(DSP,Digital Signal Processor)、或现场可编程门阵列(FPGA,Field Programmable Gate Array)等实现。

本领域内的技术人员应明白,本发明的实施例可提供为方法、系统、或计算机程序产品。因此,本发明可采用硬件实施例、软件实施例、或结合软件和硬件方面的实施例的形式。而且,本发明可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质(包括但不限于磁盘存储器和光学存储器等)上实施的计算机程序产品的形式。

本发明是参照根据本发明实施例的方法、设备(系统)、和计算机程序产品的流程图和/或方框图来描述的。应理解可由计算机程序指令实现流程图和/或方框图中的每一流程和/或方框、以及流程图和/或方框图中的流程和/或方框的结合。可提供这些计算机程序指令到通用计算机、专用计算机、嵌入式处理机或其他可编程数据处理设备的处理器以产生一个机器,使得通过计算机或其他可编程数据处理设备的处理器执行的指令产生用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的装置。

这些计算机程序指令也可存储在能引导计算机或其他可编程数据处理设备以特定方式工作的计算机可读存储器中,使得存储在该计算机可读存储器中的指令产生包括指令装置的制造品,该指令装置实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能。

这些计算机程序指令也可装载到计算机或其他可编程数据处理设备上,使得在计算机或其他可编程设备上执行一系列操作步骤以产生计算机实现的处理,从而在计算机或其他可编程设备上执行的指令提供用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的步骤。

以上所述,仅为本发明的较佳实施例而已,并非用于限定本发明的保护范围。

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