具体实施方式
为了使本领域技术人员更好地理解本说明书实施例中的技术方案,下面将结合本说明书实施例中的附图,对本说明书实施例中的技术方案进行详细地描述,显然,所描述的实施例仅仅是本说明书的一部分实施例,而不是全部的实施例。基于本说明书中的实施例,本领域普通技术人员所获得的所有其他实施例,都应当属于保护的范围。
针对现有技术的问题,本说明书实施例提供一种交互数据处理方法,参见图1所示,该方法可以包括以下步骤:
S101,获得待处理历史交互数据,并确定所设置的数据过滤规则;
本说明书提供的方案中可具体通过多种方式实现获得待处理历史交互数据,本说明书实施例对此不做限定,本领域技术人员可以根据实际需求灵活地进行选择。
在本说明书实施例的一种具体实施方式中,可以监听会话请求事件与处理响应事件。例如,对会话处理系统的网关进行监听,如监听日志文件、内存数据等,网关对于外部请求的处理步骤一般为:接收外部的会话请求,转发至业务系统进行处理,获取业务系统的处理响应,并根据该响应回复该会话请求。
可以通过监听网关,在网关获取业务系统的处理响应时,监听到处理响应事件。如果监听到处理响应事件,则确定该事件对应的会话请求事件,从而根据所述会话请求事件与处理响应事件,获得对应的请求数据与响应数据构成的交互数据。
可以理解的是,本实施方式中,监听与获得历史交互数据可以是非实时进行的,例如,可以实时监听并临时备份交互数据,然后非实时地将数据同步到数据库,并且非实时地在进行会话重组规则的交互数据处理时,获得数据库中的历史交互数据。
在本说明书实施例的另一种具体实施方式中,直接从来源处获得的原始数据可能采用与本端不同的编解码规则,使得本端无法直接读取数据内容,因此,可以首先获得原始历史交互数据;针对所获得的每一原始历史交互数据:确定该原始历史交互数据的数据格式是否为预设标准格式,若是,则将该原始历史交互数据确定为待处理历史交互数据;若否,则进一步地获得该待处理历史交互数据的来源信息。
然后,根据该原始历史交互数据的来源信息,获得该原始历史交互数据的编解码规则,从而根据所述编解码规则,对该原始历史交互数据进行解码和/或编码,得到可基于预设数据规则进行数据过滤的待处理历史交互数据。
S102,根据所确定的数据过滤规则,对所获得的待处理历史交互数据进行过滤;
其中,参见图2所示,根据规则过滤数据的方法包括:针对所获得的每一待处理历史交互数据:
S102a,确定该待处理历史交互数据的数据类型,并根据该数据类型是否为预先确定需重组为会话的类型,对该数据进行过滤;
业务系统在处理业务的过程中,所产生的交互数据,可能对应实质的业务,例如,用户购物时,进行加入购物车、支付订单等业务操作时所产生的交互数据,便对应着是指的业务;但是所产生的交互数据也可能并不对应实质的业务,例如,心跳数据、日常采集数据(如周期性采集用户LBS信息)、同步数据(如同步时间戳数据)等,为了降低交互数据重组会话的数据处理量级,并减少并无实质业务意义的无效会话,可以首先根据数据类型对数据进行过滤。
S102b,获得该待处理历史交互数据的来源信息,并根据所获得的来源信息确定是否过滤该数据;
本说明书提供的方案中可具体通过多种方式实现根据所获得的来源信息确定是否过滤该数据,本说明书实施例对此不做限定,本领域技术人员可以根据实际需求灵活地进行选择。
在本说明书实施例的一种具体实施方式中,可能并不需要重组全部的会话,例如,某系统可以实现购物、社交等功能,而在某次系统配置更新时,仅针对购物部分的功能进行了更新,因而只需要获得历史购物会话进行配置验证。
因此,在根据所获得的来源信息确定是否过滤该数据前,可以预先设置黑名单、白名单,对需要与不需要的会话对应的交互数据进行筛选。从而在根据所获得的来源信息确定是否过滤该数据时,可以首先获得预设来源黑名单和/或白名单,然后根据所获得的来源信息与所获得的名单,确定是否过滤该待处理历史交互数据。
在本说明书实施例的一种具体实施方式中,可能还需要对用户数据进行脱敏,因此在根据所获得的来源信息确定是否过滤该数据时,可以首先根据所获得的来源信息,确定该待处理历史交互数据的来源是否为预设的需进行脱敏的数据来源,如来源为购物子系统,则需要对用户的支付密码、银行卡信息等隐私或敏感的数据进行脱敏。在确定该待处理历史交互数据需进行脱敏的情况下,根据预设脱敏规则对该待处理历史交互数据进行脱敏处理。
S103,获得过滤后的历史交互数据的会话标识,并确定会话标识或来源信息存在关联的若干组历史交互数据;
属于相同会话的交互数据,通常会具有对应的会话标识,例如,同一会话中生成的交易订单、支付流水等数据,可以通过相同或对应存储的ID序号作为会话标识。因此,从过滤后得到的若干历史交互数据中,确定属于相同会话的交互数据时,可以基于会话标识进行处理。
但是,如前面所述,来源不同的数据可能采用与本端不同的编解码规则,同理地,会话标识的形式与格式可能并不存在同一标准,需要计算与转换,因此,在交互数据的数据量较大的情况下,可能需要消耗较多的计算成本,如请求解析处理成本、后续对请求进行合并时的多轮迭代计算的成本等。
因此,本说明书提供的方案中,也可以根据交互数据的来源信息,确认是否属于相同会话。本说明书实施例并不限定来源信息的具体形式,例如,可以为请求来源的网络信息,如IP地址、端口等,又如,可以为连接协议层面的认证信息,如Session ID、RPC ID,本领域技术人员可以根据实际需求灵活地进行选择。
S104,根据预设会话重组规则,将存在关联的历史交互数据重组为会话;所述会话重组规则至少用于表示会话中各交互数据的顺序。
在待处理历史交互数据的采集与积累过程中,可能存在数据遗漏的情况,也可能存在会话对应业务未完成的情况,如用户购物时下单后并未支付。因此,本说明书实施例中,在重组得到会话后,还可以根据所述会话重组规则,确定历史交互数据重组得到的会话是否完整,并对确定的不完整会话进行过滤处理。
在一种具体实施方式中,可以针对历史交互数据重组得到的会话,根据所述会话重组规则,确定该会话中是否存在缺失的交互数据,在确定所重组的会话中存在缺失的交互数据的情况下,根据所述会话重组规则,确定所缺失的交互数据在会话中的顺序为前部数据、中部数据、或后部数据,如果确实中部或后部数据,可以认为只是对应业务并未完成,仍可以用于验证,但如果所缺失的交互数据为前部数据,则可以确定该会话不完整,无法用于验证,需进行过滤处理。
相应于上述方法实施例,本说明书实施例还提供一种交互数据处理装置,参见图3所示,该装置可以包括:
数据获得模块110,用于获得待处理历史交互数据;
规则确定模块120,用于确定所设置的数据过滤规则;
数据过滤模块130,用于根据所确定的数据过滤规则,对所获得的待处理历史交互数据进行过滤;其中,根据规则过滤数据的装置包括:针对所获得的每一待处理历史交互数据:确定该待处理历史交互数据的数据类型,并根据该数据类型是否为预先确定需重组为会话的类型,对该数据进行过滤;以及,获得该待处理历史交互数据的来源信息,并根据所获得的来源信息确定是否过滤该数据;
数据关联模块140,用于获得过滤后的历史交互数据的会话标识,并确定会话标识或来源信息存在关联的若干组历史交互数据;
数据重组模块150,用于根据预设会话重组规则,将存在关联的历史交互数据重组为会话;所述会话重组规则至少用于表示会话中各交互数据的顺序。
在本说明书提供的一种具体实施方式中,所述数据获得模块110,具体可以用于:
监听会话请求事件与处理响应事件;
在监听到处理响应事件的情况下,确定该事件对应的会话请求事件;
根据所述会话请求事件与处理响应事件,获得对应的请求数据与响应数据构成的交互数据。
在本说明书提供的一种具体实施方式中,所述数据获得模块110,具体可以用于:
获得原始历史交互数据;
针对所获得的每一原始历史交互数据:
确定该原始历史交互数据的数据格式是否为预设标准格式;若是,则将该原始历史交互数据确定为待处理历史交互数据;若否,则获得该待处理历史交互数据的来源信息;
根据该原始历史交互数据的来源信息,获得该原始历史交互数据的编解码规则;
根据所述编解码规则,对该原始历史交互数据进行解码和/或编码,得到可基于预设数据规则进行数据过滤的待处理历史交互数据。
在本说明书提供的一种具体实施方式中,所述数据过滤模块130,参见图4所示,可以包括:
名单获得单元131,用于获得预设来源黑名单和/或白名单;
名单过滤单元132,用于根据所获得的来源信息与所获得的名单,确定是否过滤该待处理历史交互数据。
在本说明书提供的一种具体实施方式中,所述数据过滤模块130,参见图5所示,可以包括:
来源获得单元133,用于根据所获得的来源信息,确定该待处理历史交互数据的来源是否为预设的需进行脱敏的数据来源;
脱敏过滤单元134,用于在确定该待处理历史交互数据需进行脱敏的情况下,根据预设脱敏规则对该待处理历史交互数据进行脱敏处理。
在本说明书提供的一种具体实施方式中,所述装置还可以包括会话过滤模块160,参见图6所示,具体可以包括:
完整性确定单元161,用于根据所述会话重组规则,确定历史交互数据重组得到的会话是否完整;
会话过滤单元162,用于对确定的不完整会话进行过滤处理。
在本说明书提供的一种具体实施方式中,所述完整性确定单元161,可以用于:
针对历史交互数据重组得到的会话,根据所述会话重组规则,确定该会话中是否存在缺失的交互数据;
在确定所重组的会话中存在缺失的交互数据的情况下,根据所述会话重组规则,确定所缺失的交互数据在会话中的顺序为前部数据、中部数据、或后部数据;
在所缺失的交互数据为前部数据的情况下,确定该会话不完整。
上述装置中各个模块的功能和作用的实现过程具体详见上述方法中对应步骤的实现过程,在此不再赘述。
本说明书实施例还提供一种计算机设备,其至少包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,其中,处理器执行所述程序时实现前述的交互数据处理方法。该方法至少包括:
一种交互数据处理方法,该方法包括:
获得待处理历史交互数据,并确定所设置的数据过滤规则;
根据所确定的数据过滤规则,对所获得的待处理历史交互数据进行过滤;其中,根据规则过滤数据的方法包括:针对所获得的每一待处理历史交互数据:确定该待处理历史交互数据的数据类型,并根据该数据类型是否为预先确定需重组为会话的类型,对该数据进行过滤;以及,获得该待处理历史交互数据的来源信息,并根据所获得的来源信息确定是否过滤该数据;
获得过滤后的历史交互数据的会话标识,并确定会话标识或来源信息存在关联的若干组历史交互数据;
根据预设会话重组规则,将存在关联的历史交互数据重组为会话;所述会话重组规则至少用于表示会话中各交互数据的顺序。
图7示出了本说明书实施例所提供的一种更为具体的计算设备硬件结构示意图,该设备可以包括:处理器1010、存储器1020、输入/输出接口1030、通信接口1040和总线1050。其中处理器1010、存储器1020、输入/输出接口1030和通信接口1040通过总线1050实现彼此之间在设备内部的通信连接。
处理器1010可以采用通用的CPU(Central Processing Unit,中央处理器)、微处理器、应用专用集成电路(Application Specific Integrated Circuit,ASIC)、或者一个或多个集成电路等方式实现,用于执行相关程序,以实现本说明书实施例所提供的技术方案。
存储器1020可以采用ROM(Read Only Memory,只读存储器)、RAM(Random AccessMemory,随机存取存储器)、静态存储设备,动态存储设备等形式实现。存储器1020可以存储操作系统和其他应用程序,在通过软件或者固件来实现本说明书实施例所提供的技术方案时,相关的程序代码保存在存储器1020中,并由处理器1010来调用执行。
输入/输出接口1030用于连接输入/输出模块,以实现信息输入及输出。输入输出/模块可以作为组件配置在设备中(图中未示出),也可以外接于设备以提供相应功能。其中输入设备可以包括键盘、鼠标、触摸屏、麦克风、各类传感器等,输出设备可以包括显示器、扬声器、振动器、指示灯等。
通信接口1040用于连接通信模块(图中未示出),以实现本设备与其他设备的通信交互。其中通信模块可以通过有线方式(例如USB、网线等)实现通信,也可以通过无线方式(例如移动网络、WIFI、蓝牙等)实现通信。
总线1050包括一通路,在设备的各个组件(例如处理器1010、存储器1020、输入/输出接口1030和通信接口1040)之间传输信息。
需要说明的是,尽管上述设备仅示出了处理器1010、存储器1020、输入/输出接口1030、通信接口1040以及总线1050,但是在具体实施过程中,该设备还可以包括实现正常运行所必需的其他组件。此外,本领域的技术人员可以理解的是,上述设备中也可以仅包含实现本说明书实施例方案所必需的组件,而不必包含图中所示的全部组件。
本说明书实施例还提供一种计算机可读存储介质,其上存储有计算机程序,该程序被处理器执行时实现前述的交互数据处理方法。该方法至少包括:
一种交互数据处理方法,该方法包括:
获得待处理历史交互数据,并确定所设置的数据过滤规则;
根据所确定的数据过滤规则,对所获得的待处理历史交互数据进行过滤;其中,根据规则过滤数据的方法包括:针对所获得的每一待处理历史交互数据:确定该待处理历史交互数据的数据类型,并根据该数据类型是否为预先确定需重组为会话的类型,对该数据进行过滤;以及,获得该待处理历史交互数据的来源信息,并根据所获得的来源信息确定是否过滤该数据;
获得过滤后的历史交互数据的会话标识,并确定会话标识或来源信息存在关联的若干组历史交互数据;
根据预设会话重组规则,将存在关联的历史交互数据重组为会话;所述会话重组规则至少用于表示会话中各交互数据的顺序。
计算机可读介质包括永久性和非永久性、可移动和非可移动媒体可以由任何方法或技术来实现信息存储。信息可以是计算机可读指令、数据结构、程序的模块或其他数据。计算机的存储介质的例子包括,但不限于相变内存(PRAM)、静态随机存取存储器(SRAM)、动态随机存取存储器(DRAM)、其他类型的随机存取存储器(RAM)、只读存储器(ROM)、电可擦除可编程只读存储器(EEPROM)、快闪记忆体或其他内存技术、只读光盘只读存储器(CD-ROM)、数字多功能光盘(DVD)或其他光学存储、磁盒式磁带,磁带磁磁盘存储或其他磁性存储设备或任何其他非传输介质,可用于存储可以被计算设备访问的信息。按照本文中的界定,计算机可读介质不包括暂存电脑可读媒体(transitory media),如调制的数据信号和载波。
通过以上的实施方式的描述可知,本领域的技术人员可以清楚地了解到本说明书实施例可借助软件加必需的通用硬件平台的方式来实现。基于这样的理解,本说明书实施例的技术方案本质上或者说对现有技术做出贡献的部分可以以软件产品的形式体现出来,该计算机软件产品可以存储在存储介质中,如ROM/RAM、磁碟、光盘等,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本说明书实施例各个实施例或者实施例的某些部分所述的方法。
上述实施例阐明的系统、装置、模块或单元,具体可以由计算机芯片或实体实现,或者由具有某种功能的产品来实现。一种典型的实现设备为计算机,计算机的具体形式可以是个人计算机、膝上型计算机、蜂窝电话、相机电话、智能电话、个人数字助理、媒体播放器、导航设备、电子邮件收发设备、游戏控制台、平板计算机、可穿戴设备或者这些设备中的任意几种设备的组合。
本说明书中的各个实施例均采用递进的方式描述,各个实施例之间相同相似的部分互相参见即可,每个实施例重点说明的都是与其他实施例的不同之处。尤其,对于装置实施例而言,由于其基本相似于方法实施例,所以描述得比较简单,相关之处参见方法实施例的部分说明即可。以上所描述的装置实施例仅仅是示意性的,其中所述作为分离部件说明的模块可以是或者也可以不是物理上分开的,在实施本说明书实施例方案时可以把各模块的功能在同一个或多个软件和/或硬件中实现。也可以根据实际的需要选择其中的部分或者全部模块来实现本实施例方案的目的。本领域普通技术人员在不付出创造性劳动的情况下,即可以理解并实施。
以上所述仅是本说明书实施例的具体实施方式,应当指出,对于本技术领域的普通技术人员来说,在不脱离本说明书实施例原理的前提下,还可以做出若干改进和润饰,这些改进和润饰也应视为本说明书实施例的保护范围。