CN104205096A - 多租用环境中的拓扑查询 - Google Patents

多租用环境中的拓扑查询 Download PDF

Info

Publication number
CN104205096A
CN104205096A CN201280072423.3A CN201280072423A CN104205096A CN 104205096 A CN104205096 A CN 104205096A CN 201280072423 A CN201280072423 A CN 201280072423A CN 104205096 A CN104205096 A CN 104205096A
Authority
CN
China
Prior art keywords
tenant
result
inquiry
authorized
free
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
CN201280072423.3A
Other languages
English (en)
Other versions
CN104205096B (zh
Inventor
A.西特勇
A.齐夫
E.雷格夫
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.)
Weifosi Co., Ltd
Original Assignee
Hewlett Packard Development Co LP
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 Hewlett Packard Development Co LP filed Critical Hewlett Packard Development Co LP
Publication of CN104205096A publication Critical patent/CN104205096A/zh
Application granted granted Critical
Publication of CN104205096B publication Critical patent/CN104205096B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
    • G06Q90/00Systems or methods specially adapted for administrative, commercial, financial, managerial or supervisory purposes, not involving significant data processing
    • 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
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/60Protecting data
    • G06F21/62Protecting access to data via a platform, e.g. using keys or access control rules
    • G06F21/6218Protecting access to data via a platform, e.g. using keys or access control rules to a system of files or objects, e.g. local or distributed file system or database

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Databases & Information Systems (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Software Systems (AREA)
  • General Engineering & Computer Science (AREA)
  • Business, Economics & Management (AREA)
  • Data Mining & Analysis (AREA)
  • Health & Medical Sciences (AREA)
  • General Health & Medical Sciences (AREA)
  • Computer Hardware Design (AREA)
  • Computer Security & Cryptography (AREA)
  • Bioethics (AREA)
  • Economics (AREA)
  • General Business, Economics & Management (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
  • Management, Administration, Business Operations System, And Electronic Commerce (AREA)

Abstract

具有多租用能力的表示信息技术环境的拓扑数据库的每个节点表示环境内的配置项并且由对被授权访问对应配置的租户的列表进行指示的租户授权规则所表征。获取对不受约束的查询的不受约束的结果,不受约束的查询可表示为子图同构。不受约束的结果包括满足同构的数据库节点的群组。将租户查询应用于不受约束的结果以获取经授权的结果,租户查询通过与不受约束的查询相同的子图同构是可表示的。经授权的结果包括其组件节点各自由对进行查询的租户的访问进行授权的TAR所表征的群组中任一个的标识。在所获取的经授权的结果的基础上向进行查询的租户发布通知。

Description

多租用环境中的拓扑查询
背景技术
经管理的服务提供者(MSP)和其它网络或面向云的信息技术(IT)外购组织经由网络向客户端用户提供计算服务。订购这样的服务的客户端可以访问该客户端所订购的各种计算服务和资源。这样,进行订购的客户端可以能够访问相当大的计算资源,否则所述资源由于维护那些资源所需要的费用和专门技能而可能对客户端不可用。例如,在起步中或者优选不雇佣技术职员的商行将会能够在没有延迟或费用的情况下访问可以通过总合内部资源所带来的计算资源。
MSP可以向大量客户端用户提供对资源的并发访问。诸如硬件设备或数据库之类的资源可以在若干客户端之中共享。MSP或其它面向云的IT组织的每个客户端用户可以被约束成仅访问与该客户端有关的IT网络的那些部分(例如硬件、软件、服务)。以每个客户端不察觉到MSP的其它客户端的这样的方式提供访问。
配置管理数据库(CMDB)可以用于对通过MSP使其可用的共享资源进行建模。CMDB可以例如通过使用虚拟化而对资源进行建模。利用虚拟化,MSP IT环境被建模,使得抽象化的虚拟计算平台被呈现给每个客户端。组件仅以抽象化的虚拟形式被建模为由客户端可访问。在其它情况下,面向云的IT组织可以通过使用多实例途径进行建模,其中为每个客户端创建拓扑数据库的分离实例。
面向云的IT组织可以通过使用多租用途径进行建模。在多租用途径中,使得各种客户端或租户能够访问经建模的单个共享资源(实例)或共享信息。
附图说明
当与附图一起阅读时,通过参照以下详细描述可以最好地理解多租用环境中的拓扑查询的示例,在附图中:
图1是用于应用多租用环境中的拓扑查询的示例的系统的示意性图示;
图2是用于图1中图示的系统的管理员系统的示意性图示;
图3A是表示经管理的服务提供者(MSP)的资源的拓扑数据库的示例的图形图示;
图3B图示了每个租户可访问图3A中图示的拓扑数据库的哪些节点;
图4A示意性地图示了对图3A中图示的拓扑数据库的查询的公式化;
图4B示意性地图示了对图4A中图示的查询的结果;以及
图5是描绘了用于多租用环境中的拓扑查询的方法的示例的流程图。
具体实施方式
依照多租用环境中的拓扑查询的示例,多租用环境可以是以支持多租用或者包括多租用能力的拓扑数据库的形式。拓扑数据库可以表示信息技术(IT)环境。拓扑数据库可以包括对与IT环境相关联的硬件或软件项进行表示的配置项。例如,配置项可以表示由经管理的服务提供者(MSP)提供的资源集合或者参与社交网络的个体。拓扑数据库可以是以配置管理数据库(CMDB)的形式。作为另一示例,多租用拓扑数据库可以用于对能够访问环境的各种资源的客户端的社交或其它网络进行建模。任何这样的网络可以在本文中称为IT环境。
例如,IT环境或MSP可以包括可以被使得对MSP的租户(例如经授权的用户或客户端,诸如组织)可用的资源集。配置项可以表示诸如硬件(例如处理器、数据存储设备、打印机或扫描仪)、软件(例如应用、程序或数据库)、商业服务(例如会计、管理或银行业)之类的资源,或者MSP或其它网络或基于云的IT外购组织的其它资源。MSP的每个客户端用户或租户可以被授权访问配置项的子集。(租户可以是以具有各种用户的组织的形式,所述用户有时在本文中称为子租户,其可以访问租户被授权访问的配置项的子集。)另一方面,MSP的管理员系统可以被授权访问IT环境的所有配置项(或者比租户群组的单个租户各自被授权访问的更大的子集)。例如,管理员可以表示与单个租户相比被授权访问更宽范围的资源的管理员系统的用户,或者被授权访问所有资源的整个MSP或IT环境的管理员。如果单个资源具有不同的访问水平(例如只读、或者读和写),则这样的不同水平为了本描述的目的可以被视为不同资源。
诸如表示IT环境或MSP的拓扑数据库之类的拓扑数据库可以在视觉上被表示为节点的有向图。拓扑数据库的图形表示的每个节点(有时为了简洁起见在本文中被称为拓扑数据库的节点)表示配置项。两个节点之间的有向连接边于是可以表示两个节点之间的关系。例如,拓扑数据库的一个节点可以表示主机计算机,而另一个表示数据库。从表示主机的节点到表示数据库的节点的箭头可以指示所述主机被配置成访问所述数据库。
由拓扑数据库的节点表示的配置项可以由一个或多个属性表征。一个这样的属性是被授权访问由节点表示的配置项的租户的集合(其可以是空的)。这样的属性在本文中称为租户授权规则(TAR)。其它属性可以定义对应于节点的配置项所属于的配置项的类别(例如节点所对应的硬件或软件配置项的类型)。
可以查询拓扑数据库。对拓扑数据库的查询可以以图形的组件的同构(在本文中称为子图同构)的形式表示。例如,子图同构可以包括以特定方式互连的特定类型的节点集。查询的返回结果包括其类型和互连与查询的那些相匹配的拓扑数据库节点的任何子群组。查询可以通过子图同构的节点的属性或特性来限定。这样的特性可以包括例如由特定租户或租户集合进行的经授权访问。
可以存储或保存查询的结果。所存储或保存的结果可以在稍后的时间被访问或查询。
可以以一次为基础来查询拓扑数据库,这样的查询在本文中称为专设(ad hoc)查询。例如,专设查询可以由与一个或多个租户(每个这样的租户在本文中称为进行查询的租户)相关联的用户发起。这样的查询可以例如请求其组件配置项具有(由查询)定义的彼此之间的关系的多租用环境的配置项(节点)的特定组合的所有群组的列表(可表示为子图同构)。由于专设查询由与进行查询的租户相关联的用户发起,返回的结果仅仅限于进行查询的租户被授权访问其组件配置项的那些配置项群组的列表。
在由与进行查询的租户相关联的用户发起的专设查询的情况下,专设查询可以由关于表征每个节点的TAR的条件所限定。例如,查询可以由(例如CMDB的)拓扑数据库的管理员系统自动限定。附加限定可以将结果限制到其中每个组件节点由对进行查询的租户(或者在用户与若干租户相关联的情况下的若干进行查询的租户)的访问进行授权的TAR所表征的节点的那些群组。这样,用户不接收对包括该用户未被授权访问的配置项在内的查询的任何结果。
可以在持续(ongoing)的基础上反复查询拓扑数据库(例如周期性地)。这样的持续的查询在本文中称为主动查询。例如,主动查询可以由(例如CMDB的)拓扑数据库的管理员发起。这样的主动查询可以例如连续监视其组件配置项具有(由查询)定义的彼此之间的关系(查询可表示为子图同构)的多租用环境的配置项(节点)的特定组合的全部群组。可以存储或保存主动查询的结果。
与租户相关联的用户(在本文中称为订购租户)可以订购主动查询,或者注册成被通知对主动查询的结果的改变。通过订购主动查询,用户指示这样的请求:接收影响订购租户(或者当用户与这样的多个订购租户相关联时的多个订购租户)的对主动查询的结果的任何改变的通知。当管理员系统(自动地)检测到主动查询结果的结果中的改变时,(例如CMDB的)拓扑数据库的管理员系统可以(自动地)向与受影响的订购租户相关联的用户报告改变。每个用户仅被告知对相关联的订购租户被授权访问的那些配置项有影响的那些改变。在主动查询的情况下,返回到管理员(系统)的主动查询结果可以包括满足子图同构的节点的许多群组。然而,特定订购租户可能未被授权访问整个结果,或者接收关于改变的整个集合的通知。
在向该特定订购租户报告结果之前,该订购租户被授权访问的那些节点被标识。例如,可以为特定订购租户而查询主动查询的所保存结果。订购租户查询的结果可以包括满足主动查询的子图同构的所标识节点之中的那些群组。这可以描述为对主动查询的所保存结果应用适当分层次过滤器以选择特定订购租户被授权访问并且满足主动查询的子图同构的节点的那些群组。可以向该租户报告与节点的所选群组相对应的配置项或者配置项的群组的子集(例如仅为表示从先前报告的主动查询结果的改变的那些群组)。
多租用环境中的这样的分层次拓扑查询可以是有利的。例如,依照另一可能的途径,将会为订购主动查询的每个租户生成分离的查询(例如类似于用于由订购租户进行的专设查询的途径)。然后将会为订购主动查询的每个租户生成不同的结果。然而,例如,这样的途径可能呈现MSP的资源(例如计算或存储空间)上的大负担。利用这样的途径创建新的查询可能变成棘手的任务,因为每个主动查询将被适配于每个租户(或者租户群组)。
图1是用于应用多租用环境中的拓扑查询的示例的系统的示意性图示。多租用IT环境10包括管理员系统12。图2是图1中图示的系统的管理员系统的示意性图示。
管理员系统12可以向租户14a和14b提供资源(为了简单起见仅示出两个租户,尽管可以存在更多的租户)。管理员系统12可以经由网络16与租户14a和14b通信。例如,网络16可以表示与管理员系统12相关联的网络。
每个租户14a或14b可以包括输入设备26。例如,输入设备26可以包括键盘、小键盘、定点设备或可以由用户操作以便输入诸如定义专设查询的数据之类的数据的其它设备。
每个租户14a或14b可以包括输出设备28。例如,输出设备28可以包括计算机监视器或屏幕或其它设备(例如打印机、显示面板、扬声器或者能够产生可视、可听或触觉输出的另一设备),其可以被操作成向用户传送数据,诸如由查询的执行所产生的数据。
管理员系统12可以包括处理器18。例如,处理器18可以包括例如一个或多个计算机的一个或多个处理单元。处理器18可以被配置成依照存储器22中所存储的编程指令进行操作。处理器18可以能够执行用于多租用IT环境中的拓扑查询的应用。
处理器18可以与存储器22通信。存储器22可以包括一个或多个易失性或非易失性存储器设备。存储器22可以用于存储例如用于处理器18的操作的编程指令、供处理器18在操作期间使用的数据或参数,或者处理器18的操作的结果。例如,存储器22可以用于存储有关拓扑数据库的数据、对拓扑数据库的查询或对拓扑数据库的查询的结果。
处理器18可以与数据存储设备20通信。数据存储设备20可以包括一个或多个固定的或可移除的非易失性数据存储设备。例如,数据存储设备20可以包括用于存储用于处理器18的操作的程序指令的计算机可读介质。要注意,存储设备20可以远离于处理器18。在这样的情况中,存储设备20可以是以可以被下载和安装以供处理器18执行的一个或多个安装包的形式存储用于处理器18的操作的程序的远程服务器的存储设备。数据存储设备20可以用于存储数据或参数以供处理器18在操作期间使用,或者存储处理器18的操作的结果。
处理器18可以与MSP资源24通信。例如,MSP资源24可以包括各种硬件和软件资源。
MSP资源24可以由拓扑数据库30表示。拓扑数据库30可以存储在数据存储设备20中、存储器22中或者这二者中。例如,拓扑数据库30可以以所连接节点的有向图的数字表示的形式进行存储。
查询32可以存储在数据存储设备20中、存储器22中或者这二者中。例如,查询32可以表示专设查询或主动查询。查询32可以由处理器18在拓扑数据库30上执行。
查询32的执行可以导致查询结果34。例如,主动查询的结果可以作为查询结果34而存储在数据存储设备20中;存储器22中或者这二者中。
在向租户14a或14b报告查询结果34之前,处理器18可以向查询结果34应用授权过滤器36。授权过滤器36可以例如在拓扑数据库30中的数据的基础上从查询结果34选择数据以用于经由网络16向租户14a或14b报告。所选数据可以包括目的租户被授权访问的那些查询结果。
(在图2中,为了简单,仅将拓扑数据库30、查询32、查询结果34和授权过滤器36示出为存储在数据存储设备20中。然而,拓扑数据库30、查询32、查询结果34或授权过滤器36中的任一个可以在至少一些时间被存储在存储器22中)。
管理员系统12的MSP资源24可以由拓扑数据库30表示。
图3A是表示MSP的资源的拓扑数据库的示例的图形图示。为了简单起见,如图3A中表示的拓扑数据库50仅包括两种类型的节点两个租户(标明“x”和“y”)。
以节点的有向图的形式示出的拓扑数据库50中。各自表示主机资源52的节点h1和h3被示出为方形。各自表示应用资源54的节点a2、a4、a5、a6、a7和a8被示出为圆形。例如,从主机资源52到应用资源54(例如从节点h1到节点a4)的有向边(箭头)可以表示该应用资源54(例如对应于节点a4)被配置成运行在该主机资源52(例如对应于节点h1)上。类似地,从第一应用资源54到第二应用资源54的有向边可以表示(例如从节点a7到节点a2)可以表示第一应用资源54(例如对应于节点a7)被配置成调用或者以其它方式使得执行第二应用资源54(例如对应于节点a2)。注意,例如,由节点h3表示的主机资源52示出为被配置成运行由节点a2、节点a6和节点a8表示的三个应用资源54。由节点a8表示的应用资源54被配置成运行在由节点h3表示的主机资源52上,并且要被由节点a5表示的应用资源54调用。
用于拓扑数据库50的每个MSP资源的TAR由与附接到对应节点的三角形标记所指示的节点相对应的字母来指示。在所图示的示例中,节点a2、h3、a5、a6和a8中的每一个的TAR指示租户x被授权访问该节点。类似地,节点h1、a4和a6中的每一个的TAR指示租户y被授权访问该节点。注意,节点a6的TAR指示租户x和租户y二者被授权访问节点a6。
图3B图示了图3A中图示的拓扑数据库的哪些节点对每个租户可访问。拓扑数据库50的子集50a的节点对租户x可用。类似地,拓扑数据库50的子集50b的节点对租户y可用。
查询可以在拓扑数据库50上执行。对拓扑数据库50的查询可以由拓扑数据库50的子图同构表示。
图4A示意性地图示了对图3A中图示的拓扑数据库的查询的公式化。图4B示意性地图示了对图4A中图示的查询的结果。
例如,子图同构60可以表示对拓扑数据库50的查询。子图同构60被示出为表示运行任何应用的任何主机。
当子图同构60被应用于如所示的拓扑数据库50时,可以返回不受约束的结果70。(术语“不受约束的结果”在本文中用于指可以包括在讨论之下的租户未被授权访问的节点的结果,并且不一定没有任何授权约束。导致如以上定义的不受约束的结果的查询在本文中称为不受约束的查询。)不受约束的结果70包括运行应用资源54的任何主机资源52的所有表示。然而,不受约束的结果70可以仅对拓扑数据库50的管理员(或者与具有比租户x或租户y更少受约束的访问的租户相关联的用户)可访问。不论租户x还是租户y都未被授权访问所有不受约束的结果70。因此,不受约束的结果70可以不被报告为是对租户x或租户y。不受约束的结果70可以返回到进行查询的管理员并且由管理员存储以供稍后使用。
在子图同构60表示由进行查询的租户(与其相关联的用户)提交的专设查询的情况下,子图同构60所表示的查询可以通过将TAR相关的条件并入到查询中来修改。例如,租户可以经由拓扑数据库50的管理员系统提交专设查询。管理员系统然后可以在向拓扑数据库50提交查询之前修改查询。
例如,如果进行查询的租户是租户x,则子图同构60可以被修改成子图同构62a的形式。子图同构62a表示租户x被授权访问的、运行租户x也被授权访问的任何应用的任何主机。将由子图同构62a表示的查询应用于拓扑数据库50返回经授权的结果72b、经授权的结果72c和经授权的结果72e。
类似地,如果所提交的专设查询的查询租户是租户y,则子图同构60可以被修改成子图同构62b的形式。子图同构62b表示租户y被授权访问的、运行租户y也被授权访问的任何应用的任何主机。将由子图同构62b表示的查询应用于拓扑数据库50返回经授权的结果72a和经授权的结果72d。
在不受约束的结果70已经被返回并且由管理员系统保存之后可以向管理员系统提交由子图同构62a或由子图同构62b表示的查询。例如,可以已经响应于由管理员系统以子图同构60的形式提交的主动查询而返回不受约束的结果70。作为另一示例,不受约束的结果70可以已经由与被授权访问租户x和租户y二者都被授权访问的所有资源的租户相关联的用户所提交的专设查询产生(例如如果租户x和y表示已经订购来自MSP的资源的组织的分离的细分,或者如果先前的查询由与租户x或租户y相比订购了更加多种多样的资源的租户所提交)。
在这种情况下,当例如与租户x相关联的用户向管理员系统提交如子图同构62a表示的查询时,管理员可以将提交的查询应用于不受约束的结果70。然后可以返回经授权的结果72b和经授权的结果72c。类似地,如果与租户y相关联的用户向管理员系统提交如子图同构62b表示的查询,则管理员系统可以将提交的查询应用于不受约束的结果70。然后可以返回经授权的结果72a。如果不受约束的结果70不存在(例如由子图同构60表示的查询尚未或者最近被提交到拓扑数据库50),则可以首先生成不受约束的结果70(例如如果预期到将来更多这样的查询由其它进行查询的租户提交)。仅在必要时这样创建不受约束的查询结果可以称为“懒惰创建”。
在一些情况下,与租户相关联的用户可以订购或者注册主动查询以便被告知由拓扑数据库50表示的环境中的任何改变。例如,如果从拓扑数据库50移除节点a2,则经授权的结果72b将不再出现在经修改的不受约束的结果中。在对经修改的不受约束的结果提交查询时,可以在针对租户x的经授权的结果中但并不在针对租户y的那些中检测到改变。因此,可以向与租户x相关联的用户但不向与租户y相关联的用户发送所述改变的通知(经授权的结果72b的删除)。
这样的查询布置可以视为分层次的。例如,不受约束的结果70可以视为在层次的顶部。经授权的结果72a直到72c可以视为表示层次的较低等级或水平。类似地,第三租户(例如租户x的子租户)可以被授权访问租户x被授权访问的资源的子集。第三租户可以视为表示在经授权的结果72b和72c的以下的层次水平处。当第三租户提交查询时,可以将查询应用于租户x被授权访问的经授权的结果72b和72c。
如果主动查询或租户授权的定义改变,则可以更新层次的定义。与租户的特定集合相关联的用户可以注册关于主动查询的通知。如果该用户的相关联的租户集合改变,则对于该用户的层次可以改变而不影响关于主动查询所创建的其它层次,并且不影响注册了来自该主动查询的通知的其他用户。
这样的较高水平查询结果的分层次查询可以比查询完整的拓扑数据库更高效。例如,较高水平查询结果可以比完整的拓扑数据库小得多。因此,在分层次查询的情况下可以使用比在直接查询拓扑数据库的情况下将会需要的更少的存储器或处理资源。
这样的较高水平查询结果的分层次查询可以比为每个租户存储分离的数据集合(可比于多客户架构)更高效。由于不同租户之间的重叠可以是相当大的,所以这样存储分离的数据可能导致数据复制,其可能消耗额外的数据存储空间并且导致增加的处理。这样存储分离的租户数据将不会使得能够向单个资源指派多个租户,或者向单个租户指派子租户。
在操作中,处理器18(图1)可以执行用于多租用环境中的拓扑查询的方法。
图5是描绘了用于多租用环境中的分层次拓扑查询的方法的示例的流程图。在图5的示例中,分层次的查询方法100可以由用于多租用环境中的拓扑查询的系统的处理器来执行。分层次的查询方法100可以在由租户用户、由管理员发布的或者由与租户或管理员相关联的另一应用自动发布的请求或命令时执行。可以在不同时间或者响应于不同情形而发起分层次查询方法100的各种组件操作。
关于流程图应当理解到,已经仅仅为了方便和清楚而选择了将所图示的方法划分成由流程图的框所表示的离散操作。所图示方法成为离散操作的可替换划分有可能具有等同结果。所图示方法成为离散操作的这样的可替换划分应当理解为表示所图示方法的其它示例。
类似地,应当理解到,除非另行指示,否则已经仅仅为了方便和清楚而选择了由流程图的框所表示的操作执行的所图示顺序。所图示方法的操作可以以具有等同结果的可替换顺序或者并发地执行。所图示方法的操作的这样的重排序应当被理解为表示所图示方法的其它示例。
依照多租用环境中的分层次拓扑查询的示例,存储在计算机可读介质(例如寄存器存储器、处理器高速缓存、RAM、ROM、硬驱动器、闪速存储器、CD ROM、磁性媒介等)中的计算机程序应用可以包括代码或可执行指令,其当被执行时可以指令或使得控制器或处理器执行本文所讨论的方法,诸如用于多租用环境中的分层次拓扑查询的方法的示例。计算机可读介质可以是包括除暂时性的、传播信号之外的所有形式和类型的计算机可读媒介在内的非暂时性计算机可读媒介。
分层次查询方法100可以在拓扑数据库上执行(框110)。拓扑数据库可以表示例如MSP的资源以及MSP的资源之间的关系。当以图形形式表示时,拓扑数据库的节点可以表示MSP资源并且进行连接的边可以表示关系。
分层次查询方法100可以在代表由拓扑数据库表示的多租用环境的租户对查询要求结果时执行(框110)。例如,租户查询可以以订购或注册向租户告知由管理员进行的主动查询的结果(或者结果中的改变)的服务的租户的形式。在另一示例中,租户查询可以以由租户发起但是对较大群组的租户共同(或者预计共同)的专设查询的形式。
代表其而进行了查询的租户可以不被授权访问拓扑数据库的所有节点。例如,对订购MSP的组织进行表示的租户可以被授权仅访问MSP的管理员被授权访问的资源的子集。因此,由管理员进行的查询表示比代表租户的查询所表示的更高的分层次查询水平。类似地,租户的子租户(例如订购MSP的组织的划分)可以被授权仅访问租户被授权访问的节点(例如MSP资源)的子集。因此,代表子租户的查询可以表示比代表租户的查询所表示的更低的分层次查询水平。
因此,可以获取对比租户可以被授权访问的结果更少受约束的结果进行表示的较高水平查询的结果(框130)。当可用时,可以在例如与拓扑数据库所表示的环境的管理员相关联的存储器或存储设备中访问所存储的较少受约束或不受约束的查询结果。例如,可以在先前已经存储了由管理员进行的主动查询或者由管理员响应于另一租户的专设查询而进行的查询的结果。如果没有这样的所存储的查询结果可用但是指示生成这样的较少受约束的结果(例如相同的查询很可能由其他租户提交),则可以提交较高水平的查询并且获取较少受约束的结果。(如果未指示获取较少受约束的结果,例如在不太可能重复的所提交的专设查询的情况下,则提交的查询可以通过TAR的并入而被约束并且应用于整个拓扑数据库。)例如,如果在预定时间段(或者操作数目)期间没有租户查询被应用于较少受约束的结果,则可以从储存中删除所存储的先前返回的较少受约束的结果。
租户查询可以被应用于所获取的较少受约束的结果以便获取更加受约束的(经授权的)查询结果(框140)。例如,可以查询由管理员进行的主动查询的所存储的不受约束的结果以得到匹配租户查询的结果(例如以对进行查询的租户被授权访问的节点具有约束的子图同构的形式)。返回的经授权的查询结果包括其关系对应于查询的那些并且进行查询的租户被授权访问的节点的那些群组(例如MSP的资源或配置项)。
在另一租户被授权访问与进行查询的租户相同的节点并且用于其他租户的查询已经在先前被提交并且经授权的结果被返回并保存的情况下,该保存的结果可以作为经授权的查询结果被返回到当前进行查询的租户。
在租户被注册成接收关于由管理员进行的主动查询的更新的情况下,仅仅当在较少受约束的结果中检测到改变时可以将租户查询应用于较少受约束的结果。
进行查询的租户可以接收基于经授权的查询结果的通知(框150)。例如,可以向进行查询的租户发送或以其它方式传送在经授权的查询结果中所包括的节点的群组的列表。在一些情况下,例如在先前向进行查询的租户报告了初始经授权的查询结果之后,只有经授权的查询结果中的改变可以被报告。在没有检测到经授权的查询结果中的改变的情况下,可以不做出报告,或者可以报告没有检测到改变这一事实。

Claims (15)

1.一种方法,包括:
访问表示信息技术环境的具有多租用能力的拓扑数据库,拓扑数据库的每个节点表示环境内的配置项,每个节点由对被授权访问对应于该节点的配置项的拓扑数据库的租户的列表进行指示的租户授权规则(TAR)所表征;
获取对不受约束的查询的不受约束的结果,所述不受约束的查询可表示为子图同构,对不受约束的查询的不受约束的结果包括满足子图同构的数据库节点的任何群组;
将租户查询应用于不受约束的结果以获取经授权的结果,租户查询通过基本上具有与不受约束的查询的子图同构表示相同形式的子图同构是可表示的,经授权的结果包括其组件节点各自由对进行查询的租户的访问进行授权的TAR所表征的群组中的任一个的标识;以及
在所获取的经授权的结果的基础上发布通知。
2.根据权利要求1所述的方法,其中信息技术环境包括经管理的服务提供者(MSP),并且其中每个配置项表示MSP的资源。
3.根据权利要求1所述的方法,其中获取不受约束的结果包括向数据库反复地提交主动查询。
4.根据权利要求3所述的方法,其中当在从主动查询的接连提交所获取的不受约束的结果中检测到改变时,将租户查询应用于不受约束的结果。
5.根据权利要求1所述的方法,包括将所获取的经授权的结果与先前获取的经授权的结果进行比较。
6.根据权利要求5所述的方法,其中发布通知包括指示在所获取的经授权的结果与先前获取的经授权的结果之间的差异。
7.根据权利要求1所述的方法,其中应用租户查询包括将租户查询应用于所存储的不受约束的结果。
8.一种已在其上存储了指令的非暂时性计算机可读介质,所述指令当由处理器执行时将使处理器:
从拓扑数据库的租户接收对具有多租用能力的拓扑数据库的租户查询,其中拓扑数据库的每个节点表示信息技术环境内的配置项,每个节点由对被授权访问对应于该节点的配置项的那些租户的列表进行指示的TAR所表征,并且其中租户查询可表示为数据库的子图同构;
获取对数据库的不受约束的查询的不受约束的结果,所述不受约束的查询的子图同构基本上具有与租户查询相同的形式,不受约束的结果包括满足不受约束的查询的子图同构的数据库节点的任何群组;
将租户查询应用于所获取的不受约束的结果以获取经授权的结果,经授权的结果包括其组件节点各自由对租户的访问进行授权的TAR所表征的群组中的任一个的标识;以及
在所获取的经授权的结果的基础上发布通知。
9.根据权利要求8所述的非暂时性计算机可读介质,其中环境包括MSP,并且其中每个配置项包括MSP的资源。
10.根据权利要求8所述的非暂时性计算机可读介质,其中获取不受约束的结果的指令包括检索不受约束的查询的所存储结果的指令。
11.根据权利要求8所述的非暂时性计算机可读介质,其中获取不受约束的结果的指令包括向数据库提交不受约束的查询的指令。
12.根据权利要求11所述的非暂时性计算机可读介质,其中提交不受约束的查询的指令包括向数据库反复提交主动查询并且存储不受约束的结果的指令。
13.根据权利要求12所述的非暂时性计算机可读介质,其中将租户查询应用于所获取的不受约束的结果的指令包括当在不受约束的结果中检测到改变时应用租户查询的指令。
14.根据权利要求8所述的非暂时性计算机可读介质,包括将所获取的经授权的结果与先前获取的经授权的结果进行比较的指令。
15.根据权利要求14所述的非暂时性计算机可读介质,其中对租户的通知包括在所获取的经授权的结果与先前获取的经授权的结果之间的差异的指示。
CN201280072423.3A 2012-03-21 2012-03-26 多租用环境中的拓扑查询 Active CN104205096B (zh)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
PCT/US2012/025476 WO2013141832A1 (en) 2012-03-21 2012-03-21 Topological query in multi-tenancy environment
USPCT/US2012/025476 2012-03-21
PCT/US2012/030569 WO2013147736A1 (en) 2012-02-16 2012-03-26 Topological query in multi-tenancy environment

Publications (2)

Publication Number Publication Date
CN104205096A true CN104205096A (zh) 2014-12-10
CN104205096B CN104205096B (zh) 2018-03-02

Family

ID=49223108

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201280072423.3A Active CN104205096B (zh) 2012-03-21 2012-03-26 多租用环境中的拓扑查询

Country Status (3)

Country Link
EP (1) EP2815331A4 (zh)
CN (1) CN104205096B (zh)
WO (2) WO2013141832A1 (zh)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN111597275A (zh) * 2019-02-21 2020-08-28 阿里巴巴集团控股有限公司 同构子图或拓扑图的处理方法及装置
CN113711218A (zh) * 2019-04-18 2021-11-26 微软技术许可有限责任公司 协同智能的约束查询以及约束计算

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20050065925A1 (en) * 2003-09-23 2005-03-24 Salesforce.Com, Inc. Query optimization in a multi-tenant database system
CN101620609A (zh) * 2008-06-30 2010-01-06 国际商业机器公司 多租户数据存储和访问方法和装置
US20110022688A1 (en) * 2009-07-27 2011-01-27 Ahi Gvirtsman Obtaining and displaying network topology information
WO2011149453A1 (en) * 2010-05-26 2011-12-01 Hewlett-Packard Development Company, L.P. Graph authorization

Family Cites Families (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20090016355A1 (en) * 2007-07-13 2009-01-15 Moyes William A Communication network initialization using graph isomorphism
US8356274B2 (en) * 2008-07-07 2013-01-15 International Business Machines Corporation System and methods to create a multi-tenancy software as a service application
US8271536B2 (en) * 2008-11-14 2012-09-18 Microsoft Corporation Multi-tenancy using suite of authorization manager components

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20050065925A1 (en) * 2003-09-23 2005-03-24 Salesforce.Com, Inc. Query optimization in a multi-tenant database system
CN101620609A (zh) * 2008-06-30 2010-01-06 国际商业机器公司 多租户数据存储和访问方法和装置
US20110022688A1 (en) * 2009-07-27 2011-01-27 Ahi Gvirtsman Obtaining and displaying network topology information
WO2011149453A1 (en) * 2010-05-26 2011-12-01 Hewlett-Packard Development Company, L.P. Graph authorization

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN111597275A (zh) * 2019-02-21 2020-08-28 阿里巴巴集团控股有限公司 同构子图或拓扑图的处理方法及装置
CN111597275B (zh) * 2019-02-21 2023-06-20 阿里巴巴集团控股有限公司 同构子图或拓扑图的处理方法及装置
CN113711218A (zh) * 2019-04-18 2021-11-26 微软技术许可有限责任公司 协同智能的约束查询以及约束计算

Also Published As

Publication number Publication date
EP2815331A4 (en) 2015-09-30
WO2013147736A1 (en) 2013-10-03
CN104205096B (zh) 2018-03-02
EP2815331A1 (en) 2014-12-24
WO2013141832A1 (en) 2013-09-26

Similar Documents

Publication Publication Date Title
US9703834B2 (en) Topological query in multi-tenancy environment
US20190163928A1 (en) System and method for managing enterprise data
CN105900121A (zh) 用于生成活动流的方法
CN105956087A (zh) 数据及代码版本管理系统及方法
US10769167B1 (en) Federated computational analysis over distributed data
US10768794B2 (en) Truncated synchronization of data object instances
US20240012828A1 (en) Systems and methods for context development
EP3652658A1 (en) Systems and methods for selecting datasets
US20210243148A1 (en) Systems and methods for context development
US10614632B2 (en) Massive model visualization with a product lifecycle management system
CN108563697A (zh) 一种数据处理方法、装置和存储介质
EP3652660B1 (en) Systems and methods for joining datasets
US10313457B2 (en) Collaborative filtering in directed graph
KR101614890B1 (ko) 멀티 테넌시 이력 생성 방법, 이를 수행하는 멀티 테넌시 이력 생성 서버 및 이를 저장하는 기록매체
CN104182546B (zh) 数据库的数据查询方法及装置
CN104205096A (zh) 多租用环境中的拓扑查询
US9542457B1 (en) Methods for displaying object history information
CN110442369A (zh) 适用于git的代码清理方法及装置、存储介质
US9031998B2 (en) Analytics enablement objects
Delavar et al. ERPASD: A novel algorithm for integrated distributed reliable systems using data mining mechanisms
US11128547B2 (en) Value optimization with intelligent service enablements
US10909135B1 (en) Systems and methods for context development
US10740334B1 (en) Multitenant based query plan
KR102658312B1 (ko) 로봇 기반 지능형 서비스의 상황정보 접근 방법 및 장치
US11803569B2 (en) Computer system and method for accessing user data that is distributed within a multi-zone computing platform

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
C41 Transfer of patent application or patent right or utility model
TA01 Transfer of patent application right

Effective date of registration: 20161228

Address after: American Texas

Applicant after: HEWLETT PACKARD ENTERPRISE DEVELOPMENT LP

Address before: American Texas

Applicant before: Hewlett-Packard Development Company, L.P.

GR01 Patent grant
GR01 Patent grant
TR01 Transfer of patent right
TR01 Transfer of patent right

Effective date of registration: 20180611

Address after: American California

Patentee after: Antite Software Co., Ltd.

Address before: American Texas

Patentee before: HEWLETT PACKARD ENTERPRISE DEVELOPMENT LP

CP03 Change of name, title or address
CP03 Change of name, title or address

Address after: Utah, USA

Patentee after: Weifosi Co., Ltd

Address before: California, USA

Patentee before: Antiy Software Co.,Ltd.