[发明专利]一种获得程序模块间调用关系的方法及装置无效
申请号: | 200910158514.9 | 申请日: | 2009-07-08 |
公开(公告)号: | CN101604262A | 公开(公告)日: | 2009-12-16 |
发明(设计)人: | 林正华 | 申请(专利权)人: | 阿里巴巴集团控股有限公司 |
主分类号: | G06F9/46 | 分类号: | G06F9/46;G06F17/30 |
代理公司: | 北京同达信恒知识产权代理有限公司 | 代理人: | 郭润湘 |
地址: | 英属开曼群*** | 国省代码: | 开曼群岛;KY |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 一种 获得 程序 模块 调用 关系 方法 装置 | ||
技术领域
本申请涉及计算机领域,特别是涉及获得程序模块间调用关系的方法及装置。
背景技术
信息作为现代企业的宝贵资源,占据着越来越重要的地位,已经成为现代企业科学管理的基础,正确决策的前提,有效调控的手段。能否拥有及时、准确、全面的信息已经成为衡量一个企业是否具有发展潜力的一个重要指标。随着这种需求的不断增加,数据仓库的应用在企业中得到普及。其中,数据抽取、转换和加载过程(Extract Transform Load,ETL)是建立数据仓库的重要环节。
ETL过程主要完成以下几项任务:1、数据抽取:从各种不同结构和形态的数据源中提取数据,如从ERP、CRM和财务管理等方面的数据源中提取数据。2、数据转换:根据企业的特定规则,对抽取的数据进行转换,为统计、分析等特定业务服务。3、数据清洗:企业的数据往往存在着大量的质量问题,从简单的数据格式的不一致、数据输入错误、数据不完整到相对较复杂的数据不一致性等问题。显然数据的质量将直接影响基于这些数据的信息服务的质量。数据清洗的目标是通过各种措施从准确性、无冗余、符合应用的需求等方面提高数据的质量。4、数据加载:将抽取、转换及清洗过的数据正确的加载到数据仓库中,并且对数据处理的过程进行监督和管理,以保证整个ETL过程的准确和高效率。
ETL过程通过shell(为UNIX或LINUX操作系统中的功能模块,程序代码的载体)之间的相互调用、存储过程(procedure)之间的相互调用、以及shell对存储过程的调用来实现。获得shell和存储过程的调用关系,是设计和维护ETL过程架构的重要环节。目前获得shell和存储过程的调用关系均是由人工实现,工作量较大,效率较低,并且容易出错。
发明内容
本申请实施例提供一种获得程序模块间调用关系的方法及装置,用于提高获得调用关系的效率。
一种获得程序模块间调用关系的方法,包括以下步骤:
获得第一shell,并记录获得的第一shell的标识;
将第一shell中的字符与预设的关键字进行匹配,在匹配成功时,获得匹配成功的字符位置之前的字符,其中该获得的字符在与匹配成功的字符位置最近的符号之后;
根据获得的字符确定调用对象,并建立调用对象与第一shell之间的调用关系。
一种用于获得程序模块间调用关系的装置,包括:
读取模块,用于获得shell,并记录获得的shell的标识;
匹配模块,用于将shell中的字符与预设的关键字进行匹配;
提取模块,用于在匹配成功时,获得匹配成功的字符之前的字符,其中该获得的字符在与匹配成功的字符最近的符号之后;
关系模块,用于根据获得的字符确定调用对象,并建立调用对象与第一shell之间的调用关系。
本中请实施例通过将shell中的字符与预设的关键字进行匹配来确定shell是否有调用对象,当有调用对象时,通过读取匹配成功的字符之前的字符来获得调用对象的标识,并进一步建立shell与调用对象之间的调用关系。从而实现了自动获得调用关系,提高了效率和减少了错误率,同时节省了大量人力资源。
附图说明
图1为本申请实施例中装置的主要结构图;
图2为本申请实施例中装置的详细结构图;
图3为本申请实施例中获得调用关系的主要方法流程图;
图4为本申请实施例中获得调用关系的详细方法流程图。
具体实施方式
现有技术通过专门的词法分析工具(lex/yacc)对函数的词法进行分析,来获得函数之间的调用关系。由于多个函数再加上内部的逻辑控制才能封装成一个shell或存储过程,因此,采用词法分析无法获得shell和存储过程之间的调用关系。为解决该问题,本申请实施例通过关键字的匹配来确定shell和存储过程之间的调用关系。
本申请实施例利用计算机读取shell中的字符,并将shell中的字符与预设的关键字进行匹配,在匹配成功的情况下,确定该shell调用了其它shell或存储过程,若未匹配成功,则说明该shell未调用其它对象。以及在匹配成功的情况下获得调用对象(即shell或存储过程),并建立shell与调用对象之间的调用关系。重复该过程,可以利用计算机获得所有shell和存储过程之间的调用关系,基本不会有遗漏,准确性较高,并且提高了获得调用关系的效率。
本申请实施例中字符包括字母、数字和符号。符号为除字母和数字以外的字符,如“/”、“-”和空格等。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于阿里巴巴集团控股有限公司,未经阿里巴巴集团控股有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/200910158514.9/2.html,转载请声明来源钻瓜专利网。