[发明专利]程序数据流的分析方法、装置、电子设备及可读存储介质在审
申请号: | 202110694741.4 | 申请日: | 2021-06-22 |
公开(公告)号: | CN113419740A | 公开(公告)日: | 2021-09-21 |
发明(设计)人: | 何子南;王凯;邢培康;李炯 | 申请(专利权)人: | 中国工商银行股份有限公司 |
主分类号: | G06F8/41 | 分类号: | G06F8/41 |
代理公司: | 中科专利商标代理有限责任公司 11021 | 代理人: | 李春伟 |
地址: | 100140 北*** | 国省代码: | 北京;11 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 程序 数据流 分析 方法 装置 电子设备 可读 存储 介质 | ||
本公开提供了一种程序数据流的分析方法、装置、电子设备及可读存储介质,可以应用于大数据技术领域、金融领域或其他领域。该程序数据流的分析方法,包括:构建解析模块,解析模块用于对程序数据流的源代码进行解析;调用解析模块对目标程序数据流的源代码进行处理,生成第一信息;序列化第一信息以生成序列化对象,将序列化对象持久化;识别序列化对象的语法信息,并根据语法信息确定序列化对象涉及的变量和/或关联变量信息;根据变量和/或关联变量信息生成程序数据流分析链表,程序数据流分析链表用于表示数据流在程序中的使用和存储关系。
技术领域
本公开涉及大数据技术领域,更具体地涉及一种程序数据流的分析方法、装置、电子设备及可读存储介质。
背景技术
在大数据领域,程序的数据流所涉及的源代码往往十分庞大,涉及到的字段操作的语句很多,因程序逻辑的复杂性,很容易产生遗漏或者错误。需要通过对程序数据流进行分析和核对,以排除可能存在的问题。相关技术中,一般根据需要对特定的字段的特征搜索对应代码行,并且在搜索的字段存在下挂关系时,则根据下挂关系对每一级的下挂字段进行重复搜索,造成算力浪费,效率低下。
发明内容
鉴于上述问题,本公开提供了一种可以高效、自动分析程序数据流的程序数据流的分析方法、装置、电子设备及可读存储介质。
根据本公开的第一个方面,提供了一种程序数据流的分析方法,包括:构建解析模块,所述解析模块用于对所述程序数据流的源代码进行解析;调用所述解析模块对目标程序数据流的源代码进行处理,生成第一信息;序列化所述第一信息以生成序列化对象,将所述序列化对象持久化;识别所述序列化对象的语法信息,并根据所述语法信息确定所述序列化对象涉及的变量和/或关联变量信息;根据所述变量和/或关联变量信息生成程序数据流分析链表,所述程序数据流分析链表用于表示数据流在程序中的使用和存储关系。
根据本公开的实施例,所述解析模块包括策略链和多个解析器,所述多个解析器设置在所述策略链上;所述解析器用于对所述程序数据流的源代码的语法进行解析。
根据本公开的实施例,所述第一信息包括第一子信息和第二子信息;所述调用所述解析模块对目标程序数据流的源代码进行处理,生成第一信息包括:依次调用所述策略链上的解析器对所述目标程序数据流的源代码的语法进行逐句的语法解析;若所述解析器能够识别所述语法,则生成所述第一子信息;若所述解析器无法识别所述语法,则生成所述第二子信息,所述第二子信息包括所述目标程序数据流的源代码。
根据本公开的实施例,所述序列化所述第一信息以生成序列化对象,将所述序列化对象持久化包括:序列化所述第一子信息生成第一序列化对象,将所述第一序列化对象使用一般类存储持久化;其中,所述第一序列化对象包括项目对象、记录对象、函数对象以及结构化查询语言对象中的一种或多种。
根据本公开的实施例,所述识别所述序列化对象的语法信息,并根据所述语法信息确定所述序列化对象涉及的变量和/或关联变量信息包括:识别所述第一序列化对象的语法类型,获取与所述语法类型相对应的变量,若获取的所述变量中包括需要跟踪的跟踪变量,则获取所述跟踪变量的关联变量信息。
根据本公开的实施例,所述第一序列化对象包括函数对象,所述语法类型包括赋值语法和调用语法;所述识别所述第一序列化对象的语法类型,获取与所述语法类型相对应的变量,若获取的所述变量中包括需要跟踪的跟踪变量,则获取所述跟踪变量的关联变量信息包括:
识别所述函数对象的赋值语法,获取所述赋值语法的变量和操作符,若所述变量中包括需要跟踪的跟踪变量,则获取所述跟踪变量的变量数值和传递关系;识别所述函数对象的调用语法,获取所述调用语法的调用程序信息,若所述调用程序信息中包括需要跟踪的跟踪变量,则获取跟踪变量的变量数值和传递关系。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于中国工商银行股份有限公司,未经中国工商银行股份有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/202110694741.4/2.html,转载请声明来源钻瓜专利网。