CN107533570A - 用于从表格数据自动推断立方体模式以在多维数据库环境中使用的系统和方法 - Google Patents

用于从表格数据自动推断立方体模式以在多维数据库环境中使用的系统和方法 Download PDF

Info

Publication number
CN107533570A
CN107533570A CN201680025687.1A CN201680025687A CN107533570A CN 107533570 A CN107533570 A CN 107533570A CN 201680025687 A CN201680025687 A CN 201680025687A CN 107533570 A CN107533570 A CN 107533570A
Authority
CN
China
Prior art keywords
row
cube
level
digraph
data
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Granted
Application number
CN201680025687.1A
Other languages
English (en)
Other versions
CN107533570B (zh
Inventor
D·阿尔伯格
V·贝尔耶夫
G·谢克德
G·鲁宾
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Oracle International Corp
Original Assignee
Oracle International Corp
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Oracle International Corp filed Critical Oracle International Corp
Publication of CN107533570A publication Critical patent/CN107533570A/zh
Application granted granted Critical
Publication of CN107533570B publication Critical patent/CN107533570B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/20Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
    • G06F16/21Design, administration or maintenance of databases
    • G06F16/211Schema design and management
    • G06F16/212Schema design and management with details for data modelling support
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/20Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
    • G06F16/21Design, administration or maintenance of databases
    • G06F16/211Schema design and management
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/20Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
    • G06F16/25Integrating or interfacing systems involving database management systems
    • G06F16/258Data format conversion from or to a database
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/20Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
    • G06F16/28Databases characterised by their database models, e.g. relational or object models
    • G06F16/283Multi-dimensional databases or data warehouses, e.g. MOLAP or ROLAP
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/80Information retrieval; Database structures therefor; File system structures therefor of semi-structured data, e.g. markup language structured data such as SGML, XML or HTML
    • G06F16/83Querying
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/90Details of database functions independent of the retrieved data types
    • G06F16/901Indexing; Data structures therefor; Storage structures
    • G06F16/9024Graphs; Linked lists

Abstract

根据实施例,本文描述的是用于从表格数据自动推断立方体模式以在多维数据库环境中使用的系统和方法。立方体模式推断组件可以连续执行逐列分割以计算表格数据中的多个列中的每对列之间的信息增益比。可以从每对列之间的信息增益比构造互相关矩阵。该系统可以基于互相关矩阵来确定多个列之间的关系;创建表示关系的层次有向图;并且还将层次有向图变换成立方体模式,该立方体模式可以用于创建用于加载表格数据的立方体,或将表格数据映射到多维数据库环境中的现有立方体中。

Description

用于从表格数据自动推断立方体模式以在多维数据库环境中 使用的系统和方法
版权声明
本专利文档的公开内容的一部分包含受版权保护的素材。版权拥有者不反对任何人对专利文档或专利公开内容按照在专利商标局的专利文件或记录中出现的那样进行传真复制,但是除此之外在任何情况下都保留所有版权。
优先权要求
本申请要求于2015年10月23日提交的标题为“SYSTEM AND METHOD FOR CABESAUTOMATIC INFERENCE OF CUBES FROM TABULAR DATA FOR USE IN A MULTIDIMENSIONALDATABASE”、申请号为62/245,885的美国临时申请的优先权权益,该临时申请通过引用被结合于此。
技术领域
本发明的实施例一般而言涉及数据库和数据仓库,并且具体而言涉及用于从表格数据自动推断立方体模式以在多维数据库环境中使用的系统和方法。
背景技术
多维数据库(例如,Oracle Essbase)被设计成用于对可以从多个角度查看和分析的大量数据进行高效和方便地存储和检索。这样的多维数据库可以包括逻辑上表示多维数据的立方体。立方体可以从存储在平面文件或数据库表中的表格数据构建。从表格数据构建立方体需要用户或系统来识别表格数据中的列之间的关系和依赖性,以便提取立方体的模式(schema)。但是,对于包括数百列的表格数据,识别用于构建立方体的模式可能是一项艰巨的任务。
发明内容
根据实施例,本文所述的是用于从表格数据自动推断立方体模式以在多维数据库环境中使用的系统和方法。该系统可以包括立方体模式推断组件,该组件可以连续执行逐列分割以计算表格数据中的多个列中的每对列之间的信息增益比。可以从每对列之间的信息增益比构造互相关矩阵。该系统可以基于互相关矩阵来确定多个列之间的关系,并且创建表示该关系的层次有向图。该系统还可以将层次有向图变换成立方体模式,该立方体模式可以用于创建用于加载表格数据的立方体,或将表格数据映射到多维数据库环境中的现有立方体中。
附图说明
图1图示了根据实施例的多维数据库环境的示例。
图2图示了根据实施例的用于从表格数据自动推断立方体模式以在多维数据库环境中使用的系统。
图3图示了根据实施例的从表格数据自动推断立方体模式以在多维数据库环境中使用。
图4图示了根据实施例的使用系统从表格数据自动推断立方体模式的示例。
图5A-5B图示了根据实施例的用于将表格数据的列映射到多个立方体元素的流程图。
图6图示了根据实施例的用于从表格数据自动推断立方体模式以在多维数据库环境中使用的方法。
图7图示了根据实施例的用于其中可以使用本系统的环境的体系架构图。
具体实施方式
参考所附的说明书、权利要求书和附图,以上所述连同其它特征一起将变得显而易见。阐述了具体细节,以便提供对各种实施例的理解。但是,将显而易见的是,各种实施例可以在没有这些具体细节的情况下实践。所附的说明书和附图不是限制性的。
多维数据库环境(其示例包括Oracle Essbase)可以用于以解决最终用户的特定要求的方式集成大量数据(在一些情况下是来自多个数据源),并将过滤后的信息分发到这些用户。
图1图示了根据实施例的多维数据库环境100的示例。
如图1所示,根据实施例,作为数据库层操作的多维数据库环境可以包括一个或多个多维数据库服务器系统102,每个数据库服务器系统可以包括物理计算机资源或组件104(例如,微处理器/CPU、物理存储器、网络组件)、操作系统106以及一个或多个多维数据库服务器110(例如,Essbase服务器)。
根据实施例,中间层120可以包括一个或多个服务,诸如例如提供者服务122(例如,Hyperion提供者服务)、管理服务124(例如,Essbase管理服务)或工作室/集成服务126(例如,Essbase工作室/集成服务)。中间层可以经由ODBC/JDBC 127、128或其它类型的接口提供到元数据目录129和/或一个或多个数据源130(例如,关系数据库)的访问,以供与多维数据库环境一起使用。
根据实施例,一个或多个数据源也可以由一个或多个多维数据库服务器经由ODBC/JDBC 132或其它类型的接口来访问,以在提供多维数据库时使用。
根据实施例,客户端层140可以包括一个或多个多维数据库客户端142(例如,Essbase服务器客户端),其使得能够访问多维数据库(诸如例如智能视图(Smart View)、电子表格加载项(Spreadsheet Add-in)、智能搜索、管理服务、MaxL、XMLA、CAPI或VB API应用、Oracle商业智能企业增强版或其它类型的多维数据库客户端)。客户端层还可以包括用于与中间层中的服务一起使用的控制台,诸如例如管理服务控制台144或者工作室/集成服务控制台146。
根据实施例,客户端、中间层和数据库层之间的通信可以由TCP/IP、HTTP或其它类型的网络通信协议中的一个或多个来提供。
根据实施例,多维数据库服务器可以集成来自一个或多个数据源的数据,以提供多维数据库、数据结构或(一个或多个)立方体150,其然后可以被访问,以向最终用户提供经过滤的信息。
一般而言,多维数据库中的每个数据值存储在立方体的一个单元格中;并且特定的数据值可以通过指定其沿着立方体的维度的坐标被引用。来自一个维度的成员与来自一个或多个其它维度中的每一个的成员的交叉点表示数据值。
例如,如图1所示,该图图示了可以在面向销售的商业应用中使用的立方体162,当查询指示“销售额”时,系统可以将这个查询解释为包含所有“销售额”数据值的数据库内的数据值164的切片或层,其中“销售额”与“实际”和“预算”相交。为了引用多维数据库中的具体数据值166,查询可以在每个维度上指定成员,例如通过指定“销售额、实际、一月”。以不同方式对数据库进行切片提供了数据的不同视角;例如,对“二月”的数据值168的切片检查其时间/年度维度被固定到“二月”的所有数据值。
数据库概要
根据实施例,多维数据库的开发从数据库概要的创建开始,数据库概要定义数据库中的成员之间的结构关系;在数据库中组织数据;以及定义整合和数学关系。在数据库概要的层次树或数据结构内,每个维度包括一个或多个成员,成员又可以包括其它成员。维度的规范指示系统如何整合其各个成员的值。整合是树的分支内的一组成员。
维度和成员
根据实施例,维度表示数据库概要中的最高整合层。可以选择标准维度来表示与部门功能有关的商业计划的组成部分(例如,时间、帐户、产品线、市场、区域)。与标准维度相关联的属性维度使得用户能够基于成员属性或特点对标准维度的成员进行分组和分析。成员(例如,产品A、产品B、产品C)是维度的各个组成部分。
维度和成员关系
根据实施例,多维数据库使用家族(父母、孩子、兄弟姐妹;子孙和祖先);以及层次(代和层;根和叶子)术语来描述成员在数据库概要中的角色和关系。
根据实施例,父母是在其下方具有分支的成员。例如,“利润”可以是“销售额”和“售出商品成本”(COGS)的父母。孩子是在它上面具有父母的成员。在以上示例中,“销售额”和“售出商品成本”是父母“利润”的孩子。兄弟姐妹是同一代内的同一直接父母的孩子。
根据实施例,后代是在父母下方的分支中的成员。例如,“收益”、“库存”和“比率”可以是“度量”的后代;在这种情况下,“收益”、“库存”和“比率”的孩子也是“度量”的后代。祖先是成员上面的分支中的成员。在以上示例中,“利润”、“收益”和“度量”可以是“销售额”的祖先。
根据实施例,根是分支中的顶部成员。例如,“度量”可以是“收益”、“库存”和“比率”的根;并且也是“收益”、“库存”和“比率”的孩子的根。叶子(层0)成员没有孩子。例如,打开“库存”、添加和结束“库存”可以是叶子成员。
根据实施例,代是指维度内的整合层。树的根分支被认为是“第1代”,并且代的数从根到叶子成员增加。层是指维度内的分支;并且与用于代的编号排序相反地编号,其中层编号从叶子成员到其根减小。
根据实施例,用户可以向代或级别分配名称,并且使用那个名称作为那一代或级别中的所有成员的简写。
稀疏和稠密维度
多维数据库内的数据集常常共享两个特点:数据不是平滑和均匀地分布;以及对大多数成员组合不存在数据。
根据实施例,为了解决这个问题,系统可以识别两种类型的标准维度:稀疏维度和稠密维度。稀疏维度是具有相对低百分比的可用数据位置被填充的维度;而稠密维度是在维度的每个组合中存在一个或多个单元格被占据的相对高概率的维度。许多多维数据库固有地是稀疏的,因为它们对大多数成员组合缺少数据值。
数据块和索引系统
根据实施例,多维数据库使用数据块和索引来存储和访问数据。系统可以为稀疏标准维度成员的每个唯一组合创建多维数组或数据块,其中每个数据块表示用于其稀疏维度成员的组合的稠密维度成员。为每个数据块创建索引,其中索引表示稀疏标准维度成员的组合,并且包括用于存在至少一个数据值的稀疏标准维度成员的每个唯一组合的条目或指针。
根据实施例,当多维数据库服务器搜索数据值时,它可以使用由索引提供的指针来定位适当的数据块;并且在这个数据块内,定位包含数据值的单元格。
管理服务
根据实施例,管理服务(例如,Essbase管理服务)提供使得用户能够设计、开发、维护和管理服务器、应用和数据库的单点访问。
工作室
根据实施例,工作室(例如,Essbase工作室)提供用于执行与数据建模、立方体设计和分析应用构造相关的任务的向导驱动的用户界面。
电子表格加载项
根据实施例,电子表格加载项将多维数据库与电子表格集成,其提供对增强命令(诸如连接(Connect)、枢转(Pivot)、向下钻取(Drill-down)和计算(Calculate))的支持。
集成服务
根据实施例,集成服务(例如,Essbase集成服务)提供用于在存储在多维数据库中的数据和存储在关系数据库中的数据之间进行集成时使用的元数据驱动的环境。
提供者服务
根据实施例,提供者服务(例如,Hyperion提供者服务)作为用于Java API、智能视图和XMLA客户端的数据源提供者操作。
智能视图
根据实施例,智能视图为例如Hyperion财务管理、Hyperion计划和Hyperion企业绩效管理工作空间数据提供公共接口。
开发者产品
根据实施例,开发者产品使得能够进行定制的企业分析应用的快速创建、管理和部署。
生命周期管理
根据实施例,生命周期管理(例如,Hyperion企业绩效管理系统生命周期管理)提供用于使得企业绩效管理产品能够跨产品环境迁移应用、储存库或各个人工制品的手段。
OLAP
根据实施例,在线分析处理(OLAP)提供使得用户能够分析企业数据的环境。例如,财务部门可以使用OLAP用于诸如预算、基于活动的成本核算、财务绩效分析以及财务建模等应用,以提供“即时(just-in-time)”信息。
立方体的自动推断
在表格数据文件(表格数据)中,列通常是非均匀相关的,其中列之间有许多隐藏的依赖性(属性)。从表格数据手动提取立方体模式需要花费时间和精力。
根据实施例,本文所述的系统和方法可以用于从表格数据自动推断立方体模式以在多维数据库环境中使用。该系统可以包括立方体模式推断组件,该组件可以对表格数据连续执行逐列分割,以计算表格数据中的多个列中的每对之间的信息增益比。可以从每对列之间的信息增益比构造互相关矩阵。该系统可以基于互相关矩阵来确定多个列之间的关系,并且创建表示该关系的层次有向图。该系统还可以将层次有向图变换成立方体模式,并使用立方体模式在多维数据库环境中创建用于加载表格数据的立方体。
根据实施例,该系统可以将从表格数据推断出的层次有向图与来自现有立方体的层次有向图进行比较,并且确定这两个层次有向图是否彼此匹配。如果它们匹配,那么表格数据可以被加载到现有立方体中;否则,可以创建新的立方体来存储表格数据。
根据实施例,表格数据可以包括来自不同数据域的数据,例如,医疗和财务数据域。由于系统根据列之间的熵和/或信息增益比计算统计相关性,因此在不解释数据值的情况下,即使列使用不同的编码,系统也可以检测到表格数据中的列之间的隐藏关系。
根据实施例,当计算列之间的统计相关性时,系统可以检查单元格中的字符串模式或从单元格中的值转换的字符串模式,并且不需要分析或解释与每个字符串模式相关联的含义。
介绍
根据实施例,贯穿整个文档使用了以下术语。
熵:根据实施例,X的熵H(X)可以被定义为
其中X是表格数据(例如数据库表或Excel表)中的列/属性。熵可以被认为是概率分布的函数,并且可以独立于属性的实际值。
条件熵:根据实施例,X和Y的条件熵可以被定义为
其中X和Y是表格数据(例如,数据库表或Excel工作表(sheet))中的列或属性。假设知道属性Y,则条件熵H(X|Y)可以度量属性X的不确定性。它是非负实数,并且当X=Y时或当存在从Y到X的函数依赖性时,它变为零,因为在这些情况下,属性X不存在不确定性。另一方面,如果两个属性X和Y是独立的,那么条件熵H(X|Y)等于H(X)。
信息增益:根据实施例,可以使用熵和条件熵将X和Y的信息增益定义为,
MI(X;Y)=H(Y)-H(Y|X)
其中X和Y是表格数据(例如,数据库表或Excel工作表)中的列/属性。信息增益是概率分布的函数并且独立于属性的实际值。
信息增益比:根据实施例,X的信息增益比可以被定义为
其中X和Y是表格数据(例如,数据库表或Excel工作表)中的列/属性。信息增益比度量由于知道一个属性而导致另一个属性的不确定性的减少。它度量一个属性包含关于另一个属性的信息量。当两个属性是独立的时,它为零,并且随着两个属性之间的依赖性增加而增加。属性与自身的信息增益比等于1。
图2图示了根据实施例的用于从表格数据自动推断立方体模式以在多维数据库环境中使用的系统。
如图2所示,立方体模式推断组件207可以包括互相关矩阵组合器(composer)211、层次有向图构建器215和层次有向图解析器217;并且可以被执行以根据从表格数据存储库205接收到的表格数据推断立方体模式219。表格数据可以由列或表组成或者可以在列或表中呈现。表格数据可以是存储在Excel工作表、纯文本文件或关系数据库表中的数据。
在本公开中,根据实施例,表格数据可以指存储表格数据的表格数据文件。因此,表格数据和表格数据文件可以互换地使用。
根据实施例,立方体模式推断组件可以响应于来自用户201的请求而通过用户界面203检索表格数据,并且将表格数据作为输入提供给立方体模式推断组件。
根据实施例,立方体模式推断组件可以是多维数据库客户端230的一部分,或者作为自包含的独立应用执行。
根据实施例,互相关矩阵组合器可以对表格数据连续执行逐列分割,以计算表格数据中的多个列中的每对之间的信息增益比,并且构造表示每对列之间的信息增益比的互相关矩阵。
根据实施例,通过执行连续的逐列分割,系统可以计算每对列的两个信息增益比。例如,可以为列A和列B的列对计算两个信息增益比,以度量一个属性包含关于另一个属性的信息量。
根据实施例,如上所述,可以使用以下公式计算信息增益比:
根据实施例,互相关矩阵可以是存储列对之间的关系的属性(例如,信息增益比)的数据结构(例如,二维数组)。
根据实施例,层次有向图构建器可以检查互相关矩阵以确定每对列之间的关系,并且从互相关矩阵构建表示该关系的层次有向图。层次有向图可以被构造成包括表格数据中的所有列/属性对上的成对的信息增益比。
根据实施例,层次有向图还可以是包括有限的顶点(节点)集合和有限的有序对边集合的数据结构。层次有向图可以由层次有向图解析器来解析,层次有向图解析器可以将该图变换成可以用于在数据库服务器上创建立方体221的基于XML的立方体模式219,例如,Essbase数据库概要。
图3图示了根据实施例的从表格数据自动推断立方体模式以在多维数据库环境中使用。
如图3所示,包括多个列的表格数据313可以由系统在每一列处分割,以计算每对列之间的信息增益比。
在步骤319处,可以计算列i 315和列j 317之间的信息增益比(即IGRij和IGRji)。可以使用信息增益比来确定该对列之间的关系。
在步骤321处,可以使用XOR运算符来确定该对列之间的关系。如果该对列之间的信息增益比中的一个且仅一个为1,那么XOR运算符的值为真。
在步骤322处,如果XOR运算符的值为真,那么系统可以确定该对列之间存在一对多的关系。
在步骤323处,如果XOR运算符的值为假,那么可以使用AND运算符继续检查该对列之间的关系。为了AND运算符为真,这两个信息增益比都必须为真。
在步骤327处,如果AND运算符的值为真,那么系统可以确定该对列之间存在一对一的关系;否则,在该对列之间没有相关性或依赖性,并且系统可以继续检查不同对列之间的关系。
在步骤329处,可以使用在每对列之间确定的关系来更新层次有向图。
根据实施例,可以创建XML文件作为用于层次有向图的模板,层次有向图可以用每对列之间的关系来更新。
在步骤331处,层次有向图可以被变换成立方体模式。
图4图示了根据实施例的使用系统从表格数据自动推断立方体模式的示例。
如图所示,表格数据411包括四列数据,其可以表示具有维度A和C以及数字属性D的立方体。
在表格数据中,列A中的a1对应于列b中的b2和b3,列A中的a2对应于列B中的b1和b3,列C中的c2对应于列D中的d8和d9,并且列C中的c1和c4分别对应于列D中的d7和d10。
根据实施例,信息增益比413的互相关矩阵可以使用通过在每列处的连续分割计算出的信息增益比构造。
例如,当在列A处分割时,计算出的信息增益比可以包括列A和列B的信息增益比(1:00)、列A和列C的信息增益比(0.5)、列A和列D的信息增益比(1:00)。
类似地,当在列B处分割时,计算出的信息增益比可以包括列B和列A的信息增益比(0.50)、列B和列C的信息增益比(0.75)、列B和列D的信息增益比(1:00)。
如上所述,信息增益比可以度量一个属性包含关于另一个属性的信息量。在这个特定的示例中,与列B包含关于列A的信息相比,列A包含关于列B的更多信息。
从列A的角度来看,当列A中的单元格的值为a1时,列B中的对应值为b2和b4;当列A中的单元格的值不为a1时,列B中的对应单元格中的值不是b2或b4。
从列B的角度来看,当列B中的单元格为b2时,列A中的对应单元格值为a1。但是,当列B中的单元格不是b2时,列A中的对应单元格值中的一个保持为a1。
因此,列A和列B的信息增益比为1,而列B和列A的信息增益比为0.5。
根据实施例,信息增益比413的互相关矩阵可以附加地包括相同属性之间的互相关。矩阵的主对角线可以包含等于与每个列自身的互信息的值。该值可以使用上述熵公式来计算。
如图4还示出的,可以从互相关矩阵构造层次有向图415。该有向图包括多个节点和除节点A和节点C之间之外的每对节点之间的边。每个节点表示表格数据411中的属性或列,并且每条边表示一对节点之间的关系。每条边上的标签指示两个相邻节点之间的信息增益比。
例如,节点A和B之间的信息增益比为1.0,并且B和A之间的信息增益比为0.50。节点上的标签表示属性或列的熵,其等于它与自己的互信息或自信息。
在该特定示例中,由于列A和列C之间没有相关性或依赖性,因此这两个节点之间没有显示边。
根据实施例,可以从层次有向图生成立方体模式417。立方体模式可以是指定数据库概要的XML文件,该数据库概要可以用于在多维数据库服务器中创建用于在加载表格数据时使用的立方体,或者可以用于基于生成的概要和数据库服务器中的现有概要之间的比较来确定表格数据是否可以被加载到现有立方体中。
识别立方体元素
根据实施例,当将层次有向图变换成立方体模式或数据库概要时,系统需要能够将有向层次图上的每列映射到由立方体模式定义的立方体的特定元素(例如,度量列、顶层列、基层列或属性列)。
根据实施例,可以使用启发式处理从有向层次图上的多个列中识别立方体元素,以在构造立方体模式/星型模式时使用。
在启发式处理下,可以首先识别可以高概率识别的一个或多个立方体元素,例如,一个或多个度量列和/或一个或多个平面维度列(平面层次维度列),并且将这些元素从多个列中去除。
从剩余的列中可以识别更复杂的立方体元素(例如,维度层次中的列)。
根据实施例,如果列是数字或浮点列,并且与多个列中的任何其它列不具有关系(即,一对一、多对一或一对多关系),那么该列可以被识别为度量列(measure column)。
根据实施例,系统可以支持构造用于不可度量的(measureless)立方体的星型模式。例如,当Excel工作表不包括度量列时,系统可以添加虚拟列作为可以在虚拟列的每一行中保存任意数字(例如,数字“1”)的度量列,并使用该列作为度量列。在这种情况下,Excel工作表中的实际列可以是维度层次并且虚拟列可以是度量列。
根据实施例,如果列是与多个列中的任何其它列不具有关系的文本列,或者该列是与所有其它列具有一对多或多对一关系的数字或文本列,那么该列可以被识别为平面层次维度列。在默认情况下,没有重复值的数字列可以被识别为平面层次维度列。
根据实施例,剩余的列可以包括多个维度和一个或多个度量列。每个维度可以包括剩余列中的列集合。
根据实施例,为了为维度创建维度层次,系统可以从与维度相关联的列集合中识别基层列和一个或多个顶层列。
根据实施例,基层列可以是在构成维度的列集合中与每个其它列仅具有多对一或一对一关系的列。顶层列可以是在用于维度的列集合中与每个其它列具有一对多关系或一对一关系的列。在用于维度的列集合中,中间列是与基层列具有一对多关系,以及与顶层列具有多对一关系的列。
根据实施例,可以使用基层列、顶层列和一个或多个中间列来创建维度层次;并且维度层次可以被添加到一个或多个平面层次维度列。可以使用一个或多个度量列、一个或多个平面层次维度列和维度层次来创建立方体模式。
根据实施例,当为维度中的列集合识别多个顶层列时,可以与一个或多个中间层列和基层列组合以创建最高/最长组合/链的顶层级别可以被选择作为顶层列。顶层列的其余部分可以被识别为属性,或用于备选维度层次的顶层列。
根据实施例,使用基层列、选定的顶层列和中间层列构建的最高层次可以被认为是主维度层次。在用于没有包括在主维度层次中的维度的列集合中的列可以被识别为基层列的属性。
根据实施例,可以通过在去除顶层列和中间层列之后重复上述处理来识别备选维度层次。每个备选维度层次和用于特定维度的主维度层次(首先被识别)可以共享相同的基层列。
图5A-5B图示了根据实施例的用于将表格数据的列映射到多个立方体元素的流程图。
如图5A-5B所示,在步骤519处,立方体模式推断组件可以基于在层次有向图中显示的表格数据中的多个列之间的关系从该多个列中识别一个或多个度量列以及一个或多个平面维度列。
在步骤521处,可以从多个列中去除识别出的度量列和平面维度列。
在步骤523处,立方体模式推断组件可以从多个列的剩余列中识别一个或多个列集合,其中每个列集合定义维度并且包括与列集合中的每个其它列具有多对一关系或一对一关系的基层列。
在步骤525处,立方体模式推断组件可以从用于每个维度的列集合中识别一个或多个顶层列,其中每个顶层列与列集合中的每个其它列仅具有一对多关系或一对一关系。
在步骤527处,立方体模式推断组件可以从一个或多个识别出的顶层列中选择可以用于为每个维度构建最高层次的列。
在步骤529处,立方体模式推断组件可以识别用于每个维度层次的一个或多个中间层列,其中每个中间层列与选定的顶层列具有多对一的关系,并且与基层列具有一对多的关系。
在步骤531处,立方体模式推断组件可以使用识别出的基层列、选定的顶层列和识别出的中间层列来创建每个维度的维度层次。
在步骤533处,立方体模式推断组件可以从一个或多个列集合中的每一个确定还没有被包括在对应的维度层次中的一个或多个列,并将该一个或多个确定的列标记为对应的维度层次中的基层列的属性列。标记为基层列的属性的一个或多个列可以包括与基层列或选定的顶层列以及以上识别出的任何未选择的顶层列具有一对一关系的任何列。
在步骤535处,立方体模式推断组件可以使用一个或多个度量列、一个或多个平面维度列、一个或多个维度层次以及在一个或多个维度层次中的每一个中的基层列的一个或多个属性列来创建立方体模式。
图6图示了根据实施例的用于从表格数据自动推断立方体模式以在多维数据库环境中使用的方法。
如图6所示,在步骤613处,提供了在一个或多个微处理器上执行的立方体模式推断组件,其中该立方体模式推断组件作为多维数据库服务器的客户端操作。
在步骤615处,立方体模式推断组件用于计算在立方体模式推断组件处接收到的表格数据中的多个列中的每对列的信息增益比。
在步骤617处,使用该列对的信息增益比来确定每对列之间的关系。
在步骤619处,使用确定的关系构造层次有向图。
在步骤621处,层次有向图被变换成立方体模式,用于在多维数据库服务器中创建立方体时使用。
图7图示了根据实施例的可以使用本系统的环境的体系架构图。
如图7所示,立方体模式推断组件713可以运行在多维数据库服务器717的客户端A711上、从存储在表格数据存储库A 705中的表格数据提取立方体模式、并在多维数据库服务器中将表格数据加载到使用立方体模式创建的立方体中,以供客户端B 715访问。
根据实施例,多维数据库服务器还可以与表格数据存储库B 707通信,表格数据存储库B 707可以提供表格数据和数据库文件以支持多维数据库服务器。
例如,表格数据和数据库文件可以包括用于Essbase工作室的日志文件和元数据。
本发明可以使用包括根据本公开的教导编程的一个或多个处理器、存储器和/或计算机可读存储介质的一个或多个常规的通用或专用计算机、计算设备、机器或微处理器来方便地实现。如对软件领域的技术人员将显而易见的,基于本公开的教导,熟练的程序员可以容易地准备适当的软件编码。
在一些实施例中,本发明包括计算机程序产品,该计算机产品是具有存储在其上/其中的指令的非瞬态存储介质或计算机可读介质,其中指令可以用于对计算机进行编程,以执行本发明的任何处理。存储介质可以包括但不限于任何类型的盘,包括软盘、光盘、DVD、CD-ROM、微型驱动器和磁光盘,ROM、RAM、EPROM、EEPROM、DRAM、VRAM、闪存存储器设备、磁卡或光卡、纳米系统(包括分子存储器IC),或适于存储指令和/或数据的任何类型的介质或设备。
出于说明和描述的目的,已经提供了本发明的前述描述。其并不旨在是详尽的或者将本发明限制到所公开的精确形式。许多修改和变化对本领域技术人员将是显而易见的。这些修改和变化包括所公开特征的任何相关组合。选择和描述实施例是为了最好地解释本发明的原理及其实际应用,从而使本领域的其它技术人员能够理解本发明的各种实施例以及适于预期特定用途的各种修改。本发明的范围旨在由以下权利要求及其等同物定义。

Claims (30)

1.一种用于从表格数据自动推断立方体模式以在多维数据库环境中使用的系统,包括:
计算机,所述计算机包括一个或多个微处理器;
在所述计算机上执行的多维数据库服务器;
立方体模式推断组件,所述立方体模式推断组件操作为多维数据库服务器的客户端,其中立方体模式推断组件被配置为:
计算在立方体模式推断组件处接收到的表格数据中的多个列中的每对列的信息增益比,
使用每对列的信息增益比来确定该对列之间的关系,
使用所确定的关系构造层次有向图,以及
将层次有向图变换成用于在多维数据库服务器中创建立方体时使用的立方体模式。
2.如任一前述权利要求所述的系统,其中所述立方体模式推断组件还被配置为构造用于存储每对列的信息比的矩阵。
3.如任一前述权利要求所述的系统,其中所述层次有向图的每条边被标记有两个相邻节点之间的信息增益比,并且所述层次有向图的每个节点被标记有由该节点表示的列的熵。
4.如任一前述权利要求所述的系统,其中所述层次有向图被层次有向图解析器解析并变换成基于XML的立方体模式。
5.如权利要求4所述的系统,其中所述基于XML的立方体模式是多维数据库服务器中的数据库概要。
6.如任一前述权利要求所述的系统,其中列对中的第一列和第二列之间的每个信息增益比度量第一列包含的关于第二列的信息量。
7.如任一前述权利要求所述的系统,其中所述立方体模式推断组件在不解释每列中的值的情况下计算每对列的信息增益比。
8.如任一前述权利要求所述的系统,其中所述表格数据是存储在Excel工作表、文本文件或数据库表中的数据。
9.如任一前述权利要求所述的系统,其中所述立方体模式推断组件被配置为解析层次有向图,并且执行启发式处理以识别用于在构造立方体模式时使用的多个立方体元素,所述启发式处理包括:
从在层次有向图上表示的多个列中识别一个或多个度量列和一个或多个平面层次维度列,
从所述多个列中去除所述一个或多个度量列和所述一个或多个平面层次维度列,
从剩余的列中识别一个或多个维度层次,以及
使用所述一个或多个度量列、所述一个或多个平面层次维度列以及所述一个或多个维度层次创建立方体模式。
10.一种用于从表格数据自动推断立方体模式以在多维数据库环境中使用的方法,包括:
提供在一个或多个微处理器上执行的立方体模式推断组件,其中立方体模式推断组件操作为多维数据库环境中的多维数据库服务器的客户端;
使用立方体模式推断组件计算在立方体模式推断组件处接收到的表格数据中的多个列中的每对列的信息增益比;
使用每对列的信息增益比来确定该对列之间的关系;
使用所确定的关系构造层次有向图;以及
将层次有向图变换成用于在多维数据库服务器中创建立方体时使用的立方体模式。
11.如权利要求10所述的方法,其中所述立方体模式推断组件还被配置为构造用于存储每对列的信息比的矩阵。
12.如权利要求10或11所述的方法,其中所述层次有向图的每条边被标记有两个相邻节点之间的信息增益比,并且所述层次有向图的每个节点被标记有由该节点表示的列的熵。
13.如权利要求10至12中任一项所述的方法,其中所述层次有向图被层次有向图解析器解析并变换成基于XML的立方体模式。
14.如权利要求13所述的方法,其中所述基于XML的立方体模式是多维数据库服务器中的数据库概要。
15.如权利要求10至14中任一项所述的方法,其中列对中的第一列和第二列之间的每个信息增益比度量第一列包含的关于第二列的信息量。
16.如权利要求10至15中任一项所述的方法,其中所述立方体模式推断组件在不解释每列中的值的情况下计算每对列的信息增益比。
17.如权利要求10至16中任一项所述的方法,其中所述表格数据是存储在Excel工作表、文本文件或数据库表中的数据。
18.如权利要求10至17中任一项所述的方法,其中所述立方体模式推断组件被配置为解析层次有向图并且执行启发式处理以识别用于在构造立方体模式时使用的多个立方体元素,所述启发式处理包括:
从在层次有向图上表示的多个列中识别一个或多个度量列和一个或多个平面层次维度列,
从所述多个列中去除所述一个或多个度量列和所述一个或多个平面层次维度列,
从剩余的列中识别一个或多个维度层次,以及
使用所述一个或多个度量列、所述一个或多个平面层次维度列以及所述一个或多个维度层次创建立方体模式。
19.一种非瞬态计算机可读存储介质,包括存储在其上的指令,所述指令在由一个或多个计算机读取和执行时使所述一个或多个计算机执行包括以下的步骤:
提供在一个或多个微处理器上执行的立方体模式推断组件,其中立方体模式推断组件操作为多维数据库环境中的多维数据库服务器的客户端;
使用立方体模式推断组件计算在立方体模式推断组件处接收到的表格数据中的多个列中的每对列的信息增益比;
使用每对列的信息增益比来确定该对列之间的关系;
使用所确定的关系构造层次有向图;以及
将层次有向图变换成用于在多维数据库服务器中创建立方体时使用的立方体模式。
20.如权利要求19所述的非瞬态计算机可读存储介质,其中所述立方体模式推断组件还被配置为构造用于存储每对列的信息比的矩阵。
21.如权利要求19或20所述的非瞬态计算机可读存储介质,其中所述层次有向图的每条边被标记有两个相邻节点之间的信息增益比,并且所述层次有向图的每个节点被标记有由该节点表示的列的熵。
22.如权利要求19至21中任一项所述的非瞬态计算机可读存储介质,其中所述层次有向图被层次有向图解析器解析并变换成基于XML的立方体模式。
23.如权利要求22所述的非瞬态计算机可读存储介质,其中所述基于XML的立方体模式是多维数据库服务器中的数据库概要。
24.如权利要求19至23中任一项所述的非瞬态计算机可读存储介质,其中列对中的第一列和第二列之间的每个信息增益比度量第一列包含的关于第二列的信息量。
25.如权利要求19至24中任一项所述的非瞬态计算机可读存储介质,其中所述立方体模式推断组件在不解释每列中的值的情况下计算每对列的信息增益比。
26.如权利要求19至25中任一项所述的非瞬态计算机可读存储介质,其中所述表格数据是存储在Excel工作表、文本文件或数据库表中的数据。
27.如权利要求19至26中任一项所述的非瞬态计算机可读存储介质,其中所述立方体模式推断组件被配置为解析层次有向图,并且执行启发式处理以识别用于在构造立方体模式时使用的多个立方体元素,所述启发式处理包括:
从在层次有向图上表示的多个列中识别一个或多个度量列和一个或多个平面层次维度列,
从所述多个列中去除所述一个或多个度量列和所述一个或多个平面层次维度列,
从剩余的列中识别一个或多个维度层次,以及
使用所述一个或多个度量列、所述一个或多个平面层次维度列以及所述一个或多个维度层次创建立方体模式。
28.一种非暂态计算机可读存储介质,包括存储在其上的指令,所述指令在由一个或多个计算机读取和执行时使所述一个或多个计算机执行如权利要求10至18中任一项所述的方法。
29.一种计算机程序,包括机器可读格式的程序指令,所述程序指令在由计算机系统执行时使所述计算机程序执行如权利要求10至18中任一项所述的方法。
30.一种计算机程序产品,包括存储在非暂态机器可读数据存储介质中的如权利要求29所述的计算机程序。
CN201680025687.1A 2015-10-23 2016-10-21 用于从表格数据自动推断立方体模式的系统和方法 Active CN107533570B (zh)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
US201562245885P 2015-10-23 2015-10-23
US62/245,885 2015-10-23
PCT/US2016/058209 WO2017070533A1 (en) 2015-10-23 2016-10-21 System and method for automatic inference of a cube schema from a tabular data for use in a multidimensional database environment

Publications (2)

Publication Number Publication Date
CN107533570A true CN107533570A (zh) 2018-01-02
CN107533570B CN107533570B (zh) 2020-11-03

Family

ID=57219058

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201680025687.1A Active CN107533570B (zh) 2015-10-23 2016-10-21 用于从表格数据自动推断立方体模式的系统和方法

Country Status (5)

Country Link
US (2) US10846273B2 (zh)
EP (1) EP3365810B1 (zh)
JP (1) JP6846356B2 (zh)
CN (1) CN107533570B (zh)
WO (1) WO2017070533A1 (zh)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2021073076A1 (zh) * 2019-10-15 2021-04-22 深圳逻辑汇科技有限公司 用于可视化电子表格的方法、装置、设备及存储介质

Families Citing this family (13)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US10909178B2 (en) * 2015-03-05 2021-02-02 Workday, Inc. Methods and systems for multidimensional analysis of interconnected data sets stored in a graph database
US10733155B2 (en) 2015-10-23 2020-08-04 Oracle International Corporation System and method for extracting a star schema from tabular data for use in a multidimensional database environment
US10977435B2 (en) * 2015-12-28 2021-04-13 Informatica Llc Method, apparatus, and computer-readable medium for visualizing relationships between pairs of columns
US10747736B2 (en) * 2016-11-09 2020-08-18 Sap Se Aggregation database for external dataset
US10650050B2 (en) * 2016-12-06 2020-05-12 Microsoft Technology Licensing, Llc Synthesizing mapping relationships using table corpus
US10061637B1 (en) * 2017-01-19 2018-08-28 Amdocs Development Limited System, method, and computer program for automatic root cause analysis
KR101758219B1 (ko) * 2017-01-24 2017-07-14 김훈 수치정보 검색이 가능한 수치정보 관리장치
CN110019440B (zh) * 2017-08-30 2021-06-08 北京国双科技有限公司 数据的处理方法及装置
CN107678531B (zh) * 2017-09-30 2020-12-01 Oppo广东移动通信有限公司 应用清理方法、装置、存储介质及电子设备
US10509805B2 (en) * 2018-03-13 2019-12-17 deFacto Global, Inc. Systems, methods, and devices for generation of analytical data reports using dynamically generated queries of a structured tabular cube
CN110727840B (zh) * 2019-09-27 2022-07-05 浙江大搜车软件技术有限公司 车辆问询标签推送方法、装置、计算机设备和存储介质
CN111143412A (zh) * 2019-12-24 2020-05-12 中科金审(北京)科技有限公司 数据对比方法、装置、计算机及计算机可读存储介质
US11789704B2 (en) 2021-01-26 2023-10-17 Donyati, Llc Dynamic application builder for multidimensional database environments

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20070027674A1 (en) * 2005-06-20 2007-02-01 Future Route Limited Analytical system for discovery and generation of rules to predict and detect anomalies in data and financial fraud
CN101167048A (zh) * 2004-11-30 2008-04-23 科格洛斯公司 多维企业软件系统内的可聚集维度信息的生成
US20120116850A1 (en) * 2010-11-10 2012-05-10 International Business Machines Corporation Causal modeling of multi-dimensional hierachical metric cubes
CN103793422A (zh) * 2012-10-31 2014-05-14 国际商业机器公司 基于增强星型模型的立方体元数据及查询语句生成

Family Cites Families (19)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6775675B1 (en) * 2001-04-04 2004-08-10 Sagemetrics Corporation Methods for abstracting data from various data structures and managing the presentation of the data
US7146375B2 (en) 2002-01-25 2006-12-05 Decode Genetics, Ehf Inference control method in a data cube
US7505888B2 (en) * 2004-11-30 2009-03-17 International Business Machines Corporation Reporting model generation within a multidimensional enterprise software system
US20070027904A1 (en) * 2005-06-24 2007-02-01 George Chow System and method for translating between relational database queries and multidimensional database queries
CN102929901B (zh) 2006-06-26 2016-12-14 尼尔森(美国)有限公司 提高数据仓库性能的方法和装置
US20080027966A1 (en) * 2006-07-25 2008-01-31 Parees Benjamin M Dynamic creation of star-schema database structures and cubes
US8380748B2 (en) * 2008-03-05 2013-02-19 Microsoft Corporation Multidimensional data cubes with high-cardinality attributes
US9483537B1 (en) * 2008-03-07 2016-11-01 Birst, Inc. Automatic data warehouse generation using automatically generated schema
CN102349050A (zh) * 2009-02-10 2012-02-08 渣普控股有限公司 数据存储的创建
US8195643B2 (en) * 2010-10-28 2012-06-05 Sap Ag Database calculation engine
US10102235B2 (en) * 2011-11-15 2018-10-16 Pvelocity Inc. Method and system for providing business intelligence data
US20130332221A1 (en) 2012-06-12 2013-12-12 Siemens Aktiengesellschaft Method And System For Determining Critical Information Interfaces
JP5784239B2 (ja) * 2012-09-14 2015-09-24 株式会社日立製作所 データ分析方法、データ分析装置及びその処理プログラムを格納した記憶媒体
US9760571B1 (en) * 2013-07-23 2017-09-12 jSonar Inc. Tabular DB interface for unstructured data
US9898501B2 (en) * 2013-09-12 2018-02-20 Neustar, Inc. Method and system for performing transactional updates in a key-value store
US10353923B2 (en) * 2014-04-24 2019-07-16 Ebay Inc. Hadoop OLAP engine
US10698924B2 (en) * 2014-05-22 2020-06-30 International Business Machines Corporation Generating partitioned hierarchical groups based on data sets for business intelligence data models
US10025837B2 (en) * 2015-06-25 2018-07-17 Dundas Data Visualization, Inc. Systems and methods for intelligent data preparation and visualization
US10733155B2 (en) * 2015-10-23 2020-08-04 Oracle International Corporation System and method for extracting a star schema from tabular data for use in a multidimensional database environment

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101167048A (zh) * 2004-11-30 2008-04-23 科格洛斯公司 多维企业软件系统内的可聚集维度信息的生成
US20070027674A1 (en) * 2005-06-20 2007-02-01 Future Route Limited Analytical system for discovery and generation of rules to predict and detect anomalies in data and financial fraud
US20120116850A1 (en) * 2010-11-10 2012-05-10 International Business Machines Corporation Causal modeling of multi-dimensional hierachical metric cubes
CN103793422A (zh) * 2012-10-31 2014-05-14 国际商业机器公司 基于增强星型模型的立方体元数据及查询语句生成

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2021073076A1 (zh) * 2019-10-15 2021-04-22 深圳逻辑汇科技有限公司 用于可视化电子表格的方法、装置、设备及存储介质

Also Published As

Publication number Publication date
US20170116228A1 (en) 2017-04-27
CN107533570B (zh) 2020-11-03
JP2018536909A (ja) 2018-12-13
JP6846356B2 (ja) 2021-03-24
US10846273B2 (en) 2020-11-24
US20210073188A1 (en) 2021-03-11
WO2017070533A1 (en) 2017-04-27
EP3365810B1 (en) 2021-08-18
EP3365810A1 (en) 2018-08-29

Similar Documents

Publication Publication Date Title
CN107533570A (zh) 用于从表格数据自动推断立方体模式以在多维数据库环境中使用的系统和方法
US11741059B2 (en) System and method for extracting a star schema from tabular data for use in a multidimensional database environment
US9098566B2 (en) Method and system for presenting RDF data as a set of relational views
US20130166515A1 (en) Generating validation rules for a data report based on profiling the data report in a data processing tool
US9639596B2 (en) Processing data in a data warehouse
US9633095B2 (en) Extract, transform and load (ETL) system and method
CN103262076A (zh) 分析数据处理
CN107533569A (zh) 用于多维数据库环境中的沙箱支持的系统和方法
Fotache et al. SQL and data analysis. Some implications for data analysits and higher education
US20180357278A1 (en) Processing aggregate queries in a graph database
JP6375029B2 (ja) レポートの重要度を分析するメタデータ基盤のオンライン分析処理システム
Cigánek Design and implementation of open-data data warehouse
Hamoud et al. Design and implementing cancer data warehouse to support clinical decisions
US8527552B2 (en) Database consistent sample data extraction
Chandra et al. Analysis Students' Graduation Eligibility Using Data Warehouse
Lane et al. Eyeing the patterns: Data visualization using doubly-seriated color heatmaps
US8775463B2 (en) Detection and display of semantic errors in a reporting tool
Winberg et al. A comparison of relational and graph databases for crm systems
Renganathan Business Intelligence: An overview
Jayasekara Real-time market data warehousing platform for data visualization
Dedić MLED_BI: A Novel Business Intelligence Design Approach to Support Multilingualism
Mishra Principle & Practices Of Data Analytics
Sundjaja EVALUATION. pdf
Dai Stream data quality assessment based on distributed computing platforms
At-taibe et al. From ER models to multidimensional models: The application of Moody and Kortink technique to a university information system

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant