会员体验
专利管家(专利管理)
工作空间(专利管理)
风险监控(情报监控)
数据分析(专利分析)
侵权分析(诉讼无效)
联系我们
交流群
官方交流:
QQ群: 891211   
微信请扫码    >>>
现在联系顾问~
首页 / 专利库 / 商业智能 / 使用兴趣驱动数据管线进行数据分析的兴趣驱动商业智能系统和方法

使用兴趣驱动数据管线进行数据分析的兴趣驱动商业智能系统和方法

申请号 CN201380019027.9 申请日 2013-02-28 公开(公告)号 CN104205039B 公开(公告)日 2017-03-29
申请人 工作日公司; 发明人 J·G·伊施勒曼; B·M·沃瑟; K·S·毕耶; B·F·巴布科克; 张业伟;
摘要 根据本发明的实施例的兴趣驱动商业智能(BI)系统被说明。在本发明的一个实施例中,数据处理系统包括:包含原始数据的原始数据存储器;包含描述原始数据的元数据的元数据存储器;和被自动编译以通过使用原始数据生成报告数据的兴趣驱动数据管线,其中,兴趣驱动数据管线基于从通过使用元数据定义的至少一个报告规范自动导出的报告数据需求被编译。
权利要求

1.一种兴趣驱动商业智能系统,包括:

被配置为包含原始数据并且执行提取、变换和加载处理的原始数据存储器,其中原始数据包括非结构化的数据;

被配置为包含描述原始数据的元数据的元数据存储器;

被配置为包含聚集数据的聚集数据存储器,其中聚集数据包括通过使用提取、变换和加载处理从原始数据生成的结构化的数据;

中间处理层;

商业智能报告引擎;

其中,中间处理层被配置为自动进行以下操作:生成描述原始数据的元数据;

基于元数据从至少一个报告规范导出报告数据需求;和基于报告数据需求编译兴趣驱动数据管线,其中,编译兴趣驱动数据管线包括:通过以下操作生成提取、变换和加载处理作业以从原始数据生成聚集数据:通过使用原始数据的结构来过滤原始数据;和基于原始数据的结构来将变换应用到原始数据;

在聚集数据存储器中存储聚集数据;

通过使用聚集数据来生成包括满足报告数据需求的报告数据的报告数据;和将报告数据存储在中间处理层内的数据集市中供商业智能报告引擎探索;

其中,商业智能报告引擎被配置为:

从中间处理层接收描述原始数据的元数据;和生成使能对元数据的用户探索的用户界面以定义至少一个报告规范,其中用户探索涉及通过使用元数据对附加的报告数据的选择。

2.根据权利要求1的兴趣驱动商业智能系统,其中,原始数据存储器是数据仓库。

3.根据权利要求2的兴趣驱动商业智能系统,其中,数据仓库通过利用选自由分布式计算系统、数据库管理系统和NoSQL数据库组成的组的系统被实现。

4.根据权利要求2的兴趣驱动商业智能系统,其中,数据仓库是通过利用Hadoop实现的分布式计算系统。

5.根据权利要求2的兴趣驱动商业智能系统,其中,数据仓库被配置为存储通过利用中间处理层而生成的数据。

6.根据权利要求2的兴趣驱动商业智能系统,其中,中间处理层被配置为生成数据仓库请求。

7.根据权利要求6的兴趣驱动商业智能系统,其中,数据仓库请求是选自由Hive查询和MapReduce操作组成的组的请求。

8.根据权利要求1的兴趣驱动商业智能系统,其中,中间处理层通过利用选自由分布式计算系统、数据库管理系统和NoSQL数据库系统组成的组的系统被实现。

9.根据权利要求1的兴趣驱动商业智能系统,其中,商业智能报告引擎被配置为基于至少一个报告的交互探索来显示指示。

10.根据权利要求9的兴趣驱动商业智能系统,其中,指示是更新报告数据需求所需要的时间的估计。

11.一种用于通过使用兴趣驱动商业智能系统来创建报告的方法,包括:通过使用兴趣驱动商业智能系统来在原始数据存储器中存储原始数据,其中原始数据包括非结构化的数据;

通过使用兴趣驱动商业智能系统来生成描述原始数据的元数据;

通过使用兴趣驱动商业智能系统来接收通过利用描述原始数据的元数据而生成的报告定义;

通过使用兴趣驱动商业智能系统来自动生成从报告定义导出的报告数据需求;

通过使用报告数据需求和原始数据来自动编译作为兴趣驱动商业智能系统的一部分的兴趣驱动数据管线;

通过使用兴趣驱动数据管线来从报告数据需求生成报告数据,其中报告数据包括通过使用原始数据而生成的结构化的数据;和将生成的报告数据存储在兴趣驱动商业智能系统内的数据集市中。

说明书全文

使用兴趣驱动数据管线进行数据分析的兴趣驱动商业智能系

统和方法

[0001] 相关申请的交叉引用
[0002] 本申请要求在2012年2月29日提交的美国专利申请No.13/408872的优先权,该美国专利申请的公开内容通过引用被结合于此。

技术领域

[0003] 本发明涉及商业智能系统,具体而言涉及使用兴趣驱动数据管线(interest-driven data pipeline)进行数据分析的兴趣驱动商业智能系统和方法。

背景技术

[0004] 商业智能指的是用于识别、处理和分析商业数据的技术。商业智能系统可提供商业操作的历史、当前和预测视图。在商业操作的过程中生成的商业数据(包括从商业处理生成的数据和由雇员和顾客创建的附加数据),取决于围绕数据的语境和知识,可以是结构化的、半结构化的、或者非结构化的。在许多情况下,从商业处理生成的数据是结构化的,而从与商业的顾客交互生成的数据是半结构化的或者非结构化的。由于一般在商业操作的过程中生成的数据量,商业智能系统一般构建于数据仓库之上并且利用数据仓库。
[0005] 数据仓库被用于存储、分析和报告数据,该数据例如为商业数据。数据仓库利用数据库来以富有成效和成本有效的方式存储、分析和利用数据。一般利用各种数据库,诸如关系数据库管理系统(RDBMS),诸如来自California的Santa Clara的Oracle Corporation的Oracle Database,或者海量并行处理分析数据库,诸如来自Ohio的Miamisburg的Teradata Corporation的Teradata。诸如来自North Carolina的Cary的SAS Institute,Inc.的SAS的商业智能(BI)和分析工具被用于访问存储于数据库中的数据并且提供供开发人员生成报告、管理和挖掘存储的数据、执行统计分析、商业计划、预报和其它商业功能的界面。通过使用BI工具创建的大多数的报告是由数据库管理员创建的,并且,可针对期望的访问型式调谐底层的数据库。数据库管理员可以索引、预聚集(aggregate)或限制对于特定关系的访问,允许自组织(ad-hoc)报告和探索。
[0006] 在线交易处理(OLTP)系统被设计为有利于并且管理基于交易的应用。OTLP可参照诸如数据库管理系统交易、业务或商业交易的各种交易。OLTP系统一般具有对于用户请求的低延时响应。
[0007] 作为OLTP的修正的在线分析处理(OLAP)是回答多维分析查询的方法。OLAP工具使得用户能够通过利用三种基本的分析操作来分析多维数据:整合(聚集数据)、下钻(导航数据的细节)以及分割和划片(取得特定的数据集并且从多个视点查看)。任何OLAP系统的基础是OLAP立方体(cube)。OLAP立方体是允许通过从多个视角操纵和分析数据的能力来快速分析数据的数据结构。OLAP立方体一般由通过维度分类的数值事实构成,这些事实称为量度(measure)。一般根据RDBMS中的表的星形模式(schema)或者雪花模式创建这些事实和量度。
[0008] 雪花模式是RDBMS中的表的布置,中心事实表与一个或更多个维度表连接。雪花模式中的维度表被归一化为多个有关的表-对于复杂模式,在维度表之间将存在许多关系,从而得出看似雪花的模式。星形模式是具有参照一个或更多个维度表的事实表的雪花模式的特定形式。但是,在星形模式中,维度被归一化为单个表-事实表是中心,维度表是星形的“点”。
[0009] 转到OLAP系统,从一般由商业处理的测量结果或数据构成的事实表导出量度。从维度表导出维度。换句话说,量度具有一组标签,这里,标签的描述在相应的维度中被描述。一般使用两种OLAP工具:关系OLAP(ROLAP)和多维OLAP(MOLAP)。ROLAP和MOLAP均被设计为允许通过使用多维数据模型分析数据。
[0010] ROLAP工具访问关系数据库中的数据并且在终端用户请求时生成SQL查询以在适当的层面计算信息。通过ROLAP,能够创建附加的数据库表(概要表或聚集),这些数据库表在维度的任何希望的组合上概要数据。而ROLAP使用关系数据库源,数据库一般必须针对ROLAP使用被仔细设计。对OLAP设计的数据库不能很好地用作ROLAP数据库。因此,ROLAP仍包括创建数据的附加副本。但是,由于它是数据库,因此可以使用各种技术以填充数据库。ROLAP工具的一个例子是来自Florida的Orlando的Pentaho Corporation的Pentaho BI Suite。
[0011] MOLAP工具与ROLAP工具的不同在于,MOLAP工具常常涉及OLAP立方体中的信息的预计算和存储。大多数的MOLAP方案将该数据存储为内存内(in-memory)多维阵列而不是存储在关系数据库中。由于优化的存储、多维索引和高速缓存以及数据的更高水平聚集的自动计算,数据的该预处理和存储允许快速查询性能。但是,数据的预处理和存储具有一些缺点,诸如长处理步骤,特别是当应对大量的数据时。MOLAP工具在常规上难以查询如下模型,该模型具有基数非常高的维度或者大量的维度。MOLAP的一个例子是来自New York的Armonk的International Business Machine的Cognos Powerplay系统。
[0012] 预测分析包括从分析当前和历史事实的建模、数据挖掘和博弈论到关于将来的事件进行预测的各种统计技术。一般地,当提到商业智能系统时,术语预测分析被用于表示预测性的建模、用预测性的模型对数据“评分”和预报。

发明内容

[0013] 商业越来越多地捕获和存储机器生成数据,诸如用户与系统的交互的服务器日志或记录,从而使得生成极大量的数据。因此,机器生成数据正暴露没有被设计为处理这种大量的数据的常规BI系统的许多限制。用于存储这种大量数据的系统一般具有高延时,并因此提供非常差的交互性。常规的商业智能系统常常利用内存内处理模型,其中通过使用数据管线从数据仓库将数据集加载到系统内存内以进行分析。现有的利用该方法的系统需要高度受训的工程师和商业智能分析师的大量劳动以构建数据管线,从而基于原始数据填充内存内数据集。并且,一旦数据管线已被构建,就不存在内存内数据集的活动更新。数据管线的变化或更新一般涉及支持工程师的进一步的劳动和分析,并且终端用户一般不能看到对于分析可能可用的不处于内存内数据集中的数据。
[0014] 根据本发明的实施例的兴趣驱动商业智能(BI)系统能够以使得用户能够完全看到可用数据并且能够动态重新配置BI系统的数据管线以提供对于想要的信息的访问的方式管理巨量的数据集。
[0015] 示出根据本发明的实施例的用于兴趣驱动商业智能系统的系统和方法。在本发明的一个实施例中,一种数据处理系统包括:包含原始数据的原始数据存储器;包含描述原始数据的元数据的元数据存储器;和被自动编译(compile)以通过使用原始数据生成报告数据的兴趣驱动数据管线,其中,兴趣驱动数据管线基于从通过使用元数据定义的至少一个报告规范自动导出的报告数据需求被编译。
[0016] 在本发明的另一实施例中,兴趣驱动数据管线基于选自由报告数据需求的变化、元数据的变化和原始数据的变化组成的组的至少一个变化被自动编译。
[0017] 在本发明的再一实施例中,数据处理系统还包括:被配置为存储源数据的源数据存储器,其中,兴趣驱动数据管线被配置为通过用源模型对原始数据执行提取、变换和加载(ETL)处理来创建源数据。
[0018] 在本发明的又一实施例中,数据处理系统还包括:被配置为存储聚集数据的聚集数据存储器,其中,兴趣驱动数据管线被配置为通过使用源数据执行聚集来生成聚集数据。
[0019] 在本发明的又一实施例中,兴趣驱动数据管线被配置为通过利用报告数据需求来生成聚集。
[0020] 在本发明的又一实施例中,数据处理系统还包括中间处理层,其中,中间处理层包括被配置为存储数据模型的数据管理器和兴趣驱动数据管线编译器。
[0021] 在本发明的又一实施例中,中间处理层访问原始数据存储器内的数据。
[0022] 在本发明的又一实施例中,通过利用兴趣驱动数据管线编译器,兴趣驱动数据管线被自动编译。
[0023] 在本发明的又一实施例中,中间处理层被配置为执行包含更新原始数据和更新报告数据的原始数据引入(intake)。
[0024] 在本发明的又一实施例中,数据处理系统被配置为包含商业智能报告引擎的兴趣驱动商业智能系统,其中,商业智能报告引擎包括被配置为存储报告数据的报告数据存储器。
[0025] 在本发明的又一实施例中,商业智能报告引擎包含被配置为显示数据并接收对数据的请求的用户界面。
[0026] 在本发明的又一实施例中,兴趣驱动商业智能系统还包括:被配置为存储报告规范的报告规范存储器,其中,兴趣驱动商业智能系统被配置为接收至少一个报告规范。
[0027] 在本发明的又一实施例中,兴趣驱动数据管线被配置为通过使用至少一个报告规范自动生成报告数据需求。
[0028] 在本发明的又一实施例中,商业智能报告引擎被配置为通过利用报告规范和报告数据生成报告。
[0029] 在本发明的又一实施例中,兴趣驱动商业智能系统包括兴趣驱动数据管线编译器,其中,兴趣驱动数据管线被配置为:通过利用提取、变换和加载(ETL)处理将原始数据转换成源数据;利用报告数据需求来生成应用于源数据以生成聚集数据的聚集处理;和基于报告数据需求来生成数据模型并且通过使用聚集数据填充数据模型来生成报告数据,其中,兴趣驱动数据管线编译器被配置为响应于兴趣驱动商业智能系统接收到修改报告数据需求的报告规范来自动编译兴趣驱动数据管线。
[0030] 在本发明的又一实施例中,兴趣驱动数据管线编译器被配置为响应于对报告数据需求的修改来更新ETL处理。
[0031] 在本发明的又一实施例中,兴趣驱动数据管线编译器被配置为响应于对报告数据需求的修改来生成新的聚集。
[0032] 在本发明的又一实施例中,兴趣驱动数据管线编译器被配置为响应于对报告数据需求的修改来生成新的数据模型。
[0033] 在本发明的又一实施例中,报告包含至少一个可视化(visualization),其中,至少一个可视化被配置为处理并显示报告数据。
[0034] 本发明的又一实施例包括兴趣驱动商业智能系统,该兴趣驱动商业智能系统包括:被配置为包含原始数据并且执行ETL处理的原始数据存储器系统;被配置为包含描述原始数据的元数据的元数据存储器;被配置为包含通过使用ETL处理从原始数据生成的聚集数据的聚集数据存储器;被配置为接收定义至少一个报告规范的元数据的用户探索的商业智能报告引擎;和中间处理层,其中,中间处理层被配置为自动进行以下操作:从所述至少一个报告规范导出报告数据需求;和基于报告数据需求编译兴趣驱动数据管线,其中,自动编译兴趣驱动数据管线包括:生成ETL处理作业以从原始数据生成聚集数据;和通过使用聚集数据生成报告数据;其中,商业智能报告引擎被配置为通过使用报告数据来基于所述至少一个报告规范生成至少一个报告,其中,商业智能报告引擎被配置为提供所述至少一个报告的交互探索,其中,商业智能报告引擎被配置为基于所述至少一个报告的交互探索来实时更新报告数据需求,并且,其中,中间处理层被配置为自动重新编译兴趣驱动数据管线以响应于报告数据需求的变化生成附加的报告数据。
[0035] 在本发明的又一实施例中,原始数据存储系统是数据仓库。
[0036] 在本发明的又一实施例中,数据仓库利用选自由分布式计算系统、数据库管理系统和NoSQL数据库组成的组的系统被实现。
[0037] 在本发明的又一实施例中,数据仓库是通过使用Hadoop实现的分布式计算系统。
[0038] 在本发明的又一实施例中,数据仓库被配置为存储通过使用中间处理层生成的数据。
[0039] 在本发明的又一实施例中,中间处理层被配置为生成数据仓库请求。
[0040] 在本发明的又一实施例中,数据仓库请求是选自由Hive查询和MapReduce操作组成的组的请求。
[0041] 在本发明的又一实施例中,中间处理层通过利用选自由分布式计算系统、数据库管理系统和NoSQL数据库系统组成的组的系统被实现。
[0042] 在本发明的又一实施例中,商业智能报告引擎被配置为基于所述至少一个报告的交互探索来显示指示。
[0043] 在本发明的又一实施例中,指示是更新报告数据需求所需要的时间的估计。
[0044] 本发明的又一实施例包括通过使用兴趣驱动商业智能系统来创建报告,包括:在原始数据存储器中存储原始数据;通过使用兴趣驱动商业智能系统来接收通过利用描述原始数据的元数据而生成的报告定义;通过使用兴趣驱动商业智能系统来自动生成从报告定义导出的报告数据需求;通过使用报告数据需求和原始数据来自动编译作为兴趣驱动商业智能系统的一部分的兴趣驱动数据管线;通过使用兴趣驱动数据管线来从报告数据需求生成报告数据;通过使用兴趣驱动商业智能系统来用报告数据填充报告;通过使用兴趣驱动商业智能系统来提供报告的交互探索;和通过使用兴趣驱动商业智能系统来自动编译兴趣驱动数据管线以响应于在报告的交互探索期间定义的报告数据需求的变化而生成附加的报告数据。

附图说明

[0045] 图1是根据本发明的实施例的商业智能系统的网络示图。
[0046] 图2是根据本发明的实施例的兴趣驱动商业智能系统的概念图。
[0047] 图3是示出根据本发明的实施例的用于探索数据的处理的流程图。
[0048] 图4是示出根据本发明的实施例的兴趣驱动数据管线的示图。
[0049] 图5A是示出根据本发明的实施例的与兴趣驱动数据管线的交互的示图。
[0050] 图5B是示出根据本发明的实施例的创建新导出数据的与兴趣驱动数据管线的交互的示图。
[0051] 图5C是示出根据本发明的实施例的修改报告数据的与兴趣驱动数据管线的交互的示图。
[0052] 图5D是示出根据本发明的修改兴趣驱动数据管线的各方面的与兴趣驱动数据管线的交互的示图。
[0053] 图5E是示出根据本发明的实施例的添加附加的数据源的与兴趣驱动数据管线的交互的示图。
[0054] 图6是示出根据本发明的实施例的用于处理原始数据的处理的流程图。
[0055] 图7是示出根据本发明的实施例的用于聚集数据的处理的流程图。
[0056] 图8是示出根据本发明的实施例的用于数据转换(wrangle)的处理的流程图。
[0057] 图9是示出根据本发明的实施例的用于生成模式的处理的流程图。
[0058] 图10是示出根据本发明的实施例的用于构建OLAP立方体的处理的流程图。
[0059] 图11是示出根据本发明的实施例的用于数据引入的处理的流程图。
[0060] 图12是示出根据本发明的实施例的用于构建报告的处理的流程图。
[0061] 图13是示出根据本发明的实施例的用于创建可视化的处理的流程图。
[0062] 图14是示出根据本发明的实施例的用于估计用户生成的动作的时间需求的处理的流程图。
[0063] 图15是示出根据本发明的实施例的用于数据探索的处理的流程图。

具体实施方式

[0064] 现在转到示图,示出根据本发明的实施例的兴趣驱动商业智能(BI)系统。BI系统是适于商业使用的特定种类的数据处理系统,但是,以下描述的系统和方法适用于任何数据处理系统。术语“兴趣驱动”可被用于描述能够动态构建数据管线以向终端用户提供感兴趣的信息的一类BI系统。在许多实施例中,兴趣驱动BI系统能够以使得用户能够完全看到可用数据并且能够动态重新配置BI系统的数据管线以提供对于想要的信息的访问的方式管理巨量的数据集。
[0065] 在几个实施例中,兴趣驱动BI系统在原始数据存储系统中蓄积原始数据。兴趣驱动数据管线可然后通过使用提取、变换和加载(ETL)处理将源数据加载到数据仓库中。在许多实施例中,根据本领域技术人员已知的数据处理技术,ETL处理包括从数据源提取数据、变换数据和将数据加载到数据存储器中。兴趣驱动数据管线然后基于模式过滤和/或聚集源数据以创建报告数据。数据聚集一般被理解为指多条数据被成组在一起以形成单个值的功能;过滤包括创建数据的子集。在整个说明书中,术语聚集被用于描述聚集和/或过滤处理。常见的数据聚集包括但不限于取得平均、计数、加算、找到最大值、最小值、中值和/或模式。在许多实施例中,报告数据存储于数据集市中并且被用于在通过BI系统在向用户显示的报告中生成可视化。由于数据管线的兴趣驱动本质,可基于用户感兴趣的数据动态重新配置用于生成报告数据的ETL处理和过滤和聚集处理。在兴趣驱动数据管线中的各级中,关于底层的数据的元数据被向前传递到用户。因此,用户获知所有可用的数据。在感兴趣的数据不包括在由兴趣驱动数据管线提供的报告数据中的情况下,兴趣驱动BI系统动态重新构建兴趣驱动数据管线以使得数据在供用户探索的报告内可用。
[0066] 利用兴趣驱动数据管线可减少或者消除工程师或商业智能分析师手动调谐数据管线的需要。作为依赖于工程师或商业智能分析师以构建分析师查询的数据集的替代,兴趣驱动数据管线响应于包括传入数据、改变的模式、商业智能数据的演进的各种人为或非人为因素或者响应于由分析师采取的动作被实时自动修改。运转中的兴趣驱动数据管线的例子是当附加的数据源或现有数据源内的字段变得可用时。该附加数据的描述可被指定或者自动检测,然后,该元数据可通过兴趣驱动BI系统被一直自动前推,使得终端用户可在不必支付变换和具体化附加数据的前期成本的情况下利用附加的数据,在常规的数据管线中,这会要求支持工程师和分析师投入时间和劳动。
[0067] 在大量的实施例中,通过使用诸如(但不限于)也常简称为Hadoop的Apache Hadoop的分布式计算平台,执行原始数据的蓄积、原始数据的创建源数据的ETL处理和源数据在数据仓库中的存储。分布式计算平台提供能够生长以通过利用商用硬件存储千万亿字节数据的相对便宜、可靠和可缩放的存储层。另外,分布式计算平台能够通过利用MapReduce、查询或其它的处理方法并行处理数据。
[0068] 虽然分布式计算平台可存储大量的数据,但分布式计算平台一般具有非常差的响应时间,这里,作业或者查询可花费几分钟或者甚至几小时。另外,虽然MapReduce对于并行处理技术领域的技术人员来说是有力的工具,但使用MapReduce超出大多数工程师和分析师的范围。为了实现高度交互的性能,兴趣驱动BI系统可动态构建多级数据管线的级,以基于数据的希望的终端消费将感兴趣的数据加载到系统内存中。在报告层面上指定的变化可通过兴趣驱动BI系统被自动编译和回溯,以创建满足新的报告需求的适当的数据管线。
[0069] 在大量的实施例中,通过位于商业分析师使用的商业智能前端与分布式计算平台之间的中间处理层构建兴趣驱动数据管线。该中间处理层可从商业分析师或其它用户接收请求,并且自动创建兴趣驱动数据管线以从分布式计算平台取回数据,执行任何必要的处理,并且返回供用户进行内存内探索的报告数据。中间处理层常常在数据集市中存储供用户探索的报告数据。中间处理层可在单个机器上被实现,或者跨着多系统被并行化,从而提供可与内存内商业智能系统一样快地响应的平台,而没有常规的内存内商业智能系统的限制。因此,利用兴趣驱动BI系统的分析师可通过使用由中间处理层取回并且保持于内存内的数据迅速地生成频繁使用的报告,并且同时具有通过利用兴趣驱动数据管线下钻到底层原始数据中的能力。将在后面进一步讨论根据本发明的实施例的用于动态构建兴趣驱动数据管线的兴趣驱动BI系统和方法。
[0070] 系统概要
[0071] 在图1中示出根据本发明的实施例的兴趣驱动BI系统。兴趣驱动BI系统100包含被配置为存储原始商业数据的分布式计算平台110。分布式计算平台110被配置为通过网络114与中间处理系统112通信。在本发明的几个实施例中,网络114是局域网。在许多实施例中,分布式计算平台110通过因特网114与中间处理系统112通信。中间处理系统112也被配置为通过利用网络114与包括蜂窝电话116、个人计算机118和呈现装置120的一个或更多个客户端装置通信。在本发明的许多实施例中,客户端装置包括能够接收和/或显示数据的任何计算装置。在本发明的几个实施例中,客户端装置被配置为与中间处理系统112通信。在大量的实施例中,客户端装置被配置为与数据仓库110通信。
[0072] 在本发明的许多实施例中,分布式计算平台110是被配置为利用Hadoop的分布式计算平台的计算机集群。Hadoop是允许跨着节点集群分布式处理数据集的软件库。Hadoop被设计为从一个节点增加到数以千计的节点,这里,各节点是负责其自身的处理和数据存储的计算机。为了在计算机的数量增加时提供可靠性,Hadoop被设计为检测并处理软件和/或硬件中的故障,从而解决各单个节点中的不可靠。Hadoop能够通过使用Hadoop分布式文件系统(HDFS)存储数据,通过使用Hadoop MapReduce运行并行处理,并且支持SQL类查询连同由各种计划提供的其它功能,这些功能中的许多通过Apache Foundation被支持。在大量的实施例中,分布式计算平台110被配置为运行通过利用Hadoop MapReduce由兴趣驱动BI系统生成的作业和利用Hive的查询。以这种方式,分布式计算平台110可被配置为用作兴趣驱动BI系统内的原始数据存储系统和数据仓库。在其它的实施例中,可以利用替代性的分布式处理系统,该分布式处理系统可被大规模并行处理架构取代,并且/或者,单独的数据仓库可被分布式处理系统或被配置为管理大规模数据集的等同系统填充。
[0073] 在几个实施例中,还通过使用计算装置中的一个或集群实现中间处理系统112。中间处理系统112使得用户能够指定包括数据可视化的报告,数据可视化使得用户能够探索(explore)存储于分布式计算平台110内的原始数据。基于由用户指定的可视化,中间处理系统112自动创建并且/或者更新一个或更多个兴趣驱动数据管线以创建或更新报告数据。一般通过将作业下推到分布式计算平台110以创建源数据并然后通过使用中间处理系统
112向源数据应用各种过滤器和/或聚集处理以产生存储于内存内的报告数据,配置兴趣驱动数据管线。将在后面讨论构建兴趣驱动数据管线的处理。
[0074] 在本发明的许多实施例中,通过使用面向服务的架构(SOA)实现分布式计算系统110、中间处理系统112和客户端装置116~120,这里,例如,分布式计算系统110和中间处理系统112是通过云进行通信的服务。在几个实施例中,通过利用多层架构实现分布式计算系统110、中间处理系统112和客户端装置116~120。
[0075] 兴趣驱动BI系统的各层
[0076] 根据可相互独立地开发和部署的概念层,可以理解诸如图1所示的系统的兴趣驱动BI系统。在图2中示出根据本发明的实施例的示出兴趣驱动BI系统的各层的层示图。系统200包含BI报告引擎210。BI报告引擎210包括允许用户和系统与兴趣驱动BI系统交互的用户界面和其它编程界面。兴趣驱动BI系统200还包含中间处理层220。中间处理层包含数据管理器222和兴趣驱动数据管线编译器224。中间处理层220被设计为处理来自BI报告引擎
210的请求,管理存储于数据管理器222中的数据模型和数据,通过使用兴趣驱动数据管线编译器224创建、配置和更新兴趣驱动数据管线。通过下推将希望的源数据从原始数据存储层240加载到数据仓库层230中的ETL作业来创建兴趣驱动数据管线。如上面讨论的那样,原始数据存储层240和数据仓库层230均可通过使用诸如Hadoop的分布式计算系统被实现。由中间处理层220构建的兴趣驱动数据管线还向存储于数据仓库层230中的源数据应用过滤和/或聚集处理以通过BI报告引擎210生成通过中间处理层保持于内存内的供探索的报告数据。
[0077] 中间处理层220不限于基于用户交互来重新编译兴趣驱动数据管线。当新的数据变得可用时,中间处理层可动态更新存储于数据管理器222中的模型。关于新数据的元数据通过BI报告引擎210被传递到用户,并且,为了探索新数据,用户可通过使用数据管线编译器224发起兴趣驱动数据管线的重新构建。在本发明的大量的实施例中,中间处理层220提供能够提供对存储于中间处理层220中的各种数据的访问的应用编程界面。应用编程界面提供对BI报告引擎210和第三方程序二者的数据访问。
[0078] 虽然在图1和图2中示出用于兴趣驱动BI系统的特定架构,但也可利用根据本发明的实施例的被配置为存储大数据集并且基于由用户构建的报告来自动构建兴趣驱动数据管线的各种架构中的任一种。将在后面进一步讨论根据本发明的实施例的用于通过利用兴趣驱动BI系统来创建、利用和更新兴趣驱动数据管线的系统和方法。
[0079] 通过使用兴趣驱动BI系统来探索数据
[0080] 兴趣驱动BI系统的主要目的是使得用户能够探索由BI系统收集的原始商业数据。在原始数据可被探索之前,数据被表征并且兴趣驱动数据管线被构造。在图3中示出根据本发明的实施例的使得能够通过使用兴趣驱动BI系统来实现原始商业数据的探索的处理的高层面概要。处理300包括转换(310)数据,其包括对存储于兴趣驱动BI系统中的原始数据创建描述结构的元数据。数据然后被建模(312)。建模(312)数据包括确定应使得数据的哪些方面可用以及任何希望的聚集或过滤器。在许多实施例中,数据的各方面是星形或雪花模式中的事实表的维度。通过使用模式来构造(314)数据空间。在本发明的许多实施例中,模式可以是星形或雪花模式。一旦数据空间被构造,就可构建(316)报告。通过使用报告,用户可探索(318)数据。探索(318)数据一般包括可视化数据和识别数据的各方面以供进一步的探索。基于数据的探索(318),数据空间可被更新,或者新的数据空间可被构造(314)。
[0081] 虽然在图3中示出用于通过使用兴趣驱动BI系统来探索数据的特定处理,但是,根据本发明的实施例,可以利用使能兴趣驱动数据管线的动态构建的各种处理中的任一种。将在后面进一步讨论根据本发明的实施例的上述处理使能兴趣驱动数据管线的自动创建的方式。
[0082] 动态构建兴趣驱动数据管线
[0083] 根据本发明的实施例的兴趣驱动BI系统可动态构建数据管线以基于由用户提供的原始数据的描述和报告规范来在内存内加载报告数据。换句话说,兴趣驱动BI系统取得由用户提供的原始数据的描述和用户希望探索原始数据并且动态构建数据管线以从原始数据存储系统提取希望的数据以供用户内存内交互探索的方式的描述。
[0084] 在图4中示出根据本发明的实施例的用于构建兴趣驱动数据管线的处理。兴趣驱动数据管线400使用通过利用在数据转换处理412期间创建的元数据而生成的源模型410来自动构建取得原始数据416的ETL处理414并且生成源数据418。在原始数据存储于分布式计算系统内的实施例中,作为被传递到分布式计算平台的作业来生成ETL处理。
[0085] 由用户指定并且/或者在BI系统内定义的报告需求420被用于确定聚集和/或过滤器422。聚集和/或过滤器422通过使用创建聚集数据424的聚集处理423被应用于源数据418。在分布式计算平台生成源数据的情况下,兴趣驱动BI系统可自动生成被提供给分布式计算平台的作业以执行与聚集处理423相关联的聚集和/或过滤。
[0086] 模式构建器426也可利用报告需求420来创建模式428。在大量的实施例中,模式是星形模式或雪花模式。在其它的实施例中,可以利用适于特定的应用的任何模式。处理429被应用于聚集数据424以填充模式428,从而提供可在内存内加载并且在报告的交互生成中被用户使用以有利于数据的可视化和探索的报告数据430。在许多实施例中,中间处理系统通过使用由保持原始数据的分布式计算平台生成的聚集数来构建模式。在该点上,报告数据保持于内存内,并且可被交互地(即,以低延时方式)利用。在许多实施例中,可在兴趣驱动商业智能系统以外的数据处理系统内利用报告数据。
[0087] 虽然在图4中示出用于动态构建兴趣驱动数据管线的特定处理,但是,根据本发明的实施例,可以利用各种处理中的任一种来根据终端用户的数据消费自动变换原始数据。在后面进一步讨论根据本发明的实施例的可响应于用户交互和新数据源向兴趣驱动数据管线的添加来动态重新配置兴趣驱动数据管线的方式。
[0088] 与兴趣驱动数据管线的交互
[0089] 在本发明的许多实施例中,基于与系统的用户交互,并且当新数据进入系统时,动态创建或编译兴趣驱动数据管线。例如,当用户通过使用兴趣驱动BI系统探索数据时,用户可配置报告。基于配置,通过对结构化并概述数据并使其以低延时格式可供用户进行交互探索的一组变换进行编译,创建或更新兴趣驱动数据管线。以下的五个例子进一步详述与兴趣驱动BI系统的用户交互如何引起兴趣驱动数据管线的变化。
[0090] 首先,如图5A所示,用户交互500包括用户501通过使用用户界面506探索报告数据502。用户501可执行由BI报告引擎504支持的动作,包括用户501查看报告数据502,诸如改变可视化、改变过滤器或改变聚集水平。在许多实施例中,报告数据502是被来自兴趣驱动数据管线的数据填充的模式。由于用户502动作不改变底层的报告数据502,因此,BI报告引擎504不引起兴趣驱动数据管线的任何变化。
[0091] 现在转到图5B,示出第二用户交互502。用户521使用由BI报告引擎524提供的用户界面526来基于诸如计算出的导出的量度、计算出的列、或集合和总体的报告数据522来创建新的导出数据528。新的导出数据528被反馈到兴趣驱动数据管线中,从而使得兴趣驱动数据管线基于新的导出数据528更新报告数据522。并且,兴趣驱动数据管线可基于对报告数据522的更新来更新自身。
[0092] 在图5C中示出第三用户交互。用户交互540包含:用户541使用由BI报告引擎552提供的用户界面554以通过改变存在于报告数据550中的数据来修改聚集处理548。由用户541提供的修改可采取各种形式,诸如通过ETL处理544从原始数据542拉入新源数据546、改变在ETL处理544和聚集处理548中使用的过滤器、改变由聚集处理548使用的聚集水平和/或改变通过利用聚集数据550填充551报告数据553的方式。通过改变报告数据553,用户541使得兴趣驱动数据管线编译新聚集处理548以创建在报告数据553的填充551中使用的聚集数据550。新聚集处理548可包含ETL处理544的变化,以支持由聚集处理548使用的源数据546的必要的变化。当兴趣驱动数据管线被更新时,报告数据553被更新,并且,用户能够与更新的报告数据553交互。
[0093] 在图5D中示出第四用户界面。用户交互560包括:用户561使用由BI报告引擎574提供的用户界面576以修改数据生成器562的各方面(例如,添加数据源或者修改从数据源获得的数据)、ETL处理566和聚集处理570。通过修改数据生成器562、ETL处理566和/或聚集处理570,用户561使得兴趣驱动数据管线动态更新,从而使得创建新的原始数据564、源数据568和聚集数据572,并且通过利用聚集数据572来填充573报告数据575,将报告数据575传播到BI报告引擎574。这里,用户561能够动态重新配置兴趣驱动数据管线并且在没有工程师或商业分析师的任何手动调谐的情况下接收更新的报告数据575。
[0094] 最后,在图5E中示出第五用户交互。用户交互580包括:添加新的数据生成器582,从而使得新的原始数据584变得可用于兴趣驱动数据管线。用户交互580还可包括更新ETL处理586,诸如基于使得可用的新原始数据584的更新数据处理和归一化。基于这些变化,兴趣驱动数据管线被动态重新配置,从而使得新的源数据588可用于聚集处理590,从而创建可用于填充593新的报告数据595的新的聚集数据592。BI报告引擎594通过用户界面596使得新的报告数据595可由用户581使用。以这种方式,兴趣驱动数据管线动态提供对于新的数据生成器的访问。
[0095] 在以上的例子中,用户界面可由BI报告引擎594提供。虽然以上描述了用户交互以及随后对兴趣驱动BI系统内的兴趣驱动数据管线的影响的特定例子,但这些仅是说明性的,并且,可根据本发明的实施例利用任何种类的用户交互。在后面进一步讨论根据本发明的实施例的用于通过利用兴趣驱动BI系统处理数据并与其交互的方法。
[0096] 在兴趣驱动数据管线中处理原始数据
[0097] 兴趣驱动数据管线通常包括向原始数据应用ETL处理从而生成供兴趣驱动BI系统的用户使用的源数据。在图6中示出根据本发明的实施例的用于将原始数据处理成源数据的处理。处理600从取回(610)原始数据开始。在许多实施例中,原始数据是机器生成的数据。向原始数据应用(612)过滤器和变换。在大量的实施例中,通过表征数据来定义过滤器和变换。原始数据也可被聚集(614)。在几个实施例中,聚集(614)数据包括减少原始数据的维度。优化(616)也可被应用于原始数据。在大量的实施例中,优化(616)原始数据包括格式化数据以实现低延时访问。
[0098] 在处理600完成之后,已经从原始数据创建源数据。在许多实施例中,原始数据被保留以支持在以后创建新的源数据或者细化现有的源数据。虽然在图6中示出用于从原始数据生成源数据的特定处理,但是,根据本发明的实施例,可利用各种处理中的任一种来在兴趣驱动数据管线中从原始数据生成源数据。将在后面进一步讨论根据本发明的实施例的用于通过利用兴趣驱动BI系统来处理源数据并与其交互的方法,包括用于创建过滤器和变换的方法。
[0099] 在兴趣驱动数据管线中聚集数据
[0100] 为了在兴趣驱动BI系统中支持各种可视化和用户交互,通常通过利用源数据创建聚集数据以提供数据的各种视图。在图7中示出根据本发明的实施例的用于创建聚集数据的处理。处理700从获得(710)源数据开始。执行是否在数据管线中利用聚集的检查(712)。如果不利用聚集,那么源数据可作为聚集数据返回(716)。如果在数据管线中利用聚集,那么通过利用源数据来生成(714)聚集数据。聚集数据可返回(716)。执行另一检查(718)以确定是否需要进一步的聚集。如果是,那么生成(714)附加的聚集数据。当不需要进一步的聚集时,处理700完成。
[0101] 在本发明的许多实施例中,基于与兴趣驱动BI系统的用户交互确定用于生成(714)聚集数据的聚集。在本发明的几个实施例中,通过利用兴趣驱动数据管线确定用于生成(714)聚集数据的聚集。
[0102] 虽然以上描述了用于聚集源数据的特定处理,但是,根据本发明的实施例,可以利用聚集数据的任何处理。在后面进一步讨论根据本发明的实施例的用于通过利用兴趣驱动BI系统处理数据的方法。
[0103] 识别和可视化数据
[0104] 为了创建可在ETL处理中使用的源模型以从原始数据生成源数据,用户首先转换原始数据。数据转换包括创建提供用于解析原始数据并且分析与原始数据有关的信息的结构的元数据。在图8中示出根据本发明的实施例的用于转换数据的处理。原始数据可以是结构化的、半结构化的或者非结构化的。虽然结构化的原始数据的结构是已知的,但数据转换处理800可包括识别(810)半结构化的或非结构化的原始数据的结构。在几个实施例中,可对结构化的原始数据识别(810)附加的结构。识别(810)原始数据的结构包括定义原始数据的含义和结构,诸如用户选择和识别存在于原始数据中的数据字段。
[0105] 向原始数据应用(812)过滤器和变换。在许多实施例中,过滤器和变换被用于创建可包括样本数据行的数据集。还生成(814)统计数据。生成的统计数据可包括诸如多少行处于原始数据中、原始数据多大、可用维度或属性的数量、各种统计分布或任何其它的相关的统计测量结果的方面。在本发明的许多实施例中,包含数据集和生成的统计数据的元数据被用户和兴趣驱动数据管线利用以创建和细化源模型。虽然在图8中示出用于执行数据转换的特定的处理,但是,根据本发明的实施例,可以利用通过兴趣驱动数据管线准备用于处理的原始数据的各种处理中的任一种。
[0106] 一旦发生数据转换,兴趣驱动数据管线就能够利用元数据来构造并填充各种内存内数据模型。在后面更详细地讨论根据本发明的实施例的用于通过利用兴趣驱动BI系统定义并填充模式的处理。
[0107] 兴趣驱动BI系统中的模式构造
[0108] 为了支持与数据的用户交互,构造定义报告数据的结构和内容的模式通常是有用的。在图9中示出根据本发明的实施例的用于对数据探索中的内存内数据模型的模式进行创建和填充的处理。处理900包括接收(910)请求。该请求可以是与用户希望创建的新的可视化、对现有报告或可视化的修改或在兴趣驱动BI系统中支持的任何其它动作有关的用户请求。在几个实施例中,可通过兴趣驱动数据管线自动生成请求。请求被翻译(912)成用于内存内数据模型的模式。在几个实施例中,模式是基于存在于兴趣驱动BI系统内的数据的星形或雪花模式。可以执行包含(914)分析以确定是否已在兴趣驱动BI系统中存在能够部分或者完全满足请求的模式。兴趣驱动数据管线可重写(916)现有模式的定义。模式可出于各种原因被重写,包括优化性能和/或资源利用。模式的任何创建或修改还可包括要在数据上执行的附加的聚集(918)。
[0109] 在大量的实施例中,如果现有的模式满足请求,那么兴趣驱动数据管线可重写模式以满足请求。可出于各种原因创建或重写模式,诸如包括新的数据、应用于数据的过滤器的改变、修改数据的聚集或支持用户或兴趣驱动数据管线的需要所需的模式的任何其它修改或变更。
[0110] 一旦创建了模式,数据就可通过使用模式加载到内存内数据模型中。可通过使用BI报告引擎以低延时方式探索内存内数据模型。虽然在图9中示出用于构建模式的特定的处理,但是,根据本发明的实施例,可以利用用于构建适用于兴趣驱动数据管线中的模式的各种处理中的任一种。在后面更详细地描述根据本发明的实施例的用于通过使用兴趣驱动BI系统来使用模式将数据加载到内存内数据模型中的处理。
[0111] 在兴趣驱动BI系统中填充内存内数据结构
[0112] 为了提供低延时交互用户体验,兴趣驱动BI系统利用内存内数据结构来包含用于支持用户与之交互的报告和可视化的报告数据。在图10中示出根据本发明的实施例的用于填充内存内数据结构的处理。处理1000包括获得(1010)模式。在大量的实施例中,模式是星形或雪花模式。然后通过利用模式来创建(1012)内存内数据结构。在许多实施例中,创建(1012)的结构是基于在模式中定义的事实和维度的OLAP立方体。
[0113] 对内存内数据结构导出(1014)量度和维度。导出(1014)量度和维度可基于对存储于内存内数据结构中的数据希望的聚集水平,从而以数据的聚集水平提供粒度水平。通过利用兴趣驱动数据管线来用聚集数据填充(1016)内存内数据结构。
[0114] 虽然在图10中示出用于加载内存内数据结构的特定的处理,但是,根据本发明的实施例,可以利用用于将数据加载到供BI系统使用的低延时存储器中的任何处理。除了加载数据使得用户可分析和使用它以外,兴趣驱动BI系统也负责原始数据的连续引入。在后面进一步讨论根据本发明的实施例的用于在兴趣驱动BI系统中处理传入原始数据的处理。
[0115] 兴趣驱动BI系统中的原始数据引入
[0116] 在真实世界操作中,即使当用户和兴趣驱动数据管线与存在于兴趣驱动BI系统中的数据交互时,兴趣驱动BI系统也不断地添加新的原始数据和新的数据源。在图11中示出根据本发明的实施例的用于原始数据引入的处理。处理1100包括接收(1110)原始数据。接收(1110)的原始数据可以是根据现有的商业处理生成的原始数据或者原始数据的新源。原始数据被添加(1120)到数据仓库。原始数据也与现有模式进行匹配(1130)。在大量的实施例中,通过利用兴趣驱动数据管线来执行原始数据与现有模式的匹配。如果原始数据匹配任何现有模式,那么执行对模式的更新(1132)。更新(1132)可包括更新由模式利用的数据的聚集和与兴趣驱动数据管线有关的任何更新。
[0117] 为了在不引起在数据仓库中存储原始数据并且取回该数据以更新兴趣驱动数据管线的开销和延时的情况下向用户提供数据的最新视图,本发明的大量的实施例支持通过使用数据管理器来相互独立地向数据仓库添加(1120)原始数据和匹配(1130)数据与现有模式。数据管理器确保数据仓库包含原始数据的最新的版本以供以后的探索和挖掘,同时,当前存在于兴趣驱动数据管线中的数据模型可尽可能快速地被更新(1132),从而向用户和兴趣驱动数据管线提供数据的最新版本。
[0118] 虽然在图11中示出用于通过使用兴趣驱动BI系统分析实时数据的特定处理,但是,根据本发明的实施例,可以利用各种处理中的任一种来将新的数据集成到兴趣驱动数据管线中。为了利用存储于兴趣驱动BI系统中的数据,提供用户界面以允许用户能够可视化数据并且与数据交互。在后面进一步详细讨论根据本发明的实施例的与数据的用户交互的处理。
[0119] 在兴趣驱动BI系统中构建报告
[0120] 根据本发明的许多实施例,报告是用户可视化、探索和呈现存储于兴趣驱动BI系统中的数据的主要方法。由用户生成的报告也定义并致使兴趣驱动数据管线的更新。在图12中示出根据本发明的实施例的用于生成报告的处理。处理1200包括创建(1210)报告并且选择(1212)包括于报告中的可视化。在许多实施例中,用户通过利用由兴趣驱动BI系统提供的BI报告引擎来创建报告并与其交互。可视化能够显示存储于兴趣驱动BI系统中的任何数据。用户可定义在可视化中示出的数据,包括定义各种水平的数据聚集和组合来自多个源的数据。
[0121] 基于可视化的需求,兴趣驱动BI系统利用兴趣驱动数据管线来生成支持可视化所需要的数据。生成(1214)报告包括通过使用由兴趣驱动数据管线提供的数据填充存在于报告中的可视化。一旦生成报告,用户就可使用和修改它们。虽然在图12中示出用于生成报告的特定处理,但是,根据本发明的实施例,可以利用适于特定应用的各种处理中的任一种以通过使用兴趣驱动BI系统探索数据。在后面进一步讨论根据本发明的实施例的用于创建可视化、选择用于报告的数据并且探索数据的处理。
[0122] 可视化-构建报告的块
[0123] 如名称所示,可视化是存储于兴趣驱动BI系统中的数据的实际可查看实施例。可视化可采取许多形式,诸如饼图、条形图、表或使得能够查看数据的任何其它形式。在图13中示出根据本发明的实施例的用于定义和填充可视化的处理。处理1300包括定义(1310)可视化。在几个实施例中,定义(1310)可视化包括定义对存储于兴趣驱动BI系统中的数据的过滤器和/或聚集。在许多实施例中,定义(1310)可视化包括对OLAP立方体执行诸如分割、划片和下钻的操作。定义(1310)可视化还可包括创建各种数据概述(比如数据透视表或汇总(rollup))并且与之交互。
[0124] 一旦定义可视化,就取回(1312)包含支持可视化的数据的数据空间。在大量的实施例中,数据空间可以是任意数量的内存内数据模型,诸如OLAP立方体、关系模型或存储于内存中的对象。通过使用数据空间,填充(1314)可视化,从而使得能够查看存在于可视化中的数据。在大量的实施例中,通过使用BI报告引擎创建和显示可视化。虽然在图13中示出用于生成可视化的特定处理,但是,根据本发明的实施例,可以在通过使用BI引擎进行数据探索时利用各种处理中的任一种。在后面进一步讨论根据本发明的实施例的用于与兴趣驱动BI系统交互的附加的处理。
[0125] 在兴趣驱动BI系统中可视化估计的执行时间
[0126] 兴趣驱动BI系统动态地向用户提供通过利用兴趣驱动数据管线对各种原始数据的访问。但是,兴趣驱动BI系统可能不能在所有的情况下以低延时方式提供该动态数据访问。在图14中示出根据本发明的实施例的用于估计向用户提供特定的数据或可视化所涉及的时间量的处理。处理1400包括呈现(1410)目录概要;目录概要包括存在于兴趣驱动BI系统中的数据的列表。在大量的实施例中,呈现(1410)的目录概要是数据转换处理的产物。
[0127] 在许多实施例中,兴趣驱动BI系统建议(1412)用户可能感兴趣的可视化。在大量的实施例中,兴趣驱动BI系统建议(1414)用户可能有兴趣探索的数据。想要的数据从目录被选出(1416)。数据的可用性被确定(1418),并且,显示(1420)指示用于取回想要的数据的时间量的视觉指示符。例如,可以利用信号灯系统来指示取回想要的数据的时间量:绿色表示可迅速访问数据,黄色表示可在几分钟内访问数据;红色表示:由于需要完全重构数据管线并且/或者在大比例的原始数据之上运行MapReduce处理,因此访问数据可能花费几个小时。
[0128] 在许多实施例中,数据的可用性的确定(1418)依赖于是否在兴趣驱动数据管线内存在数据,如果是,那么确定数据处于兴趣驱动数据管线的什么级。兴趣驱动BI系统能够动态创建和更新兴趣驱动数据管线以提供对于存在于系统中的任何数据的访问。关于不存在于现有兴趣驱动数据管线中的数据的可用性所显示的视觉指示符可依赖于重新编译兴趣驱动数据管线以提供想要的数据所涉及的时间。
[0129] 虽然以上描述了用于估计数据访问时间的特定处理,但是,根据本发明的实施例,可以利用各种处理中的任一种。作为上述的基于时间的信号灯系统的替代,这些处理可基于各种度量,诸如处理功率估计。在后面进一步讨论根据本发明的实施例的用于探索数据的处理。
[0130] 兴趣驱动BI系统中的用户数据探索
[0131] 许多兴趣驱动BI系统的重要特征是用户探索存储于兴趣驱动BI系统中的数据并且与该数据交互从而使得用户能够找到用于创建报告的附加数据的能力。在图15中示出根据本发明的实施例的用于通过使用兴趣驱动BI系统进行数据探索的处理。在大量的实施例中,由用户通过利用BI报告引擎执行处理1500。处理1500包括向用户呈现(1510)目录概要;目录概要包括存在于兴趣驱动BI系统中的数据的列表。用户能够通过利用存在于目录概要中的数据创建(1512)查询。查询被处理(1514)。在本发明的许多实施例中,通过利用兴趣驱动数据管线来执行查询的处理(1514)。查询的结果被添加(1516)到目录。
[0132] 在大量的实施例中,查询的结果能够被兴趣驱动BI系统的所有用户使用。查询结果的这种共享可带来兴趣驱动BI系统中的许多引人注意的特征。例如,通过将通信功能与共享查询结果相结合,向许多兴趣驱动BI系统添加协作方面。另外,根据本发明的许多实施例的兴趣驱动BI系统包括其中可跨着利用兴趣驱动BI系统的不同商业来购买和出售特定查询和定制可视化的商店。
[0133] 虽然在某些特定的方面中描述了本发明,但对于本领域技术人员来说,许多附加的修改和变更是十分明显的。因此,要理解,可以以具体描述的方式以外的方式实践本发明。因此,本发明的实施例应在所有的方面被视为说明性的而不是限制性的。