首页 / 专利库 / 电脑零配件 / 固件 / 软件 / 基于MDL文件的数据提取方法、装置、设备及存储介质

基于MDL文件的数据提取方法、装置、设备及存储介质

阅读:1发布:2022-02-25

专利汇可以提供基于MDL文件的数据提取方法、装置、设备及存储介质专利检索,专利查询,专利分析的服务。并且本 发明 适用计算机技术领域,提供了一种基于MDL文件的数据提取方法、装置、计算机设备及存储介质,该方法包括:通过预先编译的目标数据提取脚本从目标MDL文件中批量提取目标数据,从而通过轻量级的目标数据提取脚本实现从MDL文件中批量提取数据,解决了通过cognos、matlab等 软件 打开MDL文件耗时长、及步骤繁琐的问题,提高了数据提取的便利性、快捷性和效率。,下面是基于MDL文件的数据提取方法、装置、设备及存储介质专利的具体信息内容。

1.一种基于MDL文件的数据提取方法,其特征在于,所述方法包括下述步骤:
根据接收到的脚本启动指令运行预先编译的目标数据提取脚本;
当所述目标数据提取脚本接收到用户发送的数据提取请求时,根据所述数据提取请求得到目标多维数据模型,其中,所述目标多维数据模型为目标MDL文件;
根据得到的所述目标MDL文件,所述目标数据提取脚本从所述目标MDL文件中批量提取目标数据。
2.如权利要求1所述的数据提取方法,其特征在于,所述目标数据提取脚本从所述目标MDL文件中批量提取目标数据的步骤,包括:
所述目标数据提取脚本接收所述用户根据所述目标多维数据模型输入预设数据源的维表信息和度量信息;
所述目标数据提取脚本根据接收到的所述维表信息和所述度量信息从所述目标多维数据模型中提取对应的结构化查询语言脚本;
所述目标数据提取脚本根据所述结构化查询语言脚本从所述数据源中提取出对应的目标数据。
3.如权利要求2所述的数据提取方法,其特征在于,所述目标数据提取脚本根据接收到的所述维表信息和所述度量信息从所述目标多维数据模型中提取对应的结构化查询语言脚本的步骤,包括:
所述目标数据提取脚本根据所述维表信息和所述度量信息分析所述目标MDL文件中存储的维表与维表、维表与事实表之间的映射关系,根据所述映射关系提取所述结构化查询语言脚本。
4.如权利要求3所述的数据提取方法,其特征在于,根据所述映射关系提取所述结构化查询语言脚本的步骤,包括:
当所述目标数据提取脚本根据所述映射关系提取到多个不同的结构化查询语言脚本时,将所述多个不同的结构化查询语言脚本合成为一个结构化查询语言脚本,并对合成后的所述结构化查询语言脚本进行语句检查。
5.一种基于MDL文件的数据提取装置,其特征在于,所述装置包括:
目标脚本启动单元,用于根据接收到的脚本启动指令运行预先编译的目标数据提取脚本;
数据模型获得单元,用于当所述目标数据提取脚本接收到用户发送的数据提取请求时,根据所述数据提取请求得到目标多维数据模型,其中,所述目标多维数据模型为目标MDL文件;以及
目标数据提取单元,用于根据得到的所述目标MDL文件,所述目标数据提取脚本从所述目标MDL文件中批量提取目标数据。
6.如权利要求5所述的数据提取装置,其特征在于,所述目标数据提取单元包括:
源信息接收单元,用于所述目标数据提取脚本接收所述用户根据所述目标多维数据模型输入预设数据源的维表信息和度量信息;
语言脚本提取单元,用于所述目标数据提取脚本根据接收到的所述维表信息和所述度量信息从所述目标多维数据模型中提取对应的结构化查询语言脚本;以及数据提取子单元,用于所述目标数据提取脚本根据所述结构化查询语言脚本从所述数据源中提取出对应的目标数据。
7.如权利要求6所述的数据提取装置,其特征在于,所述语言脚本提取单元包括:
脚本提取子单元,用于所述目标数据提取脚本根据所述维表信息和所述度量信息分析所述目标MDL文件中存储的维表与维表、维表与事实表之间的映射关系,根据所述映射关系提取所述结构化查询语言脚本。
8.如权利要求7所述的数据提取装置,其特征在于,所述脚本提取子单元包括:
语言脚本合并单元,用于当所述目标数据提取脚本根据所述映射关系提取到多个不同的结构化查询语言脚本时,将所述多个不同的结构化查询语言脚本合成为一个结构化查询语言脚本,并对合成后的所述结构化查询语言脚本进行语句检查。
9.一种计算机设备,包括存储器、处理器以及存储在所述存储器中并可在所述处理器上运行的计算机程序,其特征在于,所述处理器执行所述计算机程序时实现如权利要求1至
4任一项所述基于MDL文件的数据提取方法的步骤。
10.一种计算机可读存储介质,所述计算机可读存储介质存储有计算机程序,其特征在于,所述计算机程序被处理器执行时实现如权利要求1至4任一项所述基于MDL文件的数据提取方法的步骤。

说明书全文

基于MDL文件的数据提取方法、装置、设备及存储介质

技术领域

[0001] 本发明属于计算机技术领域,尤其涉及一种基于MDL文件的数据提取方法、装置、设备及存储介质。

背景技术

[0002] 商业智能也称作BI(Business Intelligence),随着商业智能技术的不断普及,现在很多单位都开始搭建适合自己业务分析的商务智能系统。IBM的Cognos是近年来BI项目中大量采用的工具之一,Cognos展现的报表基于统一的元数据模型,统一的元数据模型为应用提供了统一、一致的视图,用户可以在浏览器中自定义报表,格式灵活,元素丰富,而且可以通过Query Studio进行开放式查询,Cognos还具有独特的穿透钻取(Drill Through)、切片(slice)、切(dice)、以及旋转(pivot)等功能,使分析人员、管理人员或执行人员能够从多度对信息进行快速、一致、交互地存取,从而获得对数据的更深入了解,有效地将各种相关的信息关联起来,使用户在分析汇总数据的同时能够深入到自己感兴趣的细节数据中,以便更全面地了解情况,做出正确决策。Cognos凭借其高性能的大用户数和大数据量的数据访问分析能、灵活易用的报表制作能力、高安全性、高可扩展性、易用性和低部署成本等优势,在业界得到较广泛的应用。
[0003] 在实际应用中,通过Cognos中的多维数据设计工具Transfomer建立多维数据模型(即MDL文件),通过MDL文件可以对不同数据源中的数据进行存储,从而可以满足用户从多角度多层次进行数据查询和分析的需要。然而,目前,从MDL文件中查询或提取数据时,只能通过Cognos打开对应的MDL文件,再手工打开每一部分的数据源(Data Source),复制出对应的SQL代码,以查询或提取出相应的数据,此查询或提取数据的方法步骤多、耗时长,且易受机器性能影响,大量查询时严重影响工作效率,导致用户体验较差。

发明内容

[0004] 本发明的目的在于提供一种基于MDL文件的数据提取方法、装置、设备及存储介质,旨在解决现有技术只能通过Cognos等软件打开对应的MDL文件,导致从MDL文件中查询或提取数据步骤繁琐、耗时长、效率低的问题。
[0005] 一方面,本发明提供了一种基于MDL文件的数据提取方法,所述方法包括下述步骤:
[0006] 根据接收到的脚本启动指令运行预先编译的目标数据提取脚本;
[0007] 当所述目标数据提取脚本接收到用户发送的数据提取请求时,根据所述数据提取请求得到目标多维数据模型,其中,所述目标多维数据模型为目标MDL文件;
[0008] 根据得到的所述目标MDL文件,所述目标数据提取脚本从所述目标MDL文件中批量提取目标数据。
[0009] 优选地,所述目标数据提取脚本从所述目标MDL文件中批量提取目标数据的步骤,包括:
[0010] 所述目标数据提取脚本接收所述用户根据所述目标多维数据模型输入预设数据源的维表信息和度量信息;
[0011] 所述目标数据提取脚本根据接收到的所述维表信息和所述度量信息从所述目标多维数据模型中提取对应的结构化查询语言脚本;
[0012] 所述目标数据提取脚本根据所述结构化查询语言脚本从所述数据源中提取出对应的目标数据。
[0013] 进一步优选地,所述目标数据提取脚本根据接收到的所述维表信息和所述度量信息从所述目标多维数据模型中提取对应的结构化查询语言脚本的步骤,包括:
[0014] 所述目标数据提取脚本根据所述维表信息和所述度量信息分析所述目标MDL文件中存储的维表与维表、维表与事实表之间的映射关系,根据所述映射关系提取所述结构化查询语言脚本。
[0015] 进一步优选地,根据所述映射关系提取所述结构化查询语言脚本的步骤,包括:
[0016] 当所述目标数据提取脚本根据所述映射关系提取到多个不同的结构化查询语言脚本时,将所述多个不同的结构化查询语言脚本合成为一个结构化查询语言脚本,并对合成后的所述结构化查询语言脚本进行语句检查。
[0017] 另一方面,本发明提供了一种基于MDL文件的数据提取装置,所述装置包括:
[0018] 目标脚本启动单元,用于根据接收到的脚本启动指令运行预先编译的目标数据提取脚本;
[0019] 数据模型获得单元,用于当所述目标数据提取脚本接收到用户发送的数据提取请求时,根据所述数据提取请求得到目标多维数据模型,其中,所述目标多维数据模型为目标MDL文件;以及
[0020] 目标数据提取单元,用于根据得到的所述目标MDL文件,所述目标数据提取脚本从所述目标MDL文件中批量提取目标数据。
[0021] 优选地,所述目标数据提取单元包括:
[0022] 源信息接收单元,用于所述目标数据提取脚本接收所述用户根据所述目标多维数据模型输入预设数据源的维表信息和度量信息;
[0023] 语言脚本提取单元,用于所述目标数据提取脚本根据接收到的所述维表信息和所述度量信息从所述目标多维数据模型中提取对应的结构化查询语言脚本;以及[0024] 数据提取子单元,用于所述目标数据提取脚本根据所述结构化查询语言脚本从所述数据源中提取出对应的目标数据。
[0025] 进一步优选地,所述语言脚本提取单元包括:
[0026] 脚本提取子单元,用于所述目标数据提取脚本根据所述维表信息和所述度量信息分析所述目标MDL文件中存储的维表与维表、维表与事实表之间的映射关系,根据所述映射关系提取所述结构化查询语言脚本。
[0027] 进一步优选地,所述脚本提取子单元包括:
[0028] 语言脚本合并单元,用于当所述目标数据提取脚本根据所述映射关系提取到多个不同的结构化查询语言脚本时,将所述多个不同的结构化查询语言脚本合成为一个结构化查询语言脚本,并对合成后的所述结构化查询语言脚本进行语句检查。
[0029] 另一方面,本发明还提供了一种计算机设备,包括存储器、处理器以及存储在所述存储器中并可在所述处理器上运行的计算机程序,所述处理器执行所述计算机程序时实现如上述基于MDL文件的数据提取方法所述的步骤。
[0030] 另一方面,本发明还提供了一种计算机可读存储介质,所述计算机可读存储介质存储有计算机程序,所述计算机程序被处理器执行时实现如上述基于MDL文件的数据提取方法所述的步骤。
[0031] 本发明通过预先编译的目标数据提取脚本从目标MDL文件中批量提取目标数据,从而通过轻量级的目标数据提取脚本实现从MDL文件中批量提取数据,解决了通过cognos、matlab等软件打开MDL文件耗时长、及步骤繁琐的问题,提高了数据提取的便利性、快捷性和效率。附图说明
[0032] 图1是本发明实施例一提供的基于MDL文件的数据提取方法的实现流程图
[0033] 图2是本发明实施例二提供的对实施例一步骤S103的实现流程图;
[0034] 图3是本发明实施例三提供的基于MDL文件的数据提取装置的结构示意图;
[0035] 图4是本发明实施例四提供的基于MDL文件的数据提取装置中目标数据提取单元的结构示意图;以及
[0036] 图5是本发明实施例五提供的计算机设备的结构示意图。

具体实施方式

[0037] 为了使本发明的目的、技术方案及优点更加清楚明白,以下结合附图及实施例,对本发明进行进一步详细说明。应当理解,此处所描述的具体实施例仅仅用以解释本发明,并不用于限定本发明。
[0038] 以下结合具体实施例对本发明的具体实现进行详细描述:
[0039] 实施例一:
[0040] 图1示出了本发明实施例一提供的基于MDL文件的数据提取方法的实现流程,为了便于说明,仅示出了与本发明实施例相关的部分,详述如下:
[0041] 在步骤S101中,根据接收到的脚本启动指令运行预先编译的目标数据提取脚本。
[0042] 本发明实施例适用于数据处理平台、设备或系统,例如个人计算机、服务器等。在本发明实施例中,脚本通常是由应用程序临时调用并执行,该应用程序可以为系统应用程序或者第三方应用程序,当数据处理平台、设备或系统接收到用户发送的脚本启动指令时,根据该脚本启动指令运行目标数据提取脚本,其中,脚本启动指令包含目标数据提取脚本的名称,目标数据提取脚本(script)是使用一种特定的描述性语言,依据一定的格式编写的可执行文件,又称作宏或批处理文件。
[0043] 在根据接收到的脚本启动指令运行预先编译的目标数据提取脚本之前,优选地,搭建Python环境,并通过Python编写该目标数据提取脚本,从而降低系统成本,并提高目标数据提取脚本的可读性、可维护性、以及可扩展性。
[0044] 在步骤S102中,当目标数据提取脚本接收到用户发送的数据提取请求时,根据数据提取请求得到目标多维数据模型,其中,该目标多维数据模型为目标MDL文件。
[0045] 在本发明实施例中,模型定义语言(Model Definition Language,简称MDL)文件是以美国标准信息交换码(American Standard Code for Information Interchange,ASCLL)文件存储,且MDL文件可供联机分析处理系统(On-Line Analytical Processing,OLAP)中的Cognos报表工具Powerplay生成对应的立方体Cube,以供用户从多个角度探索和分析数据集。当该目标数据提取脚本接收到用户通过命令提示符(cmd命令)或者目标数据提取脚本提供的接口(API)发送的数据提取请求时,目标数据提取脚本对该数据提取请求进行解析,得到数据提取请求中包含的、待提取数据对应的目标多维数据模型的存储路径,该存储路径可以为本地存储路径,也可以为端存储路径,目标数据提取脚本再根据该存储路径得到目标多维数据模型,其中,该目标多维数据模型在Cognos中存储为目标模型定义语言(Model Definition Language,MDL)文件,也即目标MDL文件。
[0046] 在根据数据提取请求得到目标多维数据模型之前,优选地,通过Cognos8.4版本中的多维数据设计工具Transfomer生成mdl格式的目标多维数据模型,从而提高了目标多维数据模型的兼容性和可移植性。
[0047] 在步骤S103中,根据得到的目标MDL文件,目标数据提取脚本从该目标MDL文件中批量提取目标数据。
[0048] 在本发明实施例中,根据用户的数据提取需求,目标数据提取脚本从目标MDL文件中批量提取或者查询对应的目标数据。
[0049] 在本发明实施例中,通过预先编译的目标数据提取脚本从目标MDL文件中批量提取目标数据,从而通过轻量级的目标数据提取脚本实现从MDL文件中批量提取数据,解决了通过cognos、matlab等软件打开MDL文件耗时长、及步骤繁琐的问题,提高了数据提取的便利性、快捷性和效率。
[0050] 实施例二:
[0051] 图2示出了本发明实施例二提供的实施例一步骤S103的实现流程,为了便于说明,仅示出了与本发明实施例相关的部分,详述如下:
[0052] 在步骤S201中,目标数据提取脚本接收用户根据目标多维数据模型输入预设数据源的维表信息和度量信息。
[0053] 在本发明实施例中,目标多维数据模型是由多个维度和指标(即度量)组成、可以自由钻取的模型,也即是将源数据划分为不同维度和不同度量的数据进行存储,其中,维度为每个数据所对应的多个方面,例如,一个销售额数据可以对应销售时间、销售地点、产品等多个方面,而每个维度均可以包括多个子维度,且该多个子维度可以属于不同的层次,例如,销售时间维度可以包括多个时间子维度,且各个时间子维度可以属于年份、季度、月份等三个层次中的任一层次,在数据仓库中,维度成员存放于维表中。度量为每个数据所代表的实际含义,比如,一个数据可以代表销售额、库存量、订单量等含义,其存在与事实表中。在本发明实施例中,目标数据提取脚本根据存储路径获得目标多维数据模型后,读取获得的目标多维数据模型的内容,并显示输出,接收用户根据显示输出的目标多维数据模型内容输入预设数据源的维表信息和度量信息,以用于从该数据源中提取出想要的数据,其中,预设数据源包括内部数据源和外部数据源,内部数据源中存储的是来自于企业自身在日常业务活动中长时间积累、存储在GOSL和/或者GORT(例如,SQL Server、Oracle、DB2等)数据库中的数据总集,外部数据源中存储的是除企业自身以外的第三方平台的数据,例如利用网络爬虫等工具在网络上抓取企业比较感兴趣的数据。
[0054] 优选地,目标多维数据模型能够从多个不同数据源连接数据,其中,各数据源能够存储在不同的数据仓库中,或者各数据源中的数据能够以不同的存储格式存储,从而通过多数据源降低了Transfomer处理的数据的总量,提高了目标多维数据模型的性能,进而提高了多数据源中数据的管理性能。例如,目标多维数据模型中的一个数据源来自从一个数据仓库提取数据的EXCEL表,而另一个数据源来自从另一个不同的数据仓库提取数据的.iqd文件。
[0055] 在步骤S202中,该目标数据提取脚本根据接收到的维表信息和度量信息从目标多维数据模型中提取对应的结构化查询语言脚本。
[0056] 在本发明实施例中,目标数据提取脚本根据接收到的维表信息和度量信息从目标多维数据模型中提取对应的结构化查询语言(Structured Query Language,SQL)脚本。
[0057] 在目标数据提取脚本根据接收到的维表信息和度量信息从目标多维数据模型中提取对应的结构化查询语言脚本时,优选地,目标数据提取脚本根据接收到的维表信息和度量信息分析MDL文件中存储的维表与维表、维表与事实表之间的映射关系,根据该映射关系提取对应的SQL脚本。
[0058] 进一步优选地,该映射关系包括不同数据立方体之间各表的映射关系、以及不同cognos版本形成的MDL文件之间的关联关系,从而提高了后续提取数据的完整性。
[0059] 进一步优选地,当根据该映射关系提取到多个不同的SQL脚本时,将该多个不同的SQL脚本合成为一个SQL脚本,并对合成后的SQL脚本进行语句检查,以确定该SQL脚本的正确性,从而提高了后续提取数据的完整性和正确性。
[0060] 在步骤S203中,该目标数据提取脚本根据结构化查询语言脚本从数据源中提取出对应的目标数据。
[0061] 在本发明实施例中,目标数据提取脚本根据解析出的SQL脚本中包含的表信息(例如,表名、表类型、表与事实表的关联信息)从对应的内部数据源和外部数据源中提取出对应的数据,以供用户进行数据修改、删除、添加等操作。
[0062] 在本发明实施例中,首先,目标数据提取脚本接收用户根据目标多维数据模型输入预设数据源的维表信息和度量信息,然后,根据接收到的维表信息和度量信息从目标多维数据模型中提取对应的结构化查询语言脚本,最后,根据结构化查询语言脚本从数据源中提取出对应的目标数据,从而通过轻量级的目标数据提取脚本实现从MDL文件中批量提取数据,解决了通过cognos、matlab等软件打开MDL文件耗时长、及步骤繁琐的问题,提高了数据提取的便利性、快捷性和效率。
[0063] 实施例三:
[0064] 图3示出了本发明实施例三提供的基于MDL文件的数据提取装置的结构,为了便于说明,仅示出了与本发明实施例相关的部分,其中包括:
[0065] 目标脚本启动单元31,用于根据接收到的脚本启动指令运行预先编译的目标数据提取脚本。
[0066] 本发明实施例适用于数据处理平台、设备或系统,例如个人计算机、服务器等。在本发明实施例中,脚本通常是由应用程序临时调用并执行,该应用程序可以为系统应用程序或者第三方应用程序,当数据处理平台、设备或系统接收到用户发送的脚本启动指令时,根据该脚本启动指令运行目标数据提取脚本,其中,脚本启动指令包含目标数据提取脚本的名称,目标数据提取脚本(script)是使用一种特定的描述性语言,依据一定的格式编写的可执行文件,又称作宏或批处理文件。
[0067] 在根据接收到的脚本启动指令运行预先编译的目标数据提取脚本之前,优选地,搭建Python环境,并通过Python编写该目标数据提取脚本,从而降低系统成本,并提高目标数据提取脚本的可读性、可维护性、以及可扩展性。
[0068] 数据模型获得单元32,用于当目标数据提取脚本接收到用户发送的数据提取请求时,根据数据提取请求得到目标多维数据模型,其中,该目标多维数据模型为目标MDL文件。
[0069] 在本发明实施例中,模型定义语言(Model Definition Language,简称MDL)文件是以美国标准信息交换码(American Standard Code for Information Interchange,ASCLL)文件存储,且MDL文件可供联机分析处理系统(On-Line Analytical Processing,OLAP)中的Cognos报表工具Powerplay生成对应的立方体Cube,以供用户从多个角度探索和分析数据集。当该目标数据提取脚本接收到用户通过命令提示符(cmd命令)或者目标数据提取脚本提供的接口(API)发送的数据提取请求时,目标数据提取脚本对该数据提取请求进行解析,得到数据提取请求中包含的、待提取数据对应的目标多维数据模型的存储路径,该存储路径可以为本地存储路径,也可以为云端存储路径,目标数据提取脚本再根据该存储路径得到目标多维数据模型,其中,该目标多维数据模型在Cognos中存储为目标模型定义语言(Model Definition Language,MDL)文件,也即目标MDL文件。
[0070] 在根据数据提取请求得到目标多维数据模型之前,优选地,通过Cognos8.4版本中的多维数据设计工具Transfomer生成mdl格式的目标多维数据模型,从而提高了目标多维数据模型的兼容性和可移植性。
[0071] 目标数据提取单元33,用于根据得到的目标MDL文件,目标数据提取脚本从该目标MDL文件中批量提取目标数据。
[0072] 在本发明实施例中,根据用户的数据提取需求,目标数据提取脚本从目标MDL文件中批量提取或者查询对应的目标数据。
[0073] 在本发明实施例中,基于MDL文件的数据提取装置的各单元可由相应的硬件或软件单元实现,各单元可以为独立的软、硬件单元,也可以集成为一个软、硬件单元,在此不用以限制本发明。
[0074] 实施例四:
[0075] 图4示出了本发明实施例四提供的目标数据提取单元33的结构,为了便于说明,仅示出了与本发明实施例相关的部分,其中包括:
[0076] 源信息接收单元41,用于该目标数据提取脚本接收用户根据目标多维数据模型输入预设数据源的维表信息和度量信息。
[0077] 在本发明实施例中,目标多维数据模型是由多个维度和指标(即度量)组成、可以自由钻取的模型,也即是将源数据划分为不同维度和不同度量的数据进行存储,其中,维度为每个数据所对应的多个方面,例如,一个销售额数据可以对应销售时间、销售地点、产品等多个方面,而每个维度均可以包括多个子维度,且该多个子维度可以属于不同的层次,例如,销售时间维度可以包括多个时间子维度,且各个时间子维度可以属于年份、季度、月份等三个层次中的任一层次,在数据仓库中,维度成员存放于维表中。度量为每个数据所代表的实际含义,比如,一个数据可以代表销售额、库存量、订单量等含义,其存在与事实表中。在本发明实施例中,目标数据提取脚本根据存储路径获得目标多维数据模型后,读取获得的目标多维数据模型的内容,并显示输出,接收用户根据显示输出的目标多维数据模型内容输入预设数据源的维表信息和度量信息,以用于从该数据源中提取出想要的数据,其中,预设数据源包括内部数据源和外部数据源,内部数据源中存储的是来自于企业自身在日常业务活动中长时间积累、存储在GOSL和/或者GORT(例如,SQL Server、Oracle、DB2等)数据库中的数据总集,外部数据源中存储的是除企业自身以外的第三方平台的数据,例如利用网络爬虫等工具在网络上抓取企业比较感兴趣的数据。
[0078] 优选地,目标多维数据模型能够从多个不同数据源连接数据,其中,各数据源能够存储在不同的数据仓库中,或者各数据源中的数据能够以不同的存储格式存储,从而通过多数据源降低了Transfomer处理的数据的总量,提高了目标多维数据模型的性能,进而提高了多数据源中数据的管理性能。例如,目标多维数据模型中的一个数据源来自从一个数据仓库提取数据的EXCEL表,而另一个数据源来自从另一个不同的数据仓库提取数据的.iqd文件。
[0079] 语言脚本提取单元42,用于该目标数据提取脚本根据接收到的维表信息和度量信息从目标多维数据模型中提取对应的结构化查询语言脚本。
[0080] 在本发明实施例中,目标数据提取脚本根据接收到的维表信息和度量信息从目标多维数据模型中提取对应的结构化查询语言(Structured Query Language,SQL)脚本。
[0081] 在目标数据提取脚本根据接收到的维表信息和度量信息从目标多维数据模型中提取对应的结构化查询语言脚本时,优选地,目标数据提取脚本根据接收到的维表信息和度量信息分析MDL文件中存储的维表与维表、维表与事实表之间的映射关系,根据该映射关系提取对应的SQL脚本。
[0082] 进一步优选地,该映射关系包括不同数据立方体之间各表的映射关系、以及不同cognos版本形成的MDL文件之间的关联关系,从而提高了后续提取数据的完整性。
[0083] 进一步优选地,当根据该映射关系提取到多个不同的SQL脚本时,将该多个不同的SQL脚本合成为一个SQL脚本,并对合成后的SQL脚本进行语句检查,以确定该SQL脚本的正确性,从而提高了后续提取数据的完整性和正确性。
[0084] 数据提取子单元43,用于该目标数据提取脚本根据结构化查询语言脚本从数据源中提取出对应的目标数据。
[0085] 在本发明实施例中,目标数据提取脚本根据解析出的SQL脚本中包含的表信息(例如,表名、表类型、表与事实表的关联信息)从对应的内部数据源和外部数据源中提取出对应的数据,以供用户进行数据修改、删除、添加等操作。
[0086] 优选地,语言脚本提取单元42包括:
[0087] 脚本提取子单元421,用于目标数据提取脚本根据维表信息和度量信息分析目标MDL文件中存储的维表与维表、维表与事实表之间的映射关系,根据映射关系提取结构化查询语言脚本。
[0088] 进一步优选地,脚本提取子单元421包括:
[0089] 语言脚本合并单元4211,用于当目标数据提取脚本根据映射关系提取到多个不同的结构化查询语言脚本时,将多个不同的结构化查询语言脚本合成为一个结构化查询语言脚本,并对合成后的结构化查询语言脚本进行语句检查。
[0090] 在本发明实施例中,基于MDL文件的数据提取装置的各单元可由相应的硬件或软件单元实现,各单元可以为独立的软、硬件单元,也可以集成为一个软、硬件单元,在此不用以限制本发明。
[0091] 实施例五:
[0092] 图5示出了本发明实施例五提供的计算机设备的结构,为了便于说明,仅示出了与本发明实施例相关的部分。
[0093] 本发明实施例的计算机设备5包括处理器50、存储器51以及存储在存储器51中并可在处理器50上运行的计算机程序52。该处理器50执行计算机程序52时实现上述基于MDL文件的数据提取方法实施例中的步骤,例如图1所示的步骤S101至步骤S103,以及图2所示的步骤S201至步骤S203。或者,处理器50执行计算机程序52时实现上述各装置实施例中各单元的功能,例如图3所示单元31至33的功能,以及图4所示单元41至43的功能。
[0094] 在本发明实施例中,通过预先编译的目标数据提取脚本从目标MDL文件中批量提取目标数据,从而通过轻量级的目标数据提取脚本实现从MDL文件中批量提取数据,解决了通过cognos、matlab等软件打开MDL文件耗时长、及步骤繁琐的问题,提高了数据提取的便利性、快捷性和效率。
[0095] 本发明实施例的计算机设备可以为个人计算机、笔记本电脑。该计算机设备5中处理器50执行计算机程序52时实现基于MDL文件的数据提取方法时实现的步骤可参考前述方法实施例的描述,在此不再赘述。
[0096] 实施例六:
[0097] 在本发明实施例中,提供了一种计算机可读存储介质,该计算机可读存储介质存储有计算机程序,该计算机程序被处理器执行时实现上述基于MDL文件的数据提取方法实施例中的步骤,例如,图1所示的步骤S101至步骤S103,以及图2所示的步骤S201至步骤S203。或者,该计算机程序被处理器执行时实现上述各装置实施例中各单元的功能,例如图3所示单元31至33的功能,以及图4所示单元41至45的功能。
[0098] 在本发明实施例中,通过预先编译的目标数据提取脚本从目标MDL文件中批量提取目标数据,从而通过轻量级的目标数据提取脚本实现从MDL文件中批量提取数据,解决了通过cognos、matlab等软件打开MDL文件耗时长、及步骤繁琐的问题,提高了数据提取的便利性、快捷性和效率。
[0099] 本领域普通技术人员可以理解实现上述实施例方法中的全部或部分流程,是可以通过计算机程序来指令相关的硬件来完成,所述的计算机程序可存储于一非易失性计算机可读取存储介质中,该计算机程序在执行时,可包括如上述各方法的实施例的流程。其中,本申请所提供的各实施例中所使用的对存储器、存储、数据库或其它介质的任何引用,均可包括非易失性和/或易失性存储器。非易失性存储器可包括只读存储器(ROM)、可编程ROM(PROM)、电可编程ROM(EPROM)、电可擦除可编程ROM(EEPROM)或闪存。易失性存储器可包括随机存取存储器(RAM)或者外部高速缓冲存储器。作为说明而非局限,RAM以多种形式可得,诸如静态RAM(SRAM)、动态RAM(DRAM)、同步DRAM(SDRAM)、双数据率SDRAM(DDRSDRAM)、增强型SDRAM(ESDRAM)、同步链路(Synchlink)DRAM(SLDRAM)、存储器总线(Rambus)直接RAM(RDRAM)、直接存储器总线动态RAM(DRDRAM)、以及存储器总线动态RAM(RDRAM)等。
[0100] 所属领域的技术人员可以清楚地了解到,为了描述的方便和简洁,仅以上述各功能单元、模块的划分进行举例说明,实际应用中,可以根据需要而将上述功能分配由不同的功能单元、模块完成,即将所述装置的内部结构划分成不同的功能单元或模块,以完成以上描述的全部或者部分功能。
[0101] 以上所述实施例仅用以说明本发明的技术方案,而非对其限制;尽管参照前述实施例对本发明进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本发明各实施例技术方案的精神和范围,均应包含在本发明的保护范围之内。
高效检索全球专利

专利汇是专利免费检索,专利查询,专利分析-国家发明专利查询检索分析平台,是提供专利分析,专利查询,专利检索等数据服务功能的知识产权数据服务商。

我们的产品包含105个国家的1.26亿组数据,免费查、免费专利分析。

申请试用

分析报告

专利汇分析报告产品可以对行业情报数据进行梳理分析,涉及维度包括行业专利基本状况分析、地域分析、技术分析、发明人分析、申请人分析、专利权人分析、失效分析、核心专利分析、法律分析、研发重点分析、企业专利处境分析、技术处境分析、专利寿命分析、企业定位分析、引证分析等超过60个分析角度,系统通过AI智能系统对图表进行解读,只需1分钟,一键生成行业专利分析报告。

申请试用

QQ群二维码
意见反馈