数据引流回放方法、装置、电子设备及可读存储介质制造方法及图纸

技术编号:28418776 阅读:9 留言:0更新日期:2021-05-11 18:25
本公开公开了数据引流回放方法、装置、电子设备及可读存储介质,涉及云计算和知识图谱等人工智能领域,其中的方法可包括:获取待处理的原始数据,原始数据中包括N条接口请求数据,N为大于一的正整数;对接口请求数据间的关联关系进行分析,得到清洗指令信息;根据原始数据以及清洗指令信息进行引流回放。应用本公开所述方案,可提升回放结果的成功率等。

【技术实现步骤摘要】
数据引流回放方法、装置、电子设备及可读存储介质
本公开涉及人工智能
,特别涉及云计算和知识图谱等领域的数据引流回放方法、装置、电子设备及可读存储介质。
技术介绍
随着云服务的高速发展,云计算的能力不断完善,云厂商的产品架构日益庞大,服务产品之间存在错综复杂的依赖关系,同时云厂商通常承诺较高的可靠性保障,而引流回放测试能够很好的解决用户场景覆盖的问题,对云产品质量保障具有重要意义。目前,业界主流的引流回放方式包括基于日志的请求重构和回放方式、基于流量复制(TcpCopy)的网络流量复制和回放方式等,这些方式都存在一个通用的问题,即不支持数据自动清洗,从而导致了回放结果成功率较低等问题。
技术实现思路
本公开提供了数据引流回放方法、装置、电子设备及可读存储介质。一种数据引流回放方法,包括:获取待处理的原始数据,所述原始数据中包括N条接口请求数据,N为大于一的正整数;对接口请求数据间的关联关系进行分析,得到清洗指令信息;根据所述原始数据以及所述清洗指令信息进行引流回放。一种数据引流回放装置,包括:数据获取模块、指令获取模块以及回放模块;所述数据获取模块,用于获取待处理的原始数据,所述原始数据中包括N条接口请求数据,N为大于一的正整数;所述指令获取模块,用于对接口请求数据间的关联关系进行分析,得到清洗指令信息;所述回放模块,用于根据所述原始数据以及所述清洗指令信息进行引流回放。一种电子设备,包括:至少一个处理器;以及与所述至少一个处理器通信连接的存储器;其中,所述存储器存储有可被所述至少一个处理器执行的指令,所述指令被所述至少一个处理器执行,以使所述至少一个处理器能够执行如以上所述的方法。一种存储有计算机指令的非瞬时计算机可读存储介质,所述计算机指令用于使计算机执行如以上所述的方法。一种计算机程序产品,包括计算机程序,所述计算机程序在被处理器执行时实现如以上所述的方法。上述公开中的一个实施例具有如下优点或有益效果:可通过对原始数据中的接口请求数据间的关联关系进行分析,得到清洗指令信息,进而可根据原始数据及清洗指令信息进行引流回放,从而可利用清洗指令信息实现数据自动清洗,进而提升了回放结果的成功率等。应当理解,本部分所描述的内容并非旨在标识本公开的实施例的关键或重要特征,也不用于限制本公开的范围。本公开的其它特征将通过以下的说明书而变得容易理解。附图说明附图用于更好地理解本方案,不构成对本公开的限定。其中:图1为本公开所述数据引流回放方法实施例的流程图;图2为本公开所述数据引流回放方法的整体实现过程示意图;图3为本公开所述数据引流回放装置实施例300的组成结构示意图;图4示出了可以用来实施本公开的实施例的示例电子设备400的示意性框图。具体实施方式以下结合附图对本公开的示范性实施例做出说明,其中包括本公开实施例的各种细节以助于理解,应当将它们认为仅仅是示范性的。因此,本领域普通技术人员应当认识到,可以对这里描述的实施例做出各种改变和修改,而不会背离本公开的范围和精神。同样,为了清楚和简明,以下的描述中省略了对公知功能和结构的描述。另外,应理解,本文中术语“和/或”,仅仅是一种描述关联对象的关联关系,表示可以存在三种关系,例如,A和/或B,可以表示:单独存在A,同时存在A和B,单独存在B这三种情况。另外,本文中字符“/”,一般表示前后关联对象是一种“或”的关系。图1为本公开所述数据引流回放方法实施例的流程图。如图1所示,包括以下具体实现方式。在步骤101中,获取待处理的原始数据,原始数据中包括N条接口请求数据,N为大于一的正整数。在步骤102中,对接口请求数据间的关联关系进行分析,得到清洗指令信息。在步骤103中,根据原始数据以及清洗指令信息进行引流回放。上述方法实施例所述方案中,可通过对原始数据中的接口请求数据间的关联关系进行分析,得到清洗指令信息,进而可根据原始数据及清洗指令信息进行引流回放,从而可利用清洗指令信息实现数据自动清洗,进而提升了回放结果的成功率等。对系统进行集成测试的过程中会产生一系列的接口请求调用,生成大量具有关联关系的接口请求数据。相应地,可获取原始数据,原始数据中可包括N条接口请求数据,N为大于一的正整数。每条接口请求数据中可包括请求和响应数据,响应数据也可称为返回数据或返回结果等。可将接口请求数据按照JS对象标记(JSON,JavaScriptObjectNotation)格式进行存储,如表一所示,JS为JavaScript的缩写,为一种编程语言。表一接口请求数据存储格式可分别为各接口请求数据设置对应的请求标识,即requestId,比如,对于N条接口请求数据,可按照获取时间由先到后的顺序,分别对各接口请求数据按照1-N的顺序进行编号。表一即为编号为1的接口请求数据的存储格式及包括的数据内容示例。实现数据自动清洗的关键,即获取数据的清洗指令信息。对于接口逻辑和依赖关系复杂的业务,下一个请求中用到的参数,很可能是上一个请求的返回数据中的某个字段,请求与请求之间的关联关系,一定是在参数上有所体现的。对于本公开所述N条接口请求数据,所述关联关系可包括同一服务内的接口请求数据间的关联关系,相应地,可基于倒排索引算法对同一服务内的接口请求数据间的关联关系进行分析,得到清洗指令信息。倒排索引是单词-文档举证的一种存储方式,通过倒排索引可以快速地根据单词查找到包含这个单词的文档。本公开中将倒排索引算法应用到处理请求之间关联关系问题上,针对接口请求数据中的预定参数建立倒排索引,即建立请求中不同参数的倒排索引。所述预定参数具体包括哪些参数可根据实际需要而定。比如,可建立请求路径(uri)、请求uri参数、请求头、响应头、响应体等参数的倒排索引,其中,请求uri参数可以是指表一中所示的“方法”之后的“参数”。下面以建立请求uri和请求uri参数的倒排索引为例进行说明。1)建立请求uri的倒排索引可根据uri值,去掉uri正则表达式最前面的"^"字符和最后面的"$"字符,再按"/"字符进行分割,取分割结果中实际的uri元素值,若没有则返回一个空的json列表,否则,返回uri元素值的倒排索引结果。按照上述方式建立请求uri的倒排索引,结果示例及格式可如表二所示。表二请求uri的倒排索引如表二所示,其中,location指定作用值的位置,此处为"uri";value为uri中被替换的位置,比如,若uri值为/v1/functions/replaytest/aliases,其按"/"字符分割后的数组为:[”,’v1','functions','replaytest','aliases'],分割结果的数组中'replaytest'字段的顺序为3本文档来自技高网...

【技术保护点】
1.一种数据引流回放方法,包括:/n获取待处理的原始数据,所述原始数据中包括N条接口请求数据,N为大于一的正整数;/n对接口请求数据间的关联关系进行分析,得到清洗指令信息;/n根据所述原始数据以及所述清洗指令信息进行引流回放。/n

【技术特征摘要】
1.一种数据引流回放方法,包括:
获取待处理的原始数据,所述原始数据中包括N条接口请求数据,N为大于一的正整数;
对接口请求数据间的关联关系进行分析,得到清洗指令信息;
根据所述原始数据以及所述清洗指令信息进行引流回放。


2.根据权利要求1所述的方法,其中,
所述关联关系包括:同一服务内的接口请求数据间的关联关系;
所述对接口请求数据间的关联关系进行分析,得到清洗指令信息包括:基于倒排索引算法对同一服务内的接口请求数据间的关联关系进行分析,得到清洗指令信息。


3.根据权利要求2所述的方法,其中,所述基于倒排索引算法对同一服务内的接口请求数据间的关联关系进行分析,得到清洗指令信息包括:
按照获取时间由先到后的顺序,依次对所述N条接口请求数据进行分析查找,针对查找到的第一条符合预定要求的接口请求数据,执行以下第一处理:将所述第一条符合预定要求的接口请求数据对应的倒排索引数据加入倒排索引集文件中,并获取所述第一条符合预定要求的接口请求数据对应的清洗指令信息,加入清洗指令集文件中;所述倒排索引集文件和所述清洗指令集文件初始均为空;
将下一条接口请求数据作为当前数据,所述下一条接口请求数据为未处理的接口请求数据中最先获取到的接口请求数据,并执行以下第二处理:若根据所述倒排索引集文件以及所述当前数据对应的倒排索引数据确定所述当前数据与之前获取到的接口请求数据间存在关联关系,则将所述当前数据作为待处理数据,并执行以下第三处理:获取所述待处理数据对应的清洗指令信息,加入所述清洗指令集文件中,并在当所述待处理数据符合所述预定要求时,将所述待处理数据对应的倒排索引数据加入所述倒排索引集文件中;否则,将下一条接口请求数据作为所述当前数据,并重复执行所述第二处理;当所有接口请求数据均处理完毕,将所述清洗指令集文件中的清洗指令信息作为得到的清洗指令信息。


4.根据权利要求3所述的方法,还包括:
若确定所述当前数据与之前获取到的接口请求数据间不存在关联关系,但确定所述当前数据符合所述预定要求,则将所述当前数据对应的倒排索引数据加入所述倒排索引集文件中,并获取所述当前数据对应的清洗指令信息,加入所述清洗指令集文件中。


5.根据权利要求4所述的方法,其中,
对于任一接口请求数据,所述符合预定要求包括:所述接口请求数据的请求方法为更新PUT或创建POST。


6.根据权利要求4所述的方法,其中,
对于任一接口请求数据,所述接口请求数据对应的倒排索引数据包括:针对所述接口请求数据中的预定参数建立的倒排索引;
所述方法还包括:对于任一接口请求数据,在将所述接口请求数据对应的倒排索引数据加入所述倒排索引集文件之前,对所述接口请求数据对应的倒排索引数据进行去重处理。


7.根据权利要求4所述的方法,其中,
对于任一接口请求数据,获取所述接口请求数据对应的清洗指令信息,加入所述清洗指令集文件中包括:
若确定信息引擎中存在所述接口请求数据对应的指令信息,则根据所述对应的指令信息及所述接口请求数据生成更新后的指令信息,并将所述更新后的指令信息加入所述清洗指令集文件中,否则,针对所述接口请求数据设置指令信息,并将所设置的指令信息分别加入所述清洗指令集文件及所述信息引擎中。


8.根据权利要求7所述的方法,还包括:
当确定所述信息引擎中存在所述接口请求数据对应的指令信息时,若确定所述对应的指令信息的可信度大于预定阈值,则根据所述对应的指令信息及所述接口请求数据生成更新后的指令信息,并将所述更新后的指令信息加入所述清洗指令集文件中,否则,针对所述接口请求数据设置指令信息,并将所设置的指令信息分别加入所述清洗指令集文件及所述信息引擎中。


9.根据权利要求7所述的方法,其中,
所述获取所述接口请求数据对应的清洗指令信息,加入所述清洗指令集文件中还包括:
获取所述接口请求数据对应的相对延时指令信息,加入所述清洗指令集文件中;
其中,当所述接口请求数据为所述第一条符合预定要求的接口请求数据时,设置所述接口请求数据对应的相对延时指令信息为0;
当所述接口请求数据为所述待处理数据或所述当前数据时,获取所述接口请求数据的开始时间与所述第一条符合预定要求的接口请求数据的开始时间之间的差值,将所述差值作为所述接口请求数据对应的相对延时指令信息。


10.根据权利要求2所述的方法,其中,
所述关联关系还包括:不同服务间的接口请求数据间的关联关系;
所述方法还包括:根据所构建的知识图谱获取不同服务间的接口请求数据间的关联关系,并获取对应的清洗指令信息。


11.一种数据引流回放装置,包括:数据获取模块、指令获取模块以及回放模块;
所述数据获取模块,用于获取待处理的原始数据,所述原始数据中包括N条接口请求数据,N为大于一的正整数;
所述指令获取模块,用于对接口请求数据间的关联关系进行分析,得到清洗指令信...

【专利技术属性】
技术研发人员:杨丽秦何赛松郝伟孟倩茹
申请(专利权)人:北京百度网讯科技有限公司
类型:发明
国别省市:北京;11

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

1