CN103513983A - 用于预测性警报阈值确定工具的方法和系统 - Google Patents
用于预测性警报阈值确定工具的方法和系统 Download PDFInfo
- Publication number
- CN103513983A CN103513983A CN201310244928.XA CN201310244928A CN103513983A CN 103513983 A CN103513983 A CN 103513983A CN 201310244928 A CN201310244928 A CN 201310244928A CN 103513983 A CN103513983 A CN 103513983A
- Authority
- CN
- China
- Prior art keywords
- cluster
- data
- metric data
- threshold condition
- tolerance
- 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
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/30—Monitoring
- G06F11/34—Recording or statistical evaluation of computer activity, e.g. of down time, of input/output operation ; Recording or statistical evaluation of user activity, e.g. usability assessment
- G06F11/3409—Recording or statistical evaluation of computer activity, e.g. of down time, of input/output operation ; Recording or statistical evaluation of user activity, e.g. usability assessment for performance assessment
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/30—Monitoring
- G06F11/34—Recording or statistical evaluation of computer activity, e.g. of down time, of input/output operation ; Recording or statistical evaluation of user activity, e.g. usability assessment
- G06F11/3447—Performance evaluation by modeling
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/30—Monitoring
- G06F11/34—Recording or statistical evaluation of computer activity, e.g. of down time, of input/output operation ; Recording or statistical evaluation of user activity, e.g. usability assessment
- G06F11/3466—Performance evaluation by tracing or monitoring
- G06F11/3495—Performance evaluation by tracing or monitoring for systems
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F2201/00—Indexing scheme relating to error detection, to error correction, and to monitoring
- G06F2201/81—Threshold
Landscapes
- Engineering & Computer Science (AREA)
- General Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Computer Hardware Design (AREA)
- Quality & Reliability (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Life Sciences & Earth Sciences (AREA)
- Bioinformatics & Cheminformatics (AREA)
- Bioinformatics & Computational Biology (AREA)
- Evolutionary Biology (AREA)
- Debugging And Monitoring (AREA)
Abstract
本发明提供了一种用于预测性警报阈值确定工具的方法和系统。提供了用于确定用于在性能监视工具内执行操作的阈值条件的机制。从计算系统环境收集度量数据,并且对度量数据执行集群分析以生成多个集群。选择作为用于生成用于性能监视的阈值条件的候选集群的一个或多个候选集群。基于所选择的一个或多个候选集群的组成来生成用于性能监视的至少一个阈值条件。然后,将至少一个阈值条件应用于未来的性能度量数据,以响应于未来的性能度量数据满足或不满足至少一个阈值条件来确定是否执行操作。
Description
技术领域
本申请一般地涉及改善的数据处理装置和方法,并且更具体地涉及用于使得能够经由预测性警报阈值确定工具来进行预测性警报阈值确定的机制。
背景技术
多数复杂的信息技术解决方案包括服务器、操作系统、中间件、应用、存储和互连设备。计算机系统性能监视机制收集描述跨所有这些组件的计算机系统的操作和行为的很多不同度量。存在将阈值应用于这些性能监视度量的很多不同的产品以用于生成警报。例如,计算系统环境内接近饱和或几乎耗尽的资源容量可以是使得警报生成的条件。
多数计算机系统性能监视机制使用用于发出警报的默认阈值,并且还提供用于手动地定义警报阈值的机制。这些通常是在几乎没有或没有对特定信息技术解决方案的特性的洞悉的情况下所获得的静态值。对于任何给定信息技术解决方案来说,监视工具的默认阈值通常并不是优化的。这些默认阈值导致了对于并不紧急的情况的不必要的警报,而且还导致了对于紧急情况的丢失的警报。
发明内容
在一个说明性实施例中,在包括处理器和存储器的数据处理系统中提供了一种方法,该方法用于确定用于在性能监视工具内执行操作的阈值条件。该方法包括:由数据处理系统从计算系统环境收集性能度量数据。该方法进一步包括:由数据处理系统执行对性能度量数据的集群分析,以针对一个或多个性能度量生成多个性能度量数据的集群。该方法还包括:由数据处理系统在多个集群中选择作为用于生成用于性能监视的阈值条件的候选集群的一个或多个候选集群。此外,该方法包括:由数据处理系统基于所选择的一个或多个候选集群的组成来生成用于性能监视的至少一个阈值条件。此外,该方法包括:将至少一个阈值条件应用于未来的性能度量数据,以响应于未来的性能度量数据满足或不满足至少一个阈值条件来确定是否执行操作。
在其他说明性实施例中,提供了一种计算机程序产品,该计算机程序产品包括具有计算机可读程序的计算机可使用或可读介质。当在计算设备上执行该计算机可读程序时,使得计算设备执行以上关于方法说明性实施例概括的各种操作或其组合。
在又一说明性实施例中,提供了一种系统/装置。该系统/装置可以包括一个或多个处理器以及耦合到该一个或多个处理器的存储器。该存储器可以包括指令,当该指令被一个或多个处理器执行时,使得一个或多个处理器执行以上关于方法说明性实施例概括的各种操作或其组合。
本发明的这些和其他特征和优点将在以下对本发明的示例性实施例的详细描述中进行描述,并且对于本领域的普通技术人员来说,本发明的这些和其他特征和优点将从以下对本发明的示例性实施例的详细描述中变得明显。
附图说明
当结合附图来阅读时,本发明以及本发明的使用和其他目的和优点的优选模式将通过参考以下对说明性实施例的详细描述来最好地理解,在附图中:
图1是可以实现说明性实施例的各方面的分布式数据处理系统的示例性示图;
图2是可以实现说明性实施例的各方面的计算设备的示例性框图;
图3是图示根据可以用于开发资源监视系统的本发明的实施例的操作的流程图;
图4是图示根据本发明的实施例的数据处理系统、方法和计算机程序产品的框图;
图5图示了根据本发明的其他实施例的用于资源监视系统的警报条件的操作;
图6图示了根据本发明的实施例的用于生成持续资源监视系统的操作;
图7是图示根据一个说明性实施例的性能监视工具规则生成引擎的主要操作元件的框图;以及
图8是概括根据一个说明性实施例的用于生成性能监视规则的示例性操作的流程图。
具体实施方式
说明性实施例提供了用于预测性警报阈值确定的机制。说明性实施例采用现有的性能度量数据,检查其多维关系,并且导出用于特定信息技术解决方案的适当阈值。
多数现代计算机系统性能监视机制从受到监视的计算系统环境(其包括计算机、存储装置、网络等)收集度量,并且将该度量或从这些度量生成的值与一个或多个静态阈值进行比较,以确定是否应当生成警报。然而,确定用于警报的正确的性能度量阈值产生了相当大的挑战。通常,一个静态阈值是不充分的,而且基于简单三标准差(3-sigma)或者1.5四分差离群识别方法的阈值也是不充分的。
例如,用于一些度量的适当阈值可能需要基于一天中的时间、一周中的天等而变化。工作负载峰值可能造成一些度量超过阈值达若干区间,从而在那些峰值不表示对于计算系统环境的实际危险或者不表示持久状况时,产生不必要的警报。
说明性实施例通过提供用于实现与用于给定信息技术解决方案的性能度量相关的、灵活的自适应阈值的机制来解决与静态阈值相关的这些问题。通过说明性实施例,基于特定工作负载以及特定信息技术(IT)解决方案的相关性能度量来确定阈值。IT解决方案可以是具有用于一起工作以执行特定功能的其关联硬件、操作系统、中间件以及应用软件的一个或多个计算机系统。针对IT解决方案的所有硬件和软件组件来捕获关于性能、容量和资源利用的度量。IT解决放案的一个示例可以是,例如,通过因特网来接受客户订单的商务服务。在该IT解决方案中,存在端点计算机系统,通过该端点计算机系统,客户下单,并且该订单与在独立计算机系统上运行的存货清单数据库进行交叉引用。还可以存在运行例如计费、订单执行以及重新订购部分商务服务的中间计算机系统。所有的这些设备及其与该商务服务相关的软件组件被视作IT解决方案的一部分。
说明性实施例基于针对该(IT)解决方案的多数重要度量来确定阈值。说明性实施例将历史性能度量与实时监视数据组合,使得阈值可以随着工作负载在信息技术解决方案中的改变而被适配。该结果是产生较少的假肯定(false positive)以及少得多的丢失的紧急状况的用于警告的阈值。因此,在人类管理员在其信息技术解决方案中管理警报时需要较少的时间。
说明性实施例利用包括5个主要操作的方法。第一,对用于特定IT解决方案的现有性能监视度量进行评估。第二,可以使用特征集和减少或者主成分(component)分析来执行对受监视的度量数据的可选维度减少操作;这里的目的在于开始确定在给定信息技术解决方案中的重要度量。第三,执行集群分析以进一步识别最重要的度量,并且生成与被定义为良好、恶劣、不期望、异常等重要集群状态相关联的数据集群。第四,执行分类建模以创建描述集群状态中的每一个的规则。第五,选择集群状态中的一个或多个的规则来在计算系统性能监视机制中创建警报。下文中将更详细地描述这些操作的每一个。
所属技术领域的技术人员知道,本发明的各个方面可以实现为系统、方法或计算机程序产品。因此,本发明的各个方面可以具体实现为以下形式,即:完全的硬件实施方式、完全的软件实施方式(包括固件、驻留软件、微代码等),或硬件和软件方面结合的实施方式,这里可以统称为“电路”、“模块”或“系统”。此外,在一些实施例中,本发明的各个方面还可以实现为在一个或多个计算机可读介质中的计算机程序产品的形式,该计算机可读介质中包含计算机可读的程序代码。
可以采用一个或多个计算机可读介质的任意组合。计算机可读介质可以是计算机可读信号介质或者计算机可读存储介质。计算机可读存储介质例如可以是——但不限于——电、磁、光、电磁、红外线、或半导体的系统、装置或器件,或者任意以上的组合。计算机可读存储介质的更具体的例子(非穷举的列表)包括:具有一个或多个导线的电连接、便携式计算机盘、硬盘、随机存取存储器(RAM)、只读存储器(ROM)、可擦式可编程只读存储器(EPROM或闪存)、光纤、便携式紧凑盘只读存储器(CD-ROM)、光存储器件、磁存储器件、或者上述的任意合适的组合。在本文件中,计算机可读存储介质可以是任何包含或存储程序的有形介质,该程序可以被指令执行系统、装置或者器件使用或者与其结合使用。
计算机可读的信号介质可以包括在基带中或者作为载波一部分传播的数据信号,其中承载了计算机可读的程序代码。这种传播的数据信号可以采用多种形式,包括——但不限于——电磁信号、光信号或上述的任意合适的组合。计算机可读的信号介质还可以是计算机可读存储介质以外的任何计算机可读介质,该计算机可读介质可以发送、传播或者传输用于由指令执行系统、装置或者器件使用或者与其结合使用的程序。
计算机可读介质上包含的程序代码可以用任何适当的介质传输,包括——但不限于——无线、有线、光缆、RF等等,或者上述的任意合适的组合。
可以以一种或多种程序设计语言的任意组合来编写用于执行本发明操作的计算机程序代码,所述程序设计语言包括面向对象的程序设计语言-诸如Java、Smalltalk、C++等,还包括常规的过程式程序设计语言-诸如“C”语言或类似的程序设计语言。程序代码可以完全地在用户计算机上执行、部分地在用户计算机上执行、作为一个独立的软件包执行、部分在用户计算机上部分在远程计算机上执行、或者完全在远程计算机或服务器上执行。在涉及远程计算机的情形中,远程计算机可以通过任意种类的网络——包括局域网(LAN)或广域网(WAN)-连接到用户计算机,或者,可以连接到外部计算机(例如利用因特网服务提供商来通过因特网连接)。
下面将参照根据本发明实施例的方法、装置(系统)和计算机程序产品的流程图和/或框图描述本发明。应当理解,流程图和/或框图的每个方框以及流程图和/或框图中各方框的组合,都可以由计算机程序指令实现。这些计算机程序指令可以提供给通用计算机、专用计算机或其它可编程数据处理装置的处理器,从而生产出一种机器,使得这些计算机程序指令在通过计算机或其它可编程数据处理装置的处理器执行时,产生了实现流程图和/或框图中的一个或多个方框中指定的功能/动作的装置。
也可以把这些计算机程序指令存储在计算机可读介质中,这些指令使得计算机、其它可编程数据处理装置、或其他设备以特定方式工作,从而,存储在计算机可读介质中的指令就产生出包括实现流程图和/或框图中的一个或多个方框中指定的功能/动作的指令的制造品(articleof manufacture)。
计算机程序指令还可以被加载到计算机、其他可编程数据处理装置或者其他设备,以使得在该计算机、其他可编程数据处理装置或者其他设备上执行操作步骤序列以产生计算机执行处理,使得在计算机或其他可编程装置上执行的指令提供用于实现在流程图和/或框图块中指定的功能/动作的处理。
附图中的流程图和框图显示了根据本发明的多个实施例的系统、方法和计算机程序产品的可能实现的体系架构、功能和操作。在这点上,流程图或框图中的每个方框可以代表一个模块、程序段或代码的一部分,所述模块、程序段或代码的一部分包含一个或多个用于实现指定的逻辑功能的可执行指令。也应当注意,在有些作为替换的实现中,方框中所标注的功能也可以以不同于附图中所标注的顺序发生。例如,两个连续的方框实际上可以基本并行地执行,它们有时也可以按相反的顺序执行,这依所涉及的功能而定。也要注意的是,框图和/或流程图中的每个方框、以及框图和/或流程图中的方框的组合,可以用执行指定的功能或动作的专用的基于硬件的系统来实现,或者可以用专用硬件与计算机指令的组合来实现。
因此,该说明性实施例可以用在很多不同类型的数据处理环境中。为了提供用于描述说明性实施例的特定元素和功能的上下文,下文中提供图1和图2作为可以在其中实现说明性实施例的各方面的示例性环境。应当认识到,图1和图2仅仅是示例,并且并不意在谓词或暗示对于可以在其中实现本发明的各方面或实施例的环境的任何限制。可以在不背离本发明的精神和范围的情况下,进行对所描述的环境的很多修改。
图1描绘了可以在其中实现说明性实施例的各方面的示例性分布式数据处理系统的图形表示。分布式数据处理系统100可以包括可以在其中实现说明性实施例的各方面的计算机网络。分布式数据处理系统100包含至少一个网络102,其为用于在分布式数据处理系统100内的、连接在一起的计算机和各种设备之间提供通信链路的介质。网络102可以包括诸如有线、无线通信链路或者光纤线缆这样的连接。
在所描绘的示例中,服务器104和服务器106与存储单元108一起连接到网络102。此外,客户端110、112和114也连接到网络102。这些客户端110、112和114可以是例如个人计算机、网络计算机等。在所描绘的示例中,服务器104向客户端110、112和114提供数据,诸如启动文件、操作系统映像和应用。在所描绘的示例中,客户端110、112和114是针对服务器104的客户端。分布式数据处理系统100可以包括未示出的附加服务器、客户端和其他设备。
在所描绘的示例中,分布式数据处理系统100是具有网络102的因特网,该网络102表示使用传输控制协议/因特网协议(TCP/IP)协议集来彼此进行通信的网络和网关的全球范围的集合。在因特网的核心处是在主节点或主机计算机之间的用于路由数据和消息的高速数据通信线路的干路,所述主节点或主机计算机包括数千商业、政府、教育和其他计算机系统。当然,分布式数据处理系统100还可以被实现为包括多个不同类型的网络,诸如,例如内联网、局域网(LAN)、广域网(WLAN)等。如上所述,图1意在作为示例,而不意在作为对本发明的不同实施例的架构限制,并且因此,图1中示出的特定元件不应当被认为是对可以在其中实现本发明的说明性实施例的环境的限制。
图2是可以在其中实现说明性实施例的各方面的示例性数据处理系统的框图。数据处理系统200是计算机的示例,诸如图1中的客户端110,其中可以定位实现用于本发明的说明性实施例的过程的计算机可使用代码或者指令。
在所描绘的示例中,数据处理系统200采用集线器架构,该集线器架构包括北桥和存储器控制器集线器(NB/MCH)202以及南桥和输入/输出(I/O)控制器集线器(SB/ICH)204。处理单元206、主存储器208以及图形处理器210连接到NB/MCH202。图形处理器210可以通过加速图形端口(AGP)连接到NB/MCH202。
在所描绘的示例中,局域网(LAN)适配器212连接到SB/ICH204。音频适配器216、键盘和鼠标适配器220、调制解调器222、只读存储器(ROM)224、硬盘驱动(HDD)226、CD-ROM驱动230、通用串行总线(USB)端口和其他通信端口232以及PCI/PCIe设备234通过总线238和总线240连接到SB/ICH204。PCI/PCIe设备可以包括,例如,以太网适配器、插件卡以及用于笔记本计算机的PC卡。PCU使用卡总线控制器,而PCIe不使用卡总线控制器。ROM224可以是例如闪速基本输入/输出系统(BIOS)。
HDD226和CD-ROM驱动230通过总线240连接到SB/ICH204。HDD226和CD-ROM驱动230可以使用例如集成驱动电子(IDE)或串行高级技术附件(SATA)接口。超级I/O(SIO)设备236可以连接到SB/ICH204。
操作系统在处理单元206上运行。操作系统协调并且提供对图2中的数据处理系统200内的各种组件的控制。作为客户端,操作系统可以是商业上可提供的操作系统,诸如微软。诸如JavaTM编程系统的面向对象的编程系统可以结合操作系统来运行,并且向操作系统提供来自在数据处理系统200上执行的JavaTM程序和应用的调用。
作为服务器,数据处理器系统200可以是例如计算机系统,运行高级交互执行操作系统或操作系统。数据处理系统200可以是在处理单元206中包括多个处理器的对称多处理器(SMP)系统。替代地,可以采用单个处理器系统。
用于操作系统、面向对象的编程系统以及应用或程序的指令位于诸如HDD226的存储设备中,并且可以被加载到主存储器208中以用于由处理单元206来执行。处理单元206可以使用计算机可使用程序代码来执行本发明的说明性实施例的过程,计算机可使用程序代码可以位于诸如例如主存储器208、ROM224的存储器中或者例如在一个或多个外围设备226和230中。
诸如在图2中示出的总线238或总线240的总线系统可以包括一个或多个总线。当然,总线系统可以通过使用任何类型的通信结构或架构来实现,该任何类型的通信结构或架构支持在附连到该结构或架构的不同组件或设备之间的数据传送。诸如图2的调制解调器222或网络适配器212的通信单元可以包括用于传送和接收数据的一个或多个设备。存储器可以是例如主存储器208、ROM224、或者诸如在图2中的NB/MCH202中找到的高速缓存。
本领域的普通技术人员将认识到,在图1和图2中的硬件可以根据实现方式而变化。作为对在图1和图2中描绘的硬件的补充和替代,可以使用诸如闪速存储器、等价非易失性存储器或者光盘驱动等的其他内部硬件或外围设备。而且,在不背离本发明的精神和范围的情况下,除了上述SMP系统之外,说明性实施例的过程可以适用于多处理器数据处理系统。
此外,数据处理系统200可以具有多种不同数据处理系统中的任何一种的形式,包括客户端计算设备、服务器计算设备、平板计算机、膝上型计算机、电话或其他通信设备、个人数字助理(PDA)等。在一些说明性示例中,数据处理系统200可以是便携式计算设备,其被配置为具有闪速存储器以提供用于存储例如操作系统文件和/或用户生成的数据的非易失性存储器。本质上,数据处理系统200基本上可以是任何公知的或稍后开发的数据处理系统,而没有架构约束。
再次参考图1,一个或多个服务器104、106可以包括用于监视计算系统环境的计算资源的性能的性能监视工具。计算系统环境可以包含:一个或多个其他服务器,例如在性能监视工具存在于服务器104上时包含服务器106;一个或多个客户端计算设备,例如客户端110-114;存储系统,诸如存储单元108;网络,诸如网络102等。此外,这样的受监视的计算系统环境可以包含对其执行性能监视的很多其他计算系统、计算系统资源(例如,存储器、带宽等)。
根据说明性实施例,性能监视工具采用动态阈值计算引擎来动态地确定将与警报生成操作一起被利用的一个或多个阈值的适当集合。动态阈值计算引擎针对受监视的计算资源、计算环境、工作负载等来对保持在与性能监视工具相关联的存储系统中的历史度量信息以及当前获得的度量数据进行操作。例如,如果在第一计算环境内监视服务器响应时间,则可以将用于服务器响应时间的历史度量和当前度量作为对动态阈值计算引擎的输入来进行分析。
为了更好地理解对说明性实施例的机制所提供的性能监视工具的改进,首先考虑可以使用说明性实施例的机制来增强的性能监视工具是有帮助的。因此,下文中提供了对于性能监视工具的讨论,该性能监视工具由说明性实施例的机制增强,并且由此与本发明的实施例集成并且本身作为本发明的实施例被包括。下文中关于图3-图6描述的性能监视功能与在共同所有的美国专利申请No.7,299,367中所描述的类似。然而,应当注意,说明性实施例的机制通过提供如下所述的用于动态地和自适应地预测适当的警报阈值来对在该共同所有的美国专利申请中所描述的性能监视工具进行改善。
根据本发明的特定实施例,机器学习/数据挖掘方法可以用于搜索历史数据的档案,以生成和/或评价候选资源监视系统的灵敏度。可以使用与下述情况相关的信息来导出这些候选资源监视系统,在所述情况中特定校正动作在先前被发现是对将被监视的系统中所产生的问题的可接受的解决方案。本发明的方法可以被并入“设计向导”中,该“设计向导”可以用于简化用于创建资源监视系统的过程。
在说明性实施例中,可以选择在资源监视系统的开发中使用的多个原始(raw)度量mi。所谓的“原始度量”是与受到监视的资源相关联的数字或其他参数,诸如,例如寻呼错误的累计数目、每单位时间的寻呼错误的数目、对于各种动作的响应时间、带宽利用率、存储器利用率、分组重传的数目、丢弃的分组的数目等。这些原始度量的值通常随着时间而变化。因此,每个原始度量mi可以由向量mi(t)来表示,其中向量中的每个元表示在特定时间处测量的mi的值。每个度量的索引通常是固定的,使得如果mi(t)指时间t处的给定度量,则mi(t’)指在时间t’的相同度量,并且(mi(t’)-mi(t))给出了语义上含义的差异。如这里所讨论的,在资源监视系统的构造中使用用于选择的原始度量mi(t)的值的历史数据库,因此所选择的原始度量通常将是历史数据可用于其和/或可针对其生成历史数据的度量。
还可以定义作为与将受到监视的系统相关联的特定度量(上述原始度量和/或下述“导出的度量”)的函数的谓词(predicate)G。谓词G可以具有未知结构,并且可以作为对期望检测资源监视系统的情况的总体特性的描述。谓词是所识别的变量的函数,其基于所识别的变量的值来返回真值(例如,真或假)。在本发明的实施例中,可以允许谓词在真、假和未承诺(NO COMMITMENT)(未承诺的值指谓词关于G在特定情况中是真还是假没有做出认同)的三值逻辑域中进行操作。在一些说明性实施例中,谓词G可以是在相邻的测量时间t和t’处取的选择的度量中的一个或多个的函数。在本发明的另一实施例中,G可以是在某一范围的时间内或者在有限时间的平均值上取的选择的度量中的一个或多个的函数。
如这里所讨论的,本发明的方法、系统和/或计算机程序产品的用户可以提供关于G的初始理论值(theory)。该初始理论值用于初始化方法,并且该方法/系统可以迭代地运行,直到用户对结果满意,或者该方法/系统证明没有系统与用户提出的理论值一致。例如,关于网络服务器资源,很多状况可以使得服务器的响应时间上升超过阈值。例如,在下述特定情况中(1)伺服响应时间在指定阈值以上、(2)在“扩展”时间中已经打开了“大”量的会话、以及(3)相关联的Java虚拟机使用“最小”CPU资源,这可以指示死锁。在这样的死锁的情况中的适当响应在于关闭和重启应用服务器。用户想要构建以最小数目的假肯定(即,资源监视系统在死锁实际上没有发生时将其识别为已经发生的情况)和假否定(即,资源监视系统无法识别到死锁已经发生的情况)来识别该情况的资源监视系统。初始地仅可能知道在过去响应时间何时过高以及重启修复了问题的用户可以播种(seed)用于构建资源监视系统的方法,该方法利用下面的G的初始理论值来进行对重启该系统的校正动作:
如果mi(t)>x,则G(mi(t))为真 (1)
其中mi(t)是伺服响应时间,并且x是由用户供应的诸如180秒的值。如这里讨论的,G的该初始理论值可以用于将来自数据的历史数据库的特定观察分类成肯定(即,真)、否定(即,假)和不确定(即,未承诺)的示例。
在一些说明性实施例中,可以定义下面的逻辑原子(logic atom):
METRIC≤THRESHOLD;或者 (2)
METRIC≥THRESHOLD, (3)
其中METRIC是在资源监视系统中使用的度量,并且THRESHOLD是未知阈值。对于METIRC可以使用原始度量mi(t)中的一个或多个。替代地,对于METIRC可以使用一个或多个导出的度量Dk(mi),其中“导出的度量”指基于原始度量中的一个或多个的值计算的度量。记法Dk(mi)这里用于表示基于原始度量mi(t)的第k个导出的度量。而且注意,导出的度量Dk(mi)可以是具有关于不同时间点的值的向量,但是为了简化记法,项mi(t)已经被缩短为mi。对导出的度量的使用在特定情况下可以提供关于受到监视的特定资源达到某种校正动作可能是有利的点的更多和/或更好的信息。在本发明的一些说明性实施例中,可以在资源监视系统的构造中使用下面导出的度量中的一个或多个:
D1(mi)=mi(t);(4)
D2(mi)=mi(t)-mi(t′); (5)
D3(mi)=[mi(t)-mi(t′)]/dt;or (6)
D4(mi)=[mi(t)-mi(t′)]/[mj(t)-mj(t′)], (7)
其中,t和t’是在原始度量值的数据库中的相邻时间,并且不隐含被零除。还注意,“导出的度量”D1(mi)完全不是导出的度量,而仅仅是原始度量mi(t)。进一步注意,可以针对如所期望的那么多的第一原始度量mi(t)和第二原始度量mj(t)的不同组合计算导出的度量D4(mi)。还应当认识到,本发明不限于使用上述一些、任何或全部的示例性导出的度量。例如,如上所述,时间t处的导出的度量可以包括在某一时间范围上所取的很多度量的函数。
如上所述,用于原始度量mi(t)的值的历史数据库可用于或被生成以用于在说明性实施例的方法、系统和计算机程序产品中使用。“数据库”意指以任何形式存储的数据的集合,包括例如在数据处理系统上的表或文件中存储的数据。因此,这里广泛地使用术语“数据库”,并且不限于存储在传统数据库程序中的数据或者与传统数据库程序一起使用的数据,传统数据库程序诸如关系数据库。在使用导出的度量的一些说明性实施例中,可以使用用于原始度量mi(t)的值的历史数据库和定义诸如上述的导出的度量中的每一个的等式来构建导出的度量值的数据库。
逻辑值可以与度量值的数据库(这可以是导出的度量值的数据库的原始度量值的历史数据库,根据度量的类型来在任意具体的实现方式中进行使用)中的至少一些条目相关联。在一些说明性实施例中,可以使用三值逻辑系统,其中逻辑值可以是真、假或未承诺。未承诺的逻辑值可以是当没有逻辑值与度量值的数据库中的条目相关联时的缺省值。通常,相同的逻辑值将与关联于特定时间t1的所有导出的度量相关联。然而,并不一定是这样的情况。
继续上述示例,用户通过初始地提出下述理论值来播种该方法,如果m1(t)>x则G(m1(t))为真,其中x=180,并且m1(t)是用于伺服响应时间的原始度量。基于该初始理论值,在历史数据库中具有超过180的伺服响应时间的条目被分类为真(即,逻辑值真与数据库中的那些条目相关联)。用户可以选择将数据库中的其他条目分类为假,并且关于其他条目可以作出未承诺。在很多情况下,真或假的逻辑值仅与数据库中的相对小百分比的条目相关联。
可以执行“情况描述”算法来确定可行的阈值设置,如果有的话,其中逻辑原子METRIC≤THRESHOLD和METRIC≥THRESHOLD为真。可以定义区间[a,b],该区间[a,b]分别表示其特定度量(例如,m1(t)或D2(m3))小于或等于阈值的可行阈值集合的上端点和下端点。类似地,可以定义第二区间[c,d],第二区间[c,d]分别表示针对其所讨论的度量大于或等于阈值的可行阈值集合的上端点和下端点。
“情况描述”算法开始于将阈值设置的两个可行范围的下端点“a”和“c”初始化为它们可以获得的最低可能值(例如,根据该度量是什么以及其可以获得的最低值,是负无穷、0等)以及将阈值设置的两个可行范围的上端点“b”和“d”初始化为它们可以获得的最高可能值(例如,无穷、231-1等)。然后,该“情况描述”算法使用历史数据库中(即,根据所讨论的度量的类型为原始度量的数据库或导出的度量的数据库)的信息,通过使用由用户提供的关于G的信息来将数据库中的其他数据分类成正(真)或负(假)的示例,将各个范围[a,b]和[c,d]的端点移动得更接近在一起。在本发明的特定实施例中,这可以如下述来实现。
在如上述初始化范围的端点之后,检测历史信息的相关数据库,以针对所讨论的度量来识别与逻辑值真或逻辑值假相关联的每个条目(具有逻辑值未承诺的条目可以被忽略)。在逻辑值真已与数据库中的用于度量之一的特定条目相关联的情况下,第一范围的端点“a”被重新计算为“a”或者数据库中的用于该度量的特定条目的值(“西塔(theta)”)中的较大者。在该情况下,端点“b”保持其先前值。在逻辑值假与数据库中的用于度量的特定条目相关联的情况下,端点“a”保持其先前值,并且端点“b”被重新计算为“b”和西塔中的较小者。类似地,在逻辑值真与数据库中的用于该度量的特定条目相关联时,端点“c”保持其先前值,并且端点“d”被重新计算为“d”和西塔中的较小者。在逻辑值假与数据库中的用于该度量的特定条目相关联的情况下,端点“c”被重新计算为“c”和西塔中的较大者,并且端点“d”保持其先前值。该算法的输出是五元组表<METRIC,a,b,c,d>,其中对于使用情况描述算法处理的每个度量(例如,Dk(mi))存在一个这样的五元组。表1总结了包括情况描述算法的处理步骤:
表1
在一些说明性实施例中,经由表1的处理步骤生成的五元组<METRIC,a,b,c,d>的列表可以用于构建瞬时资源监视系统。使警报条件发生的条件被称为“COND”。COND可以被初始化为“真”值。然后,可以使用五元组<METRIC,a,b,c,d>如下构建COND的等式。对于每个五元组<METRIC,a,b,c,d>:
如果(a>b)并且(c>d),则COND保持不变; (8)
如果(a<b)并且(c<d),则“METRIC≤a并且METRIC≥c”附加到COND; (9)
如果(a<b)并且(c>d),则“METRIC≤a”附加到COND;并且
(10)
如果(a>b)并且(c<d),则“METRIC≥c”附加到COND。 (11)
对五元组<METRIC,a,b,c,d>中的每一个的处理提供了包括候选瞬时资源监视系统的完整函数的数学表达。然后,该候选瞬时资源监视系统可以被评估和改善,用于开发候选持久资源监视系统和/或用于监视要受到监视的资源。
图3是图示根据可以用于开发资源监视系统的本发明的实施例的操作的流程图。如图3中所示,操作可以开始于对资源监视系统要执行的特定校正动作的选择(框300)。例如,可以指定的校正动作可能包括向操作员报警、向用户通知资源、关闭资源(并且可能此后重启它)和/或关闭相关系统、应用和/或资源等。可以通过例如资源监视系统的设计者来定义校正动作的具体类型。如图3中所示,根据本发明的特定说明性实施例生成的资源监视系统可以被设计为实现多于一个的校正动作,其中,所采取的校正动作可以根据由资源监视系统所监视的各种系统参数(即,度量)的值而变化。
接下来,可以选择由资源监视系统使用的多个原始度量mi(t)(框302)。如上所述,说明性实施例可以在资源监视系统的构建中使用原始度量和/或导出的度量(“导出的度量”是基于一个或多个原始度量的值计算的度量)。例如,在一些说明性实施例中,诸如图3中所示,使用多个导出的度量。如图3中所示,在选择了原始度量mi(t)之后,操作在框304处继续,其中定义要在资源监视系统的构建中使用的导出的度量Dk(mi)。在一些说明性实施例中,在资源监视系统的构建中使用的系统或计算机程序产品可以定义要使用的导出的度量(通过使用预指配的导出的网络或通过基于关于要受到监视的系统的信息来自适应地选择要使用的导出的度量),或者替代地,可以由系统的用户/操作者来定义所使用的导出的度量。先前已经讨论了可以在本发明的方法、系统和计算机程序产品中使用的导出的度量的类型的示例。
通常,对于要监视的资源来说,用于原始度量的值的历史数据库(数据库308)已经存在,但是这样的数据库还可以被特殊地构建用于在本发明的方法、系统和计算机程序产品中使用。在使用导出的度量的本发明的说明性实施例中,在图3的框306处,可以建立用于导出的度量值的数据库(数据库310)。这可以例如通过下述步骤来实现:从用于原始度量mi(t)的值的历史数据库(数据库308)中取得数据,并且在定义选择的导出的度量Dk(mi)的等式中使用该数据以计算用于导出的度量的历史值。然而,应当认识到,因为导出的度量的值可以基于需要而直接从原始度量数据计算,所以不需要编译用于导出的度量的值的历史数据库。即,可以在不背离说明性实施例的精神和范围的情况下,使用历史度量数据和当前原始度量数据二者。
如图3的框314处所示,逻辑值可以与导出的度量值的数据库(数据库310)中的至少一些条目相关联。在说明性实施例中,与导出的度量值的数据库(数据库310)中的条目相关联的逻辑值可以由说明性实施例的方法、系统和计算机程序产品的用户来提供。例如,这样的用户可能查看在对要监视的资源的先前操作期间所作出的日志(log)条目(其中的每一个可以具有时间戳),以识别可以在开发资源监视系统中有用的错误代码和其他信息。这些日志条目可以被包含在日志文件312中,或者可以从各种其他源获得。例如,用户可能将处于在日志文件312中记录“错误代码=237”的日志条目的2分钟时间内的导出的度量数据中的所有值指定为真。用户还可能将“代码重启”的日志条目的时间处的所有导出的度量指定为假。更复杂的准则可以用于使逻辑值与导出的度量值的数据库310中的条目相关联,例如使基于两个不同日志条目交互的方式的值相关联。例如,不与逻辑值真或假相关联的导出的度量可以被指配逻辑值未承诺。本领域的技术人员将理解,在本发明的一些说明性实施例中,逻辑值与历史数据库中的条目的关联可以是自动的,如下文中将更详细描述的。
操作在图3的流程中的框316处继续,其中确定阈值的可行范围,使得阈值将具有与导出的度量之一的指定关系。具体地,在图3中所示的本发明的实施例中,对于每个导出的度量Dk(mi)来说,框316的操作确定表示阈值的可行范围的区间[a,b](如果有的话),使得逻辑原子Dk(mi)≤THRESHOLD为真。框316的操作同样针对每个导出的度量Dk(mi)来确定表示阈值的可行范围的区间[c,d](如果有的话),使得逻辑原子Dk(mi)≥THRESHOLD为真。应当理解,该系统可以被设计为以其他逻辑原子进行操作。如上所述,在表1中阐述的情况描述算法可以用于确定区间[a,b]和[c,d]。
虽然在图3中没有示出,但是在针对各个导出的度量Dk(mi)确定了可行范围之后,用户可以选择对情况描述算法的输出进行评估,并且在必要时,修改一些输入信息,诸如与使用的导出的度量和/或导出的度量值的历史数据库310中的特定条目相关联的逻辑值。这样的评估步骤可以促进资源监视系统的有效构建,特别是在情况描述算法指示了相对于具体导出的度量Dk(mi),(a>b)以及(c>d)的情况,指示了对于度量Dk(mi)来说不存在呈现逻辑原子为真的可行阈值范围。此外,即使在识别了可行范围的情况下,这也可以有助于将识别的范围应用于历史数据库以确定数据库中有多少其他未承诺条目、所识别的范围将用为真或假设置的设计过程。
接下来,在图3的框318处,可以基于所识别的阈值的可行范围(即,五元组<Dk(mi),a,b,c,d>)来构建候选瞬时资源监视系统。这可以通过下述步骤来完成:执行上述指定的瞬时资源监视系统构建操作以达到将用于识别警报条件何时出现的条件COND。然后,设计者可以(可选地)选择对候选资源监视系统进行评估(框320)。在一些说明性实施例中,可以通过使用来自原始度量值的历史数据库308和/或导出的度量值的数据库310的数据来完成该评估以识别已经生成了警报条件的候选资源监视系统的情况。然后,设计者可以将该信息与日志文件或者与生成历史数据库308中的值时对资源的操作相关的其他信息作比较,以确定在正确地识别警报应当已经发生的情况中候选资源模型有多有效。这可以通过例如下述步骤来完成:评估如果候选资源监视系统在使用中,则应当已经发生的假肯定(即使在没有实际问题的情况下也产生警报的情况)的数目或假否定(当警报已经产生但是不是由候选资源监视系统产生的情况)的数目。(注意,上述特定的瞬时资源模型仅生成假肯定,因为表示瞬时资源监视系统的条件COND被初始化为真——但是将导致假否定的生成的其他实现方式也在本发明的说明性实施例的范围内)。
在图3的框322处,如果候选资源监视系统不被认为是可接受的,则可以通过修正一些用于生成模型的信息来继续操作。如图3中所示,一种这样的修正可以是改变与导出的度量值的数据库310中的数据相关联(框314)的一些逻辑值。这可以例如通过对数据库中的或多或少的条目作出真或假的承诺来完成。其他可能的修正(图3中未示出)将是修改用于构建候选资源监视系统的原始度量的选择和/或导出的度量的选择和/或修改由资源监视系统采取的校正动作。
在框322处,如果候选模型被认为是可接受的,则提供资源监视系统。该模型可以用于监视系统和/或开发其他资源监视系统。一种用于开发更复杂的资源监视系统的方式在于将系统扩展为包括更多个校正动作。这可以通过例如下述步骤来完成:在框300处选择一个或多个其他校正动作,并且然后使用图3中图示并且这里描述的方法来生成条件COND,在该条件COND下,资源监视系统将实现这些其他的校正动作。
在图3的框324、326、328、330、332、334中图示了根据本发明的其他实施例的用于创建资源监视系统的其他操作。在图3的这些框中阐述的操作可以用于获取在框322处生成的瞬时资源监视系统,并且使用该系统来生成持久资源监视系统。
如图3中所示,持久资源模型的生成开始于框324,其中提供若干输入准则,即(1)针对该模型所需要的“响应性”、(2)由资源监视系统生成的假肯定警报的最大可接受水平以及(3)由资源监视系统生成的假否定警报的最大可接受水平。“响应性”指在资源监视系统实现指定的校正动作之前可以经过的最大时间量。因此,响应性准则用于限制在确定特定情况下是否产生警报中资源监视系统可以评估的“历史”量。例如,如果响应性被指定为10分钟,并且采样间隔(即,原始度量的测量所采取的时间间隔)是30秒,则可以考虑的最大历史量是考虑到(worth of)原始度量数据的600/30+1=21个时间间隔。如本领域的技术人员应当理解的,通常增加持久资源监视系统所考虑的历史量增加了系统能力以适当地识别警报情况。然而,增加考虑的历史量还降低了系统的响应性,因为警报在已经考虑了指定的历史量之前(通常)一直不被发出。
接下来,如图3的框326处所示,在图3的框320处生成的条件COND可以适用于导出的度量值的数据库310。在数据库310中的每个时间条目(采样)处,条件COND将被满足或不被满足。如果满足条件COND,则这表示“赋存(occurrence)”,意味着这是在框320处生成的瞬时资源监视系统可以识别为“警报条件”的情况并且采取校正动作。可以对数据库310添加记录针对数据库中的每个时间条目是否满足条件COND的字段。然后,该信息可以用于生成下述表,该表列出针对指定的响应性准则在赋存(以及可接受的孔(hole)的数目)和孔的所有可行组合处生成的警报数目。用于选择赋存和孔设置的示例性技术通过构建下述形式的表来操作:
表2-对需要3个间隔持久性的持久性准则的模型的分析
相对于包括原始赋存的示例性历史示出表2中的条目:
++---+--++++------
在该示例中,“+”指示满足cOND的间隔;“-”指示不满足COND的间隔。对该具有(1,0)的(赋存,孔)设置的历史的分析将生成3个连续的警报条件间隔;类似地,(2,O)的设置将生成2个连续的警报条件间隔。在需要警报条件为在长度上至少3个间隔的持久性准则的情况下,这些警报条件在除了最后一个连续间隔之外的所有间隔中将是假肯定(不满足持久性准则)。通过计算不被相对于代理标准所取的连续警报间隔“要求”的原始赋存的数目来填充“最大假否定”列,即在(2,i)间隔设置的情况下“要求”的那些。在相对于(2,i)标准取设置(x,y)时,最大假否定子表的每个条目与未要求的原始赋存的计数相对应。例如,相对于上述历史的持久性算法的输出将是:
原始: | + | + | - | - | - | + | - | - | + | + | + | + | - | - | - | - | - | - |
(2,0) | + | + | - | - | - | - | - | - | + | + | + | + | - | - | - | - | - | - |
(2,1) | + | + | - | - | - | - | - | - | + | + | + | + | - | - | - | - | - | - |
(2,2) | + | + | - | - | - | + | + | + | + | + | + | + | - | - | - | - | - | - |
(3,0) | - | - | - | - | - | - | - | - | + | + | + | + | - | - | - | - | - | - |
(2,2)设置拾取(3,0)设置错过的第六时间间隔处的原始赋存,指示在(3,0)设置下假否定可能在位置6处存在。(由下述事实促进(2,i)标准的使用:该事实即,持久性需要由一些数目的赋存和/或孔所分离的至少两个赋存,第一个和后一个。针对该标准的分析给出了可能已经发生的指示的最大数目。)最大假否定子表中的每个条目可以通过对其中原始和(2,i)标准都具有“+”并且分析的设置的间隔包含“-”的间隔的数目进行计数来计算。该分析可以通过很多其他技术来改善:例如,可以通过处理持久性算法的输出以消除假肯定来以给定响应性确定可证明的肯定的最大数目。
基于在框326处的分析,可以选择特定的持久性准则(框328)。然后,添加与在框300处识别的校正动作相关联的持久性资源监视系统作为总体持久资源监视系统的一部分(框330和332)。如果将其他校正动作添加到系统(框334),则操作可以以新的校正动作再次从框300开始。一旦不需要再添加校正动作,则持久资源监视系统完成。
本领域的技术人员应当理解,图3中描绘的操作不需要必须以图3中示出的顺序来执行,并且不需要执行全部示出的操作。这样,图3并不意在在执行的操作或者以其执行这样的操作的顺序方面限制本发明的说明性实施例。
图4是图示根据本发明的实施例的数据处理系统、方法和计算机程序产品400的框图。数据处理系统400通常包括诸如键盘或小键盘的输入设备402以及经由地址/数据总线418与处理器408进行通信的存储器406。处理器408可以是任何商业上可用或者定制的微处理器。数据处理系统400可以进一步包括还与处理器408通信的扬声器414和I/O数据端口416。I/O数据端口416可以用于在数据处理系统400和另一计算机系统或网络之间传送信息。这些组件可以是传统组件,诸如在很多传统数据处理系统中使用的那些,其可以被配置成如这里描述的那样进行操作。
存储器406表示存储器设备的整体层级,存储器设备包含用于实现数据处理系统400的功能的软件和数据。存储器406可以包括但不限于下述类型的设备:高速缓存器、ROM、PROM、EPROM、EEPROM、闪速存储器、SRAM和DRAM。如图4中所示,存储器406可以包括在数据处理系统400中使用的若干类别的软件和数据:操作系统422;应用程序424;输入/输出(I/O)设备驱动器428;以及数据426。如本领域的技术人员将理解的,操作系统422可以是适用于由数据处理系统使用的任何操作系统,诸如来自在纽约的Armonk的国际商业机器公司的OS/2、AIX、System390或Z/OS、来自华盛顿Redmond的微软公司的Windows95、Windows98、Windows2000、WindowsXP或Windows7、Unix或Linux。I/O设备驱动器428通常包括应用程序424通过操作系统422访问以与诸如I/O数据端口416和特定存储器406组件的设备通信的软件例程。应用程序424图示了实现数据处理系统400的各种特征的程序,并且优选地包括支持根据本发明的实施例的操作的至少一个应用。最后,数据426表示由应用程序424、操作系统422、I/O设备428和可以驻留在存储器406中的其他软件程序使用的静态和动态数据。
如在图4中进一步看到的,应用程序424可以包括资源模型生成程序430和设计向导432。资源模型生成程序430可以是执行这里描述的操作以生成资源监视系统的客户应用。如果包括设计向导432,则设计向导432可以提供促进从设计人和/或用户获得在生成和评估候选资源监视系统中使用的信息的接口。设计向导432还可以被实现为资源模型生成程序430的一部分或者可以被一起省略。
如图4的实施例中所示,存储器406的数据部分426可以包括原始度量数据308的历史数据库。存储器406的数据部分426可以进一步包括导出的度量值的数据库310,并且还可以包括日志条目312。存储器406的数据部分426可以进一步包括各种其他数据集合(图4中未示出),诸如记录针对与候选资源监视系统有关的赋存和孔的所有可行组合生成的警报的数目的表和/或识别与每个这样的可能的(赋存,孔)组合相关联的假肯定和假否定的表。
尽管存储器406的资源模型生成程序430和数据部分426的组件在图4中被示出为是单个数据处理系统400的一部分,但是本领域的技术人员应当理解,可以在一个或多个数据处理系统中分布图示的功能和数据。例如,可以在与包括数据426的数据处理系统分离的一个或多个数据处理系统上提供资源模型生成程序430的功能。还应当理解,各种应用可以被包含在数据处理系统400的操作系统422或其他逻辑划分中。因此,本发明不应当被解释为限于图4的配置,而是意在包含在数据处理系统和/或能够执行这里描述的操作的配置之间的功能的任何布置、划分。
图5图示了根据本发明的其他实施例的用于选择资源监视系统的警报条件的操作。如图5中所示,通过使逻辑值与数据库中的至少一些条目组相关联来开始操作(框550)。数据库中的条目与多个度量的值相对应。如上所述,该数据库可以包括作为时间的函数的原始度量和/或导出的度量的值。可以使用现有数据库或者可以独立创建数据库。接下来,可以基于至少一些逻辑值和数据库中的至少一些条目来选择警报条件(框552)。在本发明的说明性实施例中,框552的操作可以包括使用逻辑值和数据库中的条目来针对至少一些度量确定用于阈值的值的可行范围,使得阈值将具有相对于度量的指定关系,并且然后基于确定的值的可行范围来选择警报条件。
图6图示了根据本发明的实施例的用于生成持久资源监视系统的操作。操作开始于提供具有关联警报条件的瞬时资源监视系统(框570)。该瞬时资源监视系统可以例如是预先存在的资源监视系统或如这里所描述的已开发的系统。在图6中,操作利用下述规范继续(1)资源监视系统的假肯定的可允许比率以及(2)资源监视系统的假否定的可允许比率(框672)。这些可允许比率不需要必须是绝对比率,而替代地可以表示在正常操作状况下的假肯定和假否定的“预期”最大比率。然后,可以评估候选持久性准则(框674)。这可以例如通过处理历史信息的数据库以估计如果被应用于多个不同持久性准则(即,赋存和孔的不同组合)(框674)则瞬时资源监视系统将采取的校正动作的次数来完成的。最后,多个持久性准则中的一个可以被选择为适用于瞬时资源监视系统以创建持久资源监视系统的持久性需要(框676)。这可以例如通过选择持久性准则来实现,该持久性准则实现了指定的假肯定和假否定准则(并且,可选地,任何响应性准则)。如果多个持久性准则满足假肯定和假否定准则,则满足假肯定和假否定准则并且具有最小时间间隔的持久性准则可以被选择。
下述示例图示了持久资源监视系统可以根据本发明的特定说明性实施例来开发。然而,应当注意,该示例仅用于说明性的目的,并且并不意在以任何方式限制本发明。还应注意,示例中存在的度量值是任意的,已经仅出于说明性目的被随机选取,并且各种表已经被简化为促进对该特定示例的解释。
首先,可以选择资源监视系统要实现的特定校正动作。所选择的校正动作可能是例如向系统操作员发出警报。接下来,选择将由资源监视系统监视的多个原始度量m1(t)、m2(t)...mn(t)。通常,将选择被认为是对资源监视系统尝试检测的情况的良好指示符的原始度量。所选择的原始度量可以但是不必相对于所选择的特定校正动作而变化。通常,信息在关于资源的先前操作期间所选择的原始度量中的至少一些的值的历史数据库中可用。在表3中描绘了包含这样的信息的示例性历史数据库。
时间 | m1(t) | m2(t) | … | mn(t) | 时间值 |
t1 | 4 | 0 | … | 10 | 112 |
t2 | 8 | 2 | … | 18 | 114 |
t3 | 10 | 93 | … | 26 | 116 |
t4 | 12 | 46 | … | 30 | 118 |
t5 | 18 | 21 | … | 33 | 120 |
t6 | 19 | 36 | … | 10 | 122 |
t7 | 24 | 62 | … | 18 | 124 |
t8 | 25 | 103 | … | 26 | 126 |
t9 | 32 | 20 | … | 30 | 128 |
t10 | 35 | 21 | … | 33 | 130 |
表3
接下来,选择将由资源监视系统使用的若干导出的度量D1、D2、D3。所选择的导出的度量如下:
D1(mi)=mi(t); (12)
D2(mi)=mi(t)-mi(t′); (13)
D3(mi)=[mi(t)-mi(t′)]/dt. (14)
接下来,来自历史数据库(表3)的原始度量和以上用于导出的度量的公式用于构建第二表,该第二表将原始度量值的历史数据库转换成导出的度量值的数据库。在袁4中描绘了所得到的数据库。
表4
接下来,逻辑值与导出的度量值的数据库中的每个条目相关联。如上所述,可以例如基于与在所选择的校正动作被发现在过去有效时产生的特定问题相对应的历史日志条目来选择逻辑值。因为目志条目具有时间戳,所以日志条目可以与在表4的导出的度量数据库中的特定条目相关联,使得特定逻辑值可以与数据库中的条目相关联。表5图示了可能与导出的度量数据库中的条目相关联的示例性逻辑值。如表5中所示,在该示例中,对于给定时间值,数据库中的所有条目都与相同的逻辑值相关联(这简化了该示例)。
时间 | D1(m1) | D2(m1) | D3(m1) | D1(m2) | D2(m2) | D3(m2) | … | D3(mn) | 逻辑值 |
t1 | 4 | - | - | 0 | - | - | … | - | 未承诺 |
t2 | 8 | 4 | 2 | 2 | 2 | 1 | … | 4 | 未承诺 |
t3 | 10 | 2 | 1 | 93 | 91 | 45.5 | … | 4 | 假 |
t4 | 12 | 2 | 1 | 46 | -47 | -23.5 | … | 2 | 未承诺 |
t5 | 18 | 6 | 3 | 21 | -25 | -l2.5 | … | 1.5 | 真 |
t6 | 19 | 1 | 0.5 | 36 | 15 | 7.5 | … | -11.5 | 未承诺 |
t7 | 24 | 5 | 2.5 | 62 | 26 | 13 | … | 4 | 未承诺 |
t8 | 25 | 1 | 0.5 | 103 | 41 | 20.5 | … | 4 | 未承诺 |
t9 | 32 | 7 | 3.5 | 20 | -83 | -42.5 | … | 2 | 未承诺 |
t10 | 35 | 3 | 1.5 | 21 | 1 | 0.5 | … | 1.5 | 未承诺 |
表5
接下来,表1中阐述的处理步骤用于处理具有真或假的关联逻辑值的导出的度量的历史数据库(表5)中的各个条目。以第一导出的度量D1(m1)开始,表5指示在时间t5,谓词G(D1(m1(t)),D1(m1(t′)),dt)是真,并且D1(m1)=18。类似地,表5指示了在时间t3,G(D1(m1(t)),D1(m1(t′)),dt)是假,并且D1(m1)=10。在其余的时间,对于G(D1(m1(t)),D1(m1(t′)),dt)作出未承诺。表6说明了根据在表1中阐述的情况描述算法的对该信息的处理。
表6
因此,对于导出的度量D1(m1),表1的算法产生了下述五元组:
<Metric,a,b,c,d>=<D1(m1),18,10,10,18>
因为间隔[a,b]不包含元素(即,不存在大于18但小于10的数),所以在如下示出的后续处理步骤中忽视该五元组的该部分。
接下来,以与上述关于导出的度量D1(m1)相同的方式来处理第二导出的度量D2(m1)。使用导出的度量值的数据库,发现在时间t5,D2(m1)=18-12=6,并且在时间t3,D2(m1)=10-8=2(这些仅仅是指定了真或假的逻辑值的两个时间)。表7说明了关于导出的度量D2(m1)的表1的情况描述算法的处理。
表7
因此,对于导出的度量D2(m1),表1的算法产生了下述五元组:
<Metric,a,b,c,d>=<D2(m1),6,2,2,6>
接下来,以相同的方式来处理第三导出的度量D3(m1)。在时间t5,D3(m1)=[18-12]/2=3,并且在时间t3,D3(m1)=[10-8]/2=1(这些再次仅仅是指定了真或假的逻辑值的两个时间)。表8说明了关于导出的度量D3(m1)的表1的情况描述算法的处理。
表8
因此,对于导出的度量D2(m1),表1的算法产生了下述五元组:
<Metric,a,b,c,d>=<D3(m1),3,1,1,3>
可以针对其余导出的度量D1(m2)、D2(m2)、D3(m2)、D1(m3)、D2(m3)、D3(m3),...3、1、1、3>中的每一个重复上述过程,以生成用于每个其他导出的度量的五元组。为了简化该示例,对于其余导出的度量的处理将不被示出,并且该示例将在根据仅单个原始度量来开发资源监视系统的假设下继续(并且因此,仅以上生成了五元组的三个导出的度量)。
接下来,可以执行等式8-11中阐述的算法以生成瞬时资源监视系统。将等式8-11应用于由在表6-8中说明的处理步骤所生成的三个五元组导致了下述候选瞬时资源模型:
COND=真并且D1(m1)≥10并且D2(m1)≥2并且D3(m1)≥1
在这一点,设计人可以选择来评估该模型,并且可能修改一些输入假定(诸如,指配的逻辑值或选择的度量),以进一步改善该模型,或者可以替代地选择首先通过执行下述操作来开发持久资源监视系统。
为了构建持久资源监视系统,获得了响应性、假肯定的可接受百分比和假否定的可接受百分比。这里,假定响应性被指定为11秒,可接受的假肯定百分比被指定为50%,并且可接受的假否定百分比被指定为40%。因为在该示例中的时间采样相距2秒(参见上面的表3),响应性规范指示了在持久资源模型做出关于是否需要校正动作的决定之前可以考虑最多5次采样的瞬时资源模型的结果。
接下来,导出的度量值的数据库中的数据用于确定每当采样被包括在数据库中时条件COND(即,用于瞬时资源模型的警报条件)是否被满足。如表9中所示,在时间t3、t4、t5、t7、t9和t10满足条件COND(即,存在“赋存”)。在导出的度量值的历史数据库中在其余的四个时间采样处不满足条件COND(即,存在“孔”)。
表9
然后,表9中的信息可以用于确定将由资源监视系统针对赋存和孔设置的组合(赋存,孔)或者在来自历史数据库的信息被馈送到资源监视系统中时的“持久性准则”而传递的警报的数目。这可以使用例如以上关于表2描述的示例性技术来实现。仅需要考虑在指定响应性准则的情况下可行的持久性准则。这里,术语(赋存,孔)被定义为在包括至少occ个赋存的数据库中的(赋存+孔)的相邻时间采样。因此,例如,如果至少两个时间采样包括赋存,则在数据库中的三个相邻时间采样满足持久性准则(赋存,孔)=(2,1)。然而,本领域的技术人员应当理解,对于“赋存”和“孔”的不同定义可以相对于资源监视系统来指定,并且本发明的方法、系统和计算机程序产品不限于对于赋存和孔的任何具体定义,但是可以适用于在任何给定定义的情况下使用。
然后,可以选择满足指定的假否定和假肯定的持久性准则以及任何响应性准则。然后,选择的持久性准则可以用作对瞬时资源监视系统的包裹(wrap-around)以用于构建持久资源监视系统。
因此,通过上述性能监视工具,时间序列的度量(包括原始度量和/或导出的度量)被收集到数据库中,然后使逻辑值真、假或未承诺与数据库中的至少一些值相关联。用户利用阈值来播种分析过程。该值描述了使用数据库值及其关联的逻辑值何时发布警报以及何时不发布警报。该分析过程是考虑瞬时警报准则和持久性(基于历史数据)警报准则的“情况描述”算法的一部分。该算法出于提供将管理警报表示的规则的目的来使用该准则。这些操作产生了能够监视计算系统环境度量以及关于是否需要生成和输出警报进行决定的系统。
在本发明的其他说明性实施例中,对先前描述的性能监视工具的各种操作做出改善。第一个改善将使用集群方法来得到度量,性能监视工具根据该度量来进行操作。第二个改善将利用分类算法来创建“情况描述”的规则。在第三替代改善中,主成分分析(PCA)、特征选择或因素分析操作、或探索性(exploratory)分析或者其他参数减少算法可以作为度量导出的一部分来执行。这样的PCA、特征选择或因素分析操作或者探索性分析主要识别驱动一个或多个从属度量数据变量的独立度量数据变量。应当理解,尽管这些其他说明性实施例这里被描述为对参考图3-图6描述的性能监视工具的改善,但是说明性实施例不限于此,并且实际上可以与任何性能监视工具一起使用,该任何性能监视工具对当前和/或历史度量数据进行操作,并且利用或生成性能监视规则以确定需要例如自动化动作、警报生成等的其他动作的条件。
集群分析或者“集群”是将数据指配到组(称为“集群”)的过程,从而使得相同集群中的数据在数据的一个或多个属性方面,与其他集群中的数据相比,彼此更相似。集群是可以在模式识别中使用的统计数据分析的类型。说明性实施例使用集群分析以及集群工具利用收集的度量数据来识别收集的数据中的模式,收集的度量数据可以是原始历史度量数据、原始当前度量数据、导出的历史或当前度量数据、或这些类型的数据中的两种或更多种的组合。特定的集群分析和工具可以实现很多不同类型的集群算法中的任何一种。可以利用的一种示例性集群算法是Kohonen-Net集群算法。可以在不背离说明性实施例的精神和范围的情况下使用其他类型的集群算法。
通过说明性实施例,根据度量数据的特定属性来定义集群,度量数据的特定属性例如是处理器利用率值、存储器利用率值、带宽利用率、丢弃分组频率、温度值、功率利用率等。因此,集群可以使两个或更多个度量与彼此、各种设备上或者在各种计算环境中的相同度量等相关,以便识别度量数据内的模式,例如,可以通过集群来使处理器利用率和存储器利用率相关,可以使带宽利用率和分组丢弃速率相关,可以通过集群使处理器利用率、存储器利用率和温度相关。可以使任何数目的度量彼此相关以生成集群。因此,例如,可以通过集群分析来识别表示高处理器利用率和高存储器利用率的第一集群,同时还可以识别低处理器利用率和高存储器利用率的第二集群。集群的组成的复杂度随着被组合来定义集群成员的度量的数目(在该说明书中还称为参数或维度)的增加而增加。因此,例如,用10个不同度量的组合定义的集群比用2个不同度量的组合定义的集群更复杂。
可以使用集群分析和集群工具来生成具有类似属性的度量分组而对原始度量数据值或导出的度量数据值进行集群。因此,例如,可以生成用于处理器利用率的度量数据点的集群,其指示例如在指定时间段中的处理器利用率值。因此,如果处理器利用率在指定时段期间10次处于80%,则生成具有在80%附近10个数据点的处于80%的处理器利用率的集群。类似地,其他处理器利用率值可以使用82%利用率、85%利用率等的集群来描绘,并且基于处理器利用率的相关相似度或不相似度,可以在原始或导出的度量数据值内定义集群。因此,例如,可以生成具有“处理器利用率>80%”的基本集群定义的简单集群。在执行集群分析之前,该集群定义规则是未知的,并且因此是提供对收集的度量数据的理解的集群分析操作的结果。说明性实施例利用这样的识别的集群定义规则来定义新的警报阈值规则,或者修改现有的警报阈值规则,如下文所述。
可以对于各种不同度量来执行这样的集群,针对其收集或获得原始和/或导出的度量数据。例如,度量可以是处理器利用率、存储器利用率、带宽利用率、丢弃分组速率或频率、温度值、功率利用率、错误通知生成频率或者关于在计算系统环境内的硬件和/或软件操作的多个其他计算系统环境度量中的任何一个。各种度量的集群向用户通知相对更频繁发生的度量数据的模式的性能监视工具或其他自动化机制。因此,例如,如果存在指示处理器利用率大于80%的处理器度量数据的高度填充的集群以及指示存储器利用率小于20%的存储器利用率度量数据的高度填充的集群,则在集群分析下可以确定在度量数据的预定时间帧内更频繁地发生这些模式。
集群之间的关系可以基于集群分析来手动地、半自动地或者自动地确定。这些关系可以经由分类算法来生成,分类算法例如根据各种集群的相对重要性和频率来对该集群进行分类,例如集群成员的相对数目或者定义集群内或集群之间的资源利用率的不同类的其他参数/维度和相应阈值。这样的相对重要性的确定可以基于集群的数学和/或统计比较来自动地确定。替代地,用户可以通过在执行集群分析之后由用户特定地选择集群或者通过用户指定用户感兴趣的度量数据来指定对于用户来说哪些集群具有重要性,用户感兴趣例如指相对于带宽利用率、温度和功率利用率度量,用户主要关心处理器利用率和存储器利用率。
因此,通过集群分析和集群关系识别,可以识别可能还不知道或者可从原始度量数据和/或导出的度量数据容易地辨识的计算系统环境的性能度量之间的关系。应当认识到,尽管对于相对小数目的度量,这样的关系可以被认为不重要,但是在实际实践中,通常通过性能监视工具来收集大量的不同度量,例如监视50个或更多的不同性能度量,并且对于该50个或更多的性能度量来收集性能度量数据。能够识别在大量性能度量之间的行为和关系的模式是极为困难、耗时的,并且对于用户来说还不很清楚。因此,说明性实施例的机制识别在收集的度量数据中的这样的模式、确定在这样的模式之间的关系,并且进一步如下所述,提供用于利用这些模式和关系的机制以定义新的性能监视规则和/或以自动化或半自动化方式改善现有的性能监视规则。
即,基于对于受监视的计算系统环境的性能来说哪些集群具有重要性的确定,可以基于定义集群成员的集群定义规则来生成性能监视规则。因此,在简单的示例中,假设集群分析在预定时间段内识别了处理器利用率和存储器利用率度量的4个重要的集群,例如,集群1用于处理器利用率>80%并且存储器利用率>80%,集群2用于处理器利用率>80%并且存储器利用率<20%,集群3用于处理器利用率<20%并且存储器利用率>80%,并且集群4用于处理器利用率<20%并且存储器利用率<20%。相对于其他集群,这些集群的重要性可以以很多不同的方式来确定,但是一种简单的重要性测量可以简单地是集群成员的数目。即,如果集群具有满足或超过预定阈值的成员资格,则集群可以被确定为相对于例如可能具有小于预定阈值的成员资格的其他集群而相对重要。还可以在不背离说明性实施例的精神和范围的情况下利用用于确定相对重要性的其他更复杂的机制。
对于说明性实施例的具体实现方式,扩展以上集群的示例,自动化系统可以通过性能监视工具来自动地、半自动地或者经由来自用户的手动输入,来确定以上4个集群具有用于生成警报的重要性。规则生成引擎可以用于取得这些识别的重要集群,确定用于该集群的基本集群定义规则,并且将该基本集群定义规则实现为性能监视规则或阈值条件。即,集群定义规则可以用于自动地生成一个或多个性能监视规则中的新的性能监视阈值条件。这样的新的规则可以替代现有的性能监视规则,或者可以用作下述规则的基础:搜索现有性能监视规则、识别类似的现有性能监视规则以及如果有的话对其进行修改以考虑具有重要性的集群的集群定义规则。
以该方式生成的性能监视规则可以在性能监视工具中采用,并且用作用于评估从计算系统环境生成和收集的未来性能度量数据的基础。基于使用性能监视工具执行的分析的结果,可以进行在这些性能监视规则中指定的阈值准则是否被满足的确定。阈值条件可以指定例如一个或多个值,度量数据可以与该一个或多个值作比较,以确定度量数据是否表示小于、等于或大于阈值准则/条件的度量值。例如,如上所述,阈值准则或条件可以具有处理器利用率>80%或者存储器利用率<20%的类型。性能监视规则可以指定这些阈值准则中的一个或多个。
基于阈值准则或条件是否被满足,性能监视工具可以确定是否应当执行一个或多个动作或操作。这样的动作/操作可以包含发送警报、指示应用操作、输出数据、生成日志报告或者多个其他动作/操作中的任何一个。因此,例如,如果性能监视规则指定了处理器利用率>80%并且存储器利用率<20%的阈值条件,并且从受监视的计算系统环境最新收集的度量数据指示处理器利用率大于80%并且存储器利用率小于20%,则可以执行动作,诸如生成发送到系统管理员工作站的警报、发起减少处理器利用率的操作,诸如通过将处理卸载到另一处理器上等。
因此,说明性实施例进一步提供了其中生成集群和自动化或半自动化性能监视阈值准则/规则的增强的说明性实施例。说明性实施例基于在度量数据中识别的重要性的关系,通过允许性能监视阈值准则/规则适用于从受到监视的计算系统环境收集的具体度量数据,来提供对前述静态或基于手动的过程的改善。集群通过利用作为用于定义性能监视阈值准则/规则的基础的定义集群的规则,来提供用于生成性能监视阈值准则/规则的基础。
图7是图示根据一个说明性实施例的性能监视工具规则生成引擎700的主要操作元件的框图。可以以软件、硬件或软件和硬件的任何组合来实现图7中所示的操作元件。在一个说明性实施例中,图7中的操作元件可以被实现为由诸如图4中的处理器408的一个或多个处理器利用诸如存储器406的一个或多个存储器执行的软件指令。因此,在一个说明性实施例中,图7的操作元件可以例如被实现为设计向导432、资源模型生成程序430的一部分或者被实现为结合这些其他应用程序进行操作的独立应用程序424。
如图7中所示,操作元件包括控制器705、一个或多个接口710、度量数据检索接口720、集群工具730、分类引擎740、性能监视规则生成引擎750以及性能监视工具接口760。控制器705控制性能监视工具规则生成引擎700的全面操作,并且操控其他元件710-760的操作。接口710提供数据通信路径,例如,用于向和从诸如资源模型生成程序430和设计向导432这样的其他应用程序和诸如历史数据库308、导出的度量数据库310和/或日志条目312这样的数据存储326传递数据。
度量数据检索接口720提供处理逻辑,用于从数据326或者其他度量数据存储中检索感兴趣的度量数据,并且对该度量数据执行预处理操作以便于促进其他元件的集群、分类和性能监视规则生成的操作。该预处理可以包含例如对度量数据执行主成分分析(PCA)、特征选择和/或探索性分析。此外,该预处理可以包含基于从数据存储326或其他数据存储系统检索的原始度量数据来生成导出的度量数据值。
为了进一步说明可以执行的预处理,将PCA用作示例,假设用于预处理的计算空间是来自通过“n”变量描述的类型x0,x1,x2...xj的IT解决方案的性能、能力和利用率度量的集合。因此,可以在n维向量空间中描述x。使用PCA,x可以被转换成新的集合z,这可以在“m”维的向量空间中进行描述,其中在不显著损失准确度的情况下m<n。使用m维上的观察z的新的集合,可以在不危害准确度的情况下执行进一步的分析。然而,因为维度被减小,所以该新的集合可以更加可管理。
为了使用PCA来实际执行该维度减小,可以利用其中在调整(如有必要)之前执行对计算空间的数据的平均归一化的通常已知的方法。计算该数据的协方差度量,从该协方差度量计算本征值和对应的本征向量。使用屏幕绘图来检查本征值以获悉应当考虑多少主成分。然后,使原始变量与这些主成分相关。如果该相关不清楚,则可以旋转主成分以与主要的主成分中的每一个应当映射成相应的一个变量的期望目标更好地匹配。在由此实现了减小的原始变量集合的情况下,说明性实施例然后可以利用这里描述的集群操作来继续。
特征选择是通过仅使用特征(即,维度)的子集来减少数据集合的维度的另一方式。而在PCA中,等同地对待所有的变量,利用特征选择,在尝试减小独立变量集合的目标下,识别从属变量集合,并且其他变量被标识为独立变量。冗余特征复制包含在一个或多个属性中的大多数或全部的信息。例如,CPU百分比和以毫秒为单位的CPU时间可以传递相同的信息。不相关的特征是不包含对于正在处理的任务来说有用的特征的另一方面。例如,WebSphere Process ID可以不必用于建模JVM存储器泄漏。冗余和不相关数据可以降低由这里描述的集群机制生成的集群的分类精准度和质量。公知的特征选择技术可以用于移除或减少该冗余和不相关数据。
在另一维度减少机制中,可以利用探索性数据分析。虽然初始地主要目的在于视觉发现,但是探索性数据分析包括从研究时间序列数据、分布图、相关度量OLAP等获得的描述性统计数据、初步异常值分析。不包括落入使用集群技术的数据挖掘范围内的更多所涉及的异常值分析和模式分析。然而,重要的步骤是在开始高负荷数据挖掘活动之前获得对于数据的适当“感觉”。这可以给出关于最终可以驱动使用哪个数据挖掘模型等的数据得非常深入的了解。
应当认识到,尽管可以使用这些预处理器机制、或者其他维度减少预处理机制中的任何一个,但是这并不是必需的。预处理操作是可选的,并且例如在数据的维度并没有复杂得足以保证维度减少的实例中或者在出于其他原因并不期望维度减少的情况下,预处理操作可能不是必要的。如果通过度量数据集合的预处理来执行维度减少操作,则集群工具730对原始度量数据或维度减少的度量数据进行操作。该度量数据可以是原始的初始度量数据或者导出的度量数据。
集群工具730对由度量数据检索接口720检索和处理的度量数据或导出的度量数据执行集群分析。在执行集群中,集群工具730主要生成定义集群成员的集群定义规则。即,通过对度量数据执行的集群分析,可以生成基于特定度量以及与这些特定度量相关联的特定最小值和最大值的集群。用于将数据点包括在集群中的对这些特定度量及其相关最大值/最小值的定义主要提供了集群的定义。在执行集群分析之前,并不知道该集群定义,而是作为集群分析的结果而生成。
集群工具730生成度量数据/导出的度量数据的集群,以由分类引擎740来使用,该分类引擎740根据重要性准则来对集群进行分类,该重要性准则是:经由用户接口(其可以是接口710中的一个)手动输入的,其中用户具体地识别了哪些集群将被视作对于性能监视规则生成来说是重要的;基于用户输入指定感兴趣的一般准则并且以其他方式基于该一般准则自动地识别重要的集群而半自动地确定的;或者全完自动地确定的,其中重要性准则和特定的重要集群通过自动化机制确定。可以在分类引擎740中指定各种分类准则,用于确定哪些集群被评估为对于性能规则生成来说是重要的。这些分类准则可以是用户定义或者自动地生成的。例如,用户可以指定在监视计算系统环境的性能时哪些集群对于用户来说具有特别的重要性。用户可以替代地指定重要的集群,并且这些集群的公共性可以由分类引擎740来自动确定,并且用作用于生成分类准则的基础。例如,可以基于经历分析的度量数据和导出的度量数据中的最频繁发生的特定度量来自动地生成分类准则。可以在不背离说明性实施例的精神和范围的情况下,使用用于定义分类准则的任何适当的机制。
基于分类准则,分类引擎740将特定的集群选择为要作为候选集群的重要集群,以生成包括一个或多个阈值准则的性能监视规则,可以将度量数据与该一个或多个阈值准则作比较。基于所选择的候选集群,性能监视规则生成引擎750基于与用于定义集群的成员的度量相关联的特定度量和准则来检索或以其他方式确定集群定义规则。然后,性能监视规则生成引擎750基于集群定义规则来生成性能监视规则。这可能包含集群定义规则转换成可以由特定性能监视工具770利用的性能监视规则,可能包含将多个集群定义规则合并成一个或多个性能监视规则的单个集合等。所得到的性能监视规则可以被存储用于稍后部署到性能监视工具770中。在一些说明性实施例中,可以经由接口710中的一个来向用户输出性能监视规则,使得用户可以授权或拒绝在性能监视工具770中的性能监视规则的实施。
性能监视工具接口760可以用于与性能监视工具770对接,该性能监视工具770进行操作以本领域公知的方式来监视具有多个计算系统资源的受监视的计算系统环境790的性能度量。然而,性能工具接口760提供数据通信路径,通过该数据通信路径,性能监视工具规则生成引擎700可以提供新的或修改的性能监视规则,该新的或修改的性能监视规则将由性能监视工具770来实现并且应用于由性能监视工具770从受监视的计算系统环境790收集的度量数据。因此,可以经由性能监视工具接口760向性能监视工具770输出由性能监视规则生成引擎750生成的性能监视规则。然后,性能监视工具770可以使用这些性能监视规则来基于性能监视规则中的阈值准则是否被性能监视工具770所收集的当前度量数据满足而确定是否发起动作/操作。
图8是概括根据一个说明性实施例的用于生成性能监视规则的示例性操作的流程图。图8中概括的操作可以例如由图7中的性能监视规则生成引擎700来实现。图8中概括的并且由性能监视规则生成引擎700执行的操作可以通过例如用户命令的手动干预或者通过自动化机制以任何期望的方式来发起,自动化机制例如预定义的调度,在受监视的计算系统环境中的事件的发生,例如错误状况发生、错误发生的数目等于或超过预定阈值等。
如图8中所示,操作开始于检索从受监视的计算系统环境收集的历史和/或当前原始/导出的度量数据,下文中称为“检索度量数据”(步骤810)。对检索到的度量数据执行可选参数减少操作,以识别驱动检索到的度量数据中的从属度量的主要独立度量(步骤820)。该参数减少或者前面称为维度减少的操作可以包括PCA、特征选择、探索性数据分析或其他参数/维度减少操作,以减少在执行稍后执行的集群时所考虑的参数/维度的数目。
此后,或者如果不执行参数减少操作,则对检索到的度量数据(或者如果执行参数减少操作,则为减少的度量数据)执行集群分析,以生成度量数据的集群(步骤830)。基于重要性准则来从由集群分析生成的多个集群中识别重要的集群(步骤840)。集群分析提供了关于各个集群的组成的信息,即,定义集群的维度或参数。如果集群由2个维度构成,诸如存储器利用率和处理器利用率,则集群组成的维度相对更易于确定。然而,如果集群由n个维度或参数构成,则变得更加难以识别集群的组成以及用于集群分离的基础。这肯定无法以手动方式实现。如果没有按照预处理操作来执行参数/维度减少,例如在820中,则这甚至更加困难。
因此,如上所述,在参数的维度或数目相对大的情况下,如可以基于维度/参数的预定阈值数目所确定的那样,执行维度/参数减少操作(步骤820)以减少作为对集群分析的输入的维度的数目(步骤830)。如上所述,对于存在相对少的参数/维度的情况来说这是可选的。
确定用于重要的集群的集群定义规则(步骤850)。这可能包含如上所述的分类操作,以检索确定集群组成的规则。例如,集群1可以是CPU>45%并且存储器>20%且<45%并且输入/输出(I/O)速率<15%(或者这在其他情况下可以在概率方面或者任何其他数学或统计测量方面来表达)。该重要集群的分类主要是视觉模式的数学提取(集群)。
然后,基于识别的重要的集群的集群定义规则来生成性能监视规则(步骤860)。然后,将性能监视规则输出到性能监视工具(步骤870),该性能监视工具将性能监视规则应用于未来收集的度量数据以基于是否满足(是否满意)性能监视规则中指定的阈值准则来确定是否发起动作/操作(步骤880)。然后,该操作终止。
如上所述,应当认识到,说明性实施例可以采用全部硬件实施例、全部软件实施例或包含硬件和软件元件的实施例的形式。在一个示例性实施例中,以软件或程序代码实现说明性实施例的机制,其包括但不限于固件、驻留软件、微代码等。
适用于存储和/或执行程序代码的数据处理系统包括通过系统总线直接或间接耦合到存储器元件的至少一个处理器。存储器元件可以包括程序代码的实际执行期间采用的本地存储器、批量存储以及提供对至少一些程序代码的临时存储的高速缓存存储器,以便减少在执行期间必须从批量存储中检索代码的次数。
输入/输出或I/O设备(包括但不限于键盘、显示器、指示设备等)可以直接或者通过中介I/O控制器来耦合到系统。网络适配器还可以耦合到系统,以使得数据处理系统能够变成通过中介专用或公共网络来耦合到其他数据处理系统或者远程打印机或者存储设备。调制解调器、有线调制解调器和以太网卡仅仅是当前可用类型的网络适配器中的一些。
已经出于说明和描述的目的呈现了对本发明的描述,并且并不意在是穷尽的或者将本发明限制为所公开的形式。很多修改和改变对于本领域的普通技术人员来说是明显的。为了最好地解释本发明的原理、实际应用并且使得其他本领域的普通技术人员能够理解本发明的具有各种修改的各种实施例而选取和描述所述实施例以适用于预期的特定用途。
Claims (14)
1.一种在数据处理系统中用于确定用于在性能监视工具内执行操作的阈值条件的方法,包括:
由所述数据处理系统从计算系统环境收集性能度量数据;
由所述数据处理系统执行对所述性能度量数据的集群分析,以针对一个或多个性能度量来生成性能度量数据的多个集群;
由所述数据处理系统在所述多个集群中选择作为用于生成用于性能监视的阈值条件的候选集群的一个或多个候选集群;
由所述数据处理系统基于所选择的一个或多个候选集群的组成生成用于性能监视的至少一个阈值条件;以及
将所述至少一个阈值条件应用于未来的性能度量数据,以响应于所述未来的性能度量数据满足或不满足所述至少一个阈值条件来确定是否执行操作。
2.根据权利要求1所述的方法,其中生成用于性能监视的至少一个阈值条件包括:
确定与所选择的一个或多个候选集群相关联的一个或多个集群定义规则,所述一个或多个集群定义规则是定义作为所选择的一个或多个候选集群的成员的度量数据值的规则;以及
基于所述一个或多个集群定义规则来生成用于性能监视的至少一个阈值条件。
3.根据权利要求2所述的方法,其中生成所述至少一个阈值条件包括:组合所述一个或多个集群定义规则的条件以指定定义所述至少一个阈值条件的所述条件之间的关系。
4.根据权利要求1所述的方法,其中所述操作是发布或输出警报消息的操作。
5.根据权利要求1所述的方法,其中所述操作是发起应用操作、输出数据或生成日志报告之一。
6.根据权利要求1所述的方法,其中所述性能度量数据是导出的性能度量数据,所述导出的性能度量数据是从获得自所述计算系统环境的组件的原始性能度量数据导出的。
7.根据权利要求1所述的方法,其中对所述性能度量数据执行集群分析进一步包括:
对所述性能度量数据执行参数减少操作以减少对其执行所述集群分析的所述性能度量数据内的参数的数目。
8.根据权利要求7所述的方法,其中所述参数减少操作至少包括主成分分析(PCA)、特征选择或因素分析操作、或者探索性分析之一。
9.根据权利要求1所述的方法,其中生成至少一个阈值条件进一步包括:搜索现有的阈值条件以找到与所生成的至少一个阈值条件类似的阈值条件,并且基于所生成的至少一个阈值条件来修改所述类似的阈值条件。
10.根据权利要求1所述的方法,其中在所述多个集群中选择作为用于生成用于性能监视的阈值条件的候选集群的一个或多个候选集群包括根据预定义的重要性准则来将所述多个集群中的集群分类成各类别。
11.根据权利要求10所述的方法,其中所述预定义的重要性准则至少通过下述之一来定义:
经由用户接口、通过用户具体地识别所述多个集群中的哪些集群将被选择来手动地定义,
基于用户输入指定一般重要性准则、并且基于所述一般重要性准则以其他方式自动地选择所述一个或多个候选集群来半自动地定义,或者
通过自动化机制基于对所述性能度量数据的分析而自动地定义所述预先定义的重要性准则来全自动地定义。
12.一种装置,包括:
处理器;以及
存储器,所述存储器耦合到所述处理器,其中所述存储器包括指令,所述指令在由所述处理器执行时,使得所述处理器:
从计算系统环境收集性能度量数据;
执行对所述性能度量数据的集群分析,以针对一个或多个性能度量生成性能度量数据的多个集群;
在所述多个集群中选择作为用于生成用于性能监视的阈值条件的候选集群的一个或多个候选集群;
基于所选择的一个或多个候选集群的组成来生成用于性能监视的至少一个阈值条件;以及
将所述至少一个阈值条件应用于未来的性能度量数据,以响应于所述未来的性能度量数据满足或不满足所述至少一个阈值条件来确定是否执行操作。
13.根据权利要求12所述的装置,其中所述指令进一步使得所述处理器通过下述步骤来生成用于性能监视的至少一个阈值条件:
确定与所选择的一个或多个候选集群相关联的一个或多个集群定义规则,所述一个或多个集群定义规则是定义作为所选择的一个或多个候选集群的成员的度量数据值的规则;以及
基于所述一个或多个集群定义规则来生成用于性能监视的至少一个阈值条件。
14.根据权利要求12所述的装置,其中所述指令进一步使得所述处理器通过下述步骤来执行对所述性能度量数据的集群分析:
对所述性能度量数据执行参数减少操作以减少对其执行所述集群分析的所述性能度量数据内的参数的数目。
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US13/531,616 | 2012-06-25 | ||
US13/531,616 US9378112B2 (en) | 2012-06-25 | 2012-06-25 | Predictive alert threshold determination tool |
Publications (2)
Publication Number | Publication Date |
---|---|
CN103513983A true CN103513983A (zh) | 2014-01-15 |
CN103513983B CN103513983B (zh) | 2017-04-12 |
Family
ID=49775378
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201310244928.XA Expired - Fee Related CN103513983B (zh) | 2012-06-25 | 2013-06-19 | 用于预测性警报阈值确定工具的方法和系统 |
Country Status (2)
Country | Link |
---|---|
US (2) | US9378112B2 (zh) |
CN (1) | CN103513983B (zh) |
Cited By (14)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN105940637A (zh) * | 2014-02-27 | 2016-09-14 | 英特尔公司 | 用于机架级架构计算系统的工作负荷优化、调度和布置 |
CN106464526A (zh) * | 2014-05-15 | 2017-02-22 | 华为技术有限公司 | 检测异常的系统与方法 |
CN106528367A (zh) * | 2015-09-15 | 2017-03-22 | 阿里巴巴集团控股有限公司 | 对象的监测方法及装置 |
CN107408062A (zh) * | 2015-03-27 | 2017-11-28 | 英特尔公司 | 用于卸载和加载处理器/协处理器安排的数据的技术 |
CN107831737A (zh) * | 2016-09-16 | 2018-03-23 | 霍尼韦尔有限公司 | 用于横向过程行为监视的利用支持向量机的模型工厂失配检测 |
CN107992365A (zh) * | 2017-12-11 | 2018-05-04 | 成都睿码科技有限责任公司 | 一种利用废旧手机建立移动设备集群的方法 |
CN108270772A (zh) * | 2016-12-30 | 2018-07-10 | 瑞士优北罗股份有限公司 | 监视多个联网设备的监视装置、设备监视系统和方法 |
CN108984320A (zh) * | 2018-06-27 | 2018-12-11 | 郑州云海信息技术有限公司 | 一种消息队列集群防脑裂方法及装置 |
CN109155151A (zh) * | 2016-05-19 | 2019-01-04 | 皇家飞利浦有限公司 | 用于基于不一致性度量根据生物数据的亚群检测的方法、系统和装置 |
CN110268387A (zh) * | 2016-12-07 | 2019-09-20 | 甲骨文国际公司 | 为周期性操作选择开始时间 |
CN110602625A (zh) * | 2019-09-06 | 2019-12-20 | 中国安全生产科学研究院 | 集群音频警报系统巡检方法及装置 |
CN111158909A (zh) * | 2019-12-27 | 2020-05-15 | 中国联合网络通信集团有限公司 | 集群资源分配处理方法、装置、设备及存储介质 |
CN112740133A (zh) * | 2018-09-24 | 2021-04-30 | Abb瑞士股份有限公司 | 监测技术设备的技术状态的系统和方法 |
CN112882920A (zh) * | 2021-04-29 | 2021-06-01 | 云账户技术(天津)有限公司 | 告警策略验证方法、装置、电子设备和可读存储介质 |
Families Citing this family (54)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20140032738A1 (en) * | 2012-07-24 | 2014-01-30 | Sudip S. Chahal | Method, apparatus and system for estimating subscription headroom for a storage pool |
US20150133076A1 (en) * | 2012-11-11 | 2015-05-14 | Michael Brough | Mobile device application monitoring software |
US20150081880A1 (en) * | 2013-09-17 | 2015-03-19 | Stackdriver, Inc. | System and method of monitoring and measuring performance relative to expected performance characteristics for applications and software architecture hosted by an iaas provider |
EP2894813A1 (en) * | 2014-01-08 | 2015-07-15 | Telefonaktiebolaget L M Ericsson (publ) | Technique for creating a knowledge base for alarm management in a communications network |
US9734035B1 (en) * | 2014-05-02 | 2017-08-15 | Amazon Technologies, Inc. | Data quality |
US10540606B2 (en) | 2014-06-30 | 2020-01-21 | Amazon Technologies, Inc. | Consistent filtering of machine learning data |
US10102480B2 (en) * | 2014-06-30 | 2018-10-16 | Amazon Technologies, Inc. | Machine learning service |
US10169715B2 (en) | 2014-06-30 | 2019-01-01 | Amazon Technologies, Inc. | Feature processing tradeoff management |
US9692654B2 (en) * | 2014-08-19 | 2017-06-27 | Benefitfocus.Com, Inc. | Systems and methods for correlating derived metrics for system activity |
US20160104091A1 (en) * | 2014-10-09 | 2016-04-14 | Splunk Inc. | Time varying static thresholds |
US9985851B2 (en) * | 2014-12-19 | 2018-05-29 | Ca, Inc. | Controlling reporting by an instrument encapsulation module encapsulating an application program on a user terminal |
US9569118B2 (en) | 2014-12-30 | 2017-02-14 | International Business Machines Corporation | Promoting consistent response times in a data storage system having multiple data retrieval mechanisms |
US11283697B1 (en) * | 2015-03-24 | 2022-03-22 | Vmware, Inc. | Scalable real time metrics management |
US9940187B2 (en) * | 2015-04-17 | 2018-04-10 | Microsoft Technology Licensing, Llc | Nexus determination in a computing device |
US10282458B2 (en) * | 2015-06-15 | 2019-05-07 | Vmware, Inc. | Event notification system with cluster classification |
US10536355B1 (en) * | 2015-06-17 | 2020-01-14 | EMC IP Holding Company LLC | Monitoring and analytics system |
US11683234B2 (en) | 2015-07-14 | 2023-06-20 | Netflix, Inc. | Server outlier detection |
US10594562B1 (en) | 2015-08-25 | 2020-03-17 | Vmware, Inc. | Intelligent autoscale of services |
CN105304008B (zh) * | 2015-11-18 | 2018-10-30 | 深圳市华星光电技术有限公司 | 栅极驱动器及具有该栅极驱动器的触控面板 |
US10931548B1 (en) | 2016-03-28 | 2021-02-23 | Vmware, Inc. | Collecting health monitoring data pertaining to an application from a selected set of service engines |
US20170364581A1 (en) * | 2016-06-16 | 2017-12-21 | Vmware, Inc. | Methods and systems to evaluate importance of performance metrics in data center |
US10642805B1 (en) * | 2016-12-12 | 2020-05-05 | Amazon Technologies, Inc. | System for determining queries to locate data objects |
US10304263B2 (en) * | 2016-12-13 | 2019-05-28 | The Boeing Company | Vehicle system prognosis device and method |
US10949535B2 (en) | 2017-09-29 | 2021-03-16 | Microsoft Technology Licensing, Llc | Security model training and threshold selection |
US11126927B2 (en) * | 2017-11-24 | 2021-09-21 | Amazon Technologies, Inc. | Auto-scaling hosted machine learning models for production inference |
US10755213B2 (en) * | 2018-01-10 | 2020-08-25 | Bank Of America Corporation | System for resource utilization analysis and resource alteration |
CN108429649B (zh) * | 2018-03-23 | 2020-11-06 | 国家计算机网络与信息安全管理中心 | 基于多次单类型采集结果的综合异常判断的系统 |
US10999168B1 (en) | 2018-05-30 | 2021-05-04 | Vmware, Inc. | User defined custom metrics |
US10810069B2 (en) | 2018-07-17 | 2020-10-20 | Accenture Global Solutions Limited | Data processing for component failure determination |
US10936401B2 (en) * | 2018-08-02 | 2021-03-02 | Dell Products L.P. | Device operation anomaly identification and reporting system |
US10896001B1 (en) | 2018-09-27 | 2021-01-19 | Amazon Technologies, Inc. | Notifications in integrated circuits |
US10803007B1 (en) | 2018-09-28 | 2020-10-13 | Amazon Technologies, Inc. | Reconfigurable instruction |
WO2020086956A1 (en) | 2018-10-26 | 2020-04-30 | Vmware, Inc. | Collecting samples hierarchically in a datacenter |
US10956248B1 (en) | 2018-11-26 | 2021-03-23 | Amazon Technologies, Inc. | Configurable reporting for device conditions |
US10949321B1 (en) * | 2018-11-26 | 2021-03-16 | Amazon Technologies, Inc. | Operational management of a device |
US11281967B1 (en) | 2018-12-11 | 2022-03-22 | Amazon Technologies, Inc. | Event-based device performance monitoring |
US11416749B2 (en) | 2018-12-11 | 2022-08-16 | Amazon Technologies, Inc. | Execution synchronization and tracking |
US11138366B2 (en) * | 2019-02-25 | 2021-10-05 | Allstate Insurance Company | Systems and methods for automated code validation |
US11494690B2 (en) * | 2019-03-15 | 2022-11-08 | Hong Kong Applied Science and Technology Research Institute Company Limited | Apparatus and method of high dimensional data analysis in real-time |
US11582120B2 (en) | 2019-05-30 | 2023-02-14 | Vmware, Inc. | Partitioning health monitoring in a global server load balancing system |
US11334410B1 (en) * | 2019-07-22 | 2022-05-17 | Intuit Inc. | Determining aberrant members of a homogenous cluster of systems using external monitors |
US11586472B2 (en) * | 2019-12-10 | 2023-02-21 | Advanced Micro Devices, Inc. | Method of task transition between heterogenous processors |
US11641665B2 (en) | 2020-09-09 | 2023-05-02 | Self Financial, Inc. | Resource utilization retrieval and modification |
US11475010B2 (en) | 2020-09-09 | 2022-10-18 | Self Financial, Inc. | Asynchronous database caching |
US20220075877A1 (en) | 2020-09-09 | 2022-03-10 | Self Financial, Inc. | Interface and system for updating isolated repositories |
US11212195B1 (en) * | 2020-09-11 | 2021-12-28 | Microsoft Technology Licensing, Llc | IT monitoring recommendation service |
US20230396900A1 (en) * | 2020-10-27 | 2023-12-07 | Hewlett-Packard Development Company, L.P. | Configuration page notification items based on environmental conditions |
JP2024502944A (ja) * | 2020-12-21 | 2024-01-24 | ジェネシス クラウド サービシーズ インコーポレイテッド | 適用される異常検出及びコンタクトセンターコンピューティング環境に関連するシステム及び方法 |
US11301312B1 (en) * | 2021-01-06 | 2022-04-12 | Vmware, Inc. | Error logging during system boot and shutdown |
US11811861B2 (en) | 2021-05-17 | 2023-11-07 | Vmware, Inc. | Dynamically updating load balancing criteria |
US11792155B2 (en) | 2021-06-14 | 2023-10-17 | Vmware, Inc. | Method and apparatus for enhanced client persistence in multi-site GSLB deployments |
US11726894B2 (en) * | 2021-08-12 | 2023-08-15 | Sap Se | Runtime entropy-based software operators |
US20230206117A1 (en) * | 2021-12-29 | 2023-06-29 | Cerner Innovation, Inc. | System, methods, and processes for model performance aggregation |
CN115774653A (zh) * | 2023-02-15 | 2023-03-10 | 江西飞尚科技有限公司 | 预警研判方法、系统、可读存储介质及计算机设备 |
Citations (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20030079160A1 (en) * | 2001-07-20 | 2003-04-24 | Altaworks Corporation | System and methods for adaptive threshold determination for performance metrics |
US20040088406A1 (en) * | 2002-10-31 | 2004-05-06 | International Business Machines Corporation | Method and apparatus for determining time varying thresholds for monitored metrics |
CN1604040A (zh) * | 2003-09-29 | 2005-04-06 | 国际商业机器公司 | 主事务处理系统中的动态事务控制 |
CN101093456A (zh) * | 2006-06-21 | 2007-12-26 | 国际商业机器公司 | 使用性能监视器优化系统性能的系统和方法 |
US20080016412A1 (en) * | 2002-07-01 | 2008-01-17 | Opnet Technologies, Inc. | Performance metric collection and automated analysis |
CN101938939A (zh) * | 2008-02-07 | 2011-01-05 | 皇家飞利浦电子股份有限公司 | 用于测量和预测患者呼吸稳定性的装置 |
US20110238376A1 (en) * | 2010-03-26 | 2011-09-29 | Bmc Software, Inc. | Automatic Determination of Dynamic Threshold for Accurate Detection of Abnormalities |
Family Cites Families (12)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6430539B1 (en) | 1999-05-06 | 2002-08-06 | Hnc Software | Predictive modeling of consumer financial behavior |
US6839468B1 (en) | 2000-06-28 | 2005-01-04 | International Business Machines Corporation | Scaling of multi-dimensional data in a hybrid domain |
AU2002316479A1 (en) * | 2001-07-03 | 2003-01-21 | Altaworks Corporation | System and methods for monitoring performance metrics |
US7017186B2 (en) | 2002-07-30 | 2006-03-21 | Steelcloud, Inc. | Intrusion detection system using self-organizing clusters |
US6970804B2 (en) * | 2002-12-17 | 2005-11-29 | Xerox Corporation | Automated self-learning diagnostic system |
EP1494127A1 (en) | 2003-07-01 | 2005-01-05 | Semeion | Method, computer program and computer readable means for projecting data from a multidimensional space into a space having less dimensions and to carry out a cognitive analysis on said data. |
US7299367B2 (en) | 2003-11-07 | 2007-11-20 | International Business Machines Corporation | Methods, systems and computer program products for developing resource monitoring systems from observational data |
US8108929B2 (en) * | 2004-10-19 | 2012-01-31 | Reflex Systems, LLC | Method and system for detecting intrusive anomalous use of a software system using multiple detection algorithms |
US20080229415A1 (en) | 2005-07-01 | 2008-09-18 | Harsh Kapoor | Systems and methods for processing data flows |
US7484132B2 (en) * | 2005-10-28 | 2009-01-27 | International Business Machines Corporation | Clustering process for software server failure prediction |
US8990811B2 (en) * | 2007-10-19 | 2015-03-24 | Oracle International Corporation | Future-based performance baselines |
US8578023B2 (en) * | 2011-07-29 | 2013-11-05 | Hewlett-Packard Development Company, L.P. | Computer resource utilization modeling for multiple workloads |
-
2012
- 2012-06-25 US US13/531,616 patent/US9378112B2/en not_active Expired - Fee Related
-
2013
- 2013-06-19 CN CN201310244928.XA patent/CN103513983B/zh not_active Expired - Fee Related
-
2016
- 2016-01-08 US US14/990,842 patent/US9471457B2/en not_active Expired - Fee Related
Patent Citations (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20030079160A1 (en) * | 2001-07-20 | 2003-04-24 | Altaworks Corporation | System and methods for adaptive threshold determination for performance metrics |
US20080016412A1 (en) * | 2002-07-01 | 2008-01-17 | Opnet Technologies, Inc. | Performance metric collection and automated analysis |
US20040088406A1 (en) * | 2002-10-31 | 2004-05-06 | International Business Machines Corporation | Method and apparatus for determining time varying thresholds for monitored metrics |
CN1604040A (zh) * | 2003-09-29 | 2005-04-06 | 国际商业机器公司 | 主事务处理系统中的动态事务控制 |
CN101093456A (zh) * | 2006-06-21 | 2007-12-26 | 国际商业机器公司 | 使用性能监视器优化系统性能的系统和方法 |
CN101938939A (zh) * | 2008-02-07 | 2011-01-05 | 皇家飞利浦电子股份有限公司 | 用于测量和预测患者呼吸稳定性的装置 |
US20110238376A1 (en) * | 2010-03-26 | 2011-09-29 | Bmc Software, Inc. | Automatic Determination of Dynamic Threshold for Accurate Detection of Abnormalities |
Cited By (23)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN105940637B (zh) * | 2014-02-27 | 2020-03-31 | 英特尔公司 | 用于机架级架构计算系统的工作负荷优化、调度和布置的方法和装置 |
CN105940637A (zh) * | 2014-02-27 | 2016-09-14 | 英特尔公司 | 用于机架级架构计算系统的工作负荷优化、调度和布置 |
US10404547B2 (en) | 2014-02-27 | 2019-09-03 | Intel Corporation | Workload optimization, scheduling, and placement for rack-scale architecture computing systems |
CN106464526A (zh) * | 2014-05-15 | 2017-02-22 | 华为技术有限公司 | 检测异常的系统与方法 |
CN106464526B (zh) * | 2014-05-15 | 2020-02-14 | 华为技术有限公司 | 检测异常的系统与方法 |
CN107408062B (zh) * | 2015-03-27 | 2021-09-07 | 英特尔公司 | 用于卸载和加载处理器/协处理器安排的数据的技术 |
CN107408062A (zh) * | 2015-03-27 | 2017-11-28 | 英特尔公司 | 用于卸载和加载处理器/协处理器安排的数据的技术 |
CN106528367B (zh) * | 2015-09-15 | 2019-01-29 | 阿里巴巴集团控股有限公司 | 对象的监测方法及装置 |
CN106528367A (zh) * | 2015-09-15 | 2017-03-22 | 阿里巴巴集团控股有限公司 | 对象的监测方法及装置 |
CN109155151A (zh) * | 2016-05-19 | 2019-01-04 | 皇家飞利浦有限公司 | 用于基于不一致性度量根据生物数据的亚群检测的方法、系统和装置 |
CN107831737A (zh) * | 2016-09-16 | 2018-03-23 | 霍尼韦尔有限公司 | 用于横向过程行为监视的利用支持向量机的模型工厂失配检测 |
CN110268387B (zh) * | 2016-12-07 | 2023-10-13 | 甲骨文国际公司 | 为周期性操作选择开始时间 |
CN110268387A (zh) * | 2016-12-07 | 2019-09-20 | 甲骨文国际公司 | 为周期性操作选择开始时间 |
CN108270772A (zh) * | 2016-12-30 | 2018-07-10 | 瑞士优北罗股份有限公司 | 监视多个联网设备的监视装置、设备监视系统和方法 |
CN108270772B (zh) * | 2016-12-30 | 2023-09-01 | 瑞士优北罗股份有限公司 | 监视多个联网设备的监视装置、设备监视系统和方法 |
CN107992365A (zh) * | 2017-12-11 | 2018-05-04 | 成都睿码科技有限责任公司 | 一种利用废旧手机建立移动设备集群的方法 |
CN108984320A (zh) * | 2018-06-27 | 2018-12-11 | 郑州云海信息技术有限公司 | 一种消息队列集群防脑裂方法及装置 |
CN112740133A (zh) * | 2018-09-24 | 2021-04-30 | Abb瑞士股份有限公司 | 监测技术设备的技术状态的系统和方法 |
CN110602625A (zh) * | 2019-09-06 | 2019-12-20 | 中国安全生产科学研究院 | 集群音频警报系统巡检方法及装置 |
CN111158909A (zh) * | 2019-12-27 | 2020-05-15 | 中国联合网络通信集团有限公司 | 集群资源分配处理方法、装置、设备及存储介质 |
CN111158909B (zh) * | 2019-12-27 | 2023-07-25 | 中国联合网络通信集团有限公司 | 集群资源分配处理方法、装置、设备及存储介质 |
CN112882920A (zh) * | 2021-04-29 | 2021-06-01 | 云账户技术(天津)有限公司 | 告警策略验证方法、装置、电子设备和可读存储介质 |
CN112882920B (zh) * | 2021-04-29 | 2021-06-29 | 云账户技术(天津)有限公司 | 告警策略验证方法、装置、电子设备和可读存储介质 |
Also Published As
Publication number | Publication date |
---|---|
US20130346594A1 (en) | 2013-12-26 |
US9471457B2 (en) | 2016-10-18 |
US20160124830A1 (en) | 2016-05-05 |
CN103513983B (zh) | 2017-04-12 |
US9378112B2 (en) | 2016-06-28 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN103513983A (zh) | 用于预测性警报阈值确定工具的方法和系统 | |
US20220147405A1 (en) | Automatically scalable system for serverless hyperparameter tuning | |
US10311044B2 (en) | Distributed data variable analysis and hierarchical grouping system | |
US10621027B2 (en) | IT system fault analysis technique based on configuration management database | |
US11488055B2 (en) | Training corpus refinement and incremental updating | |
US9317829B2 (en) | Diagnosing incidents for information technology service management | |
EP3591586A1 (en) | Data model generation using generative adversarial networks and fully automated machine learning system which generates and optimizes solutions given a dataset and a desired outcome | |
US9589045B2 (en) | Distributed clustering with outlier detection | |
US20210097343A1 (en) | Method and apparatus for managing artificial intelligence systems | |
US10883345B2 (en) | Processing of computer log messages for visualization and retrieval | |
CN110084326B (zh) | 一种基于模糊集的工业设备异常检测方法 | |
JP2016100005A (ja) | リコンサイル方法、プロセッサ及び記憶媒体 | |
US11741379B2 (en) | Automated resolution of over and under-specification in a knowledge graph | |
US20220284340A1 (en) | Determining digital personas utilizing data-driven analytics | |
Gu et al. | Improving the quality of web-based data imputation with crowd intervention | |
Bhowmik | Machine Learning in Production: From Experimented ML Model to System | |
CN112860652A (zh) | 作业状态预测方法、装置和电子设备 | |
KR20190038526A (ko) | 구성정보 관리 데이터베이스 기반의 it 시스템 장애 분석 기법 | |
LYU et al. | Alarm-Based Root Cause Analysis Based on Weighted Fault Propagation Topology for Distributed Information Network | |
CN117539920B (zh) | 基于房产交易多维度数据的数据查询方法及系统 | |
Zheng et al. | Truth discovery on multi-dimensional properties of data sources | |
US20240185133A1 (en) | Root cause discovery engine | |
US20220245469A1 (en) | Decision Making Using Integrated Machine Learning Models and Knowledge Graphs | |
Cheng et al. | An end-to-end distance measuring for mixed data based on deep relevance learning | |
Wu et al. | Storage and Query Indexing Methods on Big Data |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant | ||
CF01 | Termination of patent right due to non-payment of annual fee |
Granted publication date: 20170412 |
|
CF01 | Termination of patent right due to non-payment of annual fee |