首页 / 专利库 / 企业组织 / 商业智能 / 显示复合文件中的多个离散文件的方法和系统

显示复合文件中的多个离散文件的方法和系统

阅读:504发布:2021-02-18

专利汇可以提供显示复合文件中的多个离散文件的方法和系统专利检索,专利查询,专利分析的服务。并且一种用图形 用户界面 管理和显示相关信息的方法,包括:在离散的文件中存储多个相关数据集中的每一个,存储将离散的数据文件相互链接的复合文件,用 图形用户界面 显示该结合的文件的公共窗口,在公共窗口内显示每个离散文件的离散窗口。,下面是显示复合文件中的多个离散文件的方法和系统专利的具体信息内容。

1.一种用图形用户界面管理和显示相关信息的方法,包括:
在离散的文件中存储多个相关数据集中的每一个;
存储将离散的文件相互链接的复合文件;
图形用户界面显示该复合文件的公共窗口;和
在公共窗口内显示每个离散文件的离散窗口。
2.如权利要求1所述的方法,还包括在该复合文件中分散地存储离散 文件中的每一个。
3.如权利要求1所述的方法,还包括在该复合文件中存储对该离散文 件的每一个的链接。
4.如权利要求1所述的方法,还包括用单数据界面(SDI)显示该公共 窗口,用多数据界面(MDI)显示该离散窗口。
5.一种用于在商业智能入口中管理和向用户显示离散的数据视图的方 法,包括:
在离散的文件中存储多个相关数据视图中的每一个;
存储将离散的文件相互链接的复合文件;
用图形用户界面显示该复合文件的公共窗口;和
在公共窗口内显示每个离散文件的离散窗口。
6.如权利要求5所述的方法,还包括在该复合文件中分散地存储离散 文件中的每一个。
7.如权利要求5所述的方法,还包括在该复合文件中存储对该离散文 件的每一个的链接。
8.如权利要求5所述的方法,还包括用单数据界面(SDI)显示该公共 窗口,用多数据界面(MDI)显示该离散窗口。
9.一种用图形用户界面显示离散窗口的方法,包括:
响应于通过第二个窗口的叠加而从显示变成为至少基本上隐藏的第一个 窗口,为第一个窗口生成视图按钮;
显示该视图按钮;和
响应于该视图按钮的激活,显示该第一个窗口。
10.如权利要求9所述的方法,还包括显示该第二个窗口外面的视图按 钮。
11.如权利要求9所述的方法,还包括沿着该第二个窗口的边沿显示该 第二个窗口外面的视图按钮。
12.如权利要求9所述的方法,还包括响应于通过第二个窗口的叠加而 从显示变成为完全隐藏的第一个窗口,为该第一个窗口生成视图按钮。
13.如权利要求9所述的方法,该第二个窗口包括活动窗口。
14.如权利要求9所述的方法,还包括响应于通过最大化第二个窗口而 从显示变成为完全隐藏的第一个窗口,为该第一个窗口生成视图按钮。
15.一种支持在显示中的多个窗口之间有效导航的方法,包括:
为在活动窗口下从显示被隐藏起来的一个或多个窗口中的每一个生成视 图按钮;和
响应于视图按钮的激活,将对应的窗口显示为活动窗口。
16.如权利要求15所述的方法,还包括沿着活动窗口的边沿将视图按 钮显示为可点击的标签。
17.一种图形用户界面的显示窗口,包括:
第一窗口;
在该第一窗口下至少从显示基本上隐藏起来的第二窗口;和
独立于该第二窗口定位的视图按钮,该视图按钮可操作,以响应于激活 来显示该第二窗口。
18.如权利要求17所述的显示窗口,还包括沿着第一活动窗口的边沿 显示为标签的视图按钮。
19.如权利要求17所述的显示窗口,该第一活动窗口包括最大化的窗 口。

说明书全文

                          技术领域

发明一般地涉及分析数据处理的领域,更具体地说,涉及显示在复合 文件中的多个离散文件的方法和系统。

                          背景技术

商业智能系统主要是作为决策支持系统(DSS)和执行信息系统(EIS) 开始的。决策支持系统(DSS)和执行信息系统(EIS)是从现有的联机交易 处理(OLTP)系统提供附加信息的增值系统。

随着商业智能系统的发展,它们将决策支持系统(DSS)的功能性与执 行信息系统(EIS)的功能性集成在一起,并增加了联机分析处理(OLAP) 工具和管理报告工具。这些混合商业智能系统逐渐地从大型机环境转移到分 布式服务器/桌面环境,以允许更多的用户访问

近些年来,中央式数据仓库(data warehouses)和数据中心(datamarts) 的出现已经造成在机构内等待分析、利用和分配的有效数据急剧增加。然而, 这种数据仓库和数据中心通常是为信息传递而不是为交易处理而最佳化的。 结果,数据仓库和数据中心仅提供将存储的数据转换成有用的和关键的策略 信息的有限的方案。同时,通过提供用于分析大量存储信息的复杂分析工具 以支持机构内的有效规划和决策,商业智能系统取得了主导地位。

商业智能系统以图形用户界面显示多维的和其它的数据视图。典型地, 图形用户界面使用单数据界面(SDI)以允许相关的数据被一起存储和观看。 可是,单一数据界面不支持同时观看和处理分离的文件中的数据。为此,图 形用户界面使用多数据界面(MDI)格式。可是,在以多数据界面(MDI)观 看分离的文件期间,经常最大化窗口以提供最佳的观看界面。这导致用户常 开、常闭和调整窗口大小以观看分离的文件,从而限制了用户有效地比较和 对比文件中的数据的能。另外,多数据界面(MDI)不能允许相关的数据 集被存储并被相互关联。

                      发明内容

本发明提供了用于显示复合文件中的多个离散文件的方法和系统,它极 大地消除或减小了与以前的系统和方法相关的缺点和问题。具体地,该方法 和系统提供了图形用户界面,该图形用户界面将离散但相关的文件链接并一 起显示,并允许在这些显示之间进行有效的导航,以方便数据分析。

按照本发明的第一个实施例,用于以图形用户界面管理并显示相关信息 的方法包括:在离散文件中存储多个相关数据集(datasets)中的每一个。 存储将离散的数据文件相互链接的复合文件。以图形用户界面显示经结合的 文件的公共窗口。在公共窗口内显示每个离散文件的离散的窗口。

更具体地,按照本发明的特定实施例,每个离散的文件可以独立地存储 在该复合文件中。在另一个实施例中,该复合文件可以存储一个对每个离散 文件的链接。在这些和其它的实施例中,可以以单数据界面(SDI)显示公 共窗口,并且可以在该公共窗口内以多数据界面(MDI)显示离散的窗口。

按照本发明的另一方面,用于以图形用户界面显示离散窗口的方法包 括:响应于通过第二个窗口的叠加而至少从显示变为基本上隐藏的第一个窗 口,生成第一个窗口的视图按钮。该视图按钮沿着第二个窗口的边沿显示在 第二个窗口的外边或显示在其它合适的位置。响应于该视图按钮的激活,由 图形用户界面显示该第一个窗口。

本发明的技术优点包括:提供一个使用户容易访问并分析数据的改进的 商业智能入口。具体地,该商业智能入口包括允许相关文件容易地被组织在 一起并有效地显示给用户的图形用户界面。另外,用户界面的各元素是高度 直观的,以最小化培训和支持的需要。

本发明的另一个技术优点包括:提供用于在图形用户界面的各窗口之间 导航的方法和系统。具体地,沿着叠加窗口的边沿或在其它地方为隐藏的窗 口提供视图按钮,以允许用户快速、容易地在各窗口之间进行导航。结果, 用户不需要为观看存储在离散文件中的相关数据而经常地移动、关闭、打开、 和调整窗口的大小。

从下面的附图说明书、和权利要求书中,本发明的其它优点对于本领 域的普通技术人员是显而易见的。

                     附图说明

为了更完整的理解本发明和它的优点,现在结合附图进行说明,其中相 同的附图标记代表相同的部件,其中:

图1是说明按照本发明的一个实施例的商业智能入口的方框图

图2是说明用于初始化按照本发明的一个实施例的图1的商业智能入口 的方法的流程图

图3是说明用于生成按照本发明的一个实施例的图1的商业智能入口中 的预定义查询模型的方法的流程图;

图4是说明用于配置和维护按照本发明的一个实施例的图1的商业智能 入口中的客户机应用程序的方法的流程图;

图5是说明用于根据按照本发明的一个实施例的预定义查询模型生成和 执行查询模型的方法的流程图;

图6是说明按照本发明的一个实施例的图1的模化查询引擎的操作的 方框图;

图7是说明按照本发明的一个实施例的图6的模块化查询引擎的操作的 流程图;

图8是说明按照本发明的一个实施例的多维存储模型的方框图;

图9是说明图8的多维存储模型的示例数据的方框图;

图10是说明用于生成按照本发明的一个实施例的图8的多维存储模型 的方法的流程图;

图11是说明按照本发明的一个实施例的图1的层级中的相关视图的显 示的屏幕图形;和

图12是说明用于在按照本发明的一个实施例的相关视图之间进行导航 (navigating)的窗口标签的屏幕图形。

                         具体实施方式

图1说明了根据本发明一个实施例的商业智能入口(portal)10。一般地 说,商业智能入口10提供跨越企业的综合数据访问和信息共享,以及复杂 的多维分析工具。该分析工具是高度自动化的和直观的,以允许宽范围的用 户在进行战略决策时利用存储的信息。这样,商业智能入口10最大化用户 从他们的数据中接收的决策支持利益,同时最小化实施和管理系统的成本。

在图1所示的实施例中,商业智能入口10实现了三层级分布式结构, 包括由一个或多个网络18连接的一个数据库层级12、一个服务器层级级14 和一个客户机层级16。服务器和客户机层级14和16是基于Java的,以支 持网际通信协议(TCP/IP)、多客户机和服务器平台、对多种数据源的组合 连接、和跨越企业的入口10的完全可移植性。另外,基于Java的服务器和 客户机层级14和16提供开放式API结构,该结构可适用于处理数据库中的 结构化数据和非结构化数据。客户机/服务器网络18包括公司的企业网,而 服务器/数据库网络18包括部分公共和私有网络。可以理解,商业智能入口 10可以用其它合适的结构、编程语言、和链接来实现。

参照图1,数据库层级12包括一个或多个数据库20。如下面更详细所 述,每个数据库20以包含所有连接到该数据库20的必要信息的别名而显露, 包括数据库登录。数据库别名的使用防止了对本地数据库的直接用户访问, 以便维护数据库20的完整性。对此示例性实施例,数据库20的每个可以是 任何Java数据库连接(JDBC)或目标数据库连接(ODBC)适应的数据库, 以及适当的数据仓库或数据中心。

服务器层级14包括一个或多个服务器30。服务器30每一个包括一组 可以在不同平台上操作的基于Java的应用程序。如下面更详细所述,服务 器30为商业智能入口10提供分层安全、中央管理、快速多线程组合数据访 问、和多维数据分析。

服务器30包括目录32、目录管理器34、安全管理器36、查询生成器38、 数据库访问系统40、高速缓存管理器42、多维模型管理器44、和客户机管 理员46。目录32存储所有由商业智能入口10的管理员和用户创建的配置、 文件和工作成果。这集中了文件的管理,消除了客户机系统上的冗余和过时 副本,允许文件在企业间共享,并为文件提供连续的安全性。目录管理器34 管理服务器30内的全部共享信息。可以理解,这些配置、文件和工作成果 也可以另外在商业智能入口10中适当地存储并管理。

目录32包括一个或多个由系统管理员配置的数据库别名50、用户简档 52、安全组54、和预定义查询模型56。目录32还包括一个或多个存储由系 统用户创建的相关视图60的公文夹58。如上所述,数据库别名50包含所 有连接到数据库20必要的信息。数据库别名50的使用防止了直接用户数据 库访问,以维持本地数据库20中的数据完整性,并使非技术用户可能安全 地访问公司数据,而不用担心被毁坏。另外,数据库别名50还用作对物理 数据库20的组合连接,并且因此减小了支持大量客户机所必需的数据库连 接的数量。

用户简档52每一个都为用户定义了优先权的指定范围和一个或多个用 户对其具有访问权的安全组54。用户简档52由系统管理员生成并维护。安 全组54用由系统管理员分配给每个组54的安全权和优先权实现分层安全模 型。提供管理员安全组以允许管理员对系统的充分的访问权,包括增加、修 改、和删除系统中的安全组54和用户简档52的许可。用户继承的最终的安 全权和优先权是如用户简档52中定义的他或她的个人的权力和他或她所属 于的每个安全组54的权力的统一。这样,暴露给用户的系统特性通过从安 全组54分配或个人用户简档52持有的许可或优先权的扩展使用被控制。因 此,管理员可以具有连接到数据库20并增加或删除用户的能力,而有能力 的用户可能不具有这个许可。作为替代,有能力的用户可以具有对全范围的 数据分析和协作特征的访问权,而信息消费者仅仅能够运行并修改预先由管 理员或有能力的用户定义的报告或图表。

预定义查询模型56自身含有特定数据库的逻辑模型,该特定数据库的 逻辑模型是为了使较少技术背景的用户容易地和直观地作出查询创建而建立 的。预定义查询模型56还从数据库20中抽取数据,仅暴露数据库20中的 与将使用特定查询模型56的用户的组或各组相关的那些部分。预定义查询 模型56包括来自数据库的相关表、数据库表内的字段和共同定义查询的各 数据库表之间的链接。预定义查询模型56形成由用户创建的所有查询的基 础。这样,预定义查询模型56控制任何特定用户组将具有访问权的任何数 据库20中的元素。此外,预定义查询模型56建立可以限制任何用户组进行 查询的类型的机制。具体地,该机制定义最大计算机资源,或控制器,它们 可以被用来执行查询和允许在各表之间结合,以防止可能冲击商业智能入口 10的完整性的失控或恶意查询。

公文夹58提供了一种存储用户创建或获得的视图60的文件系统。此外, 为了在内部生成视图60,公文夹58可以包括,例如,字处理文件、电子数 据表文件和网页的视图60。公文夹58的每一个都是一个复合文件,它能够 恢复视图60或其它有关数据集的收集。视图60可以直接被存储在公文夹58 中,或者在公文夹58中相互链接。

对公文夹58的访问由为用户建立的安全参数确定,并且还由公文夹58 中的视图60的生成器确定。在一个实施例中,用户永远不会看见他们不具 有访问优先权的公文夹58。另外,可以定制公文夹58,以当公文夹58中的 视图60已经被更新或另外修改时向相关的用户提供通知。这样,系统操作 的安全性被维护得完整,有利于企业内的协作和信息共享。

视图60提供用于显示诸如表格、图形、报告、数据透视表(pivot)和 网页的多种格式。视图60既可以是代表当前数据的现场(live)视图,也 可以是在特定时间点的数据的瞬像视图。另外,如下更详细所述,现场视图 60可以被安排为以规则的间隔自动更新、当第一次打开时更新等等。瞬像 视图60可以被设置为覆盖在先的瞬像或为历史分析创建瞬像或翻转视图60 的序列。视图60和公文夹58可以由用户进行私人保存或可以在一个或多个 安全组54中共享,以有助于协作和进行决策。

安全管理器36管理商业智能入口10中的安全。具体地,安全管理器36 包括用于生成和维护用户简档52和安全组54的预定义安全任务。安全管理 器36还提供允许用户简档52和安全组54从父级继承优先权的安全层次。 这样,系统管理员可以容易地建立并维护商业智能入口10的安全。

查询生成器38提供数据库元素的图形视图,以在定义查询模型中帮助 系统管理员和有能力的用户。预定义的每个查询模型56定义数据库连接、 从数据库显露的表格和栏目的集合(family)、允许的结合类型和联合、元 数据、执行控制器、和查询的别名。预定义查询模型56可以在以后由大量 的用户进行修改和使用,以执行安全的查询。

数据库访问系统40包括功能性和软件,用于访问和查询数据库20,并 且用于将查询结果返回给服务器30,由用户进行处理、分析和报告。对于 示例的实施例,数据库访问系统40包括查询调度程序72、SQL生成器74、 连接管理器76、和Java数据库连接(JDBC)78。

查询调度程序72初始化被调度的查询。如上所述,任何视图60,包括 包含于视图60中的数据和计算,都可以根据几个选项被设置为从数据库20 刷新,该几个选项包括指定的时间调度程序。这允许视图60被轻易地刷新 以反映数据的当前状态,并允许用户总是用最新的信息进行工作。另外,可 以自动地调度瞬像视图60根据同样的查询创建瞬像视图60的历史库。因此, 例如,可以调度视图60在每个星期一、星期三和星期五的的下午10点钟进 行更新,并经由共享的公文夹58自动地分配给一组用户。

SQL生成器74从用户接收用户修改或更新的查询模型,并生成用于由 连接管理器76执行的原文的SQL查询。这样,由用户以图形显示和编辑的 查询模型被自动地转换为可执行的数据库指令,并在其后执行。这允许初学 者用户和其他信息消费者用很少的或根本不用编程的知识就可以充分地使用 商业智能入口10并从中获益。

在一个实施例中,SQL生成器74包括对话指定生成器和生成原文SQL 的SQL语法分析树。对话指定生成器对应于由商业智能入口10访问或与其 连接使用的数据库20的不同类型。对话指定生成器可以包括,例如Oracle、 Sybase、DB2、和SQL生成器。

连接管理器76从SQL生成器74接收原文SQL查询请求,并与数据库20 通信,以通过Java数据库连接(JDBC)78执行被请求的查询。在示例的实 施例中,连接管理器包括模块化查询引擎80,该引擎包括智能数据集82和 数据驱动器84的程序库。如下更详细所述,每个数据驱动器84执行预定义 的数据库操作。智能数据集82在必要时从程序库中选择并排序数据驱动器, 以执行查询请求。结果,标准化了数据库访问方法并且不需要为每个应用程 序定制数据集。

高速缓存管理器42包括具有多个页92的高速缓存90和处理线程94。 高速缓存42响应于查询请求接收从数据库20提取的数据,并将它们馈送给 页92。高速缓存管理器42与驱动高速缓存90的处理线程94异步运行,以 将数据馈送给页92。可以理解,数据可以另外由服务器30进行适当地接收、 存储、和初始处理。

多维模型管理器44生成并处理多维存储模型100。如下更详细所述, 多维存储模型100利用非稀疏(non-sparse)结构以最小化模型100的尺寸。 模型100的减小的尺寸改善了处理次数,并在数据分析期间允许有效的数据 透视(pivot)和展示(drill)操作。另外,模型100使用开放式结构以允 许在已经构建了该模型后动态地执行计算。结果,用户可以创建新的计算以 分析在模型100的原始定义期间的不期望的数据交叉。这减少了支持数据透 视(pivot)和展示(drill)操作必需的时间和资源。

客户机管理员46提供入口10从其管理客户机的中心点。客户机管理员 46提供自动管理客户机应用程序的零管理结构,以最大化用户的执行和最 小化网络流量,同时保证客户机总是使用最新的应用程序。

客户机层级16包括多个客户机110。客户机110可以在其它客户机和 服务器30的本地,或与其远离。在一个实施例中,客户机110提供对服务 器30的全部访问权,包括系统管理。如上所述,所有客户机110的功能由 存储在服务器30上的健壮(robust)的许可组控制。许可被授权给单个用 户和用户的安全组。这样,商业智能入口10的健壮的功能性被适当地控制, 并定量地供给企业的所有用户,对较少技术的用户也不会看起来过于复杂。

客户机110包括客户机API 112和图形用户界面(GUI)114。在示例的 实施例中,客户机110被设计为具有其为Java片或Java豆(bean)的所有 构件。在这个实施例中,如下面更详细所述,当与服务器30建立连接时, 客户机110识别它的构件。这允许有效管理客户机110和将附加的功能性集 成进客户机110。

客户机API 112包括一组定义客户机110如何与服务器30通信的Java 级(classes)。因为客户机API 112允许任何Java程序与服务器30通信, 所以企业可以有效地为它的客户机110增加附加的、定制的能力。

图形用户界面114包括一组管理面板116、一组用户面板118、一组向 导120、查询编译器122、一组阅读器124、和属性检查器126。管理和用户 面板116和118提供用于指导管理员和用户进行他们各自操作的图形显示。

向导120将创建过程分为一个或多个逻辑步骤,并指导管理员和用户进 行创建过程。这有助于初学者用户和其他信息消费者在执行查询和分析结果 时不用详细的编程知识。这样,企业内的所有用户能够有效地使用商业智能 入口10以提取有意义的数据,并因此提高了他们在企业内的操作区域。

查询编译器122指定数据从哪里来、显示什么实质性的数据、和它如何 被存储。查询编译器122提供预定义查询模型56的图形视图,以允许用户 直观地理解和修改模型56,以适合特定的需求。在一个实施例中,查询编 译器122只允许用户查看那些他们有优先权的模型56的数据元素。查询编 译器122将预定义查询模型56的用户编辑作为可以上载到服务器30并被服 务器30执行的用户修改的查询模型128而存储。

阅读器124创建了对表格、图形、报告、数据透视表、网页等等的查看 的结合。阅读器124允许用户容易地从数据的任何视图60转换到任何其它 视图,并对数据进行分类和筛选。视图60也可以输出给HTML,用于在网络 服务器上发布或在目录32中共享。如上所述,数据视图60可以是现场的或 瞬像的。视图60或视图60的公文夹58可以在单个用户自己的目录区域内 私人保存,也可以在一个或多个安全组54中分配和共享,以帮助协作和进 行决策。

在阅读器124内,表格阅读器130将信息显示为一系列的列或行。因为 表格视图提供了如何组织信息的整体概念,所以它典型地用作开发概念的开 始点。在表格视图中,用户可以增加筛选器,增加计算的字段,并增加概要 和次总信息。可以重新排列、隐藏和另外修改各列。可以在不同的层次上分 类和查看内容。

报告阅读器132以报告的格式显示数据。报告视图提供了健壮的、联合 的报告格式并且有助于自动的报告生成和分配。用户可以在报告的交互图形 设计视图中自由地安排各字段和各列,同时增加计算、次总和、分组、标题、 页脚、题目和图形。

图形阅读器134以宽范围的2维或3维格式显示数据的图形视图。这些 格式可以包括:例如杆形、饼形、线形、分散形和放射形的图形。在用图形 工作时,用户可以通过筛选数据、使用原始数据的子集改变图形类型或内容, 并提取多维数据。也可以在空闲时,通过按不同的次序将记录分类以及改变 图形属性来改变图形视图。

数据透视表阅读器136提供沿着多个方向显示多维或立体数据的数据透 视表视图。这允许用户沿着不同的方向将信息分割成片或方块,以获得对企 业的活动或成绩的不同的观点。数据透视表视图支持在多个方向上的分层, 并允许用户执行向下展示、向上展示或贯通性展示分析。如下面更详细所述, 多维视图生成于多维存储模型100。

浏览器阅读器138提供嵌入式、交叉平台网络浏览器。这允许用户访问 工作成果和基于web(网络)的互联网或互联网环境。在其它视图中创建的 报告或对象可以输出给HTML,用于粘贴到网站上,或通过浏览器界面显示。

属性检查器126允许用户改变特定视图的显示属性。在一个实施例中, 属性检查器126是无模式的。在这个实施例中,属性检查器126在屏上时应 用这些变化,以允许用户在关闭属性检查器122之前用不同的配置和属性进 行试验。

商业智能入口10的客户机110和服务器30一起向企业信息结构增加了 战略层,并向对宽范围的用户是固有地可扩展的集成查询、报告、和分析提 供单个的入口(entry)点。由于商业智能入口10可以在企业内充分地集成, 因此入口10有助于日常企业范围的分析传递和信息共享。结果,企业内更 多的人将能够更经常地和生产性地使用已经为企业存在的数据。

图2是说明用于初始化按照本发明的一个实施例的商业智能入口10的 方法的流程图。参照图2,该方法开始于步骤200,其中系统管理员定义了 用户简档52。如上所述,用户简档52为用户利用系统内的特征提供许可。 接下来,在步骤202,系统管理员定义安全组54。如上所述,用户继承的最 终的安全权和优先权是如用户简档52中定义的他或她的个人的权力和他或 她所属于的每个安全组54的权力的统一。

接着在步骤204,系统管理员为每个数据库20生成数据库别名50。数 据库别名50防止了对数据库的直接用户访问,以维持数据整体性,并使非 技术用户可能安全地访问公司数据,而不用担心毁坏。数据库别名还用来组 合连接物理数据库20,并因此减少支持大量客户机110所必需的数据库连 接的数量。

接下来在步骤206,系统管理员使用查询生成器38生成预定义查询模 型56。预定义查询模型56控制任何特定的用户组将拥有访问权的数据库20 的元素。另外,预定义查询模型56约束可以被执行的查询类型,并限定可 以用来执行该查询的最大计算机资源和各表格之间的可允许的结合,以防止 失控或恶意查询。

步骤206通向该过程的结束,其中系统管理员建立了企业内使用的商业 智能入口10。为了控制系统内的数据的访问和分配,作为建立过程的一部 分,已经为用户定义了许可和查询。

图3是说明用于生成按照本发明的一个实施例的预定义查询模型56的 方法的流程图。在这个实施例中,模型内的指定数据被链接到可能的程度。 另外,将数据库元素以图形的形式显示给系统管理员,以有助于查询模型56 的生成。

参照图3,该方法开始于步骤220,其中查询生成器38将自动地识别并 向系统管理员显示为其生成查询的数据库20的各表格和各列。接下来,在 步骤222,系统管理员为预定义查询模型56选择各表格和各列的子集。

在接下来的决定步骤224,查询生成器38确定数据库20是否具有完全 的外部密钥(FK)/主密钥(PK)信息。完全的外部密钥/主密钥信息允许不 同表格中的数据自动地链接。因此,如果数据库20包括完全的外部密钥/主 密钥信息,则决定步骤224的肯定分支通向步骤226,其中在预定义查询模 型56中,子表格使用外部密钥/主密钥信息自动地链接到父表格上。步骤226 通向该过程的结束。在此,可以保存预定义查询模型56或可以由系统管理 员进行进一步的编辑。

现在返回到决定步骤224,如果完全的外部密钥/主密钥信息不可用, 则决定步骤224的否定分支通向决定步骤228。在决定步骤228,查询生成 器38确定完全的主密钥信息是否可从数据库20获得。完全的主密钥信息的 供应允许通过数据库表格搜索确定父表格和子表格。因此,如果完全的主密 钥信息可用,则决定步骤228的肯定分支通向步骤226,在那里执行数据库 表格搜索以确定父表格和子表格。在父表格和子表格被确定之后,他们被自 动链接以生成预定义查询模型56。然后可以保存或由系统管理员进一步修 改该预定义查询模型。

现在返回到决定步骤228,如果完全的主密钥信息不可用,则决定步骤 228的否定分支通向决定步骤230。在决定步骤230,查询生成器确定否可 从数据库20获得能够识别父表格和子表格和唯一索引信息。如果唯一索引 信息可获得,则决定步骤230的肯定分支通向步骤226。在步骤226,唯一 索引信息用来在数据库中搜索父表格和子表格。然后查询生成器38自动地 链接父表格和子表格以生成预定义查询模型56。然后可以保存或由系统管 理员进一步修改该预定义查询模型。

现在返回到决定步骤230,如果唯一索引信息不能从数据库20中获得, 则决定步骤230的否定分支通向步骤232。在步骤232,系统管理员手动地 识别和链接父表格和子表格以生成预定义查询模型56。这样,用最小的管 理员干预,最大程度地自动地生成了预定义查询模型56。可以理解,数据 库表格和其它元素可以另外进行适当地链接。

图4是说明用于配置和维护按照本发明的一个实施例的客户机应用程序 的方法的流程图。在这个实施例中,使用薄引导程序(thin boot strap applet)从服务器30进行中央式配置和维护客户机应用程序,该引导程序 最初用于将形成客户机应用程序的Java级别下载到客户机110。此后,当 客户机110初始化新的会话时,客户机软件的全部升级由服务器30自动地 完成。安装/更新过程的部分包括下载将所有模块和资源的所有名称和版本 列表在客户机110上的显示文件。

参照图4,该方法开始于步骤250,其中由客户机110进行对服务器30 的新的连接。在步骤252,客户机110上的引导程序代理将用户的显示文件 传送给服务器30。

在接下来的步骤254,服务器30将列表在显示文件中的所有模块和资 源的版本与服务器30中的对应文件的当前版本进行比较。在决定步骤256, 服务器30根据该比较确定是否各模块或资源中的一些或全部已经过时。如 果各模块或资源中的一些或全部已经过时,则决定步骤256的肯定分支通向 步骤258。在步骤258,服务器30为客户机110生成递增的更新。该递增的 更新仅包括需要更新的模块。

接下来,在步骤260,服务器将递增的更新传送给客户机110。在步骤 262,客户机110根据该递增的更新更新客户机侧的应用程序。然后在步骤 264,为最新更新的客户机110建立新的会话。返回到决定步骤256,如果 没有客户机应用程序过时,则决定步骤256的否定分支也通向步骤264,其 中建立了新的会话。这样,如果有的话,服务器30确定什么模块(或Java 级别)已经过时、失踪、或陈旧,然后选择性地将正确的模块与更新的显示 文件一起推给用户的机器。结果,用户永远不必手动地更新客户机软件,并 能够容易地漫游在各工作站之间,以进行登录,而不需要请求在每个工作站 上重新安装的他们的应用程序和数据文件。另外,客户机110运行迅速并总 是最新的,同时中央式地维护管理并最小化网络流量。

图5是说明用于根据按照本发明的一个实施例的预定义查询模型56修 改和执行查询模型的方法的流程图。在这个实施例中,由管理员在服务器30 上生成并维护预定义查询模型56,并基于请求和访问优先权的校验将其提 供给用户。

参照图5,该方法开始于步骤280,其中服务器30从用户接收对预定义 查询模型56的请求。接下来,在步骤282,服务器根据用户的优先权确定 预定义查询模型56的可访问部分。可访问部分是用户可以观看到的查询模 型56的部分。在特定的实施例中,可访问部分也可以是可由用户编辑的查 询模型的部分。可以通过确定用户对查询模型的优先权来完成预定义查询模 型56的可访问部分的确定,然后根据用户的优先权确定可访问部分。

在确定预定义查询模型56的可访问部分时,服务器30也可以确定预定 义查询模型56的受保护的部分。该保护部分是预定义查询模型56的剩余或 其它适当的部分。如下面更详细所述,查询编译器122可以隐藏预定义查询 模型的保护部分或禁止对预定义查询模型的受保护部分进行编辑。

接下来,在步骤284,服务器30将预定义查询模型56下载到客户机110。 在步骤286,查询编译器122向用户显示预定义查询模型56的可访问部分。 在一个实施例中,查询编译器122显示定义预定义查询模型56的可访问数 据元素的图形视图。在显示可访问部分时,查询编译器122可以隐藏预定义 查询模型56的受保护的部分,以阻止编辑和/或观看那部分。

前进到步骤288,查询编译器122接收用户对预定义查询模型56的编 辑。用户编辑可以包括数据库表格、数据库表格中的各列、和数据库表格之 间的结合的选择和去选择(deselection)。接下来,在步骤290,查询编译 器122根据用户对预定义查询模型56的可访问部分的编辑生成用户修改的 查询模型128。在步骤292,为了执行,将用户修改的查询模型128上载到 服务器30。

在步骤294,SQL生成器74根据用户修改的查询模型128自动地生成数 据库。数据库查询包括可以由连接管理器76执行以执行查询的原文SQL。 在步骤296,服务器30接收查询的结果。如上所述,查询结果最初由高速 缓存管理器42存储在服务器30中。

前进到决定步骤298,如果该查询包括多维分析,则决定步骤298的肯 定分支通向步骤300,在其中根据结果生成多维存储模型100。在步骤302, 多维存储模型100被用于生成数据透视表、透穿性展示和其它用户请求的视 图。

返回到决定步骤298,如果未指示多维分析,则决定步骤298的否定分 支通向步骤304,在其中根据查询结果生成请求的单维视图。步骤302和304 每个都通向决定步骤306。在决定步骤306,服务器30确定是否为以后的再 使用而存储用户修改的查询模型128。如果用户期望保存查询模型128,则 决定步骤306的肯定分支通向步骤308,其中将查询模型保存到用户的选择 的公文夹58或用户具有访问权的安全组58。步骤308和决定步骤306的否 定分支每个都通向决定步骤310。

在决定步骤310,服务器30确定是否作为历史瞬像保存查询结果。如 果用户选择将结果保存为瞬像,则决定步骤310的肯定分支通向步骤312, 其中将查询结果保存到选择的公文夹58。步骤312通向该过程的结束,在 此将预定义查询模型56提供给用户进行修改和定制。使用数据元素的图形 视图显示和修改预定义查询模型56。这有助于由所有用户进行健壮的数据 分析,并允许初学者用户有效地使用可用的信息,以改善他们的机构内的操 作。

图6是说明按照本发明的一个实施例的查询引擎80的细节的方框图。 在这个实施例中,查询引擎80包括数据驱动器84的程序库和智能数据集82, 该智能数据集响应于查询请求可操作,以从程序库识别必要的数据驱动器84 而执行该请求。智能数据集82进一步可操作,以确定执行该请求的数据驱 动器84的必要的次序,以必要的次序生成包括必要的数据驱动器84的驱动 器链,并按次序执行驱动器链中的数据驱动器84。

参照图6,智能数据集82响应于查询请求生成驱动器链320。驱动器链 320包括执行所请求的查询所需要的数据驱动器322。根据查询请求,从可 用的数据驱动器84的程序库中自动地选择数据驱动器322并由智能数据集 82进行排序。在一个实施例中,程序库中的数据驱动器84从基础级(base class)中得出,为此,所有界面方法调用该链中的下一个驱动器。在这个 实施例中,每个驱动器具有用于布置在链320内的同样相对位置的链优先 级。如这里所用,术语“每个”意味着至少一个子集的经识别的项目的每一 个。

对于示例的实施例,驱动器链320包括数据驱动器D1、D2、D3和D4。 数据驱动器D1执行取回数据库操作,该操作返回所请求的记录。接下来, 返回的记录由数据驱动器D2分类,并由数据驱动器D3编索引。然后,数据 驱动器D4在存储和编索引的数据记录上执行所请求的搜索。这样,模块化 查询引擎80使用标准化的访问方法执行数据库查询。结果,不需要为特定 的数据库查询定制入口10,并减少了提供和维护商业智能入口10的费用

图7是说明按照本发明的一个实施例的模块化查询引擎80的操作的流 程图。参照图7,该方法开始于步骤340,其中由智能数据集82接收查询请 求。接下来,在步骤342,智能数据集82从程序库动态地选择执行查询请 求所必需的数据驱动器84。

前进到步骤344,智能数据集82确定执行该请求所必需的数据驱动器84 的次序。在步骤346,智能数据集82以执行该查询请求的必要次序动态地 构建包括必要的数据驱动器的驱动器链。

接下来在步骤348,智能数据集执行该驱动器链以执行该查询请求。在 驱动器链内按次序执行数据集82,当完成它自己的执行时,每个数据集调 用该链中的下一个驱动器84。结果,查询引擎80是应用程序独立的,并可 以通过将数据驱动器84增加到程序库和关于它们的功能性编程智能数据集 82而容易地进行修改,以支持新的功能性。

图8是说明按照本发明的一个实施例的多维存储模型100的细节的方框 图。在这个实施例中,存储模型100利用非稀疏结构以最小化模型100的尺 寸。另外,存储模型100使用开放式结构,以允许在构建模型100后动态地 执行计算。

参照图8,多维存储模型100包括每维的存储槽360和经计算的维的存 储槽362。维存储槽360包含各入口(entry)和从数据库中提取的相关数据 值,而经计算的维存储槽362包含根据该提取的数据计算的数据。

对于示例的实施例,每个维存储槽360包括入口存储器370和维存储器 372。入口存储器370包括一组对应维的非稀疏入口374。最好是仅包括非 稀疏入口。入口374代表联合维值,并且每个识别相关的数据值376。在一 个实施例中,每个入口374包括到相关数据值376的指针。另外,数据值376 可以与各入口374一起存储在入口存储器370中。可是,指针的使用和数据 值376的分离存储改善了多维存储模型100的效率和处理速度。

维存储器372包括与入口存储器370中的各入口374相关的数据值376。 数据值376代表每维的唯一的维值。

为每个非稀疏入口374提供一组维际链接380。每个维际链接识别不同 维存储槽360中的非稀疏入口374之间的交叉。该组维际链接380包括一个 或多个维际链接。在一个实施例中,维际链接380是双向的,以允许在从入 口点的任一方向的各维存储槽360之间的有效遍历(traversals)。

维际链接380共同地识别维存储槽360中的非稀疏入口374之间的所有 交叉。因此,包括非存储空交叉的所有交叉都可以从非稀疏入口374和维际 链接380的遍历得到确定。具体地,第一和第二维中的各数据库入口之间的 空交叉由模型中没有数据库入口或没有将第一维中的入口374连接到第二维 中的入口的维际链接380来确定。第一和第二维中的各入口374之间的非稀 疏交叉是通过将维际链接380从第一维中的指定入口遍历到第二维中的指定 入口、然后获得与第二维中的入口374相关的数据值376来确定的。通过维 际存储模型100的遍历获得的数据和信息是为如下更详细所述的进一步的处 理输出的。

经计算的维362包括一组经计算的值382。经计算的值382是从由用户 用多维存储模型100同期请求的预定义计算导出来的。因此,当多维存储模 型100提供开放式结构以允许在它的创建后进行计算时,预计算并存储用户 用该模型请求的同期计算,以最小化模型100创建后的处理和改善多维分析 的速度。

图9是说明示例性数据400和示例性数据400的多维存储模型402的方 框图。参照图9,示例性数据400包括维C1和C2和经计算的维C3。维C1 包括唯一的入口值A、B和C,而维C2包括唯一的入口值D、E、F、G和H。 经计算的维C3包括经计算的对应于不同的预定义计算的数据值1、2、3、4、 5和6。

示例性存储模型402包括维C1和C2的维存储槽404和经计算的维C3 的经计算的维存储槽406。在C1维存储槽404中,维存储器410包括唯一 的维值A、B和C。入口存储器412包括数据值与其相关的各入口和到各数 据值的各指针。类似地,C2维存储槽404在维存储器414中包括唯一的数 据值D、E、F、G和H。入口存储器416包括与数据值相关的各入口和到各 数据值的指针。维际链接420识别C1和C2维中的各入口之间的交叉,并因 此识别数据之间的交叉。经计算的维406包括与C1和C2维中的数据的预定 义交叉相关的经计算的数据值1、2、3、4、5和6。

可以从示例性存储模型402确定,例如C1和C2维中的入口值A和D交 叉,因为它们通过维际链接420连接。还可以确定入口值C和D未交叉,因 为它们未通过维际链接420进行连接。如果任何一个或一系列维际链接连接 各入口,则各入口通过维际链接进行连接。

图10是说明用于生成和使用按照本发明的一个实施例的多维存储模型 100的方法的流程图。参照图10,该方法开始于步骤440,其中响应于查询 请求,由多维模型管理器44生成多维存储模型100,并且该模型是基于查 询请求的结果的。该查询请求为多维存储模型100指定了各维和数据维。

在一个实施例中,多维模型管理器44通过首先从源取回数据记录来生 成多维存储模型100。然后再为每个数据记录取回各维值和数据值。此后, 多维模型管理器44为数据记录的每个维值确定该维值是否出现在入口存储 器370中,这种情况下它可能被使用。如果该维值未出现在入口存储器370 中,则为入口存储器370中的维值和存储在维存储器372中的对应的数据值 376创建入口374。在任何一种情况下,接下来从左到右遍历各维,以为入 口存储器370中的各入口374创建维际链接380。在创建正消失的连接时, 再使用现存的连接。另外,对于最靠右的维,由多维模型管理器44增加为 记录取回的数据值。可以理解,可以另外适当地生成多维存储模型100。

在生成多维存储模型100后,步骤440进行到步骤442。在步骤442, 多维模型管理器44接收对指定的各维和/或数据维的子集的查看请求。接下 来在步骤444,多维模型管理器44确定从存储模型100生成视图所必需的 遍历和每个遍历的开始点。通过指定的各维和根据如何组织模型100确定的 入口上的开始点来定义各遍历。

在一个实施例中,多维模型管理器44使用从下到上、从右到左的递归 移动从多维存储模型100接收第一个和下一个记录。在这个实施例中,为了 检索第一个记录,多维模型管理器将为显示选择的第一维定位到第一入口存 储值。接下来,将第一入口左侧的所有父入口定位到它们的第一入口存储值。 所选择的维的右侧的子入口也被定位到它们的第一入口存储值。然后,多维 模型管理器44在这些位置处为第一记录检索各维入口的值。为了检索下一 个记录,多维管理器44试图移动视图最右侧的子入口。如果最右侧的子入 口可移动,则它被重新定位并在多维存储模型100内的当前位置取回数据 值。如果最右侧的子入口不可移动,则多维模型管理器44试图移动该子入 口的父入口,该父入口是该子入口左侧紧邻的入口。如果该父入口可移动, 则它被重新定位并在多维存储模型100内的当前位置取回数据值。如果该父 入口不可移动,则试图移动该父入口的父入口,这个父入口是第一个父入口 左侧紧邻的入口,并重复这个过程直到没有父入口遗留下来。此时,过程结 束。可以理解,可以另外适当地确定多维存储模型100内的遍历和开始点。

前进到步骤446,多维模型管理器44经连接多维链接380从入口点遍 历多维存储模型100,以确定指定交叉点的存在和/或值。在步骤448,多维 存储模型100确定指定交叉点的任何值。接下来,在步骤450,多维模型管 理器44确定是否对模型100存在附加的遍历。如果附加的遍历存在,则决 定步骤450的肯定分支返回到步骤446,并执行遗留的遍历和计算交叉值, 直到完成所有的遍历。决定步骤的否定分支则通向步骤452。

在步骤452,从多维存储模型100输出的数据和信息被总结和分类。可 以理解,可以另外配置多维存储模型100以预分类和总结数据。可是,通过 将遍历操作与总结和分类操作分离,改善了处理的效率。

接下来在步骤454,从多维存储模型100输出的信息在由客户机110的 阅读器124请求的视图中以图形显示给用户。前进到决定步骤456,如果请 求附加的视图,则肯定分支返回到步骤442,在其中接收视图请求和指定的 各维并重复该过程,直到完成所有请求的视图并将它们显示给用户。此时, 决定步骤456的否定分支通向过程的结束。这样,商业智能入口10提供了 减小尺寸和改善了处理速度的多维存储模型100,该模型在数据分析期间支 持有效的数据透视和展示操作。另外,用户可以创建新的计算以分析在模型 的原始定义期间不期望的数据交叉。这减小了支持数据透视和展示操作所必 需的时间和资源。附加的视图包括为高层和低层分析展示的数据透视表视图 和数据。

图11是说明按照本发明的一个实施例的相关窗口480的显示的屏幕图 形。参照图11,显示窗口480包括沿着显示窗口480的上沿布置的带有多 个下拉式菜单488的菜单栏486。工具栏490被布置在紧临菜单栏486的下 面。

显示窗口480还包括目录窗口492和与目录窗口492相临的公文夹窗口 494。目录窗口492显示目录32内的文件分层。公文夹窗口494显示由活动 公文夹链接的视图。

在公文夹窗口494内,每个视图分散地显示在离散的视图窗口496中。 由公文夹链接的离散文件中视图的存储和公文夹窗口494内的相关视图的显 示允许相关文件容易地组织到一起并有效地显示给用户。具体地,公文夹窗 口494用单数据界面(SDI)提供公共窗口。在多数据界面(MDI)中的公共 窗口内显示离散的视图窗口496。可以理解,相关部件的其它类型可以离散 地存储并通过复合文件为显示而被链接在一起。

图12是说明包括用于在按照本发明的一个实施例的公文夹中的相关视 图之间进行导航的视图按钮的显示窗口500的屏幕图形。参照图12,显示 窗口500包括沿着显示窗口500的上沿布置的带有多个下拉式菜单504的菜 单栏502。工具栏506被布置在紧临菜单栏502的下面。显示窗口500包括 如前结合目录窗口492和公文夹窗口494所述的目录窗口508和公文夹窗口 510。

在示例的实施例中,用公文夹窗口510最大化视图窗口512以提供优化 的查看。为了允许在最大化的窗口之间进行导航,响应于窗口512的最大化 提供有视图按钮514,并显示为沿着公文夹窗口510的上沿的标签。视图按 钮514每个都是可操作的,以响应于激活而将相关的窗口512显示为活动窗 口。这允许用户快速且容易地在各窗口之间进行导航。结果,用户需要经常 地移动、关闭、打开和调整窗口的大小,以观看存储在离散文件中的相关数 据。可以响应于其它合适的事件而另外显示和生成视图按钮。例如,可以在 第一个窗口通过叠加窗口而从显示变成至少基本上隐藏的任何时间生成视图 按钮。因此,用户一指示应该最大化、定位或显示窗口,就可以为将要被覆 盖的窗口生成视图按钮。视图按钮514可以独立于对应的窗口而定位。因此 它们可以相临于对应的窗口或远离对应的窗口被显示。

尽管已经用几个实施例描述了本发明,但可以向本领域的技术人员建议 各种变化和修改。本发明意欲包含这些落在后附的权利要求的范围中的变化 和修改。

高效检索全球专利

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

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

申请试用

分析报告

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

申请试用

QQ群二维码
意见反馈