数据关系的图形表示的制作方法

文档序号:6592942阅读:955来源:国知局

专利名称::数据关系的图形表示的制作方法数据关系的图形表示优先权的要求本申请要求于2008年2月26日提交的序列号W).61/031,672的美国专利申请的35USC§119(e)的优先权,在此通过引用并入其全部内容。
背景技术
:本描述涉及数据关系的图形表示。企业可能使用诸如数据入库(warehousing)、客户关系管理、以及数据采掘之类的各种复杂的数据处理系统来管理数据。在许多数据处理系统中,从诸如数据库文件、操作系统、普通文件(flatfile)、因特网之类的许多不同的数据源向中央储存库抽取(pull)数据。通常,在载入系统之前,对数据进行变换。变换可以包括净制(cleansing)、集合,以及提取。为了对存储在系统中的数据发生的变换进行跟踪,可以使用元数据。元数据是描述其他数据的起源、历史、相互关系等等的数据。在一些系统中,提供了用户界面来管理元数据。可以使用面向对象的、有关系的,或者用于管理存储的数据的其他技术和结构来访问所存储的数据项,其中所述数据项包括元数据或者已经(或者将要)由系统存储或处理的以其他方式表示或者涉及的数据。例如,包括元数据的数据项可以包括有关表格、文件,或者其他数据集的,或者生成数据集的应用或者数据处理元素的信息。
发明内容在一方面,一般地,一种用于呈现指示存储在数据管理系统中的数据项之间的关系的图的方法,其包括从用户界面接收识别存储在数据管理系统中的第一数据项的请求;检索存储的包括多个选择规范的配置信息,所述选择规范用于选择数据管理系统中与预定类型的给定数据项有关的数据项,其中每个选择规范与各自不同的预定类型相关联;查询数据管理系统以根据来自与第一数据项的类型相关联的配置信息的选择规范来识别一个或多个数据项的集合;对于在所识别的集合中的多个返回的数据项中的每一个,查询数据管理系统以根据来自与返回的数据项的类型相关联的配置信息的选择规范来确定是否附加数据项被识别;使用配置信息生成指示识别的数据项之间的关系的图;以及通过用户界面来呈现所生成的图。各方面可以包括一个或多个以下特征。根据选择规范查询数据管理系统以识别一个或多个数据项的集合包括响应于请求,使用选择规范来动态地配制(formulate)查询,通过数据管理系统来处理查询,以及从识别一个或多个数据项的集合的数据管理系统接收查询结果。查询包括对数据管理系统进行导航的至少一个导航动作以检索通过第一数据项的属性引用的数据项。查询包括对数据管理系统进行导航的至少一个导航动作以检索具有引用第一数据项的属性的数据项。通过数据管理系统处理查询包括递归地对管理系统进行导航,并且返回在多个递归步骤的每一个处所找到的至少一些数据项。查询数据管理系统来确定是否识别附加数据项包括执行多次查询的迭代,其中每次迭代包括确定其中每一个与来自之前的迭代的之前的一个或多个数据项的集合的至少一个数据项有关的、一个或多个数据项的另一集合。执行查询的迭代直到不再找到与之前的一个或多个数据项的集合的任一个有关的数据项为止。该方法还包括从用户界面接收对配置文件的选择,所述配置文件包括来自多个存储的配置文件的配置信息,配置信息包括与第一数据项的类型相关联的标注规范,其用于构建表示第一数据项的所生成的图中的节点的标注。配置信息包括与第一数据项的类型相关联的标注规范,其用于构建表示第一数据项和另一数据项之间的关系的所生成的图中的边的标注。每个预定类型对应于数据流图形处理系统中的不同部分。至少一个预定类型对应于表示数据流图形的部分的数据项,所述数据流图形包括表示处理组件的节点和表示处理组件之间的数据流的链接。至少一个预定类型对应于表示数据集中的字段的数据项。第一数据项包括描述与数据集或可执行程序的至少一部分对应的存储的数据的元数据。存储的数据被存储在与数据管理系统不同的第一数据源中,并且所生成的图包括表示在表示存储的数据的节点和表示与存储在第二数据源中的数据集或者可执行程序的至少一部分对应的数据的节点之间的数据体系(lineage)关系的边,其中所述第二数据源不同于第一数据源和数据管理系统。生成的图包括表示在表示存储的数据的节点和表示受该存储的数据影响的实体的节点之间的下游数据体系关系的边。生成的图包括表示在表示存储的数据的节点和表示从其得到该存储的数据的源的节点之间的上游数据体系关系的边。在另一方面中,一般地,一种用于呈现指示存储在数据管理系统中的数据项之间的关系的图的系统,其包括存储数据项的数据管理系统;用户界面,包括被配置为接收识别存储在数据管理系统中的第一数据项的请求的输入界面;存储系统,存储包括多个选择规范的配置信息,所述选择规范用于选择数据管理系统中与预定类型的给定数据项有关的数据项,其中每个选择规范与各自不同的预定类型相关联;数据管理系统界面,被配置为查询数据管理系统以根据来自与第一数据项的类型相关联的配置信息的选择规范来识别一个或多个数据项的集合,以及对于在所识别的集合中的多个返回的数据项中的每一个,查询数据管理系统以根据来自与返回的数据项的类型相关联的配置信息的选择规范来确定是否附加数据项被识别;以及一个或多个处理器,被配置为使用配置信息执行图生成器来生成指示识别的数据项之间的关系的图。用户界面包括被配置为呈现所生成的图的输出界面。在另一方面,一般地,一种用于呈现指示存储在数据管理系统中的数据项之间的关系的图的系统,其包括用于从用户界面接收识别存储在数据管理系统中的第一数据项的请求的部件;用于检索存储的包括多个选择规范的配置信息的部件,所述选择规范用于选择数据管理系统中与预定类型的给定数据项有关的数据项,其中每个选择规范与各自不同的预定类型相关联;用于查询数据管理系统以根据来自与第一数据项的类型相关联的配置信息的选择规范来识别一个或多个数据项的集合、并且对于在所识别的集合中的多个返回的数据项中的每一个查询数据管理系统,以根据来自与返回的数据项的类型相关联的配置信息的选择规范来确定是否附加数据项被识别的部件;使用配置信息用于生成指示识别的数据项之间的关系的图的部件;以及用于通过用户界面来呈现所生成的图的部件。在另一方面,一般地,一种存储用于呈现指示存储在数据管理系统中的数据项之间的关系的图的计算机程序的计算机可读介质。该计算机程序包括促使计算机进行以下操作的指令从用户界面接收识别存储在数据管理系统中的第一数据项的请求;检索存储的包括多个选择规范的配置信息,所述选择规范用于选择数据管理系统中与预定类型的给定数据项有关的数据项,其中每个选择规范与各自不同的预定类型相关联;查询数据管理系统以根据来自与第一数据项的类型相关联的配置信息的选择规范来识别一个或多个数据项的集合;对于在所识别的集合中的多个返回的数据项中的每一个,查询数据管理系统以根据来自与返回的数据项的类型相关联的配置信息的选择规范来确定是否附加数据项被识别;使用配置信息生成指示识别的数据项之间的关系的图;以及通过用户界面来呈现所生成的图。各方面包括一个或多个以下优点。有时候数据库用户可能想要调查如何从不同的数据源派生出某个数据。例如,数据库用户可能想要知道数据集或者数据对象从哪个源输入。追踪数据集从源的派生被称为上游数据体系跟踪。有时候数据库用户想要调查已经怎样使用了某些数据集(下游数据体系跟踪),例如,哪一个应用读取了给定的数据集。数据库用户还可能对知道数据集怎样与其他数据集有关感兴趣。例如,用户可能想要知道如果修改了数据集,则将影响到那些表(table)。在此描述的技术可以用于帮助用户找到关于各种数据关系查询(包括其中相关数据跨越多重分布的异类的源的查询)的答案。根据以下的描述和权利要求,本发明的其他特征和优点将变得明显。图1是示例性的数据处理系统的图。图2是用于数据浏览的网络用户界面的示例。图3是图示生成数据关系图的处理的示意图。图4A示出了示例性的数据关系图。图4B是用于检索数据项的处理的流程图。图5示出了示例性的数据关系图。图6是用于生成数据关系图的处理的流程图。图7A和7B是配置文件的示例。图8示出了用于显示数据关系图的节点的详细信息的示例性界面。具体实施例方式用户使用用户界面可以在数据处理系统中浏览、修改或者创建新的数据项。一些数据项对应于程序或者程序模块(例如,源代码或者可执行代码),而一些数据项对应于表示程序、数据集、数据源,或者其他数据项的集合(collection)的元数据。可以向不同类型的用户提供各种类型的用户界面。例如,开发系统的应用的用户(开发者)可以使用一种界面,而执行应用或者观看应用的结果的用户可以使用另一种界面。图1示出了包括图形开发环境(OTE)102的示例性的数据处理系统100,其是允许用户使用数据流图形来建立应用的用户界面。数据流图形使用被称为组件的功能模块和被称为流的数据管道(conduit)来表示从一个组件到另一个组件的数据移动。从而可以通过定向的图形来表示基于图形的应用,所述有向的图形在图形中具有表示组件(数据存储组件或者可执行计算组件)的顶点,以及连接图形中的顶点的、表示组件之间的数据流的有向的链接或者“边(edge)”。数据流图形(也被简单地称为“图形”)是模块化的实体。每个图形可以由一个或多个其他图形组成,并且特定的图形可以是更大的图形中的组件。GDE102使得开发者能够开发、测试和部署作为被剪裁为给定的用户专用环境的可执行的图形应用。被构建为使用⑶E102的图1中所示的示例性的数据流图形包括生成数据的组件112、通过流116接收数据并且通过流120向输出数据集118提供数据的组件114。⑶E102与储存库104和并行操作环境106通信。储存库104例如是被设计为支持基于图形的应用的开发和执行以及在基于图形的应用和其他系统(例如,其他操作系统)之间的元数据的互换的可扩展的、面向对象的数据库系统。储存库104是用于各种的元数据(例如,包括文档、记录格式(例如,表格中的记录的字段和数据类型)、变换函数、图形、作业,以及监控信息)的存储系统。并行操作系统106解释由用户在⑶E102中已经构建的数据流图形所表示的程序,基于在图形中所定义的处理逻辑和资源来生成计算机指令,并且在一个或多个处理器和/或计算机系统(其不必是同类的)上执行这些指令。执行程序(executive)110是可选的基于储存库的作业调度系统。执行程序110保持作为储存库104内的对象的作业和作业队列。元数据界面108(例如基于网络浏览器的界面)向用户界面提供在储存库104中存储的、由元数据组成的或者包括元数据或者引用元数据的数据项。通过元数据界面108,用户可以访问储存库104来浏览现有的数据项、更改现有的数据项、创建新的数据项,以及指定应用参数。一些数据项例如表示数据流图形或者其他可执行程序、提供图形的来源或者图形的存储结果的数据集,或者有关图形的开发者的信息。元数据界面108还提供用户界面以在执行程序110中观看和操纵作业和作业队列。通过元数据界面108,用户可以为数据流图形指定运行参数的值来允许执行程序110运行从数据流图形生成的作业。在此通过引用并入的、标题为“ManagingRelatedDataObjects”的美国申请NO.10/979,742公开了对于有关数据项管理并提供界面的技术。其中公开的技术给予了用户定义在网络浏览器上要呈现的视图的能力。这样的视图允许用户访问在数据项中包含的和/或与数据项相关联的期望的信息。每个视图与数据项的类型相关联并且包括一个或多个用于定义要表现的数据的“视图元素”。每个视图元素包括使得能够在与该视图相关联的类别中检索数据项的元素描述符。图2示出了在网络浏览器中呈现的视图的示例。该视图包括导航条202、内容部分204以及页脚206。根据用户定义的视图来显示内容部分204,在该情形下,视图包括四个视图元素类别名称208(例如,人员)、类别成员名称210(例如,JimAnchower),示出该雇员负责的应用的视图元素212,以及示出该雇员负责的数据文件的视图元素214。当用户对知道数据项的历史以及该数据项与储存库104中的其他数据项的关系感兴趣时,他可以通过手动处理来寻找期望的信息。他可以使用界面108来依序浏览链接的数据项。可替换地,用户可以使用编程语言来查询数据库。在两种方法中,为了提取历史信息,用户可能需要发送第一查询,等待查询结果,提取查询结果中的字段信息,基于所提取的字段信息发送第二查询。如果用户对具有长的数据体系的数据项的历史感兴趣或者对嵌入很深的数据对象的关系感兴趣,则该逐步的手动处理可能是令人乏味的。有利地是允许用户提出例如与数据体系有关的或者其他类型的数据关系的特别的(ad-hoc)查询并且允许用户以动态的和用户可配置的方式来检索数据关系信息。此外有利的是以图形来呈现查询结果。参照图3,在提取期望的信息的另一方法的示例性实施方案中,用户通过选择在用户界面300(例如诸如⑶E102之类的界面或者元数据界面108)上呈现的数据项302来启动数据关系图生成处理。图生成器320(例如,在操作系统106中运行的应用)使用用户管理系统接口(例如,用于发送查询和接收响应的通信端口)与数据管理系统340(例如,在储存库104中实现的数据库)交互以检索与所选择的数据项302有关的数据项并且自动地生成用于在用户界面300上向用户呈现的数据关系图。所选择的数据项302在图3中被标注为D1。用户使用输入界面(例如,按钮、菜单等等)从所选择的起始数据项开始来选择他感兴趣的数据关系图的类型(例如数据体系),以及诸如上游(例如,怎样从源导出该数据项,或者该数据项怎样用于从源接收输入数据)和/或下游(例如,怎样通过受影响的实体来接收该数据项,或者该数据项怎样用于为受影响的实体生成输出数据)之类的可选的任何相关联的信息,其指示数据关系图要示出数据项上游的关系、下游的关系或两者的关系。利用作为自变量(argument)传递的所选择的数据项Dl的指示,对图生成器320做出请求314。数据项Dl用作使用输出界面(例如,屏幕上的窗口)生成要向用户呈现的图的起始点。图生成器320接收请求314并且在配置文件存储装置360中搜索与请求314对应的配置文件。典型的配置文件380包含一个或多个选择规范,382、384等,每个选择规范与对应的预定数据项类型相关联。例如,每个数据项类型可以对应于数据流图形处理环境的不同部分。一些数据流类型可以对应于表示图形的数据项。一些数据项类型可以对应于表示图形内的组件的数据项。一些数据项类型可以对应于表示数据集的数据项。一些数据项可以对应于表示数据集内的字段的数据项。选择规范指定选择动作或者选择动作的序列以在其中进行导航并且选择在数据管理系统340中存储的数据项。选择动作可以包括例如指示怎样从一个数据项导航到下一数据项的导航动作,或者通过执行诸如滤波之类的功能来确定将返回哪些数据项的另一类型的动作。在配置文件380中,每个类型的数据项与选择规范相关联。例如,选择规范382与类型A相关联,而选择规范384与类型B相关联。例如,根据定义属性(或者“字段”或“列”)的数据库模式(schema)和这些属性之间的关系(例如由实体关系图所表示的)可以指定数据项的类型。图生成器320从配置文件存储装置360中检索与请求314对应的配置文件380,并且使用配置文件向数据管理系统340发出查询330。可能在图生成器320和数据管理系统340之间发生一系列多个查询交互。图生成器320基于与Dl类型相关联的选择规范,使用Dl作为对数据管理系统340导航的第一查询的起始点,并且接收可能包括一个或多个附加数据项的查询结果。例如,如果Dl的类型是类型B,则图生成器320选择所述选择规范384并且配制包括选择规范384中所包含的选择动作的系列的查询。例如,以数据管理系统340能够解释的查询语言的方式来配制查询。利用每个查询,可以检索一个或多个数据项的集合。在一些情形下,查询可能不返回任何数据项。如在图3中作为示例所图示的,数据管理系统340以Dl开始,使用选择规范384来检索一个或多个数据项的集合。选择规范指定要在数据管理系统340中导航的关系的种类(例如,主关键字/外关键字关系)以检索数据项的集合。在该示例中,所检索的数据项的集合包含D2、D3和Pl并且将所检索的数据项的集合返回给图生成器。数据项D2和D3是与Dl相同的类型,即,类型B。数据项Pl是不同的类型,即,类型A。对于在所检索的数据项的集合内的每个数据项,图生成器320查找与该数据项的类型相关联的选择规范并且向数据管理系统340发送查询来检索跟随在与该类型相关联的选择规范中的选择动作之后的数据项的另一集合。因为D2和D3是与Dl相同的类型,所以D2和D3的选择规范是选择规范384。因为Pl属于与选择规范382相关联的类型A,所以Pl的选择规范是选择规范382。数据管理系统尝试对所检索的集合内的每个数据项检索一个或多个数据项的新的集合,所以对于D2、D3和Pl的第一集合而言,数据管理系统可以使用D2和D3的选择规范384和Pl的选择规范382来潜在地检索一个或多个数据项的三个新的集合。在一些情形下,检索数据项的新的集合的尝试导致没有找到数据项。在返回给图生成器320的、对于D2、D3或Pl所检索的一个或多个数据项的每个新的集合内包含的每个数据项而言,图生成器320找到针对该数据项的类型的选择规范并且向数据管理系统340发送出新的查询。数据管理系统340然后在规范申执行选择动作并且尝试向图生成器检索一个或多个数据项的另一集合。图4A和4B进一步图示了该循环处理。图4A示出在该处理的每次迭代中检索的数据项的集合,以及到达这些数据项所遍历的关系链接。Dl是起始的数据项(迭代i0)。从Dl开始,所检索的数据项的集合包含D2、D3和Pl(迭代il)。从D2开始,所检索的一个或多个数据项的集合仅仅包含一个数据项D4。从D3开始,检索零个数据项。从Pl开始,所检索的一个或多个数据项的集合包含两个数据项,P2和D5。因此,在下一迭代(i2)中,检索了三个数据项。从D4开始,检索的一个或多个数据项的集合包含P3(迭代i3)。从P3开始,所检索的数据项的集合包含P5(迭代i4)。从P2、D5和P5开始检索零个数据项。图4B示出用于检索数据项的示例性处理的流程图。以数据项Ds开始,在步骤410中识别Ds的类型。在步骤412中确定与Ds的类型相关联的选择规范。在步骤414中执行在选择规范中定义的、潜在地导致检索一个或多个数据项的集合的选择动作(步骤416)。当因为不再找得到数据项而不再需要选择动作时,处理结束。在图4A的示例中,作为查询结果返回到图生成器320的数据项被表示为节点,所述节点通过对应于它们在数据管理系统340中如何关联的边而连接。例如,边可以表示在对应的数据项之间的主关键字(key)/外关键字关系。边可以表示例如在上述的美国申请NO.10/979,742中描述的各种关系中的任一种。图5是基于在用户界面300的窗口500中呈现的所检索的数据项、由图生成器320生成的数据关系图的示例。图5中的直角和圆角矩形是表示数据项的节点。节点之间的连接是表示节点之间的关系的有向边。箭头的方向指示表示实体的下游的数据项受到上游数据项表示的实体的影响。例如,在图5中所示的图中,节点对应于在各种数据集内表示字段的元数据以及在这些数据集内处理数据的图形。圆角矩形表示类型是“字段”的数据项。直角表示类型为“图形”的数据项,其是对与定位于紧接着左侧的数据项相关联的输入进行动作并且提供与定位于紧接着右侧的数据项相关联的输出的应用。例如,图形中的组件可以在第一字段中访问数据(其元数据被存储在第一数据项中),并且可以在第二数据项中输出数据(其元数据被存储在第二数据项中)。第一数据项510,字段custjd,是用户为数据关系图生成所选择的起始数据项。图5的图呈现了怎样使用字段custjd510的画面,S卩,下游数据体系图。应用db_unload,mp从字段cust_id读入并且处理数据,然后在两个字段custid中输出数据。应用Example#4然后从两个字段之一读入并且处理数据,并且在字段id中输出数据。然后在四个字段中输出数据的应用importing,mp读取字段id。最后,应用db_load.mp从由应用reporting,mp产生的四个字段的两个中读取并且写入更多的四个字段。图5的数据关系图是当用户点击在元数据浏览器(其示例在图2中示出)中显示的数据项cust_id时,对他呈现的数据关系图。在图6中所示的流程示了从当用户点击有关他感兴趣寻找数据关系信息的数据项到当呈现该图时的示例性的处理。图6示出了用于生成数据关系图的动态的和用户可配置的处理。用户通过选择(例如,点击)他感兴趣的数据项来启动该处理并且例如通过点击对应的无线电按钮(图3中示出的)来指定要使用的配置文件。然后以该用户的名义发送用户请求。图生成器320在步骤601接收该用户请求。用户请求识别起始数据项,以及指示生成用户期望的数据关系图所要使用的适当的配置文件可能需要的其他任何信息。在步骤602中,图生成器从配置文件存储装置360中检索配置文件。步骤603是循环处理。该循环处理开始于第一数据项,即,起始数据项。循环的每次迭代包括针对从之前的迭代中返回的每个数据项(或者对第一次迭代中的起始数据项)的以下步骤步骤652-识别数据项的类型,步骤654-确定于该类型相关联的选择规范,步骤656-执行选择规范中包含的选择动作,步骤658-检索作为步骤656的结果的一个或多个数据项的集合,以及步骤660-通过检查是否还存在必须要处理的任何检索到的数据项来确定是否应终止循环处理。在以上的示例中,循环是基于检索的各个数据项的。可替换的,可以以以下方式来构建嵌套的循环处理第一级循环基于远离第一数据项的步骤(例如整个关系图中的边),而第二级循环基于在每个第一级循环迭代中检索的一个或多个数据项的集合中包含的数据项。当不再存在要检索的数据项时(根据由配置文件定义的选择规范中的选择动作),循环处理终止并且在步骤604处理循环处理期间获得的数据项的集合以及它们相互间的关系并且基于返回的查询结果的处理生成数据关系图。在循环处理中检索的所有数据项被返回并且被重现在数据关系图上。可替换的,数据生成器320可以在执行循环处理时,呈递数据关系图,消除对在步骤604中执行的一些或者所有处理的需要。在美国申请NO.10/979,742中描述了其中可以阐述选择动作的查询语言的一个示例,其公开了用于管理和分析在数据系统中存储的数据的方法。在该申请中,描述了用于从数据存储装置中检索期望的数据的选择动作,包括导航动作和表达动作。在导航动作中,定义了以下四种类型walk、inv_walk、gather_all、find_ultimate。动作walk采用两个参数,注释规则和类别。动作walk返回由指定的注释规则所引用的指定的类别中的数据项。在一些实施方案中,数据项对应于根据定义的模式而涉及的对象并且通过其在定义的模式中的类别来确定数据项的类型。动作inv_Walk也采用两个参数,注释规则和类别。动作inV_Walk返回指定的类别cat中具有注释规则的数据项,所述注释规则引用在其上调用动作inv_Walk的数据项。动作gather_all采用一个或多个导航动作的系列作为参数。其递归地执行(多个)导航动作并且在每个递归步骤处返回所找到的所有数据对象。动作find_all也采用一个或多个导航动作的系列作为参数。其递归地执行(多个)导航动作并且在递归的结束处返回所找到的所有“叶节点”数据对象。利用以上的四个动作,用户可以构成一系列的导航动作来对存储在数据库中的数据对象进行导航。导航动作的构成可以被存储为配置文件中的选择规范。用户还可以将表达动作并入选择规范。表达动作在一个或多个数据项的集合上操作。例如,表达动作s0rt(eXpr)通过expr对一个或多个数据项的集合进行排序。表达动作filter(expr)通过expr对一个或多个数据项的集合进行滤波。表达动作eval(expr)在一个或多个数据项的集合上评估expr。对于给定类型的起始数据项,配置文件使用具有一个或多个选择动作(诸如上述的导航和表达动作)的选择规范来识别与起始数据项有关的一个或多个对象的集合。配置文件还可以包括与对于给定类型的数据项的选择规范一起的标注规范。标注规范被用于为表示起始项的数据关系图中的节点构建标注。图7A、7B和7C示出了利用由导航组成的选择规范和作为选择动作的表达动作的配置文件的示例。图7A示出了具有针对三个类型的数据项‘SubjectArea\iLogicalEntity',和‘EntityRelationship’定义的三个选择规范的配置文件的示例。针对属于类型‘SubjectArea’的数据项,被标明为sel_spec的对应的选择规范包括导航动作inv_walk("SubjectAreaOID","LogicalEntity,,),其返回属于类别LogicalEntity的一个或多个数据项的集合并且具有引用所述一个或多个数据项的集合的注释规则SubjectAreaOID,在所述一个或多个数据项的集合上应用该选择规范。针对属于类型‘LogicalEntity'数据项,被标明为sel_spec的选择规范包括四个动作的合成,导航动作inv_Walk,其后的表达动作filter,再后的两个导航动作walk。针对属于‘EntityRelationship,类型的数据项,被标明为sel_SpeC的对应的选择规范包括导航动作walk。标明为label_SpeC的标注规范包括表达动作eval。该表达动作的返回值用于对生成的数据关系图中的表示数据项的节点做标注。在该示例中,从表达动作eval获得的值用于作为属于类型‘EntityRelationship'的数据项的节点标注。图7B示出了具有针对‘system’类型的数据项定义的选择规范的配置文件的一部分。在该示例中,存在针对相同类型的数据项定义的两个不同的选择规范,其使得图生成器320能够针对数据关系图的上游和下游方向使用不同的选择动作。因此,在最终的数据关系图中,起始数据项将位于中间的某个地方,而不是任一端。在被标明为《Downstream的下游部分中,数据项类型‘system’对应于具有两个inv_Walk导航动作和两个walk导航的合成的选择规范。在被标明为《Upstream的下游部分中,数据项类型‘system’也对应于具有两个inv_walk导航动作和两个walk导航的合成的选择规范,但是与下游方向相比较,用于指示给定的数据集是正被读取还是正被写入的注释规则被交换。配置文件还包括定义节点标注的标注规范、和定义来自导航动作所源自的节点的边的标注的标注规范。基于在边的任一端的节点的类型的标注可以用于对边进行标注。可替换的,可以由用户通过分配给配置文件中的变量的值来定制边标注。在一些实施例中,选择规范可以包括多个选择动作的集合来使得图生成器320能够每次执行多个查询,而不是每次一个查询,并且允许返回节点的集合的序列,而不是节点的单一集合。在各节点之间存在某种依赖性时,这样的特征对于图的准确重现是有用的。即使以上讨论的示例性的选择规范是以一种特定的语言来写的,也应该理解在此公开的方法论同样地应用于对存储在数据存储装置中的数据进行导航或跟踪的其他语言。迄今,上述的数据关系图生成处理是在以下意义上用户可配置的用户可以通过在配置文件中定义选择规范来配置他期望要执行的某些选择动作。用户还可以通过控制图6中描绘的循环处理来配置数据关系图生成处理。循环处理可以以所需要的许多次迭代来继续,直至在任何查询结果中没有附加的数据项返回。可替换的,用户可以通过施加退出条件来限制循环处理的迭代次数,诸如η<n_maX,其中η作为在上述的嵌套的循环处理方案中执行的第一级迭代的次数,使得njiiax是沿着远离表示所选择的起始数据项的节点的路径的边的最大数目。用户也可以在图重现处理中直接控制在最终的图上显示多少节点和边。在一些实施方案中,用户可以在数据关系图和用于数据浏览的用户界面之间来回移动。例如,在数据浏览界面中,用户可以选择第一数据项并且请求该数据项的数据关系图。在数据关系图中,用户可以选择与第一数据项相关联的节点不同的节点而将用户界面重新指向对应于数据项的数据浏览界面。在一些实施方案中,用户可以针对详细信息选择数据关系图形中的节点,其可以显示在弹出窗口中,例如,显示在图8中所示的窗口800中。可以使用在计算机上执行的软件来实施上述的技术。例如,软件形成在一个或多个编程的或可编程的计算机系统(其可以属于各种架构,诸如分布式、客户机/服务器,或者网格)上执行的一个或多个计算机程序中的例程,上述编程的或可编程的计算机系统中的每一个包括至少一个处理器、至少一个数据存储系统(包括易失性的和非易失性存储器和/或存储元件)、至少一个输入设备或端口,以及至少一个输出设备或端口。软件可以形成例如用于提供与数据流图形的设计和配置有关的其他服务的较大的程序的一个或多个模块。可以将该图形的节点和元素实施为在计算机可读介质中存储的数据结构或者符合在数据储存库中存储的数据模型的其他组织的数据。可以在由通用的或者专用的可编程的计算机读取的、诸如CD-ROM之类的存储介质中提供该软件,或者可以通过网络的通信介质将该软件递送到(以传播的信号来编码)执行该软件的计算机。可以在专用计算机上或者使用专用硬件(诸如协处理器)来执行所有这些功能。可以以分布的方式来实施该软件,其中通过不同的计算机来执行由该软件指定的计算的不同部分。每一个这样的计算机程序优选地存储在或者下载到通过通用的或者专用的可编程的计算机可读取的存储介质或者设备(例如,固态存储器或者介质,或者磁介质或者光学介质),当该存储介质或设备被计算机系统读取时,用来配置和操作计算机以执行在此描述的例程。还可以将本发明的系统视为配置有计算机程序的、实施为计算机可读的存储介质,其中这样配置存储介质使得计算机系统以特定的和预定义的方式来操作以执行在此描述的功能。已经描述了本发明的许多实施例。然而,应理解可以进行各种修改,而不脱离本发明的精神和范围。例如,上述的一些步骤可能是与顺序无关的,并且因此可以以与上述顺序不同的顺序来执行。要理解的是,前述的描述旨在说明而不是限制本发明的范围,本发明的范围由所附的权利要求书的范围来限定。例如,可以以不同的顺序来执行上述的许多功能步骤,而基本上不影响整个处理。其他实施例在以下权利要求的范围中。权利要求一种用于呈现指示存储在数据管理系统中的数据项之间的关系的图的方法,该方法包括从用户界面(300)接收(601)识别存储在数据管理系统(340)中的第一数据项的请求(314);检索(602)存储的包括多个选择规范(382,384)的配置信息(380),所述选择规范用于选择数据管理系统中与预定类型的给定数据项有关的数据项,其中每个选择规范与各自不同的预定类型相关联;查询数据管理系统以根据来自与第一数据项的类型相关联的配置信息的选择规范来识别一个或多个数据项的集合;对于在所识别的集合中的多个返回的数据项中的每一个,查询数据管理系统以根据来自与返回的数据项的类型相关联的配置信息的选择规范来确定是否附加数据项被识别;使用配置信息生成指示识别的数据项之间的关系的图;以及通过用户界面来呈现(604)所生成的图。2.如权利要求1所述的方法,其中根据选择规范查询数据管理系统以识别一个或多个数据项的集合包括响应于请求,使用选择规范来动态地配制查询,通过数据管理系统来处理查询,以及从识别一个或多个数据项的集合的数据管理系统接收查询结果。3.如权利要求2所述的方法,其中查询包括对数据管理系统进行导航的至少一个导航动作以检索通过第一数据项的属性引用的数据项。4.如权利要求2所述的方法,其中查询包括对数据管理系统进行导航的至少一个导航动作以检索具有引用第一数据项的属性的数据项。5.如权利要求2所述的方法,其中通过数据管理系统处理查询包括递归地对管理系统进行导航,并且返回在多个递归步骤的每一个处找到的至少一些数据项。6.如权利要求1所述的方法,其中查询数据管理系统来确定是否识别附加数据项包括执行多次查询的迭代,其中每次迭代包括确定其中每一个与来自之前的迭代的之前的一个或多个数据项的集合的至少一个数据项有关的、一个或多个数据项的另一集合。7.如权利要求6所述的方法,其中执行查询的迭代直到不再找到与之前的一个或多个数据项的集合的任一个有关的数据项为止。8.如权利要求1所述的方法,还包括从用户界面接收对配置文件的选择,所述配置文件包括来自多个存储的配置文件的配置信息,9.如权利要求1所述的方法,其中配置信息包括与第一数据项的类型相关联的标注规范,其用于构建表示第一数据项的所生成的图中的节点的标注。10.如权利要求1所述的方法,其中配置信息包括与第一数据项的类型相关联的标注规范,其用于构建表示第一数据项和另一数据项之间的关系的所生成的图中的边的标注。11.如权利要求1所述的方法,其中每个预定类型对应于数据流图形处理系统中的不同部分。12.如权利要求11所述的方法,其中至少一个预定类型对应于表示数据流图形的部分的数据项,所述数据流图形包括表示处理组件的节点和表示处理组件之间的数据流的链接。13.如权利要求11所述的方法,其中至少一个预定类型对应于表示数据集中的字段的数据项。14.如权利要求1所述的方法,其中第一数据项包括描述与数据集或可执行程序的至少一部分对应的存储的数据的元数据。15.如权利要求14所述的方法,其中存储的数据被存储在与数据管理系统不同的第一数据源中,并且所生成的图包括表示在表示存储的数据的节点和表示与存储在第二数据源中的数据集或者可执行程序的至少一部分对应的数据的节点之间的数据体系关系的边,其中所述第二数据源不同于第一数据源和数据管理系统。16.如权利要求14所述的方法,其中生成的图包括表示在表示存储的数据的节点和表示受该存储的数据影响的实体的节点之间的下游数据体系关系的边。17.如权利要求14所述的方法,其中生成的图包括表示在表示存储的数据的节点和表示从其得到该存储的数据的源的节点之间的上游数据体系关系的边。18.一种用于呈现指示存储在数据管理系统中的数据项之间的关系的图的系统,所述系统包括存储数据项的数据管理系统;用户界面,包括被配置为接收识别存储在数据管理系统中的第一数据项的请求的输入界面;存储系统,存储包括多个选择规范的配置信息,所述选择规范用于选择数据管理系统中与预定类型的给定数据项有关的数据项,其中每个选择规范与各自不同的预定类型相关联;数据管理系统界面,被配置为查询数据管理系统以根据来自与第一数据项的类型相关联的配置信息的选择规范来识别一个或多个数据项的集合,以及对于在所识别的集合中的多个返回的数据项中的每一个,查询数据管理系统以根据来自与返回的数据项的类型相关联的配置信息的选择规范来确定是否附加数据项被识别;以及一个或多个处理器,被配置为使用配置信息执行图生成器来生成指示识别的数据项之间的关系的图;其中用户界面包括被配置为呈现所生成的图的输出界面。19.一种用于呈现指示存储在数据管理系统中的数据项之间的关系的图的系统,所述系统包括、用于从用户界面接收识别存储在数据管理系统中的第一数据项的请求的部件;用于检索存储的包括多个选择规范的配置信息的部件,所述选择规范用于选择数据管理系统中与预定类型的给定数据项有关的数据项,其中每个选择规范与各自不同的预定类型相关联;用于查询数据管理系统以根据来自与第一数据项的类型相关联的配置信息的选择规范来识别一个或多个数据项的集合、并且对于在所识别的集合中的多个返回的数据项中的每一个查询数据管理系统,以根据来自与返回的数据项的类型相关联的配置信息的选择规范来确定是否附加数据项被识别的部件;使用配置信息,用于生成指示识别的数据项之间的关系的图的部件;以及用于通过用户界面来呈现所生成的图的部件。20.一种存储用于呈现指示存储在数据管理系统中的数据项之间的关系的图的计算机程序的计算机可读介质,该计算机程序包括促使计算机进行以下操作的指令从用户界面接收识别存储在数据管理系统中的第一数据项的请求;检索存储的包括多个选择规范的配置信息,所述选择规范用于选择数据管理系统中与预定类型的给定数据项有关的数据项,其中每个选择规范与各自不同的预定类型相关联;查询数据管理系统以根据来自与第一数据项的类型相关联的配置信息的选择规范来识别一个或多个数据项的集合;对于在所识别的集合中的多个返回的数据项中的每一个,查询数据管理系统以根据来自与返回的数据项的类型相关联的配置信息的选择规范来确定是否附加数据项被识别;使用配置信息生成指示识别的数据项之间的关系的图;以及通过用户界面来呈现所生成的图。全文摘要呈现图包括从用户界面接收识别存储在数据管理系统中的第一数据项的请求;检索存储的包括多个选择规范的配置信息,所述选择规范用于选择数据管理系统中与预定类型的给定数据项有关的数据项;查询数据管理系统以根据与第一数据项的类型相关联的选择规范来识别一个或多个数据项的集合;对于在所识别的集合中的多个返回的数据项中的每一个,查询数据管理系统以根据与返回的数据项的类型相关联的选择规范来确定是否识别附加数据项;使用配置信息生成指示识别的数据项之间的关系的图;以及通过用户界面来呈现所生成的图。文档编号G06F15/177GK101971165SQ200980106520公开日2011年2月9日申请日期2009年2月26日优先权日2008年2月26日发明者杰弗里·布雷纳德,艾伦·莫斯申请人:起元技术有限责任公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1