本申请要求于2010年10月4日提交的美国临时申请第61/389,616号和2011年5月20日提交的美国临时申请第61/488,431号的权益。以上申请的公开内容通过引用并入本文。
具体实施方式
现在将参照附图更全面地描述数据中心基础设施管理(下文中为“DCIM”)解决方案10的示例性实施方式。
概述
本部分提供本公开内容的总体概况,而不是本公开内容的全部范围或其所有特征的全面公开内容。DCIM解决方案10是被设计为管理来自中央位置的数据中心的所有元素的硬件产品和软件产品的模块可扩展家族。特别地,DCIM解决方案10包括一个或更多个硬件装置(在下文中简单地称为“DCIM装置”)以及一系列软件产品(下文中为“DCIM软件集”)。DCIM解决方案10具有管理Microsoft
服务器、
服务器、
服务器、存储和串行设备、服务处理器、机架/环境传感器、数据中心电源单元、冷却单元以及配电单元(PDU)的能力,其中所有数据由公共采集引擎收集。这允许数据中心运营商可以完全对数据中心中的每件装备进行监视和控制。
迄今为止,为了管理数据中心,已经需要多点解决方案。DCIM解决方案10使所有这些点解决方案成为单个产品集。之前,需要多个独立的硬件设备,例如:远程访问应用和管理
服务器的相关联硬件(如Avocent的KVM(基于内核的虚拟器)装置);管理
服务器、串行设备和iPUD的
高级控制台服务器(ACS);
MergePoint
TM服务处理器管理器;管理机架和环境传感器的
机架数据单元(RDU);以及
SiteLink
TM通信接口。之前,通常还需要多个独立的软件应用,例如:
MergePoint基础设施资源管理器数据中心管理软件;
SiteScan Web集中监视和控制***;监视功率和冷却装备的爱默生网络能量ASCO PowerQuest
TM功率接口软件;以及
Vista企业软件解决方案。通过将多个软件装置整合为形成DCIM解决方案10的DCIM软件集的整合软件平台,并且将多个硬件装置整合为聚合的DCIM硬件装置,DCIM解决方案10不仅在装备机架上腾出物理空间,而且提高了操作员对数据中心的控制范围。这允许数据中心管理员甚至更有效地管理并控制服务器和其他计算/存储设备、电源装备以及冷却***,以使性能和能量使用量最优化。
除DCIM装置提供的明显益处之外,DCIM软件集使对数据中心的管理比之前所可能的管理更容易并且甚至更有效。包括DCIM软件集的软件模块可以在远离DCIM装置的通用主机服务器上运行,并且可以进行工作以提供数据中心的完整且准确的视图,同时仍然允许用户管理并控制数据中心的各个方面。主机服务器通过可管理子***(MSS)采集引擎从遍布数据中心的所有DCIM装置接收数据。通过使用DCIM软件集模块,数据中心管理员可以从丰富的、基于网络的、图形化用户接口(“GUI”)接进实时数据、视图报告,并且远程地管理设备。
还应当注意,DCIM装置和DCIM软件集可以分离地实现,并且被调整为适合用户需要。通过独自实现DCIM装置,用户仍然可以远程地访问DCIM装置,因此也可以访问连接至DCIM装置的设备。然而,用户可能不会从DCIM软件集提供的报告和提高的管理能力获益。同样地,虽然在不具有由DCIM装置提供的物理连接性的情况下不支持实时数据采集、监视和控制,但是DCIM软件集也可以被实现在不具有DCIM装置的数据中心中。
DCIM装置和DRIP(硬件)
DCIM装置12可以包括通常存在于所选择的装备机架中或可以安装在数据中心内的壁上的一个或更多个硬件装置。在DCIM装置12上的接口的布置向用户提供对用于控制和性能度量采集的各件装备的有权访问。如图3所示,单个DCIM装置12将若干之前产品的功能整合到一件硬件中。DCIM装置12可以替换现有的
交换机、
高级控制台服务器(ACS)、MergePoint服务处理器管理器(SPM)以及
机架数据单元(RDU)产品,并且将它们的所有功能整合成一个或更多个硬件装置。被称为“DCIM SP”的DCIM装置12的基本实施方式可以替换现有的服务处理管理器(SPM)硬件。DCIM SP可以具有至少两个特定的端口配置,一个具有24IP端口且另一个具有40IP。两个版本可以包括至少八个专用串行端口。针对每一个,IP端口可以与网络接口端口隔离并且用作两层交换机。该布置保持当前SPM的配置。众多的IP端口和八个专用串行端口提供如下装置:该装置可以服务于服务处理器的整个机架并且还可以提供机架中的电源板和基于串口的交换机的控制。除这两种物理端口SPM变体之外,存在仅具有主网络端口而不具有任何后面板端口的逻辑版本,DCIM SP逻辑型。
除DCIM SP实施方式之外,DCIM装置12可以具有被称为“DCIM分支8(DCIM Branch8)”、“DCIM入口(DCIM Entry)”以及“DCIM企业(DCIM Enterprise)”的至少三种较高端实施方式。DCIM装置12的该较高端组实施方式提供可以在IP连接或串行连接之间自动选择的自动感测端口。DCIM分支8不具有RDU连接,而DCIM Entry和DCIMEnterprise设备具有RDU连接。在DCIM Entry和DCIM Enterprise装置上的RDU接口模仿RDU装置的主要连接并且允许类似功能被包括在较高端DCIM设备上。较高端DCIM装置12实施方式还可以具有与提供传统的KVM功能的IQ模块对接的能力。被称为“数字机架接口插槽”(DRIP)的该IQ模块提供模拟视频的数字化、键盘和鼠标控制、以及虚拟介质访问。
DRIP的关键功能为:
■针对设备键盘和鼠标提供USB和PS/2端口;
■将模拟视频数据数字化并将其发送至DCIM装置12;
■连接至服务器的服务处理器以将IPMI数据传输至DCIM装置12;
■使得能够访问虚拟介质;以及
■实现智能卡支持。
为了支持各种硬件平台,提供有装置主机软件平台。装置主机软件平台可以基于
vServer补丁并且用作操作***(OS)虚拟化平台。这允许基于
操作***的应用以在DCIM装置12主机平台之上的最小改变而运行。以此方式建立DCIM装置12使得将各个技术结合为单个装置所必需的变化最小化。这还有利于组能够专注于它们的核心功能而不用确收DCIM装置12主机平台的细节。
DCIM装置12软件架构的高度期望特征在于,即使完成的设备可能是根据若干底层的不同软件应用程序构建的,该架构也使得完成的设备看起来像单个内聚性装置。为了实现这一点,可以建立主机***以提供若干***功能,该若干***功能在外部用户与内部客户应用之间提供网关。这些包括许可、认证、授权、审计(AAA)以及用户接口。这些功能采用外部输入并且将其映射到正确的应用上而不要用户需要底层架构的任何知识。例如,当用户向DCIM装置12认证时,AAA功能可以向客户应用中的每个通知该用户是有效的。用户不需要向每个客户应用进行认证。另外的主机件可以包括例如
核、基本文件***和硬件组件驱动程序支持等物。DCIM装置12中的每个还可以寄放可管理子***(MSS)软件引擎(将结合图5进行论述)。
总之,在下面的表格中示出用于两种DCIM平台,即平台“A”和“B”的六种不同配置。
DCIM软件集
模块的DCIM软件集12a是模块化且可扩展的,并且被设计成使数据中心的操作、管理、配置或扩展无缝且简单。图4中示出模块的DCIM软件集12a的一个示例,其可以包括:库存管理器14、设施管理器16、场景规划器(Scenario Planner)18、改变规划器20、改变管理器22、操作管理器24、事件监视器26、虚拟化管理器28(和潜在的机架电源管理器以及配置管理器30)。这些模块彼此无缝地集成并提供丰富的用户接口,具有通过组合使用可用设施来拖放项目、显示资产和报告数据的高保真图像、以及对特定用户的视图进行编译的能力。
DCIM软件集12a具有足够的灵活性,以提供从操作***和数据库到网络浏览器接口的多个不同领域中的***管理员的偏好。软件模块可以安装在
服务器、
服务器或
服务器上,并且可能安装在其他品牌服务器上。
SQL和
数据库均被支持。为了访问软件模块,各种市售可用操作***和网络浏览器均被支持。
对于使用艾默生网络电源或
公司的现有产品(例如,
的数据中心资源管理***、
Site
集中监视和控制***或
MergePoint
TM基础设施资源管理器(AMIE)软件)的管理员,DCIM软件集12a支持数据的迁移。这些数据可以包括所有的资产和规划数据、相关联的项目和符号库。可以手动触发导入,但将不需要任何资产、安置、计划或项目数据从AMIE到DCIM软件集的模块的手动映射。在下面的页面中详细地描述各个DCIM软件集12a软件模块。
DCIM库存管理器模块14
库存管理器模块14管理构成装备的数据中心库存的DCIM记录。通常,数据中心管理员和网站技术人员通过各种手段(例如,电子表格、文档、图形文件、金融***、提单等)来管理装备列表。这些都不是理想的方法,其趋于特设格式且不精确,并且经常过期。它们也没有及时地提供关于物理装备位于哪里及其目的的信息的访问。DCIM库存管理器模块14使用给出数据中心的整个库存的清晰画面的***,使用IT资产(例如,服务器和交换机)与关键基础设施装备(如配电单元(“PDU”)和不间断电源(“UPS”))的装备计数,来替换所有这些特设方法。其允许用户快速地看见装备所在的地方,并给出功率和空间使用量的总计。
为了做到这一点,DCIM库存管理器模块14可以依靠导入软件功能和特定视图,例如:1)导入功能,其从各种源提取装备记录并且将来自这些源的信息组合成一个完整的数据集;2)地理视图,其允许用户提供数据中心装置的全球位置并且深入到示出更详细的位置视图,例如校园视图、区域视图、建筑物的图片等;3)文本和图形的库存列表,其为用于“放置”和“未放置”(尚未被分配位置的项目)库存的文本视图;4)数据中心组合视图,其列出由***所管理的数据中心;5)用于“放置”库存(已经被分配位置的项目)的平面图和立体视图;6)工作区,其允许用户组合来自其他视图的图形和数据元素,以给他们关键信息的“仪表板”,用户可以随时参考该“仪表板”;以及7)层,其允许用户在库存管理器图形绘图内看见来自其他应用的信息。
DCIM库存管理器模块14能够创建、更新和删除所有表示对象。这些对象包括:
IT空间–IT装备所位于和安置的地区,并且在更精细的层面上,装备被安装的地区。
地面–包含一个或更多个数据中心空间并且与建筑物中的地面相关的地区。
数据中心–被设计为安置并运行IT装备的地区。典型的数据中心具有提升的地面空间以及专用的电源和冷却装备。
空间–直接安装IT装备的数据中心地面的区域。典型的数据中心空间具有提升的地面和用于安置装备的机架,并且被保护免未授权的进入。
地带–数据中心的由客户定义的地理地区,其允许在全部数据中心的地区内对容量和资源使用量制表。在我们的定义中,地带是数据中心地面内的一个连续空间。
其他空间(通道、自由空间)–其是当其被从总数据中心空间中扣除时,允许计算可用的数据中心空间的空间。
企业–关于被追踪以给出用于整个数据中心组合的背景的企业以及关于管理这些企业的团队的信息。可以在软件中的全球层面上追踪企业信息。
IT装备–其可以包括用于数据处理、通信和存储的直接目的所有装备,以及用于安置它们的装备。这包括:机架、工作台(bench)、货架式存储部、数据柜;服务器、网络装置;符号,占位符;以及传感器装备。
关键基础设施–其可以包括支持用于数据中心空间的冷却和配电的所有设备,包括:本地公用事业接入仪表、浪涌保护设备、变压器、开关柜(HV/MV/LV)、发电机、不间断电源***(UPS)、能量存储设备和***(例如,电池、飞轮储能、燃料电池)、电源断开器(例如,电路断路器、开关/电力联络线)、静电转移开关、地板安装PDU***、电源板、远程电源板、母线槽配电、突击手(commando)插座、机架PDU、太阳能电池板、冷却塔、冷却装置、泵、节省原料的装置(水/空气)、地板安装机房空调(CRAC)、排状CRAC、冷凝器、热交换机以及蓄水池(储水池)。
DCIM配置管理器模块30
DCIM配置管理器模块30扩展由DCIM库存管理器模块14所提供的DCIM记录的管理。DCIM配置管理器模块30消费DCIM库存管理器模块14的能力,将它们扩展为管理所选择的资产之间的关系。这些关系可以包括但不限于连接、逻辑组和冗余度。为了做到这一点,DCIM配置管理器模块30可以并入各种特征,例如:
■连接视图,其允许用户查看在任意放置的资产之间的连接的细节。这可以包括拓扑结构、端对端追踪、依赖关系和冗余度;
■面板进度表,其允许用户查看面板的细节以及该面板内的断路器的细节;
■报警能力,其允许用户针对计划、组或资产来指定阈值,并就违背该阈值的消费发出警报;
■可定制视图,其允许用户定制他们希望使用和浏览的应用数据的视图;以及
■网络服务接口,其允许用户对来自外部软件实体的应用数据进行操作。
DCIM设施管理器模块16
DCIM设施管理器模块16为关键基础设施装备提供完整的性能利用和事件管理能力。其提供在数据中心地面上的装备和机架以及周围装备室的现实、虚拟视图,以及电源***的基础电气主原理图与冷却***的管路和仪表图。其还可以提供装备维护特征以协助维护追踪、调度和装备调试。通过提供所设计的电源和冷却基础设施的***视图,DCIM设施管理器模块16允许用户查看每个装备的功率消费和冷却能力(在使用中和滞留时的两种情况下),或在***层面上查看。另外,其可以让用户在电源和冷却***上储备负载块,并且基于历史的容量使用将电源和冷却容量需要投射到未来。
设施管理器模块16可以文本地且图形地提供允许用户更好地理解和管理数据中心基础设施的大量有用视图。DCIM设施管理器模块16可以显示平面图、电气原理图、空气分布以及管路和仪表图。DCIM设施管理器模块16可以提供基础设施装备的各个元素或组的实时性能状态。如果装备支持,图中的每个项目均允许用户启动下列动作或控制操作:
■开启/关闭特定的装备/设备(如果适用);
■改变用户配置项目(例如,设置点、标签);以及
■查看每件装备/设备的详细信息。
除了主视图,DCIM设施管理器模块16可以具有至少三个独立的仪表板视图,以给用户数据中心基础设施中的实时操作的总体图景。“产业效率仪表板”可以显示数据中心的能量消费的标准效率量度(如PUE/DCIE)。“公用事业消费仪表板”可以显示总功率负载(kW)、总冷却负载、耗水量(如果可适用)以及总公用事业成本。“容量仪表板”可以显示每种类型的数据中心装备的总容量的细分(例如,所有地板安装PDU的当前容量),以及数据中心的电源和冷却***的滞留容量的细分。
DCIM设施管理器模块16还提供显著的可伸缩性,例如支持多达5000(或可能更多)个关键基础设施装备和仪表设备,每个具有至少200个数据点的大概数目。装备数据(除事件之外的所有参数)也可以最小时间间隔(例如每五分钟)进行查询。该数据的一些示例可以包括温度、UPS的百分比负载、电路断路器状态,这里仅列举了几个示例性度量。
场景规划器模块18
DCIM场景规划器模块18提供对在数据中心中的未来资源使用量的成本效益场景进行建立和比较的能力。其可以利用来自数据中心基础设施管理应用和现实世界测量的信息以映射资源使用量的精确历史,并且投射增长或下降的未来趋势。使用DCIM场景规划器模块18,数据中心管理员和容量规划器可以确定最好的行动方案。无论其意味着安装应当被废弃和加固,或建立新的安装,DCIM场景规划器模块18允许顾客对未来数据中心使用量的不同场景进行比较和对比。可以比较技术更新、数据中心空间内密度的增加、用于更高效的能量使用的关键基础设施的升级以及对IT的测定需要的影响,以用尽可能低的成本建立满足服务水平的行动计划。一旦已经确定了行动的方针,则DCIM场景规划器模块18辅助用于管理的计划的沟通。可以包括在DCIM场景规划器模块18中的软件能力包括但不限于以下中的一个或更多个:
■采集并了解总的全球数据中心基础设施资源的过去趋势的能力;
■将过去的总使用量趋势投射到未来以全面地预测基本的基础设施需要的能力;
■针对基础设施需要实施“假设分析”场景规划,并评估数据中心移动、添加、解除以及整合的影响的能力;以及
■针对项目管路管理建立工作流过程的能力,包括技术专家和***所有者的细化以及业务管理员的批准。
DCIM改变规划器模块20
DCIM改变规划器模块20允许用户在数据中心基础设施中规划并实施改变。为了做到这一点,DCIM改变规划器模块20可以依靠:
■规划视图,其允许用户看见所规划的项目的细节;
■时间线,其允许用户看见所有项目中的针对所选择的资产所规划的改变;以及
■警报能力,其允许在任务完成时通知用户。
DCIM改变规划器模块20允许用户创建任意数量的项目,管理这些项目并且通过它们导航。用户可以向项目分配名称、标签、描述、目标完成日期和所有者,并且还可以向项目分配各个任务。一旦已经创建了项目,则其细节可以以日历格式显现,其中更多细节对于任何选定的项目或任务是可用的。通过移动项目日期、删除任务或添加任务可以编辑项目,并且项目可以被删除。除特定任务之外,用户可以分配与模块中任何特定放置的资产无关的通用任务。DCIM改变规划器模块20还允许用户在项目中分配并查看其他任务的依赖性。使用创建并管理多个项目的能力,项目之间可能出现冲突,但是DCIM改变规划器模块20允许用户查看冲突及其严重性,并且通过改变项目的参数来解决冲突。
一旦创建了项目并分配了任务,则DCIM改变规划器模块20允许用户查看该项目的时间线以及与受项目影响的任何资产相关联的改变。通过被示出在项目的生命周期期间计划发生的各种改变状态的资产,用户可以看见所选择的资产(例如,机架)的视图。DCIM改变规划器模块20也可以显示在项目期间要实施的工作的视图,其通过选择的日期而被着色,这允许时间线向IT人显示针对任何选择的资产在给定日期发生什么事。
对于给定项目,DCIM改变规划器模块20还允许用户记录所有的项目活动,并通知该活动的所有受影响人员。一旦用户的所分配的任务或项目已被创建、编辑、具有冲突或者被标记为已完成,则通过电子邮件通知用户。另外,用户可以创建定制报告、以标准格式从外部源导入项目信息以及将项目信息导出至PDF或电子数据表格以用于外部用途。
DCIM改变管理器模块22
DCIM改变管理器模块22扩展DCIM改变规划器模块20的规划和实施能力,以对项目施加预定义过程或工作流并且向项目成员传达过程和决定。为了做到这一点,DCIM改变管理器模块22可以依赖于以下的软件功能和专业视图:
■模板工作流过程,其允许工作流设计者设计并发布要由未来项目使用的工作流过程。
■与DCIM模块的交互,其允许工作流过程与DCIM模块进行交互以验证某些所需的动作已经完成。
■支持与第三方IT***的集成,以允许设计者对允许外部源询问应用数据的接口进行配置并启动工作流过程。
■工作流过程中的人机交互,其允许用户与从模板创建的过程进行交互。
DCIM改变管理器模块22提供创建项目模板的能力,该项目模板具有由DCIM改变规划器模块20所提供的较低级别任务支持的用户定义的高级别动作。在需要时项目模板可以用于创建项目,其中项目可以按照模板预定义步骤完成。模板可以包含但不限于:
■与安装的库存管理器模块相关的预定义高级别任务(例如,“移动服务器”或“添加连接”)。
■用户定义的任务类别(例如,“移动”、“添加”)。
■现有工作流模板的触发点。
一旦创建了模板,则用户可以分配在模板中使用的角色。用户向角色分配名称、描述和标签,并可以分配其他用户。DCIM改变管理器模块22允许用户被分配到多个角色(如果必要的话)。除角色之外,用户可以创建工作流程序,并且向每个工作流分配名称、描述和标签。一旦创建了工作流,则可以添加步骤(无论是用户定义的还是预定义的)并且可以向每个步骤分配特定用户或角色。为了添加另外的细节,用户可以对每个步骤定义规则,例如进入和退出标准。步骤可以被链接在一起以定义进程,并且通过一些步骤可以创建子过程。
一旦用户已建立了工作流,他/她可以模拟实施的“运行”以识别任何错误并验证工作流。用户还可以针对各种工作流事件建立定制的通知。DCIM改变管理器模块22允许用户这样做,并将会在任务开始、完成时或任何其他工作流事件发生时将通知传播至参与者。
DCIM操作管理器模块24
DCIM操作管理器模块24将现实世界信息与管理数据中心基础设施配置相结合。其提供接口以测量数据中心基础设施的性能和利用率并且显示机架中当前可用的净空,使得可以实现装备的适当放置。DCIM操作管理器模块24可以连接到来自MSS服务的实时数据馈送(针对功率和温度),以对性能准则进行比较和验证并且设计在配置管理器模块30功能中建立的标准。
DCIM操作管理器模块24也可以用于使功率、冷却和空间容量最优化,以带来数据中心基础设施资源的整体最优化。该模块解决的商业问题围绕电源和冷却的管理。通常由数据中心管理员维护功率和冷却的大的缓冲区,以保护***免受由于功率尖峰和增加使用量期间导致的断供。用于储备的缓冲区的量通常没有被有效地管理。减少这些缓冲区使得能够更好地利用资源。例如,更多的装备可以被放置在一个或更多个装备机架中,同时充足的功率和冷却需要仍然满足所有装备项。
本产品的一个重要特征是其提供了一种自然且高雅的方式来查看关于数据中心的监视信息,在该监视信息中有大量信息由许多***以多种不同格式生成。处理所有的这些数据并且以有用的形式看见它的结果使得可以更精确地理解数据中心环境的操作,更好地理解能量使用的真实成本,使数据中心中的投资最大化,从而确保IT的7天24小时不间断操作。
软件功能从针对DCIM配置管理器模块30和DCIM库存管理器模块14所定义的那些得到。如本文中所列举的,DCIM操作管理器模块24向如本文中所列举的DCIM配置管理器模块30功能增加新特征。然而,可能存在针对DCIM操作管理器模块24所定义的另外的软件设施,例如但不限于:
■用于监测实时数据馈送的仪表板。
■显示温度传感器的输出和冷却参数(如气流)的另外的可视化。
DCIM事件监视模块26
DCIM事件监视模块26提供一种用于管理警报的易于理解的***。其提供单个统一视图,以监视用于跨越用户的整个企业的关键基础设施装备的警报。相关信息以简单的图形化方式呈现,使其易于理解并快速响应。DCIM事件监视模块26允许用户进行但不限于如下操作:
■保持服务水平协议(SLA)。
■保持业务关键的IT基础设施可用并在线。
■维护关键基础设施***的冗余度。
■对已经发生的动作进行确收和验证。
DCIM虚拟化管理器模块28
DCIM虚拟化管理器模块28提供在数据中心中管理虚拟基础设施的工具。其有助于将物理机与虚拟机进行映射,管理虚拟机并且为了易于管理而将虚拟机分组。DCIM虚拟化管理器模块28可以将信息中继至DCIM操作管理器模块24以用于与虚拟化管理服务器(如VMware虚拟中心管理服务器)对接。然后,DCIM操作管理器模块24可以自动发现主机和虚拟机,将该信息中继回DCIM虚拟化管理器模块28。使用这些信息,用户可以以周期性的预定义时间间隔指定在虚拟化管理和虚拟化管理服务器之间的虚拟化基础设施信息的同步调度。用户还可以需要的基础上从DCIM虚拟化管理器模块28启动同步。
使用同步的虚拟化库存,用户可以以图形格式查看库存。DCIM虚拟化管理器模块28可以对照物理库存或服务器图形地描绘虚拟机,以示出哪些虚拟机被安置于何处。另外,DCIM虚拟化管理器模块28可以提供:簇视图(以各种簇示出虚拟机的组)、与虚拟机相关联的服务器的虚拟列表、以及允许用户找出他/她想要管理的特定虚拟机、簇或服务器的搜索特征。当用户选择正确的虚拟机时,DCIM虚拟化管理器模块28提供通过启动虚拟化提供商的远程控制台、网络浏览器或来自虚拟机的RDP来访问虚拟机控制台的能力。
DCIM解决方案10的另外的细节
参照图5,可以看见DCIM解决方案10的一个示例的各个组件。DCIM解决方案10的架构包含以下高级别组件。在下面的论述中将更详细地描述每个组件。
呈现用户接口(UI)32–这些组件表示用于各个应用和用于平台的人机接口。通用平台34包含允许各个应用和平台***用户接口组件的基于网络的控制台框架。呈现UI32消耗由提供实际业务功能的服务层36暴露的通用接口。从逻辑上讲,呈现UI32可以被分为两层:客户层38,其通常驻留在网络浏览器内并且以模型-视图-控制器架构来表示“视图”;以及服务器层40,其通常表示控制器。
企业服务总线(ESB)–ENP通用平台42包含企业服务总线414,该企业服务总线44为商业服务提供容器,并且提供服务之间的消息的智能路由。该架构假定在呈现UI32层(具体地,控制器40)与ESB44之间的通信可以为SOAP(简单对象访问协议)/HTTP(超文本传输协议),然而基于特定的应用设计要求也可以使用其他传输。
应用服务36–这些可以是提供产品应用功能的个人和/或组合服务。服务组合是共同组成的服务的聚合以使特定的任务或业务处理自动化。这些服务36可以由私人服务和公共服务两者构成。公共服务在ESB44上显露并且可用于其他应用来消费。这些应用服务36可以使用领域模型46(例如,通过Java)来访问对于产品领域特定的业务对象。
通用平台服务48–这些都是被设置为ENP通用平台42的一部分的实用服务,并且可以是个别服务或组合服务。ENP通用平台42提供很可能被任何产品使用的这些服务,并且可以包括如认证、授权和审计等的服务。这些服务可配置为使得产品线架构(PLA)可以针对给定的PLA来选择要包括哪些服务。对于最大的可扩展性,这些服务应当是数据驱动的,使得它们也可以通过添加特定于领域的知识(例如,对于给定领域独特的新事件类型)而是可扩展的。
MSS服务50–这些是通过分布式实时框架来提供对被管理单元(或被管理设备)的管理(例如,发现、数据获取、命令和控制)的组合服务。MSS(可管理子***)服务50与DCIM装置12进行交互以执行数据获取并将所获取的数据存储在时间序列数据库52和通用数据模型存储库CDMR54中。
时间序列数据库(TSD)52–时间序列数据库52进行操作以存留从MSS服务50发送的遥测数据。
DCIM装置12–DCIM装置12(或装置12)形成作为被管理装备或被管理设备的触摸点的硬件装置。每个DCIM装置12可以加载有包括KVM、串行、服务处理器和用于数据获取的“MSS引擎”56的若干软件应用。
MSS引擎56–MSS引擎56可以是软件组件,该软件组件可以被部署在每个DCIM装置12上以获取度量数据并对由每个DCIM装置12处理的被管理装备执行管理(例如,发现、数据获取、命令和控制)。MSS引擎56将数据馈送到MSS服务50以将数据存储到时间序列数据库52和CDMR54中。
被管理装备(或被管理设备或被管理组件)–表示可寻址并且可以被管理(即,以某种方式受控)和/或监视的实体(例如,“设备”)。
领域模型46–领域模型46提供跨越所有应用(例如,允许对应用特定的定制领域类的共享可扩展库)的领域概念的通用定义。在一个示例中,领域模型46可以被表示为原始的Java对象。其还向MSS服务50委派可管理性旋钮和表盘型操作。
通用数据模型存储库(CDMR)54–CDMR54形成负责于创建并存留领域模型对象的存储库。CDMR54隐藏初始化领域对象的复杂性并且隐藏永久性子***58。
DCIM数据存储部60–DCIM数据存储部60可以是存留所定义的领域对象和与这些领域对象相关联的其他配置信息的SQL数据库。DCIM数据存储部60可以与永久性子***58通信。
集成服务62–被部署为支持与第三方应用集成的组合服务。
第三方应用–可以与ENP通用平台42集成的外部应用,例如,Hewlett-Packard OpenView软件、CiscoWorks LAN管理解决方案工具、EMC公司的EMC智能应用发现管理器(ADM)。
技术联盟-紧密集成并且实现闭合循环控制***的关键技术联盟(对于爱默生内部的与外部)的开发。技术联盟具有:
艾默生网络能源产品:Liebert电源和冷却产品,将DCIM组件嵌入到被管理设备和元件内以允许各种Liebert产品的发现、监测和控制。
外部技术联盟(例如,Cisco、EMC和VMware),将DCIM组件嵌入到被管理设备和元件中,以提供关于服务器工作负载以及集成电源和冷却消耗的详细信息。
所有组件可以被部署在同一台服务器上,但出于可伸缩性和冗余度的目的,DCIM解决方案10足够灵活以允许主要组件被放置在分立的服务器上(例如,客户端、应用服务器、数据库服务器、报表服务器等)。
以下是DCIM解决方案10的各种组件的进一步论述。
领域模型/CDMR
参见图6,领域模型46可以被示为表示数据中心基础设施实体的Java类与那些实体所存在的背景的集合。另外,领域模型46可以表示用户、软件许可证和其他相关联的数据中心基础设施管理(DCIM)实体。这些可以被示为“事实”。这些事实由应用和服务使用。
通用数据模型可以在所有的DCIM的应用模块14至30中共享。各个产品通常扩展DCIM产品线的共享通用数据模型。CDMR54将Java类实例映射到永久存储部(在关系数据库中,如DCIM数据存储60),并且强制执行授权、隔离租户、检查完整性约束等。由CDMR可以解决各种横切关注点。
领域模型46是用于表示实体(在管理下)、实体之间的关系、以及关于实体的政策等的领域类的集合。领域模型46建立用于表示DCIM领域内的所有已知“事实”的协定。然后,这些“事实”在DCIM产品线内的所有产品中共享。
参照图7,CDMR54表示针对管理下的实体的监督控制和数据获取(SCADA)解决方案。该接口被紧密耦接到领域对象。CDMR54支持任意组的领域类(其构成领域模型)。CDMR54协调并发的对象修改,支持领域对象存留,并提供了大量其他支持服务(如对象标识符(OID)生成常规/机制)。另外,CDMR54提供可以通过领域类开发者来号召以解决横切关注点(像授权决议/强制执行、多租户检查、易失属性访问等)的一套设施。
对于大多数目的,DCIM领域模型46隐藏由MSS服务50和MSS引擎56形成的可管理子***(MSS)62(将结合图8进一步论述)。通过领域模型46发起命令和控制操作并且根据需要委派给MSS子***62。
在DCIM领域模型46的覆盖下,MSS引擎56可以重新使用支持CDMR的DCIM领域模型46。这避免了以下需要:设计领域模型信息的区别表示;以及然后将该区别表示映射到(以及映射出)支持CDMR54的DCIM领域模型46。这也允许MSS引擎56重新使用CDMR54,以最终(最接近设备和最新的)检查授权政策、多租户政策、完整性政策等。为了支持多个网络运营中心,各个和每个CDMR54实例可以参与渴望(ASAP)的最终一致性制度。
上述讨论说明了在DCIM领域对象与跨领域模型使用的领域对象之间的区别。以上,跨领域模型应用的领域对象被称为“管理领域对象”。本质上,这些就是描述其他领域对象的一些方面(例如,(关于领域对象de1)授权政策、(关于领域对象的)多租户政策、用户定义的性质(UDP-与领域对象相关联)等)的领域对象。
从字面上理解,所描绘的“管理领域对象”是由“平台”本身贡献的领域模型对象。更具体地,所示出的示例由平台的CDMR54组件贡献(以及潜在地需要)。
所描述的库和工具可以包括CDMR54。所描述的库和工具中的第一种可以是用于生成全球唯一标识符(GUIDS)以用作对象标识符的可重新使用的(JAVA)库。其他库可以帮助解决/强制执行访问控制(如授权)、多租户控制、用户定义的性质管理、系列化(例如,通用、反射驱动、格式化)等。从此意义上说,在领域模型46的类实施与CDMR54之间的分界线有点模糊。其可被认为是某种虚线。然而,所有的应用/服务逻辑应当与在领域类接口的覆盖下发生的任何事强有力地绝缘。这有效地提高了实现应用/服务逻辑的抽象层次。
交互需要
领域模型46和其支持的CDMR54提供在DCIM产品线共享的存储不可知数据。另外,领域模型/CDMR二者处理与数据访问、可管理子***(MSS)62的适当任务的委派、数据变化触发/回调等有关的横切关注点。领域模型46消费者是应用服务、通用平台服务以及甚至是可管理子***62。MSS服务50将发现信息(如领域模型46类的新实例(存储在CDMR54中))进行中继。领域模型46可以表示单一可信来源以及单一历史来源。
应用和服务36–根据需要来支持应用特征的CRUD(增删改查)领域对象。
报告数据访问64–出于报告的目的而对领域对象进行只读访问。对于所选择的报表引擎66,这需要“数据提供者”。
管理UI68–定义访问政策、多租户政策、完整性约束政策和其他政策的CRUD管理领域对象。这些政策对横切关注点的处理进行配置和驱动。
可管理子***62委派–与领域对象相关联的一些操作(例如,命令、控制等)应当被委派至可管理子***62以用于最终实施。目前,易失性数据访问(针对传感器读取等)也应当被委派至可管理子***62以用于实时提取(与最新的值/估计查找相反)。
ORM/RDBMS60访问–领域对象通过对象关系映射技术(层70)被存留到RDBMS60。对底层RDBMS60的直接访问是领域模型46(和支持的CDMR54)层的规避。对于应用/服务水平逻辑,底层RDBMS60层的直接访问将会是严重的架构违背。
另一方面,领域模型46和CDMR54是有意扩展的,与逻辑相关的领域类的特定比特最好应当通过手动的SQL、存储过程等来实施。当面临一些比较少见但最具挑战性的实施需要时,可能必需在应用级别、领域模型级别以及甚至CDMR/ORM/RDBMS的级别上对实施逻辑进行分布。
重新使用
DCIM产品线的通用数据模型利用在
Vista、
MergePoint
TM基础设施资源管理器(AMIE)、信息技术运营管理(ITOM)库原型、DSView等中使用的表示模型中体现的领域知识。通用数据模型还可以利用行业标准的某些方面,如分布式管理任务组(DMTF)的通用信息模型(CIM)。
CDMR54可以基于行业标准(SQL99)关系数据库管理***(RDBMS)。
在领域模型46内的一些最重要的领域类向可管理子***62委派可管理操作。另外,可管理子***62将关于领域类的实例的发现/存在信息馈送到领域模型46中。用于像相关事件过滤之类的事件的某些政策也被委派到可管理子***62以用于分布式处理(接近此类事件的源)。
可管理子***
在图8中更详细地示出由附图标记62表示的可管理子***。可管理子***62提供发现并控制爱默生和非艾默生设备,以及采集并分析来自那些设备的实时数据的能力。可管理子***62可以由三个主要领域组成:
MSS服务50–在平台42上显露公共服务,以向应用和领域模型46通过可管理子***62特征的访问,该特征如检索已经随时间采集的历史数据点以及按需直接从终端设备检索数据点。可管理子***62提供用于在平台42和MSS引擎56之间进行通信的私人服务。
TSD52(时间序列数据库)–存储已经随时间采集的历史数据点。应用和领域模型46可以通过在平台42上显露的公共接口来检索这些数据点。
可管理子***62
MSS引擎56–其可以是在DCIM装置12中运行的软件,以提供
和非爱默生设备的发现和控制以及来自这些设备的实时数据的采集和分析。MSS引擎56可以包含用于如何与
和非爱默生设备进行通信的知识。MSS引擎56与在平台42上运行的MSS服务50通信。多个MSS引擎56可以被部署在客户环境中,以在要支持的被管理设备的数量增长时提供可伸缩性。每个MSS引擎56可以使用复杂事件处理器(CEP)56a以确保实时数据聚合和相关。时间序列数据库56b可以与每个MSS引擎56相关联以用于存储所采集的实时数据。以下部分简要地描述具有领域模型46和MSS引擎56/DCIM装置12的可管理子***62组件。
引擎管理–引擎管理服务71提供对表示MSS引擎56的领域模型对象和相关对象(如产品知识和插件)进行管理的能力。此服务还提供对DCIM解决方案10的MSS引擎56进行添加、更新和管理的能力。
数据点–数据点服务72提供访问所采集的度量数据以及对与数据点采集、聚合和分析有关的规则进行配置的能力。
基础设施–基础设施服务74提供管理MSS引擎56的基础设施(设备、容器、关系、采集规则、聚合规则和分析规则)的能力。基础设施服务74使领域模型46(和支持CDMR54)与MSS引擎56之间的基础设施对象保持同步。随着对平台42上的领域模型对象进行改变和添加,使必要的信息与MSS引擎56同步。基础设施服务74服务还处理由MSS引擎56所发现的新的和更新的设备/关系与平台42的领域模型46的同步。
发现–发现服务76提供管理发现参数的能力,并且还提供用于执行按需发现的手段。MSS引擎56实际上基于这些配置的发现参数来执行按需发现和后台发现活动。
命令–命令服务78提供在设备上执行命令(如关闭电源和打开电源)的能力。MSS引擎56实际处理将必要的命令发送到设备或装置以引起设备上的期望动作。
事件接收器–事件接收器80服务对从一个或更多个MSS引擎56所接的主动提供的事件进行处理。这些事件根据需要被转换以匹配平台42的领域模型46定义,然后这些事件被运送至平台42的事件***。
路由器–路由器组件82处理MSS服务50与MSS引擎56之间的请求的路由选择。对于来自MSS服务50的请求,该组件确定适当的MSS引擎56来处理请求,如按需发现请求或关闭电源请求。对于来自MSS引擎56的要求,该组件确定适当的MSS服务50来处理请求。
SiteWeb协议–SiteWeb协议组件84执行专有的SiteWeb协议并且提供在MSS组件与MSS引擎56/DCIM装置12之间的通信。
TSD聚合器–TSD聚合器服务86与TSD60进行通信,以执行跨越由多于一个的MSS引擎56管理的设备的基础设施容器的聚合。聚合规则定义如何聚合数据并且将结果存储在TSD60中。
视频–视频服务90提供用于对在MSS引擎56中存储或捕集的视频内容进行检索的能力。视频数据可以从MSS引擎56流到消费者。
实时数据–实时数据服务92提供以流媒体/持续的方式实时地从MSS引擎56检索度量值的能力。实时数据可以从MSS引擎56流到消费者。
TSD–TSD服务88提供对表示TSD60的领域模型对象进行管理的能力和对TSD60进行配置的能力。
设备管理–设备管理服务94提供用于执行升级、配置和管理设备的能力。
交互需要
MSS服务50通过由领域模型46显露的Java接口来操作领域对象,以用于数据存留和访问。这使得能够进行以下操作:
○提供领域对象的基本的创建、更新、删除和询;
○允许由MSS引擎56的发现所识别的新的或更新的领域对象的同步;
○允许在平台42与MSS引擎56之间的领域对象的同步;以及
○允许访问规则以控制数据聚合和数据分析。
领域模型46中的领域对象的委派方法可以通过企业服务总线(ESB)44使用SOAP来消费公共MSS服务50。这些委托方法可以用于执行下列活动:
○执行命令,如关闭电源;
○检索历史度量值;
○检索按需度量值;以及
○执行按需发现操作。
公共和私人MSS服务50使用路由器组件82以将请求路由到适当的MSS引擎56。
MSS服务50通过ESB44使用SOAP来消费平台42的CPS平台服务。出于以下原因,可以消费CPS平台服务。
○消费授权服务以确定用于强制执行由MSS服务50提供的功能的必要权利;
○消费许可服务以确定什么功能可以由MSS服务使用;
○消费事件服务以用于发布事件;以及
○消费事件服务以用于基于事件来登记通知。
MSS服务50可以使用适当通信组件与MSS引擎56通信。
MSS服务50使用适当的通信组件与DCIM装置12上的MSS引擎56进行交互,以实现以下功能。
○命令执行;
○发现;
○数据采集;
○固件升级;以及
○配置。
MSS UI96通过HTTP与表示服务器40(即,其控制器)进行交互,并且控制器使用SOAP或另一适当协议(例如,通过ESB44)与MSS服务50进行交互。
应用服务36(图5)通过来自MSS服务50的发布/订阅机制来消费视频和实时数据流。从MSS引擎56检索视频和实时数据流。
DCIM装置
在图9的一种实施方式中示出DCIM装置12。DCIM装置12提供MSS引擎56的能力,因此在DCIM解决方案10应用层与正在管理的实际基础设施设备之间提供网关。DCIM装置12还提供允许其在独立环境中提供设备管理的行业标准接口(例如,WebGUI、基于SSH/Telnet的CLI、和SMASH/CLP)的集合。外部接口被有意限制为提供可用于DCIM应用集的总功能的子集。还存在有可以用于访问目的的Avocent特定协议,Avocent特定协议当前被DSView消费并且最终可以被用于基于DCIM的访问应用。
DCIM装置的架构
DCIM装置12的详细架构可以被认为是(在较高水平上)被分割为三个主要领域的***,这三个主要领域包括:1)装置框架12a;2)可管理单元12b/访问应用12c;以及3)用户接口12d。
装置框架12a提供一组公共服务,例如数据库管理、认证及可以由DCIM解决方案10中的所有组件使用的其他服务。框架的另一关键部分是一组标准化的通信接口,组件可以使用该组标准化的通信接口以围绕DCIM解决方案10移动数据和消息。
“可管理单元12b”可以由知道如何与各个被管理设备和装备交谈的组件构成。被管理设备和装备的一些示例包括:
·KVM交换机;
·串行接口装置;
·配电单元(PDU);
·数字机架接口插槽;
·服务处理器;
·冷却单元;
·数字和模拟传感器;以及
·第三方设备。
该领域还包括执行各种任务但不具有任何外部接口的应用组件。MSS引擎56组件(如CEP56a和时间序列数据库56b),以及从访问装置得到一些扩展特征为应用的所有示例。
用户接口12d可以包含用户接口,例如板载WebUI、命令行接口以及用于与MSS引擎56通信的重要的MSS可管理性协议。由装置框架12a提供的通信接口允许用于UI组件的通用方法来获取数据并且将控制消息发送至各种应用和可管理性扩展。
上面描述的架构使DCIM装置12能够容易地以各种配置部署,其中该各种配置具有对在每种配置中所支持的不同数量和类型的被管理元素的支持。基于可插拔组件的该设计还允许当产品线进展时容易添加被管理设备的新类。
另外的CDMR细节
概述
CDMR54的更详细的实施方式在图10中示出,并且由附图标记100(下文中为“CDMR100”)表示。图11示出针对CDMR100的“使用情况类别”,并且图11A至图11W示出关于图11中的每种使用情况的详细信息,其将通过以下论述被引用。
如上文简要提及的,CDMR100提供在领域模型中表示的数据(即,事实)的存储和访问。CDMR100有效地形成如下库:该库提供对建立领域对象、扩展对象的支持;并且还提供将对象存留到数据库的永久层,同时本质上“隐藏”永久层以及领域层的数据库。CDMR100通过使用将关系表映射至对象的ORM层102来提供数据库的抽象性。CDMR100还将数据库的选择与较更高层对象隔离。
CDMR100提供了多个非常有用的特征。其中之一,CDMR100是领域模型“无关的”。这意味着CDMR100提供支持任意组领域类(领域模型)的能力,这使该组件能够由其他产品线使用。CDMR100还提供用于数据共享的基础。这允许多个消费者使用相同的数据,并且提供在需要时扩展数据的能力。再者,CDMR100提供对多个横切关注点的支持。一个这种横切关注点是“时间性”。在图10中的时间性层104提供有保持对象的状态(过去、现在和未来)的能力,以及检索对象在特定时间点存在时的状态的能力。CDMR100还提供授权强制执行(如图10中的层106)、租户强制执行(如图10中的层108)和定制强制执行(图10中的层109)。授权强制执行为针对不同用户强制执行用于查看和与对象相关的动作的许可的能力。租户强制执行为基于当前的租户来强制执行/限制可查看的对象的集合的能力。将理解的是,当前的“用户”和“租户”是不同的并不表示同一个。用户具有对一个或更多个租户中的对象进行查看/操作的能力。用户通常一次只能够查看一个租户中的对象,所以租户强制执行将限制向当前用户感兴趣想查看的当前租户所呈现的对象。
定制强制执行为强制执行用户定义的用于任何对象(其可以包括定制对象)的任何性质的约束的能力。JasperSoft数据源122用作针对报表引擎的数据源提供者/驱动器。这允许报表引擎从CDMR100检索数据以用于报告,并且利用由CDMR100支持的横切关注点。
CDMR100也是“关系数据库无关的”,意味着其提供以最小改变支持不同的关系数据库类型的能力。CDMR100还提供分布式并发控制,其为对多个用户访问并更新数据以及防止这些消费者进行将改写其他消费者所做的改变的改变来进行处理的能力。再者,CDMR100提供唯一标识(ID)生成(“GUID”),其为针对对象创建唯一的ID以防止用相同的ID来存储对象的能力。CDMR100还在对象被修改时通过图10中的通知层118来提供通知;换言之,在对领域模型中的对象进行改变时通知消费者的能力。
基本模型
CDMR100的基本模型特征可以提供由领域模型使用以定义用于特定领域的类的集合的一组“基本”类。这些类使CDMR100能够无关于由CDMR支持的领域模型。这些基本类还提供用于建立可以由所有的通用数据模型(CDM)消费者(例如,应用、CPS、MSS等)共享的领域模型的基础,从而允许在不同消费者之间共享信息/数据。两个这样的基本类为:1)“抽象永久对象”,根据其得到所有的类,并且其实例将是永久性的且不扩展;以及2)“抽象扩展”,根据其得到所有的扩展类。图10a示出可以使用用于领域模型的定义模板来定义的一些类型的类的有限数量的示例(图10A的左侧),以及各种类中的一个类的多个实例的示例(图10A的右侧)。“复杂对象类型”类101被用作定义对象的类型的基本类。复杂对象类型的每个实例标识对象的新类型。对象的这些类型被加载到CDMR100中,并且可以在一定时期内由于改变和另外的对象类型而被更新。一个这样的对象可能是具有存储功能以及如防火墙的功能的服务器。通过“扩展”机制来处理这种多个性、多功能。“对象类别”类101b允许设计者识别对象的类别。落入特定的对象类别中的对象的类型由在对象类别101b与复杂对象类型101a线之间的线101b1识别。落入特定的对象类别101b中的对象(模仿现实世界对象的对象)的集合由在对象类别101b与复杂对象类101n之间的线101b2识别。示例可以是用于存储设备的类、用于处理设备的类或用于感测设备的类。线101b1表示聚合,这表明对象类别101b类包含(或构成有)在复杂对象类型类101a中定义的类。“物理对象类型”类101c允许针对具有具体物理大小(与非物理对象如许可相反)的物理对象(例如,服务器、PDU等)来创建类。“容量值”类101d表示物理对象类型和物理对象由容量值对象构成。这些为与物理对象类型(来自类101c)相关联的容量,因而表明容量和值的特定类型。这些容量还与如由物理对象类101p表示的物理对象(例如,具有500GB的存储容量的所有服务器)相关联。“设备类型”类101e允许设计者针对特定制造商/型号(例如,由特定制造商制造的特定型号服务器)的特定设备来定义类。设备类型将继承这些特性。根据特定设备类型创建的设备对象101q将继承来自设备类型继承层次结构(物理对象类型101c、复杂对象类型101s)的设备继承层次结构(物理对象101p、复杂对象101n)中的值。“物理对象类型侧支”类101f用于针对物理对象类型用来定义侧支类型。类101g“Dwg元素组”标识与侧支类型相关联的绘图元素。类101h定义类“设备类型开口”,其由类101f和101e两者的元素构成,并且定义与设备类型相关联的设备类型开口的集合。类101i是扩展类——“设备扩展”——其允许用户进一步指定关于类101e中的对象中的一个特定对象的某些信息。设备的扩展的示例是机架,其中机架是如下设备:其被创建有设备对象并且创建有与该设备相关联的机架扩展。机架扩展有机架具有但未在设备上发现的特定性质/属性。类101j“具体的设备扩展”继承自类101i,并且表示要定义的与设备相关联的实际扩展。
如上所提及的,图10A的右侧提供在图10A的“定义模板”侧上所定义的类的多个实例的示例。例如,类101k、101m和101b是与复杂对象类101n相关联的类。
CDMR100提供基本类如Java POJO(即,plain-old-java-object)的集合。这些基本类由领域模型使用(即,Java继承)以定义用于特定领域的领域模型类。图11A提供用于具体使用情况“UC-CDMR-DS-0002-定义领域模型类”的另外的细节,以及图11B提供用于“UC-CDMR-DS-0001-定义数据访问对象”的使用情况。CDMR100还提供基本数据访问类如Java类。这些基本数据访问类由领域模型(例如,应用服务)的消费者使用以执行数据访问操作,例如领域模型对象的查找、保存、更新和删除。这些基本数据访问类还由领域模型使用以定义特定于领域模型的数据访问功能,以及例如更专业的查找操作。
CDMR100还提供用于与基本类相关联的扩展类的手段。关于此特征的详细信息在用于使用情况“UC-CDMR DS-0003-定义扩展类”的图11C中示出。扩展类是具有方法和性质并且与另一领域模型类相关联的领域模型类。此功能提供用于表示同一现实世界对象的各种不同方面(功能和信息)来满足不同的领域模型消费者的需要的领域模型的手段。一个示例为用于将可管理子***(MSS)的信息与领域模型对象如特定设备(如服务器)关联的扩展。此扩展包含MSS所需要而通常其他通用数据模型(CDM)消费者并不需要的另外细节。
根据上述,然后将理解,CDMR100提供将对象的实例映射至永久性存储部的能力,其中的对象不仅包括数据,还包括连接和控制能力。
可扩展性
CDMR100的一个重要优点是其对“可扩展性”的支持。将理解的是,应用可能无法满足所有企业客户的“开箱即用”的需要。然而,这可以通过对应用的基本功能进行改变或通过支持扩展该应用的手段来实现。但是,针对每个客户的具体需要来改变应用的基本功能将变得昂贵且难以维持。提供用于扩展基本功能的设施几乎不昂贵并且还为该应用提供另外的灵活性。与可扩展性相关的重要关键领域是在应用扩展时保持应用的版本兼容性,使得未来的升级具有最小到无的影响或开销的能力。一些扩展(例如,向对象添加性质/字段或修改核心代码)具有不与未来升级兼容的较高风险。因此,在下面的章节所描述的,关于这些类型的扩展应当小心。基本功能的扩展被分类为以下4组:“扩展包”、“配置”、“个性化”、“定制”。这些中的每一个将在下面更详细地论述。
扩展包是被创建为更改基本功能以满足特定需要(例如,国际化、顺应性、和垂直市场)的扩展的集合。一个或更多个扩展包可以被应用于基本***以满足特定需要,并且这些必须保持用于未来升级的兼容性。这些扩展包是每个发行版的一部分并且针对功能和兼容性而被全面地测试和验证。扩展包可以由与开发基本功能的团队无关的工程团队创建,并且可以独立部署。
“配置”扩展提供由专业服务对基本功能进行配置以满足客户的特定目标的能力。这些配置的示例为:关于任何领域模型对象的性质/字段、BPEL流程的处理/流量的配置以及针对对象的另外的性质/字段的定义来定义约束的能力。配置利用更改基本功能如何操作的良好定义的控制点/陷阱。这些扩展必须保持用于未来升级的兼容性。这些类型的配置可以被保持在元数据存储部(图10中的组件110)或在配置文件中。CDMR100配置特征的详细列表如下表示:
-CDMR100提供用于针对领域模型类的任何性质要定义的性质约束的手段。这些约束可以用于定制格式、大小和有效值设置(枚举型、值的范围)。
-CDMR100提供用于领域模型类的定义性质约束的强制执行。这允许对领域模型的约束进行更改以满足特定垂直的需要而不用对领域模型进行改变。
-CDMR100提供用于与特定扩展包相关联的性质约束的手段。这考虑到在标准安装或安装后期间被与用于部署为扩展包的其他扩展组合在一起的性质约束的定义。
-CDMR100支持用于在已经定义了性质约束时能够升级所部署的***而不影响所定义的性质约束的能力。与已经被移除的性质相关联的性质约束将不再操作。这允许成功地升级***10而不对***进行另外的修改或替换。
-CDMR100支持有对由扩展包以及由客户/终端用户以性质约束不引起冲突的方式所定义的性质约束进行保持的能力。
-CDMR100支持用应用于***10的较新版本的扩展包来升级性质约束的能力。
-CDMR100可以使用元数据存储部(图10中的组件110)来存储由CDMR所使用的包括性质约束定义的配置元数据。
“个性化”的特征提供使客户/终端用户对用于单个用户或一组用户的基本功能进行更改以满足他们的需要的能力。这些个性化的示例为:改变表示/应用的外观的设置;在菜单中显示的一组值;以及用于对象的另外的性质/字段的定义。扩展必须保持用于未来升级的兼容性。如果针对对象所定义的性质/字段已经在新版本中被删除,则一些客户/终端用户的参与可以是必要的。由CDMR100提供的个性化特征的更多详细特征在下面表示:
-CDMR100提供对用户定义的性质(UDP)被添加到任何领域模型类的支持。这些UDP支持的数据类型为整数、字符串、日期和时间戳记。这些UDP提供有对与独特于的客户/部署的领域模型对象相关联或尚不存在于所提供的领域模型中的另外的数据(性质)进行定义的手段。一个示例为添加用于紧急联络信息的UDP。CDMR100提供用于使UDP与特定的扩展包相关联的手段。
-CDMR100支持用于在已经定义有UDP时能够升级所部署的***而不影响该UDP的能力。与已经被移除的领域模型类相关联的UDP将不再操作。这允许成功地升级***10而不对***10进行另外的修改或替换。
-CDMR100支持有对由扩展包以及由客户/终端用户以UDP不引起冲突的方式所定义的UDP进行保持的能力。
-CDMR100支持用应用于***10的较新版本的扩展包来升级UDP的能力。
-CDMR100提供可以由管理控制台的插件利用以配置个性化信息的接口,该个性化信息包括性质约束定义和用户定义的性质定义。这允许客户/终端用户有能力针对他们的***来配置这些个性化扩展以满足他们的特定的领域模型需要。
-CDMR100可以使用元数据存储部(图10中的组件110)来存储由CDMR所使用的包括用户定义的性质定义的个性化元数据。
“定制”扩展由图10中的框112表示,并且“定制”扩展为由专业服务或经过认证的合作伙伴作出的修改以适当地改变基本功能来满足客户的需要。这些定制的示例为用户定义的类和基本代码的修改。这些定制可以足够重要使得***的升级将需要另外的定制/更改,从而增加升级的成本。所有的定制需要被仔细地估计以确定是否应该将另外的需要结合到基本功能中以使这些定制能够通过配置或个性化实现。CDMR100提供的具体定制特征为:
-CDMR100提供对用户定义的类(UDC)的支持。这些UDC为表示现实世界对象(正如除安装后由专业服务或认证合作伙伴所定义的之外,在领域模型中所定义的任何其他对象)的类。这些UDC提供有定义另外的类以表示未在所提供的领域模型中建模的对象的手段。一个示例为添加表示应用的UDC。
-CDMR100提供对将UDC与其他领域模型类相关联/相关的支持。在UDC与其他领域模型类之间的这些关联/相关性允许***管理员/专业服务对现实世界关系进行建模,来帮助他们更好地管理和表示他们的环境。一个示例为将表示应用的UDC与托管该应用的服务器相关联。
-CDMR100支持用于在已经定义有UDC时能够升级所部署的***而不影响该UDC的能力。这允许成功地升级***10而不对***进行另外的修改或替换。
-CDMR100提供可以由管理控制台的插件利用以配置包括UDC定义的定制信息的接口。这允许由专业服务或认证合作伙伴对***10进行定制以满足客户的领域模型需要。
-CDMR100使用元数据存储部(图10中的组件110)来存储由CDMR所使用的包括用户定义的类的定制元数据。
还可以构造工具(影响分析工具)以对已经应用于所部署的***10的扩展进行估计,来识别在对***进行升级时将不会自动升级的任何区域。这将使专业服务、认证合作伙伴和客户能够知道允许***10成功升级所需要的任何另外的工作或成本。图12的图中提供不同的扩展层如何彼此相关以及它们如何可以被一起使用以更改基本功能的概述。应用的可扩展性可以跨越三个方面,其为显示、处理和数据。显示表示消费者的视图,如图形用户接口(GUI)或应用编程接口(API)。处理表示***的行为和操作,如服务和业务逻辑。数据表示由应用和消费者管理或使用以进行决策的信息/事实。图13提供***10的可以被扩展以更改所部署的解决方案的层的概述。该图还提供针对每一层的扩展的示例。在图13中,将理解的是,术语“用户”可能意味着不仅是个人,还是任何形式的消费者,例如但不限于使用CDMR100的应用。
国际化
CDMR100提供对以标准格式(UTF-8)来处理并存储数据值的支持,以能够支持国际化内容。
永久性忽略
CDMR100还结合有永久性忽略特征。永久性忽略特征使CDMR100能够忽略于被用于存留数据的数据库(图10中的组件114)的具体类型/供应商。所有的数据库具体信息可以被保持在一组文件、一般映射文件中,其基于正用于所部署的解决方案的特定数据库而转换。这允许CDMR100支持除不同映射文件之外的具有相同基本代码与可能的一些特定存储过程的数据库的需要集合,并且如果需要的话还使CDMR能够在未来如果利用其他数据库。在用于使用情况“UC-CDMR-DB-0001-安装时的数据库选择”的图11F中提供关于此特征的另外的详细信息。
对象操作
CDMR100的对象操作特征实现领域模型对象的“合并”和提升。合并为采用领域模型类的两个实例并且将它们合并成单个实例的处理。被合并的实例表示同一个现实世界对象,这可以发生的原因是可能未必存在定义实例的足够信息来确定它们表示相同的实例并且防止添加副本。这可以在不同的用户添加实例时,或在通过可管理子***的发现、数据导入或其他方面而动态地添加实例时发生。提升是将领域模型类的实例提升为较专业的实例的处理,例如物理对象被提升为设备。该情况可以发生于:在由于添加对象的用户或者可管理子***的发现、数据导入不清楚现实世界对象实际上较专业,所以该对象的实例最初被创建为较不专业的对象,后来确定该对象实际上较专业,因此需要对其进行提升的情况。CDMR100还提供对将领域模型类的实例确立或提升为较专业的领域模型类的实例的支持。该确立/提升能力提供用于以下操作的手段:由一个消费者所创建的领域模型的实例通过相同或另一消费者被确立/提升为的较专业的领域模型对象,该相同或另一消费者能够确定现有实例实际上由不同的领域模型对象表示或具有另外的扩展。CDMR100还可以提供对将领域类实例合并为单个领域类实例的支持。该合并能力提供用于解决多个领域类实例表示相同的现实世界对象的情况的方法。在图11G的“GUC-CDMR-OM-0001-对象提升”的使用情况和图11H的“UC-CDMR-OM-0002–对象合并”的使用情况中示出此功能的另外的细节。
数据完整性
由CDMR100所存留的数据的完整性对于显示、处理和使用该数据的应用和服务的完整性非常重要。CDMR100维护被存留的数据的引用完整性,并且提供对级联删除的支持。通过“维护数据的引用完整性”,其意味着CDMR100之间维持数据库(图10中的组件114)中的表之间的有效关系(外键)。级联删除支持处理与通过领域模型的消费者删除的对象相关的必要对象/信息的删除,这将消除未引用/未使用的对象被留在数据库中的情况并且还消除对象具有不再存在的对象的引用的对象的情况。所有其他数据完整性关注点可以由领域模型处理。在图11I的“UC-CDMR-DI-0001-级联删除”的使用情况中示出关于级联删除支持特征的另外的信息。
并发控制
在大的***中,多个用户或子***可以试图更新数据库中的对象。因为这些相互作用可以在多个执行线程上实现,所以其提出资源冲突和锁定的潜在问题。为了避免与该冲突(如读取旧的数据或未提交的数据)相关联的问题,建立了并发方案。“乐观锁定”的并发方案是优选地由CDMR100使用的并发方案。该方案允许多个用户读取数据,并且当用户试图进行改变时,对版本字段(也被称为“写锁定”字段)进行检查以确保自用户读取数据以来数据并没有改变。如果版本字段已经改变,那么不允许改变并且通知用户已经由另一客户进行改变。在图11J的“UC-CDMR-CC-0001-多重更新”的使用情况中示出有关此特征的另外的信息。
对象标识
每个领域模型对象均具有唯一标识,其允许用此对象标识来引用/识别该对象。重要的是,***10不对多个对象使用或分配相同的标识,这可能会导致对错误的对象进行操纵或操作。CDMR100提供针对被添加的每个领域对象生成唯一标识符的支持。这些生成的唯一标识符需要是全球唯一的,使得同一标识永远不会产生两次。CDMR100支持使用相同的唯一标识符来表示在CDMR100和MSS时间序列数据库(TSD)中的领域对象。这允许CDMR100和MSS TSD的消费者能够检索到与使用相同的唯一标识符的对象相关的信息。在图11K的“UC-CDMR-OI-0001-用唯一的ID来添加对象”的使用情况中提供此特征的另外的细节。
授权强制执行
授权是指定资源的访问权限的功能,其定义谁被授权为对哪些资源做什么。通用平台服务(CPS)提供授权的管理并且CDMR100提供通过领域模型所请求的数据的授权强制执行。CDMR100利用CPS授权服务以收集可以用于确定哪些资源可用于特定用户的信息。CDMR100提供关于领域模型数据的“创建”、“读取”、“更新”和“删除”的授权强制执行。基于特定消费者/用户的权利,这限制了提供至领域模型消费者的操作和数据的集合。CDMR100利用通用平台服务(CPS)授权服务以获取用于授权强制执行的必要的授权强制执行信息。关于此特征的另外的信息在图11L的“UC-CDMR-AE-0001-用授权强制执行来改变对象”使用情况以及在图11M的“UC-CDMR-AE-0002-用授权强制执行来检索对象”使用情况中可获得。
多租户
多租户是服务于多个客户组织(租户)的运行软件的单个实例的能力。多租户被与针对不同的客户组织建立单独的软件实例(或硬件***)的多实例对比。使用多租户,软件实例被设计为实际上划分其数据和配置使得每个客户组织与定制的虚拟软件实例一起工作。通用平台服务(CPS)提供租户的管理,并且CDMR100提供通过领域模型所请求的数据的租户强制执行(通过如图10中的层108)。CDMR100利用CPS租户服务以收集可以用于确定哪些资源可用于特定用户的信息。CDMR100提供关于领域模型数据的“创建”、“读取”、“更新”和“删除”的租户强制执行。基于特定消费者/用户的租户成员/视图,这限制了提供至领域模型消费者的操作和数据的集合。CDMR100利用通用平台服务(CPS)的租户服务以获取用于租户强制执行的必要的租户强制执行信息。关于此特征的另外的信息能够在图11N的“UC-CDMR-TE-0001-用租户强制执行改变对象”使用情况以及在图11O的“UC-CDMR-TE-0002-用租户强制执行检索对象”使用情况中获得。
时间性
时间性是记录领域模型对象和/或其性质随时间(过去、现在和未来)的状态的功能。此功能使应用能够规划领域模型的未来改变,提供有回顾过去的改变的能力,以及提供有查看领域模型的当前状态的能力。当实际时间到达所规划的改变的时间时,未来的改变并不会自动变为当前的/有效的。所有未来的改变均被保持为未来改变直到它们被明确地提交到当前时间为止。所以用于时间性的时间线不是简单的直时间线,而其实际上是如图14所示的Z-时间线。这允许一些未来/规划的改变实际上具有在过去或在未来的时间。用于CDMR100的时间性特征的可以进一步被概括如下:
-CDMR100提供在期望的时间(过去时间、未来时间、当前时间)内将领域模型对象和领域模型对象性质状态存留并保持的能力的支持。此功能提供用于使消费者在任意时间(过去、现在或未来)查看领域模型对象或其性质的方法,并且提供规划未来改变的能力。
-CDMR100提供以与访问非时间数据的方法同样简单且类似的方式访问时间数据。基本期望在于用于访问时间数据的方法应该利用一些另外的背景信息,这些另外的背景信息提供关于时间数据要被访问或操作的时间的细节。
-CDMR100支持对具有一致的性能/响应时间的时间数据进行访问的能力,该一致的性能/响应时间与针对正被访问的数据所保持的时间数据的量无关(状态/时间戳记的数量)。当与领域模型对象相关的时间数据增加时,领域模型消费者能够依赖于一致的响应时间以用于访问时间领域模型对象和领域模型对象性质。
-CDMR100提供删除未来数据改变(即,所规划的数据改变)的能力。此功能允许领域模型消费者对不再需要或期望的领域模型的所规划的未来改变进行清理/移除。
-CDMR100提供将未来的数据改变(即,所规划的数据改变)提交至当前时间的能力。此功能允许领域模型消费者表示未来的数据改变现在已经被实现并且是当前/有效的领域模型的一部分。
-CDMR100不允许多所存留的过去的领域模型对象和/或领域模型对象性质进行改变。这防止历史的改变并且保持历史时间线的完整性。
-CDMR100提供用于跟追踪所规划/未来的改变的手段,甚至在当前时间经过改变的规划/未来时间时也是如此。当到达与改变相关联的所规划/未来的时间时,未来改变不会自动转换为当前的/有效的。此功能允许领域模型消费者控制何时将未来/所规划的改变提交至当前时间,这是因为在现实世界中一些规划的变化并不一定在被期望或规划时得到实现。
-CDMR100提供用于使领域模型对象和/或领域模型对象性质为“时间”、“历史”或“永恒”的手段。“时间”对象/性质表示对象/性质的状态随时间(过去/历史、现在和未来)被完全追踪。“历史”对象/性质表示对象/性质的当前和历史状态被追踪。“永恒”对象/性质表示不提供历史或未来追踪,仅保持当前状态。这提供了用于使领域模型设计者确定如何保持对象/性质的状态的灵活性。
关于此特征的另外的信息能够在图11P的“UC-CDMR-TM-0001-改变时间对象”示出的使用情况以及在图11Q的“UC-CDMR-TM-0002-检索时间对象”中获得。
暂存区
CDMR100还可以包括如图10中的框116所示的暂存区域。暂存区域提供一种类型的“沙盒”设施,从而允许CDMR消费者以所做的更改不会影响实际的领域模型对象的方式检查并操作领域模型。一旦暂存区域中的领域模型对象被确定为准确的或其值被结合到实际的领域模型对象中,那么它们会被提交或者如果不再需要就可以被删除。CDMR100提供支持任意数量的暂存区的能力。这提供了用于使暂存区出于不同目的而被同时使用的灵活性。
CDMR100提供用于将新的领域模型对象添加至暂存区116或现有的领域模型对象的能力。这提供了用于使领域模型消费者操作现有的领域模型对象和/或新的领域模型对象而不会对当前的领域模型对象造成任何影响的灵活型。CDMR100还提供将对暂存区中的领域模型对象所进行的改变提交至当前时间的能力。此功能允许领域模型对象在暂存区中***作至它们达到质量水平的程度,然后可以将它们提交至当前的时间线。
CDMR100提供用于删除暂存区的能力。同样可以删除对在所删除的暂存区中的领域模型对象进行的改变。如果确定暂存区的内容不再被需要并且没有被规划为提交至当前时间轴,那么此功能允许删除该暂存区。CDMR100提供删除暂存区中的数据改变的能力。此功能允许领域模型消费者对不再被需要或期望的领域模型的有意安排的改变进行清理/移除。关于此特征的另外的细节可以在图11R“UC-CDMR-SA-0001-改变暂存区内的对象”所示出的使用情况以及在图11S“UC CDMR-SA-0002-提交暂存区中的对象”所示出的使用情况中发现。
通知
通知提供使已经针对通知而登记的CDMR消费者在对领域模型对象进行改变(添加、更新、删除)时被通知的手段。这允许CDMR消费者在被通知该改变之后执行任何期望的活动,如刷新呈现至终端用户的数据。CDMR100提供使CDM消费者通过如图10所示的通知***118来登记/注销通知的能力。此功能的另外的细节在图11T“UC-CDMR-NO-0001-通知登记”的使用情况以及在图11U“UC-CDMR-NO-0002分发通知”的使用情况中示出。
序列化
CDMR100还提供了用于领域模型对象至XML(如图10中的框120所示)的往返的序列化的手段。CDMR消费者可以使用此功能以用于对象的XML表示被显露在服务总线和调解器(如图5所示)上,并且被用于数据导入/导出以及用于数据传输对象。这些XML表示还可以被用作用于在通过网络服务被显露时由DCIM解决方案的服务所显露的数据的格式。此功能的另外的细节能够在图11V“UC-CDMR-SE-0001-序列化对象”中示出的使用情况中获得。
报告
报告提供编辑/设计、查看/分发生成的报告并且生成/执行报告的能力。CDMR100有助于报告的编辑/设计和生成/执行区域。CDMR100提供关于由报告设计者所使用的数据的信息,并且还提供在执行报告时由报告引擎所使用的实际数据。CDMR100提供手段,如驱动程序/数据源(例如,JasperSoft数据源122),以用于使CPS报告引擎从需要报告的CDMR100检索数据。这提供用于使在报告中使用的数据利用由CDMR100提供的授权和多租户强制执行检查的能力。CDMR100还提供用于检索关于可以由CPS的报告设计者使用的领域模型的信息的方法。该领域模型信息可以由报告设计者使用以识别报告所需要的对象和性质。此特征的另外的细节可以在图11W“UC-CDMR-RP-0001-执行报告”的使用情况中发现。
数据库管理
数据库管理是用于对数据的完整性和数据库的操作进行管理和维护的设施的使用和处理。此功能跨越数据库备份和恢复以用数据库复制来支持分布式环境。CDMR100利用由通用平台服务(CPS)提供的数据库管理功能。这些功能包括数据库的备份、重构、恢复、压缩、簇集、锁管理、日志维护、修理/检验完整性以及复制。
数据加密
数据加密提供用于使数据被转换(加密)成以下格式的手段,该格式在除了那时具有必要信息以对数据进行解密的那些之外均为不可读。CDMR100提供用于使领域模型表明当被存储在数据库中时需要进行加密的字段,使得私人信息(如密码)不被不受阻碍地存储的手段。CDMR100提供用于使领域模型对象的性质在存储到数据库之前被加密并且在从从数据库中返回之前被解密的能力。此功能允许领域模型的特定性质在被存储在数据库中时不能被读取。
可伸缩性
可伸缩性是***在最小或无性能退化且无重大重组的情况下连续处理日益增加的工作量的能力。CDMR100能够伸缩以支持至少四种预定配置:“小”、“中”、“大”和“企业”(小=5个更新器和20个观看者;中=10个更新器和50个观看者;大=10个更新器和100个观看者;以及企业=50个更新器和200个观看者),以满足所有其他的非功能需要。CDMR100利用由通用平台服务(CPS)的数据库管理功能所提供的数据库簇集功能。此功能允许数据库伸缩以支持增加的工作量。CDMR100被设计为支持缓存产品(如Oracle“Coherence”或“TopLink Grid”)的添加,该缓存产品可以在稍后的时间被添加以解决大型环境中的性能和可伸缩性。CDMR100能够伸缩以支持具有多达125,000个被管理单元(机架、设备和虚拟服务器)或者潜在地更多数量的被管理单元的企业环境。
互操作性
CDMR100能够与领域模型进行互操作以提供用于通过领域模型类操作的对象的CDMR功能。CDMR100可以针对授权强制执行所需的授权信息来与CPS授权服务进行互操作。CDMR100可以针对租户强制执行所需的租户信息来与CPS多租户服务进行互操作。CDMR100可以与CPS报表引擎进行互操作以提供用于报告强制执行所必需的数据。CDMR100可以与CPS报表设计者进行互操作以提供关于用于创建报告的领域模型的信息。
高的可用性
CDMR100可以支持被部署在多个服务器上的能力,该多个服务器被集中地且远程地定位并且提供单个统一的数据视图。CDMR100可以支持甚至在部署在不同的服务器上的CDMR中的一个或更多个无法操作时也能连续操作的能力。这种能力允许CDMR100为高度可用的。CDMR100可以利用由通用平台服务(CPS)的数据库管理特征提供的数据库复制功能。此功能允许在多个数据库实例被部署在不同的位置。CDMR100可以利用由通用平台服务(CPS)的数据库管理特征提供的数据库簇集功能。此功能允许数据库支持高的可用性。
重新使用
DCIM产品线的通用数据模型利用在
Vista、
MergePoint
TM基础设施资源管理器(AMIE)、信息技术运营管理(ITOM)库原型、DSView等中使用的表示模型中体现的领域知识。通用数据模型还可以利用行业标准的某些方面,如分布式管理任务组(DMTF)的通用信息模型(CIM)。
CDMR100可以基于行业标准(SQL99)关系数据库管理***(RDBMS)。
在领域模型内的一些最重要的领域类向可管理子***(MSS)委派可管理操作。另外,可管理子***将关于领域类实例的发现/存在信息馈送到领域模型中。用于像相关事件过滤之类的事的某些政策也被委派到MSS以用于分布式处理(接近此类事件的源)。
结论
因而,DCIM解决方案10可以被看为形成了提供数据中心基础设施的高度有效和高效的管理的硬件和软件产品的全面家族。图4所示的DCIM软件集允许数据中心管理员根据图形丰富的、基于网络的用户接口(UI)来完全地控制并管理他/她的企业的各个方面,无论是本地地还是远程地。DCIM装置12有助于通过使用单件硬件(每个机架,每个地带或每个数据中心)来完成这一点,其中在过去会需要多个硬件设备/单元。总之,DCIM装置12和DCIM软件集允许数据中心管理员不仅要管理他/她的当前配置,而且针对未来需要提前投射并规划,以及当这些需要变成现实时以快速、无缝且成本效益地实现/适应它们。
总的DCIM解决方案10也能够具有显著的可伸缩性。作为其中之一,DCIM解决方案10实现连接到DB服务器场的单独数据库服务器的选项;和/或符合负载平衡***以用于网络访问较大的用户社区的能力;以及符合服务于较大数量的报告请求的报告服务器的能力。DCIM解决方案10还实现符合安全和访问***需要的能力,以及符合用于用户的认证、授权和角色信息的目录服务***的能力。
根据前述CDMR100的讨论,将理解的是,CDMR100因此可以被配置为管理或提供以下中的任何一种:数据识别或描述对象的数据;提供对象的状况、状态和能力的数据;提供对象的性能和运行情况的数据;提供对象的设置、配置和性质的数据;控制对象的行为的数据;改变对象的行为的数据;提供对象的运行情况的数据;以及提供对象与其它对象的关系和关联的数据。根据前面的讨论,还将明显的是,CDMR100还可以对数据执行的上述操作中的任何一个:检索数据;更新数据;创建数据;删除数据;分析数据;转换数据;验证数据;包括执行的数据的授权;包括执行的对数据的租赁;数据的时间性;数据的存储;数据的备份;以及数据的恢复。
虽然已经描述了各种实施方式,但是本领域技术人员将认识到在不背离本公开内容的情况下可以进行修改或变型。示例示出各种实施例且并不意在限制本公开内容。因此,本说明书和权利要求书应当被自由地解释,而仅具有鉴于相关的现有技术所必需的限制。
权利要求书(按照条约第19条的修改)
1.一种形成基础模型的***,所述基础模型使多个对象能够在形成多个不同的领域模型中被使用,所述***包括:
通用数据模型存储库,所述通用数据模型存储库具有用于将所述对象的实例映射到永久存储部的对象关系映射层;
其中,所述对象的实例表示包括用于所述对象的实例中的至少某些实例的连接和控制能力的信息;以及
其中,所述通用数据模型存储库实现与被管理单元有关的所述连接和控制能力。
2.根据权利要求1所述的***,其中,所述通用数据模型存储库还进行操作以与所述领域模型中的任意领域模型的动作无关地将所述对象的所述实例存留到数据库中。
3.根据权利要求1所述的***,其中,所述通用数据模型存储库被配置为对描述对象或由所述对象维护的数据进行管理,所述对象由所述***管理。
4.根据权利要求3所述的***,其中,所述通用数据模型存储库被配置为管理或提供与以下至少之一相关的数据:
识别或描述所述对象的数据;
提供所述对象的状况、状态和能力的数据;
提供所述对象的性能和运行情况的数据;
提供所述对象的设置、配置和性质的数据;
控制所述对象的行为的数据;
改变所述对象的行为的数据;
提供所述对象的运行情况的数据;以及
提供所述对象与其他对象的关系和关联的数据。
5.根据权利要求1所述的***,其中,所述通用数据模型存储库通过执行多个以下操作来管理与所述对象相关的数据:
检索所述数据;
更新所述数据;
创建所述数据;
删除所述数据;
分析所述数据;
转换所述数据;
验证所述数据;
包括强制执行的所述数据的授权;
包括强制执行的对所述数据的租赁;
所述数据的时间性;
存储所述数据;
备份所述数据;以及
恢复所述数据。
6.根据权利要求1所述的***,其中,所述通用数据模型存储库通过将不同的属性添加至所述对象来支持对对象进行扩展。
7.根据权利要求1所述的***,其中,所述通用数据模型存储库支持最初在所述领域模型中没有提供的新的对象类型。
8.根据权利要求1所述的***,其中,所述通用数据模型存储库包括用于提供定制强制执行的功能,所述定制强制执行用于强制执行针对所述对象中的任意对象的任意性质的用户定义约束。
9.根据权利要求1所述的***,其中,所述通用数据模型存储库包括允许多个用户访问给定的数据块的并发功能,并且所述并发功能使得对所述给定的数据块的版本字段进行检查,以确保从所述用户首次读取所述给定的数据块开始,所述给定的数据块没有改变。
10.根据权利要求1所述的***,其中,所述通用数据模型存储库包括用于实现暂存区的功能,在所述暂存区中用户能够对给定的领域模型的领域模型对象进行检查和操作,而不会招致存在于所述给定的领域模型中的实际领域模型对象的改变。
11.根据权利要求1所述的***,其中,所述通用数据模型存储库还包括用于使用户能够登记通知的功能,所述通知在每当对一个所述领域模型的对象的任意实例进行添加、修改或删除时针对所述用户生成。
12.根据权利要求1所述的***,其中,所述通用数据模型存储库还提供用于实现级联删除特征的功能,其中所述级联删除特征使得能够删除与由所述领域模型的用户正在删除的特定对象相关的信息。
13.根据权利要求1所述的***,其中,所述通用数据模型存储库利用多个基本类,所述多个基本类包括:
“抽象永久对象”类,从所述“抽象永久对象”类获得用于定义所述对象中的一些对象的所有其他类,并且所述“抽象永久对象”类的实例是永久的,并且所述“抽象永久对象”类不是任何其他类的扩展;以及
“抽象扩展”类,从所述“抽象扩展”类获得所述类中的被用作所述类中的其他类的扩展的所有类。
14.一种使多个对象能够在形成多个不同的领域模型中被使用的***,所述***包括:
通用数据模型存储库,所述通用数据模型存储库具有用于将所述对象的实例映射到永久存储部的对象关系映射层;
所述通用数据模型存储库还在所述对象的实例由与不同领域模型相关联的不同应用使用时,将多个横切关注点应用于所述对象的实例,并且其中,所述通用数据模型存储库实现与被管理单元和所述对象的实例中至少之一有关的所述多个横切关注点;以及
所述多个横切关注点包括以下至少之一:
认证;
授权决议和强制执行;
时间性;
多租户检查;以及
定制强制执行,所述定制强制执行用于强制执行针对所述对象中的任意对象的任意性质的用户定义约束。
15.根据权利要求14的***,其中,所述对象的实例表示包括用于所述对象的实例中的至少某些实例的连接和控制能力的信息。
16.根据权利要求14所述的***,其中,所述对象的实例能够由所述领域模型中的给定的一个领域模型使用,以使所述对象的实例能够被扩展以形成能够被添加到所述领域模型中的所述给定的一个领域模型的对象的新实例,来扩展所述领域模型中的所述给定的一个领域模型的功能。
17.根据权利要求14所述的***,其中,所述对象的实例通过形成扩展包而被扩展,其中所述扩展包向更改所述对象的基本功能的至少一个对象提供一组扩展。
18.根据权利要求14所述的***,其中,所述通用数据模型存储库被配置为管理或提供与以下至少之一相关的数据:
识别或描述所述对象的数据;
提供所述对象的状况、状态和能力的数据;
提供所述对象的性能和运行情况的数据;
提供所述对象的设置、配置和性质的数据;
控制所述对象的行为的数据;
改变所述对象的行为的数据;
提供所述对象的运行情况的数据;以及
提供所述对象与其他对象的关系和关联的数据。
19.根据权利要求14所述的***,其中,所述通用数据模型存储库通过执行多个以下操作来管理与所述对象相关的数据:
检索所述数据;
更新所述数据;
创建所述数据;
删除所述数据;
分析所述数据;
转换所述数据;
验证所述数据;
包括强制执行的所述数据的授权;
包括强制执行的对所述数据的租赁;
所述数据的时间性;
存储所述数据;
备份所述数据;以及
恢复所述数据。
20.一种使多个对象能够在形成领域模型中被使用的***,所述***包括:
通用数据模型存储库,所述通用数据模型存储库具有用于将所述对象的实例映射到永久存储设备的对象关系映射层;
所述通用数据模型支持以下至少之一:
通过将至少一个属性添加到所述对象中的至少一个对象以形成新的扩展对象来扩展所述对象中的所述至少一个对象;以及
在所述领域模型中最初没有提供的新的对象类型。
21.根据权利要求20所述的***,其中,所述对象的实例表示包括用于所述对象的实例中的至少某些实例的连接和控制能力的信息,并且其中,所述通用数据模型存储库实现与被管理单元有关的所述连接和控制能力。
22.根据权利要求17所述的***,其中,所述通用数据模型存储库被配置成提供统一方法,所述统一方法用于在所述对象的实例由与不同领域模型相关联的不同应用使用时,将多个横切关注点应用于所述对象的实例,并且其中,所述通用数据模型存储库实现与被管理单元和所述对象的实例中至少之一有关的所述多个横切关注点;以及
所述多个横切关注点包括以下至少之一:
认证;
授权决议和强制执行;
时间性;
多租户检查;以及
定制强制执行,所述定制强制执行用于强制执行针对所述对象中的任意对象的任意性质的用户定义约束。
23.根据权利要求20所述的***,其中,所述通用数据模型存储库被配置为管理或提供与以下至少之一相关的数据:
识别或描述所述对象的数据;
提供所述对象的状况、状态和能力的数据;
提供所述对象的性能和运行情况的数据;
提供所述对象的设置、配置和性质的数据;
控制所述对象的行为的数据;
改变所述对象的行为的数据;
提供所述对象的运行情况的数据;以及
提供所述对象与其他对象的关系和关联的数据。
24.根据权利要求20所述的***,其中,所述通用数据模型存储库通过执行多个以下操作来管理与所述对象相关的数据:
检索所述数据;
更新所述数据;
创建所述数据;
删除所述数据;
分析所述数据;
转换所述数据;
验证所述数据;
包括强制执行的所述数据的授权;
包括强制执行的对所述数据的租赁;
所述数据的时间性;
存储所述数据;
备份所述数据;以及
恢复所述数据。
25.一种使多个对象能够在形成多个不同的领域模型中被使用的方法,所述方法包括:
形成通用数据模型存储库,所述通用数据模型存储库具有用于将所述对象的实例映射到永久存储部的对象关系映射层;
其中,所述对象的实例表示包括用于所述对象的实例中的至少某些实例的连接和控制能力的信息;以及
其中,所述通用数据模型存储库实现与被管理单元有关的所述连接和控制能力。