CN102236701B - 关于多个域的依赖图 - Google Patents
关于多个域的依赖图 Download PDFInfo
- Publication number
- CN102236701B CN102236701B CN201110127699.4A CN201110127699A CN102236701B CN 102236701 B CN102236701 B CN 102236701B CN 201110127699 A CN201110127699 A CN 201110127699A CN 102236701 B CN102236701 B CN 102236701B
- Authority
- CN
- China
- Prior art keywords
- dependency graph
- dependency
- regard
- provider
- computational fields
- 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.)
- Active
Links
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/20—Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
- G06F16/21—Design, administration or maintenance of databases
- G06F16/217—Database tuning
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/20—Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
- G06F16/25—Integrating or interfacing systems involving database management systems
Landscapes
- Engineering & Computer Science (AREA)
- Databases & Information Systems (AREA)
- Theoretical Computer Science (AREA)
- Data Mining & Analysis (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Abstract
本文描述了关于多个域的依赖图。可以生成表示计算机系统中的第一计算域中的一个或多个依赖的第一依赖图。该第一依赖图可包括对不同于该第一计算域的第二计算域中的对象的引用。可以使用对该对象的引用生成第二依赖图。该第二依赖图可表示该计算机系统中的第二计算域中的一个或多个依赖,并且该第二依赖图中表示的该一个或多个依赖可包括该对象的一个或多个依赖。
Description
技术领域
本发明涉及数据结构技术,尤其涉及关于多个域的依赖图。
背景技术
依赖图(dependency graph)是表示计算系统中——诸如单个计算设备中或计算设备的网络中——的对象之间的依赖的数据结构。可将依赖图用于表示由特定类型的软件管理的对象之间的依赖。例如,数据库服务器可提供表示诸如不同的数据库、数据库表格、数据库表格中的行等不同数据库对象之间的依赖的依赖图。
发明内容
此处所述的工具和技术涉及生成关于多个域的依赖图。例如,在第一域中的依赖图包括对第二域中的对象的引用的情形中,这会是有用的。在这种情况下,可生成关于第二域的第二图,并且第二图可表示关于所引用的对象的依赖。如此处所使用的,域是计算机系统中被映射到元数据系统的一部分(例如,计算机网络中的服务器或一组服务器)。不同的域具有不同的元数据系统,不同的元数据系统具有不同类型的元数据和/或不同的提供元数据的方式。例如,计算机网络中的Windows Server文件服务器、SQL数据库服务器、Oracle数据库服务器和SQL集成服务(SSIS)数据集成子系统可以是同一计算机系统中的四个不同的域。
在一个实施例中,工具和技术可包括生成表示第一计算机系统中的第一计算域中的一个或多个依赖的第一依赖图。第一依赖图可包括对不同于第一计算域的第二计算域中的对象的引用。可使用对于对象的引用来生成第二依赖图(例如通过使用引用来定位适当的提供方模块并调用该提供方模块来提取第二依赖图)。第二依赖图可表示计算机系统中的第二计算域中的一个或多个依赖,并且第二计算域中的一个或多个依赖可包括对象的一个或多个依赖(即对对象的一个或多个依赖和/或对象对一个或多个其他对象的一个或多个依赖)。
在工具和技术的另一实施例中,可生成表示计算机系统中的第一计算域中的一个或多个依赖的第一依赖图。可以确定第一依赖图是否包括对一个或多个其他域中的一个或多个外部对象的一个或多个引用。如果第一依赖图包括对一个或多个其他域中的一个或多个外部对象的一个或多个引用,那么可提取关于来自一个或多个其他域的外部对象中的一个或多个的一个或多个依赖图。
在工具和技术的又一实施例中,可生成表示计算机系统中的第一计算域中的一个或多个依赖的第一依赖图。可标识第一依赖图中对第一域之外的外部对象的依赖的引用。此外,可定位被配置成从第二域提取依赖图的提取提供方模块。第二域可包括外部对象。可调用提供方模块来从第二域提取关于外部对象的第二依赖图。
提供本概述是为了以简化的形式介绍一些概念。这些概念在以下详细描述中进一步描述。本概述并不旨在标识出所要求保护的主题的关键因素或必要特征,也不旨在用于限定所要求保护的主题的范围。类似地,本发明并不限于针对在背景技术、具体实施方式或附图中讨论的特定的技术、工具、环境、缺点或优点的实现。
附图说明
图1是其中可实现一个或多个所描述的实施例的合适的计算环境的框图。
图2是依赖图生成环境的示意图。
图3是依赖图生成技术的流程图。
图4是另一依赖图生成技术的流程图。
图5是又一依赖图生成技术的流程图。
具体实施方式
此处所述的实施例涉及用于生成关于多个域的依赖图的技术和工具。这种改进可来自单独地和结合地使用各种技术和工具。
这种技术和工具可包括生成表示计算机系统中的一个和多个依赖的第一依赖图。第一依赖图可包括对不同于第一计算域的第二计算域中的外部对象的引用。例如,如果第一域是SSIS域,那么来自该域中的SSIS包的任务可依赖于来自SQL关系数据库域的数据库表格。如果第一依赖图包括对第二域中的外部对象的这种引用,那么可生成关于第二域的第二依赖图,而该第二依赖图可表示该外部对象的依赖。第二依赖图可以表示和可以不表示第二域中的其他依赖。例如,图可仅包括特定数据库表格的依赖,或者它可以包括更大的提取单元(例如特定级别的文件系统文件夹)中的所有依赖。
可从用于生成关于多个域的依赖图工具和技术来实现一个或多个益处。例如,可依照此处所描述的工具和技术来生成关于多个域的数据库图,且这些图可包括在中央数据库存储中。这些依赖图可用于表示域内依赖或域间依赖。例如,可生成关于多个域的总体合并图。此外,可维护从中获取图的提取点(或服务器)的指示。因此,可将对每个依赖图的访问限于将被允许访问图来自于其的提取点的用户对象。如此处所使用的,用户对象是可被授予或拒绝访问许可的计算机对象。用户对象可表示用户、用户组、组织、设备、软件模块等。
所附权利要求中定义的主题不必限于此处所描述的益处。本发明的特定实现可提供此处所描述的所有益处、一些益处或不能提供此处所描述的益处。尽管为了呈现,此处以特定的顺序描述了各种技术的操作,但是应该理解这种方式的描述包含按照操作顺序的重新排列,除非要求特定的顺序。例如,在某些情况下可重新排列或并发执行顺序描述的操作。此处参考流程图描述的技术可用于此处所描述的一个或多个系统和/或与一个或多个其他系统。例如,此处所描述的各种程序可用硬件或软件或其组合来实现。此外,为了简化起见,流程图可能未示出可结合其他技术使用特定技术的各种方式。
I.示例性计算环境
图1是其中可实现一个或多个所描述的实施例的合适的计算环境(100)的概括示例。例如,一个或多个这种计算环境可被用作用于一个或多个依赖提取器、提供方模块和/或提取点的环境。一般而言,可使用各种不同的通用或专用计算系统配置。可适于此处所描述的工具和技术联用的公知的计算系统配置的示例包括,但不限于,服务器场和服务器簇、个人计算机、服务器计算机、手持式或膝上型设备、多处理器系统、基于微处理器的系统、可编程消费电子产品、网络PC、小型计算机、大型计算机、包括上述系统或设备中的任何一个的分布式计算环境等。
计算环境(100)并不旨在对本发明的使用范围或功能提出任何限制,因为本发明可以在完全不同的通用或专用计算环境中实现。
参考图1,计算环境(100)包括至少一个处理单元(110)和存储器(120)。在图1中,这一最基本配置(130)包括在虚线内。处理单元(110)执行计算机可执行指令,且可以是真实或虚拟处理器。在多处理系统中,多个处理单元执行计算机可执行指令以提高处理能力。存储器(120)可以是易失性存储器(例如,寄存器、高速缓存、RAM)、非易失性存储器(例如,ROM、EEPROM、闪存)或两者的某一组合。存储器(120)储存实现关于多个域的依赖图的软件(180)。
尽管为了清楚起见用线条示出了图1的各框,但是在实际上,各组件的轮廓并不是那样清楚,并且按比喻的说法,图1和以下讨论的其他附图的线条更精确地将是灰色的和模糊的。例如,可以将诸如显示设备之类的呈现组件认为是I/O组件。同样,处理器具有存储器。本发明的发明者认识到,这是本领域的特性,并且重申,图1的图示只是例示可结合本发明的一个或多个实施例来使用的示例性计算设备。在诸如“工作站”、“服务器”、“膝上型计算机”、“手持式设备”等分类之间没有区别,因为它们全部都被认为是在图1的范围之内的并且被称为“计算机”、“计算环境”或“计算设备”。
计算环境(100)可具有附加特征。在图1中,计算环境(100)包括存储(140)、一个或多个输入设备(150)、一个或多个输出设备(160)以及一个或多个通信连接(170)。诸如总线、控制器或网络等互连机构(未示出)将计算环境(100)的组件互连。通常,操作系统软件(未示出)为在计算环境(100)中执行的其它软件提供了操作环境,并协调计算环境(100)的组件的活动。
存储(140)可以是可移动或不可移动的,且可包括诸如磁盘、磁带或磁带盒、CD-ROM、CD-RW、DVD或可用于储存信息并可在计算环境(100)内被访问的任何其它介质之类的非瞬态计算机可读存储介质。存储(140)储存关于软件(180)的指令。
输入设备(150)可以是诸如键盘、鼠标、笔或跟踪球等触摸输入设备;语音输入设备;扫描设备;网络适配器;CD/DVD读取器;或可向计算环境(100)提供输入的另一设备。输出设备(160)可以是显示器、打印机、扬声器、CD/DVD刻录机、网络适配器或从计算环境(100)提供输出的另一设备。
通信连接(170)实现通过通信介质到另一计算实体的通信。由此,计算环境(100)可在使用到诸如个人计算机、服务器、路由器、网络PC、对等设备或另一公共网络节点之类的一个或多个远程计算设备的逻辑连接的联网环境中运作。通信介质传达诸如数据或计算机可执行指令、或已调制数据信号形式的请求之类的信息。已调制数据信号是其一个或多个特征以在信号中编码信息的方式设置或改变的信号。作为示例而非限制,通信介质包括以电、光、RF、红外、声学或其它载波实现的有线或无线技术。
各种技术和工具可以在计算机可读介质的一般上下文中描述。计算机可读介质可以是可在计算环境内被访问的任何可用介质。作为示例而非限制,对于计算环境(100),计算机可读介质包括存储器(120)、存储(140)以及上述任一个的组合。
各种技术和工具可以在诸如程序模块中所包括的在计算环境中的目标真实或虚拟处理器上执行的计算机可执行指令的一般上下文中描述。一般而言,程序模块包括例程、程序、库、对象、类、组件、数据结构等,它们执行特定任务或实现特定抽象数据类型。程序模块的功能可以如各实施例中所需的组合或在程序模块之间分离。关于程序模块的计算机可执行指令可以在本地或分布式计算环境中执行。在分布式计算环境中,程序模块可位于本地和远程计算机存储介质两者中。
为了呈现,详细描述使用了如“确定”、“选择”、“调整”和“操作”等术语来描述计算环境中的计算机操作。这些和其他类似的术语是由计算机执行的操作的高级抽象,且不应与人类所执行的动作混淆,除非明确地指出人类(诸如“用户”)动作的执行。对应于这些术语的实际的计算机操作取决于实现而不同。
II.依赖图生成环境系统和环境
图2是结合可实现一个或多个所描述的实施例的依赖图生成系统和/或环境(200)的框图。环境(200)可包括依赖提取器(220),其可以是被配置成管理依赖图(222)的提取并将图(222)存储在中央图存储(224)中的模块,该中央图存储(224)可以是一个或多个物理或虚拟存储设备。依赖提取器(220)可管理提取操作队列(226)。例如,依赖提取器(220)可包括队列(226)中表示仍需要执行的提取操作的项目。依赖提取器(220)可以从队列载入项目并且处理这些项目以执行相应的提取操作。队列可按各种方式中的任何一种来操作,诸如通过时候先进先出技术或者某些其他排队技术。
依赖提取器(220)可与第一提供方模块交互以从第一域(242)提取依赖图。例如,第一域可包括第一提取点(244)和第二提取点(246),这两者都是Microsoft SQL数据库服务器。第一提供方模块(240)可被配置成从依赖提取器接收对第一域(242)中的依赖图的请求(即,该示例中的SQL域,其可以包括环境(200)中所有的SQL数据库服务器))。第一提供方模块(240)也可以被配置成从第一域(242)中的提取点(244和246)检索依赖元数据。例如,第一提供方模块(240)可以用适用于第一域(242)中的提取点的类型的网络消息、API调用、专用连接等与第一域(242)中的提取点(244和246)通信。第一提供方模块(240)也可以被配置成通过将依赖元数据转换成可以由依赖提取器(220)处理的形式(例如,可使用由依赖提取器(220)展示的应用程序编程接口来传输到依赖提取器(220)的形式)来生成依赖图。
依赖提取器(220)也可管理从其他域对依赖图的提取。如图2中所示,依赖提取器(220)可调用第二提供方模块(250)来从第二计算域(252)提取依赖元数据,第二计算域(252)可包括第三提取点(254)和第四提取点(256)。依赖提取器(220)也可以调用第三提供方模块(260)来从第三域(262)提取依赖图,第三域(262)可包括第五提取点(264)。当然,依赖提取器(220)可以与比图2所示地更多或更少的域和提供方模块交互。
现在将在图2的依赖图生成环境(200)的上下文中讨论用于从多个域生成依赖图的技术。技术可包括调用第一提供方模块(240)以要求第一域(242)中的提取点(244和246)标识要用作提取单元的目录对象的依赖提取器(220)。例如,如果第一域(242)是SQL域,那么目录对象可以是第一域(242)中的数据库。作为另一示例,如果第一域(242)是SIS数据集成子系统,那么目录对象可以是SSIS包。第一提供方模块(240)可以接收目录对象并将它们转换成提取操作的表示。可以将这些表示传递给依赖提取器(220)并将它们放置在提取操作队列(226)中。或者,可以将对象传递给依赖提取器(220),并且依赖提取器(220)可使用这些对象来生成提取操作的表示。这些表示可各自包括对提供方模块(此处为第一提供方模块(240))的引用,可调用该提供方模块以执行对相应的依赖图的提取。类似地,也可将对第二域(252)的提取操作的表示包括在提取操作队列(226)中。
一旦用提取操作的初始表示填充了队列(226),依赖提取器(220)就可从队列(226)取得每个操作表示,并且调用适当的提供方模块以用在提取操作表示中定义的范围来执行提取。例如,如果第一域(242)是SQL域,那么依赖提取器(220)可调用第一提供方模块(240)以从第一提取点(224)对特定的数据库提取依赖图。
可以处理每个所提取的依赖图以确定来自其他域(例如除了来自从中提取依赖图的域之外的域)的外部对象是否被包括在图中。例如,可以用相应的提供方模块(240、250或260)解析来自特定域(242、252或262)的依赖图以为该提供方模块(240、250或260)标识对不属于该域的外部对象的引用。
如果发现了这种外部对象引用,那么可以将它们用于生成附加的提取操作表示,可执行附加的提取操作表示以提取附加的依赖图,附加的依赖图可展示这些对象在它们的本地域中的新的依赖。例如,一个数据库域中的第一数据库表格可依赖于第二数据库域中的第二数据库表格,并且第二数据库域中的该第二数据库表格可进而依赖于也在第二数据库域中的第三数据库表格。作为这个的一个示例,两个域可以是Oracle数据库域和SQL数据库域,而SQL域实例可建立到Oracle数据库的已链接服务器连接。(在SQL侧)所存储的程序可使用来自Oracle和SQL侧的表格并且定义上述第一、第二和第三数据库表格之间的依赖。第一表格(经由第二表格)对第三表格的依赖不会由仅表示第一数据库表格的本地数据库域的依赖图来展示。然而,当连同包括第二和第三数据库表格的第一域图一起考虑第二域图时,这些依赖可由从包括第二和第三数据库表格的第二数据库域提取的另一依赖图来展示。
作为一个示例,当提供方模块(240、250或260)在依赖图中标识对外部对象的引用时,提供方模块(240、250或260)可以将该引用标记为外部引用,并且可以将外部引用传递给依赖提取器(220)。一旦接收到外部引用,依赖提取器(220)就可以将引用传递给其他可用的提供方模块(240、250或260),且这些其他提供方模块中的每一个可告知依赖提取器(220)引用是否被识别为来自该提供方模块(240、250或260)的域(242、252或262)。例如,如果第一提供方模块(240)是SQL提供方模块,那么第一提供方模块(240)可以解析连接字符串以识别SQL连接。如果提供方模块(240,250或260)告知依赖提取器(220)它识别出外部引用来自它的域,那么依赖提取器可以将关于外部对象引用的操作表示连同在执行提取操作时可调用提供方模块(240,250或260)的指示一起添加到提取操作队列(226)。
定位对外部对象的引用的提供方可生成标识外部对象的对象并包括用于协助对象的本地域中的提供方提取该对象的依赖的特性。可以将该新的对象传递给对象的本地域中的提供方。例如,在SSIS提供方解析SSIS包期间,SSIS提供方可发现对SQL对象(例如表格、视图或查询)的引用。当这个发生时,SSIS提供方可以创建新的外部对象并且用与所引用的外部对象相关的特性填充该新的外部对象。可以将新的外部对象传递给SQL提供方。可以按接收新的对象的SQL提供方可以理解新的对象表示SQL对象并且可以加载由SSIS提供方存储在新的对象内的特性的方式来构建对象。这可以使用诸如统一资源标识符(URI)、资源描述框架(RDF)或某些其他标准或内部协议(in-house protocol)实现等各种不同的协议来实现。
可以将包括外部对象引用的原始依赖图连同其他依赖图(222)一起存储在中央图存储(224)中。所存储的图可以包括对其他域中的外部对象的表面引用。
当到了从队列(226)检索关于外部对象的新添加的操作表示时,可以如同来自队列(226)的其他操作表示一样处理该表示。这可包括调用将外部对象引用识别为属于它的域的提供者模块(240、250或260)。从外部对象的本地域(242、252或262)提取的图可包括对外部对象的引用。对原始图中外部对象的引用和对来自外部对象的本地域中的外部对象的引用可在稍后用于将这些引用结合为公共依赖图中的单个节点。这种公共依赖图可包括原始依赖图和来自外部对象的本地域的依赖图两者。
如果不存在可从中为新安排的提取操作表示提取依赖图的可用提取点,那么可以将该操作表示保存在队列(226)中。在这种情况下,由中央存储中的依赖图(222)组成的公共图可具有遗漏的部分。然而,该遗漏的部分可以被用户识别为公共图的不完整性的警告。同样地,可以向系统操作员发出警告,提示系统操作员将添加至相应的提取点的连接。例如,系统操作员可以向用户提供输入(诸如用户名、密码、网络地址等)以允许提供方模块(240、250或260)连接到提取点。随着建立到环境(220)中的新的提取点的连接,可以填补公共图的遗漏部分。例如,可使用可包括关于提取点的连接信息的订阅注册表来管理到提取点的连接。可使用订阅注册表来执行对已提取的依赖图(222)的经调度更新,并且可将关于新的提取点的连接信息添加到订阅注册表中。
随着特定的提取点专用的图(222)被添加到中央图存储(224)中,这些图(222)中的每一个可以保持与它所来自的提取点(244、246、254、256或262)的链接或对其的引用。这些链接或引用可用于基于聚集的图的每个元素源自的提取点(244、246、254、256或262)来保护对元素的访问。由此,如果用户对象将不能访问提取点(244、246、254、256或262),那么可拒绝该用户对象从该提取点(244、246、254、256或262)访问依赖图元素。相应地,可拒绝公共图的低优先级用户访问公共图中表示环境(220)里对于这些用户而言是限制的部分的部分。
尽管上文描述的特定的环境(200),但是此处所描述的环境和工具可以在不同于图2的环境(200)的其他环境中使用。例如,提供方模块结构可提供诸如便于扩展环境(200)以便与附加域交互的益处。然而,中央依赖提取器可包括与系统中的多个域交互而无需调用单独的提供者模块的功能。
III.用于生成关于多个域的依赖图的技术
现在将讨论若干个依赖图生成技术。这些技术的每一个可以在计算环境中执行。例如,每个技术可以在包括至少一个处理器和其上存储有指令的存储器的计算机环境中执行,该指令在由至少一个处理器执行时使得至少一个处理器执行技术(存储器存储指令(例如,对象代码),且当处理器执行这些指令时,处理器执行技术)。类似地,一个或多个计算机可读存储介质可具有包含于其上的计算机可执行指令,该可执行指令在由至少一个处理器执行时使得至少一个处理器执行技术。
参考图3,将讨论依赖图生成技术。技术可包括生成(310)表示计算机系统中的第一计算域中的一个或多个依赖的第一依赖图。第一依赖图可包括对不同于第一计算域的第二计算域中的对象的引用。技术也可包括使用对对象的引用生成(320)第二依赖图。第二依赖图可表示计算机系统中的第二计算域中的一个或多个依赖,并且这些依赖可包括对象的一个或多个依赖。
生成(320)第二依赖图可包括确定第二域包括对象,并且从第二域提取关于第二依赖图的元数据。此外,生成(310)第一依赖图可包括调用第一提供方模块来从第一域提取元数据,而生成(320)第二依赖图可包括调用第二提供方模块来从第二域提取元数据。在对象是第一对象的情形中,技术还可包括将来自第一提供方模块的第二对象传递(直接地或间接地)给第二提供方模块,其中第二对象可标识第一对象。此外,生成(320)第二依赖图可包括确定第二依赖图的提取点是否可用。如果提取点可用,那么生成(320)第二依赖图可包括从提取点检索关于第二依赖图的元数据。如果提取点不可用,那么生成(320)第二依赖图可包括等待直至提取点可用以从该提取点检索关于第二依赖图的元数据。
图3的技术还可包括发送(330)第一依赖图和第二依赖图到中央依赖提取模块。此外,技术可包括将第一依赖图和第二依赖图存储(340)在中央依赖图存储中。
第一依赖图可包括第一依赖图来自第一域中的第一提取点的指示,而第二依赖图可包括第二依赖图来自第二域中的第二提取点的指示。此外,技术还可包括将对第一依赖图的访问限于(350)能够访问第一提取点的用户对象,并且将对象对第二依赖图的访问限于(350)能够访问第二提取点的用户。
参考图4,将讨论另一依赖图生成技术。图4的技术可包括生成(410)表示计算机系统中的第一计算域中的一个或多个依赖的第一依赖图。图4的技术也可以包括确定(420)第一依赖图是否包括对一个或多个其他域中的一个或多个外部对象的一个或多个引用。如果包括,那么技术可包括提取(430)关于来自一个或多个其他域的一个或多个外部对象的一个或多个依赖图。提取(430)可包括搜索(435)一个或多个提供方模块以便提取关于一个或多个域的依赖元数据。提取(430)也可包括确定(440)是否找到了用于提取关于一个或多个其他域的依赖元数据的一个或多个匹配提供方模块。如果未找到(或甚至如果仅为外部对象中的一些找到了这样的提供方),那么可提出(442)警告,诸如通过显示告知用户可能遗漏关于一个或多个外部对象的依赖的警告。如果找到了用于提取关于一个或多个其他域的依赖元数据的一个或多个匹配提供方模块,那么提取(430)可包括在队列中包括(445)一个或多个元素,该一个或多个元素用于执行用来提取关于一个或多个外部对象的一个或多个依赖图的一个或多个提取操作,以及调用(450)一个或多个匹配提供方模块来提取关于一个或多个外部对象的一个或多个依赖图。
如果找到了用于提取关于一个或多个其他域的依赖元数据的一个或多个匹配提供方模块,那么技术也可包括将第一依赖图和关于一个或多个外部对象的一个或多个依赖图存储在中央依赖图存储库中。此外,如果找到了用于提取关于一个或多个其他域的依赖元数据的一个或多个匹配提供方模块,那么技术可包括存储由关于一个或多个外部对象的一个或多个依赖图表示的一个或多个域的一个或多个指示。技术也可包括将对第一依赖图的访问限于能够访问从中提取第一依赖图的第一域中的提取点的用户对象。此外,如果找到了用于提取关于一个或多个其他域的依赖元数据的一个或多个匹配提供方模块,那么技术可包括将对关于一个或多个外部对象的一个或多个依赖图的访问限于能够访问其他域中的相应的提取点(即包括一个或多个外部对象的提取点)的用户对象。
参考图5,将讨论又一依赖图生成技术。在图5的技术中,可以生成第一依赖图(510)。第一依赖图可表示计算机系统中的第一计算域中的一个或多个依赖。技术还可以包括在第一依赖图中标识(520)对第一域之外的外部对象的依赖的引用。技术也可以包括定位(530)被配置成从可包括外部对象的第二域中提取依赖图的提取提供方模块。此外,技术可以包括调用(540)提供方模块以从第二域提取关于外部对象的第二依赖图。
生成(510)第一依赖图可以包括调用用于从第一域提取第一依赖图的提供方模块。第一依赖图可包括第一依赖图来自第一域中的第一提取点的指示,而第二依赖图可包括第二依赖图来自第二域中的第二提取点的指示。此外,技术还可包括将对第一依赖图的访问限于能够访问第一提取点的用户对象,并且将对第二依赖图的访问限于能够访问第二提取点的用户对象。动作还可以包括将第一依赖图和第二依赖图存储在中央依赖图存储中。
尽管用结构特征和/或方法动作专用的语言描述了本主题,但可以理解,所附权利要求书中定义的主题不必限于上述具体特征或动作。相反,上述具体特征和动作是作为实现权利要求的示例形式公开的。
Claims (13)
1.一种计算机实现的方法,包括:
生成表示计算机系统(200)中的第一计算域(242、252或262)中的一个或多个依赖的第一依赖图(222),所述第一依赖图(222)包括对不同于所述第一计算域(242、252或262)的第二计算域(242、252或262)中的对象的引用;以及
使用对所述对象的引用来生成第二依赖图(222),所述第二依赖图(222)表示所述计算机系统(220)中的第二计算域(242、252或262)中的一个或多个依赖,所述第二计算域(242、252或262)中的一个或多个依赖包括所述对象的一个或多个依赖;
其中所述第一依赖图包括所述第一依赖图来自所述第一计算域中的第一提取点的指示,并且所述第二依赖图包括所述第二依赖图来自所述第二计算域中的第二提取点的指示,并且其中所述方法还包括将对所述第一依赖图的访问限于能够访问所述第一提取点的用户对象,以及将对所述第二依赖图的访问限于能够访问所述第二提取点的用户对象。
2.如权利要求1所述的方法,其特征在于,还包括将第一依赖图和第二依赖图存储在中央依赖图存储中。
3.如权利要求1所述的方法,其特征在于,生成所述第二依赖图包括确定所述第二计算域包括所述对象,以及从所述的第二计算域提取关于第二依赖图的元数据。
4.如权利要求1所述的方法,其特征在于,生成所述第一依赖图包括调用第一提供方模块以从所述第一计算域提取元数据,并且其中生成所述第二依赖图包括调用第二提供方模块以从所述第二计算域提取元数据。
5.如权利要求4所述的方法,其特征在于,所述对象是第一对象,并且所述方法还包括将来自所述第一提供方模块的第二对象传递给所述第二提供方模块,所述第二对象标识所述第一对象。
6.如权利要求4所述的方法,其特征在于,还包括将所述第一依赖图和所述第二依赖图发送给中央依赖提取模块。
7.如权利要求1所述的方法,其特征在于,生成所述第二依赖图包括:
确定关于所述第二依赖图的提取点是否可用;
如果所述提取点可用,那么从所述提取点检索关于所述第二依赖图的元数据;以及
如果所述提取点不可用,那么就等待直至所述提取点可用以从所述提取点检索关于所述第二依赖图的元数据。
8.如权利要求1所述的方法,其特征在于,
生成所述第二依赖图包括确定所述第二计算域包括所述对象,并且从所述第二计算域提取关于所述第二依赖图的元数据;
在生成所述第二依赖图的过程中使用对所述第一依赖图中的对象的引用;
生成所述第一依赖图包括调用第一提供方模块以从所述第一计算域提取元数据;
生成所述第二依赖图包括调用第二提供方模块以从所述第二计算域提取元数据;
所述方法还包括:
将所述第一依赖图和所述第二依赖图存储在中央依赖图存储库中;
将对所述第一依赖图的访问限于能够访问所述第一计算域中的第一提取点的用户对象;以及
将对所述第二依赖图的访问限于能够访问所述第二计算域中的第二提取点的用户对象。
9.一种计算机实现的方法,包括:
生成表示计算机系统(200)中的第一计算域(242、252或262)中的一个或多个依赖的第一依赖图(222);
确定所述第一依赖图(222)是否包括对一个或多个其他域(242、252或262)中的一个或多个外部对象的一个或多个引用;
如果所述第一依赖图(222)包括对一个或多个其他域(242、252或262)中的一个或多个外部对象的一个或多个引用,那么就从所述一个或多个其他域(242、252或262)提取关于一个或多个外部对象的一个或多个依赖图(222);以及
如果所述第一依赖图包括对一个或多个其他域中的一个或多个外部对象的一个或多个引用,那么所述方法还包括将对所述第一依赖图的访问限于能够访问所述第一计算域中的第一提取点的用户对象,以及将对关于所述一个或多个外部对象的一个或多个依赖图的访问限于能够访问所述一个或多个其他域中的一个或多个相应的提取点的用户对象。
10.如权利要求9所述的方法,其特征在于,从所述一个或多个其他域提取关于一个或多个外部对象的一个或多个依赖图包括:
搜索一个或多个提供方模块以提取关于所述一个或多个其他域的依赖元数据;以及
如果找到用于提取关于所述一个或多个其他域的依赖元数据的一个或多个匹配提供方模块,那么就调用所述一个或多个匹配提供方模块以提取关于所述一个或多个外部对象的一个或多个依赖图。
11.如权利要求10所述的方法,其特征在于,如果找到用于提取关于所述一个或多个其他域的依赖元数据的一个或多个匹配提供方模块,那么所述方法还包括在队列中包括一个或多个元素,所述一个或多个元素用于执行用来提取关于所述一个或多个外部对象的一个或多个依赖图的一个或多个提取操作。
12.如权利要求9所述的方法,其特征在于,如果所述第一依赖图包括对一个或多个其他域中的一个或多个外部对象的一个或多个引用,那么所述方法还包括将所述第一依赖图和关于所述一个或多个外部对象的一个或多个依赖图存储在中央依赖图存储库中。
13.如权利要求9所述的方法,其特征在于,如果所述第一依赖图包括对一个或多个其他域中的一个或多个外部对象的一个或多个引用,那么所述方法还包括存储由关于所述一个或多个外部对象的一个或多个依赖图表示的一个或多个域的一个或多个指示。
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US12/775,494 | 2010-05-07 | ||
US12/775,494 US8392465B2 (en) | 2010-05-07 | 2010-05-07 | Dependency graphs for multiple domains |
Publications (2)
Publication Number | Publication Date |
---|---|
CN102236701A CN102236701A (zh) | 2011-11-09 |
CN102236701B true CN102236701B (zh) | 2017-05-17 |
Family
ID=44887350
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201110127699.4A Active CN102236701B (zh) | 2010-05-07 | 2011-05-06 | 关于多个域的依赖图 |
Country Status (2)
Country | Link |
---|---|
US (1) | US8392465B2 (zh) |
CN (1) | CN102236701B (zh) |
Families Citing this family (26)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US10001898B1 (en) | 2011-07-12 | 2018-06-19 | Domo, Inc. | Automated provisioning of relational information for a summary data visualization |
US9202297B1 (en) | 2011-07-12 | 2015-12-01 | Domo, Inc. | Dynamic expansion of data visualizations |
US9792017B1 (en) | 2011-07-12 | 2017-10-17 | Domo, Inc. | Automatic creation of drill paths |
US9619580B2 (en) | 2012-09-11 | 2017-04-11 | International Business Machines Corporation | Generation of synthetic context objects |
US9741138B2 (en) | 2012-10-10 | 2017-08-22 | International Business Machines Corporation | Node cluster relationships in a graph database |
US8931109B2 (en) | 2012-11-19 | 2015-01-06 | International Business Machines Corporation | Context-based security screening for accessing data |
US9053102B2 (en) | 2013-01-31 | 2015-06-09 | International Business Machines Corporation | Generation of synthetic context frameworks for dimensionally constrained hierarchical synthetic context-based objects |
US9069752B2 (en) | 2013-01-31 | 2015-06-30 | International Business Machines Corporation | Measuring and displaying facets in context-based conformed dimensional data gravity wells |
US10152526B2 (en) | 2013-04-11 | 2018-12-11 | International Business Machines Corporation | Generation of synthetic context objects using bounded context objects |
US9348794B2 (en) | 2013-05-17 | 2016-05-24 | International Business Machines Corporation | Population of context-based data gravity wells |
US9954815B2 (en) * | 2014-09-15 | 2018-04-24 | Nxp Usa, Inc. | Domain name collaboration service using domain name dependency server |
US11144504B1 (en) | 2015-03-31 | 2021-10-12 | EMC IP Holding Company LLC | Eliminating redundant file system operations |
US11294862B1 (en) * | 2015-03-31 | 2022-04-05 | EMC IP Holding Company LLC | Compounding file system metadata operations via buffering |
US11151082B1 (en) | 2015-03-31 | 2021-10-19 | EMC IP Holding Company LLC | File system operation cancellation |
US10020983B2 (en) | 2015-07-31 | 2018-07-10 | Ca, Inc. | Reachability fault isolation and recovery using asynchronous notifications |
US10572822B2 (en) | 2016-07-21 | 2020-02-25 | International Business Machines Corporation | Modular memoization, tracking and train-data management of feature extraction |
US10355933B2 (en) | 2017-03-31 | 2019-07-16 | Microsoft Technology Licensing, Llc | Dependency graph for coordination of device configuration |
CN107391537B (zh) * | 2017-04-25 | 2020-09-15 | 阿里巴巴集团控股有限公司 | 数据关系模型的生成方法、装置及设备 |
EP3416412B1 (en) * | 2017-06-13 | 2020-06-03 | Swisscom AG | Service orchestration across multiple service domains |
CN112136124B (zh) * | 2018-04-19 | 2024-02-20 | 谷歌有限责任公司 | 用于与计算机实现的自动助理进行人机对话会话的依赖图谈话建模 |
US11204924B2 (en) | 2018-12-21 | 2021-12-21 | Home Box Office, Inc. | Collection of timepoints and mapping preloaded graphs |
US11269768B2 (en) | 2018-12-21 | 2022-03-08 | Home Box Office, Inc. | Garbage collection of preloaded time-based graph data |
US11475092B2 (en) | 2018-12-21 | 2022-10-18 | Home Box Office, Inc. | Preloaded content selection graph validation |
US11829294B2 (en) | 2018-12-21 | 2023-11-28 | Home Box Office, Inc. | Preloaded content selection graph generation |
US11474943B2 (en) | 2018-12-21 | 2022-10-18 | Home Box Office, Inc. | Preloaded content selection graph for rapid retrieval |
US11474974B2 (en) * | 2018-12-21 | 2022-10-18 | Home Box Office, Inc. | Coordinator for preloading time-based content selection graphs |
Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US5831618A (en) * | 1996-02-29 | 1998-11-03 | Nec Corporation | Reconfigurable network map display system |
CN1759368A (zh) * | 2003-01-23 | 2006-04-12 | 罗切斯特大学 | 多时钟域微处理器 |
Family Cites Families (19)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6411936B1 (en) * | 1999-02-05 | 2002-06-25 | Nval Solutions, Inc. | Enterprise value enhancement system and method |
US20050071283A1 (en) * | 2000-05-25 | 2005-03-31 | Randle William M. | Quality assured secure and coordinated transmission of separate image and data records representing a transaction |
US7484002B2 (en) * | 2000-08-18 | 2009-01-27 | Akamai Technologies, Inc. | Content delivery and global traffic management network system |
US7171623B2 (en) * | 2001-05-25 | 2007-01-30 | International Business Machines Corporation | Method and apparatus for efficiently exposing nodes of a display map while monitoring metrics in a complex heterogeneous system |
US7373350B1 (en) | 2002-11-07 | 2008-05-13 | Data Advantage Group | Virtual metadata analytics and management platform |
US7853554B2 (en) | 2002-11-12 | 2010-12-14 | Oracle International Corporation | Method and system for metadata reconciliation in a data warehouse |
US7975043B2 (en) * | 2003-02-25 | 2011-07-05 | Hewlett-Packard Development Company, L.P. | Method and apparatus for monitoring a network |
US7152157B2 (en) * | 2003-03-05 | 2006-12-19 | Sun Microsystems, Inc. | System and method for dynamic resource configuration using a dependency graph |
KR100661313B1 (ko) * | 2003-12-03 | 2006-12-27 | 한국전자통신연구원 | 평생 번호를 사용한 이동성 제공이 가능한 sip 기반의멀티미디어 통신 시스템 및 이동성 제공 방법 |
JP2005176021A (ja) * | 2003-12-12 | 2005-06-30 | Toshiba Corp | 情報処理装置およびプログラム |
US8024356B2 (en) * | 2006-02-03 | 2011-09-20 | Autodesk, Inc. | Database-managed image processing |
US7770217B2 (en) * | 2006-02-23 | 2010-08-03 | Cisco Technology, Inc. | Method and system for quality of service based web filtering |
US7536401B2 (en) * | 2006-08-07 | 2009-05-19 | International Business Machines Corporation | Methods, systems, and computer program products for using graphs to solve circular dependency in object persistence |
US7725505B2 (en) * | 2006-12-29 | 2010-05-25 | Sap Ag | System and method for measuring memory consumption differences between objects within an object-oriented programming environment |
US8443074B2 (en) | 2007-03-06 | 2013-05-14 | Microsoft Corporation | Constructing an inference graph for a network |
US20090006148A1 (en) | 2007-06-27 | 2009-01-01 | Business Objects, S.A. | Apparatus and method for materializing related business intelligence data entities |
US8468165B2 (en) * | 2007-12-02 | 2013-06-18 | Leviton Manufacturing Company, Inc. | Method for discovering network of home or building control devices |
US8489474B2 (en) | 2007-12-31 | 2013-07-16 | Software Ag | Systems and/or methods for managing transformations in enterprise application integration and/or business processing management environments |
US20100011048A1 (en) * | 2008-07-10 | 2010-01-14 | Morris Robert P | Methods And Systems For Resolving A Geospatial Query Region To A Network Identifier |
-
2010
- 2010-05-07 US US12/775,494 patent/US8392465B2/en active Active
-
2011
- 2011-05-06 CN CN201110127699.4A patent/CN102236701B/zh active Active
Patent Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US5831618A (en) * | 1996-02-29 | 1998-11-03 | Nec Corporation | Reconfigurable network map display system |
CN1759368A (zh) * | 2003-01-23 | 2006-04-12 | 罗切斯特大学 | 多时钟域微处理器 |
Also Published As
Publication number | Publication date |
---|---|
US8392465B2 (en) | 2013-03-05 |
CN102236701A (zh) | 2011-11-09 |
US20110276603A1 (en) | 2011-11-10 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN102236701B (zh) | 关于多个域的依赖图 | |
Biswas et al. | Interoperability and synchronization management of blockchain-based decentralized e-health systems | |
US20060230025A1 (en) | Enterprise software system having multidimensional XBRL engine | |
US10331441B2 (en) | Source code mapping through context specific key word indexes and fingerprinting | |
EP1654679A2 (en) | Information access using ontologies | |
JP2011070707A (ja) | 分散コンピューティングシステムと、分散アプリケーションの自動化された設計、展開、および管理とのためのアーキテクチャ | |
CN102844756A (zh) | 具有基于角色的访问控制的计算机关系数据库方法和系统 | |
JP2018514012A (ja) | ネットワーク上のデータソースへの照会 | |
US20180205801A1 (en) | Apparatus and method for connecting at least two systems by converting data | |
US11741119B2 (en) | Canonical data model for distributed data catalog and metadata exchange | |
Schueler et al. | Querying for meta knowledge | |
Shahand et al. | A data‐centric neuroscience gateway: Design, implementation, and experiences | |
US11550785B2 (en) | Bidirectional mapping of hierarchical data to database object types | |
US9373093B2 (en) | Gateway service manager for business object applications | |
Athanasopoulos et al. | Extracting REST resource models from procedure-oriented service interfaces | |
US8296725B2 (en) | Framework for variation oriented analysis for service-oriented architecture | |
Dang et al. | An effective and elastic blockchain-based provenance preserving solution for the open data | |
GB2514459A (en) | Method and system for registering software systems in data-sharing sessions | |
Coelho et al. | A blockchain-based architecture for trust in collaborative scientific experimentation | |
Karlsson et al. | MAPI: a software framework for distributed biomedical applications | |
Singh et al. | Evaluation of approaches for designing secure data warehouse | |
Uslander | Reference Model for the ORCHESTRA Architecture (RM-OA). Version 2 (Rev 2.1). | |
Dragut et al. | CRIS—Computational research infrastructure for science | |
Ahmed et al. | A Deep Learning framework for Interoperable Machine Learning | |
Admodisastro et al. | An architecture analysis approach for supporting black-box software development |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
ASS | Succession or assignment of patent right |
Owner name: MICROSOFT TECHNOLOGY LICENSING LLC Free format text: FORMER OWNER: MICROSOFT CORP. Effective date: 20150728 |
|
C41 | Transfer of patent application or patent right or utility model | ||
TA01 | Transfer of patent application right |
Effective date of registration: 20150728 Address after: Washington State Applicant after: Micro soft technique license Co., Ltd Address before: Washington State Applicant before: Microsoft Corp. |
|
GR01 | Patent grant | ||
GR01 | Patent grant |