CN109074300A - 检测和预测复杂系统中的瓶颈 - Google Patents
检测和预测复杂系统中的瓶颈 Download PDFInfo
- Publication number
- CN109074300A CN109074300A CN201780023677.9A CN201780023677A CN109074300A CN 109074300 A CN109074300 A CN 109074300A CN 201780023677 A CN201780023677 A CN 201780023677A CN 109074300 A CN109074300 A CN 109074300A
- Authority
- CN
- China
- Prior art keywords
- software module
- resource
- communication channel
- module
- bottleneck
- 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.)
- Pending
Links
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N5/00—Computing arrangements using knowledge-based models
- G06N5/04—Inference or reasoning models
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/22—Detection or location of defective computer hardware by testing during standby operation or during idle time, e.g. start-up testing
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/30—Monitoring
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/30—Monitoring
- G06F11/3003—Monitoring arrangements specially adapted to the computing system or computing system component being monitored
- G06F11/302—Monitoring arrangements specially adapted to the computing system or computing system component being monitored where the computing system component is a software system
-
- 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/3442—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 planning or managing the needed capacity
-
- 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/3452—Performance evaluation by statistical analysis
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/46—Multiprogramming arrangements
- G06F9/50—Allocation of resources, e.g. of the central processing unit [CPU]
- G06F9/5005—Allocation of resources, e.g. of the central processing unit [CPU] to service a request
- G06F9/5027—Allocation of resources, e.g. of the central processing unit [CPU] to service a request the resource being a machine, e.g. CPUs, Servers, Terminals
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/46—Multiprogramming arrangements
- G06F9/50—Allocation of resources, e.g. of the central processing unit [CPU]
- G06F9/5005—Allocation of resources, e.g. of the central processing unit [CPU] to service a request
- G06F9/5027—Allocation of resources, e.g. of the central processing unit [CPU] to service a request the resource being a machine, e.g. CPUs, Servers, Terminals
- G06F9/505—Allocation of resources, e.g. of the central processing unit [CPU] to service a request the resource being a machine, e.g. CPUs, Servers, Terminals considering the load
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/46—Multiprogramming arrangements
- G06F9/50—Allocation of resources, e.g. of the central processing unit [CPU]
- G06F9/5083—Techniques for rebalancing the load in a distributed system
- G06F9/5088—Techniques for rebalancing the load in a distributed system involving task migration
-
- 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/865—Monitoring of software
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- General Engineering & Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Software Systems (AREA)
- Quality & Reliability (AREA)
- Computing Systems (AREA)
- Computer Hardware Design (AREA)
- Mathematical Physics (AREA)
- Evolutionary Biology (AREA)
- Probability & Statistics with Applications (AREA)
- Bioinformatics & Computational Biology (AREA)
- Bioinformatics & Cheminformatics (AREA)
- Life Sciences & Earth Sciences (AREA)
- Artificial Intelligence (AREA)
- Computational Linguistics (AREA)
- Data Mining & Analysis (AREA)
- Evolutionary Computation (AREA)
- Debugging And Monitoring (AREA)
Abstract
提供了一种用于检测系统中的瓶颈的方法、计算机系统和计算机程序产品。该方法包括接收一个图(102),其中节点表示软件模块,边表示软件模块之间的通信信道,监视每个软件模块的所选资源,与可用资源相比较(104),监视通信信道上消耗的带宽与可用带宽的比率(106),遍历该图,用于识别其产生的输出量低于处于空闲模式的软件模块所需的输出量的源软件模块(108),并分析所识别的源软件模块的资源消耗,以识别所识别的源软件模块的资源的缺乏量(110)。
Description
背景技术
本发明一般涉及一种用于检测系统中的瓶颈的方法,更具体地,涉及一种使用图的方法,在该图中,节点表示软件模块,图的边表示通信信道。本发明还涉及一种用于检测系统中的瓶颈的瓶颈识别系统,以及一种计算机程序产品。
如今,软件解决方案通常包含许多相互通信的端点(endpoint),其中许多端点同时充当数据生产者和消费者。其中一个端点/软件模块可能会发生性能不佳,这通常会影响整个解决方案的整体性能。此外,端点的性能不仅取决于运行它的硬件,还取决于其他因素,例如,在同一机器上运行的其他软件模块,可能是物理机或虚拟机。隔离系统中瓶颈的根本原因-特别是间歇性存在-可能难以检测、隔离和消除。原因在于性能瓶颈可能有多种原因。可能没有足够的计算资源,例如主存储器或外部存储容量,交换文件太大或太小,通信带宽不足,太多用户试图用相同的软件模块做同样的事情等等。即使对于有经验的系统设计师和架构师来说,找到性能问题的真正原因也可能是一项繁琐的任务。支持此类分析的工具数量仍然有限,并且通常基于过去的静态信息。因此,可能需要更复杂的支持来隔离系统中的瓶颈。
发明内容
如本文所公开的,由计算机执行的用于检测系统中的瓶颈的方法包括,接收一个图,其中节点表示软件模块,边表示软件模块之间的通信信道,监视用于每个软件模块的所选资源,与可用资源相比较,监视通信信道上消耗的带宽与可用带宽的比率,遍历该图,用于识别其产生的输出量低于处于空闲模式的所述软件模块所需的所述输出量的源软件模块,以及,分析所识别的源软件模块的资源消耗,以识别所识别的源软件模块的资源的缺乏量。本文还公开了对应于上述方法的计算机系统和计算机程序产品。
附图说明
图1是描绘根据本发明的实施例的用于检测系统中的瓶颈的本发明方法的示例的框图;
图2是描绘根据本发明的实施例的本发明方法的一般模型的示例的图;
图3是描绘根据本发明的实施例的包括元件(element)网络的系统的示例的框图;
图4是描绘根据本发明实施例的用于检测系统中的瓶颈的瓶颈检测系统的示例的框图;以及
图5示出了包括用于检测系统中的瓶颈的系统的计算系统的实施例。
具体实施方式
根据本发明的一个方面,可以提供一种用于检测系统中的瓶颈的方法。该系统可以包括通过通信信道彼此通信的软件模块。该方法可以包括接收一个图。在该图中,节点可以表示软件模块之一,边可以表示通信信道之一,其中数据流从软件模块中的发送软件模块流到所述软件模块中的接收软件模块。表示软件模块的节点可以用作发送软件模块和接收软件模块,并且可以涉及表示输入数据的接收量与从输入数据导出的输出数据的产生量的预期比率的预定义因子。
该方法可以进一步包括,为每个软件模块针对所选资源监视软件模块消耗的资源量与资源的可用量的比率,为每个通信信道监视一个通信信道消耗的带宽与该通信信道上的可用带宽的比率,以及该通信信道的空闲时间量;对于处于空闲模式的软件模块,遍历图,用于识别其产生的输出量低于处于空闲模式的所述软件模块所需的所述输出量的源软件模块,以及,分析所识别的源软件模块的资源消耗,以识别所识别的源软件模块的资源的缺乏量。
根据本发明的另一方面,可以提供一种用于检测系统中的瓶颈的瓶颈识别系统。而且,该系统可以包括通过通信信道彼此通信的软件模块。该系统可以包括适于接收一个图的接收单元,在该图中,节点可以表示软件模块之一,边可以表示通信信道之一,其中数据流从软件模块中的发送软件模块流到软件模块中的接收软件模块。表示软件模块的节点可以用作发送软件模块和接收软件模块-特别是同时-并且可以涉及表示输入数据的接收量与从输入数据导出的输出数据的产生量的预期比率的预定义因子。该系统还可以包括监视单元,其适于为每个软件模块针对所选资源监视软件模块消耗的资源量与资源的可用量的比率。监视单元还可以适于为每个通信信道监视一个通信信道消耗的带宽与该通信信道的可用带宽的比率,以及该通信信道的空闲时间量。遍历模块可以适于对于处于空闲模式的软件模块遍历图,用于识别其产生的输出量低于处于空闲模式的所述软件模块所需的所述输出量的源软件模块,以及分析模块可以适于分析所识别的源软件模块的资源消耗,以识别所识别的源软件模块的资源的缺乏量。
此外,实施例可以采取相关计算机程序产品的形式,其可从计算机可用或计算机可读介质访问,该计算机可用或计算机可读介质提供程序代码以供计算机或任何指令执行系统使用或与之结合使用。为了本说明书的目的,计算机可用或计算机可读介质可以是任何装置,其可以包含用于存储、通信、传播或传输程序以供指令执行系统、装置或设备使用或与其连接的装置。
应该注意,参考不同的主题描述了本发明的实施例。特别地,参考方法类型权利要求描述了一些实施例,参考装置类型权利要求描述了其他实施例。然而,本领域技术人员将从以上和以下描述中了解,除非另有说明,否则除了属于一种类型主题的特征的任何组合之外,还涉及与不同主题相关的特征之间的任何组合,特别是在方法类型权利要求的特征与装置类型权利要求的特征之间的组合,都被认为在本文件中公开。
根据下文将要描述的实施例的示例,以及参考实施例的示例进行的解释,本发明的上述方面和其他方面是显而易见的,但本发明不限于此。
在本说明书的上下文中,可以使用以下约定、术语和/或表达:
术语“瓶颈”可以表示对包括例如一系列模块的系统的性能的任何负面影响,其中一些模块可以是软件模块。术语瓶颈可以是术语性能下降的替代。性能问题的原因可能并不明显,可能需要进行彻底的分析。
术语“系统”可以表示一组相互关联的项目,例如软件模块、任何类型的硬件组件、通信单元、存储元件等,它们都是计算和通信系统的一部分。
术语“软件模块”可以表示作为如上定义的系统的一部分的软件组件。软件模块可以是任何种类的软件模块,如应用软件、系统软件、中间件软件、嵌入式软件、通信软件等。软件模块的类型可能没有限制。该软件可以至少包括用于接收数据的输入端口和用于输出数据的输出端口。软件模块本身可以转换任何形式的数据、对其进行存储和/或将其路由到输出端口。
术语“通信信道”可以表示连接数据输出和数据输入的数据链路。数据输出可以是软件模块形式的输出和/或可选地可以是硬件模块形式的输出。也可以是其组合。
术语“图”在数学上、更具体地在图论中可以表示一组对象的表示,其中一些对象对通过链路连接。互连对象由称为顶点(也称为节点或点)的数学抽象表示,连接一些顶点对的链路称为边(有时也称为弧或线)。通常,图以图示形式描绘为作为顶点的一组点以及连接顶点的作为边的线或曲线。
术语“节点”可以表示上述图的定义意义上的对象。术语“边”可以表示上述图的定义意义上的链路。
术语“发送软件模块”可以表示从该软件模块发送数据的软件模块。术语“接收软件模块”可以表示与“发送软件模块”相反的术语。可以注意到,软件模块可以同时具有两个特征:发送和接收。
术语“所选资源”可以表示用于执行对象或链路的任务的任何资源,即,在本发明的意义上和图论中的软件模块或通信信道。所选资源可以包括但不限于:可用内存量和速度,存储,CPU功率,时钟速度,总线时钟速度,每个CPU的内核数,每个内核的线程数,I/O速率等。
术语“微服务”可以表示软件模块的特殊形式。在云计算中,软件模块和完整系统可以由微服务、即小的互连软件模块构建,其仅包括整体功能的部分功能。
所提出的用于检测系统中的瓶颈以及瓶颈识别的方法可以提供多个优点和技术效果:
所提出的解决方案可以连续监视诸如CPU、协处理器、高速缓冲存储器、主存储器、I/O设备、数据库、用户接口、通信链路的资源、它们的数量和它们的可用性等。除了资源本身之外,还可以监视每个节点和每个数据流、即到/来自节点的通信信道的资源消耗。可以在软件模块之间建立链路或通信信道,并且可以监视其正常运行所需的资源。这样,可以从系统中各个活动的资源需求中得出非常精确的图像。这可以是详细分析瓶颈及消除瓶颈的基础。将测量值或资源消耗映射到预定义值或比率的能力可以启用基于单个或多个阈值的警报和优化系统。
所提出的解决方案可以识别软件组件和通信链路的每个和所有组件中的瓶颈。可以检测性能下降的根本原因并且可以执行动作以避免将来出现这种瓶颈。操作员可以通过所提出的方法和/或系统获得主动支持以检测瓶颈。由于解决方案的动态特性,操作员无需依赖历史数据进行性能分析。相反,他可以通过来自软件模块和通信信道的系统的实时数据来启用。
可以通过这种使用图论的新方法达到新的系统优化水平,以便隔离并最终消除系统瓶颈。
根据该方法的一个优选实施例,可以从包括数据源、例如数据库、数据存储器或另一软件模块、数据处理系统、数据转换系统、特别是处理软件模块和用户接口模块的组中选择节点。可以从网络模块、中间件模块、存储模块等中选择其他可选节点类型。因此,计算系统的任何组件、特别是基于软件的节点可以用作数据的源和结点(sink)。因此,所提出的解决方案可以适用于几乎每个系统架构和配置。
根据该方法的另一个优选实施例,数据源可以是数据库、文件系统、内容管理系统或流数据。数据可以基于有线或无线方式输入。因此,所提出的方法还可以用在包括由移动技术和/或云系统链接的软件模块的系统中。该方法也可以支持嵌入式系统。
根据该方法的一个允许实施例,至少一个软件模块可以是微服务。或者换言之,可以通过该方法支持所有类型的软件模块作为系统的节点。
根据该方法的一个有利实施例,分析资源消耗可以包括跟踪和报告在一段时间内缺乏对资源的支持。可以观察到这种随时间的发展。可以检测到瓶颈可能随时间缓慢增长。基于时间序列的分析可以帮助更快地识别瓶颈的根本原因。
根据该方法的另一优选实施例,分析资源消耗可以包括确定抵消缺乏对资源的支持的推荐。为此,可能存在知识库,其具有从其他系统已知的典型系统瓶颈。可以组合不同资源的资源短缺的组合,并且可以使用实际资源测量和知识库中可用的测量来应用模式匹配。因此,操作员可以获得对系统优化的直接推荐而无需自己进行分析。
通过经由知识库分享消除瓶颈的经验,并为其他操作员提供如此扩展的知识库,可以传播知识和技术诀窍,这意味着这些共享其知识库内容的实施的自我学习环境。
根据该方法的一个允许实施例,分析资源消耗可以包括将软件模块移动到不同的计算系统。这可能会对整体性能产生重大影响。如果不同的计算系统可能具有更多可用资源或者完全未使用,则可能仅涉及很少的通信开销。然而,如果该软件模块是非常耗费资源的-例如,因为它可能是数字运算应用程序模块-并且因此可能与原始计算系统上的竞争软件模块冲突,则向空闲和未使用的计算系统的转移可能会显著提升软件模块系统的整体性能。
根据该方法的另一个优选实施例,分析资源消耗可以包括预测系统将如何对资源的变化做出反应。这可以包括组件或资源的可用性、数量或速度。它还可以包括在竞争软件模块中对相同资源的变化的反映。为此,可能需要该方法可以包括跟踪和报告在同一计算系统上竞争缺少资源的另一软件模块。因此,这可以是用于消除来自包括多个软件模块的系统的瓶颈的非常强大的优化技术。
在下文中,将给出对附图的详细描述。图中的所有说明都是示意性的。首先,给出了用于检测系统中的瓶颈的本发明方法的实施例的框图。然后,将描述进一步的实施例以及用于检测系统中的瓶颈的瓶颈识别系统的实施例。
图1示出了用于检测系统中的瓶颈的方法100的实施例的框图。该系统可以是计算机系统、具有附加外围设备的计算机系统、计算机网络、多个微服务、完整的软件应用系统等。该系统包括至少一个软件模块,特别是多个软件模块,它们通过通信信道相互通信。这些可以是系统级管道、插座等,这是技术人员所熟知的。该方法包括接收102一个图。节点表示软件模块之一,边表示通信信道之一,其中数据流从软件模块中的发送软件模块流到所述软件模块中的接收软件模块。代表软件模块的节点,同时用作发送软件模块和接收软件模块,涉及表示输入数据的接收量与从输入数据导出的输出数据的产生量的预期比率的预定义因子。
该方法还包括为每个软件模块针对所选资源-例如,RAM的数量、CPU的个数、内核、线程、内核、协处理器、其他加速器、I/O速率、每个CPU的并行线程、I/O速率等-监视104软件模块消耗的资源量与可用资源量的比率。
该方法可以进一步包括,为每个通信信道,监视106通信信道之一消耗的带宽与通信信道的可用带宽的比率,以及通信信道的空闲时间量,以及,对于处于空闲模式的软件模块,遍历108该图用于识别其产生的输出量低于处于空闲模式的软件模块所需的输出量的源软件模块。最后但并非最不重要的是,该方法包括分析110所识别的源软件模块的资源消耗,以识别所识别的源软件模块的资源的缺乏量。这样,可以体验到所有上述优点。
图2示出了可用作当前提出的概念的一般模型的图200的示例。图200包括图的数学概念意义上的示例性节点202、204、206、208、210、212、214。节点202,...,214之间是链路216、218、220、222、224、226和228。链路可以被解释为允许在节点之间传送信息的通信链路或通信信道。在本申请的上下文中,节点可以被解释为软件模块。
图3示出了包括元件网络300的系统的实施例的框图。这可以被视为图概念应用于现实应用302。
可以存在由附图标记304、306和308表示的软件模块。软件模块306可以例如表示数据存储,如数据库。通信信道312可以将数据从软件模块306的发送部分传送到软件模块304的接收部分。软件模块304可以表示处理模块304或事务模块304,其可以使用发送部分将数据从处理模块304发送到软件模块308,其可以表示用户接口。可以使用通信信道310发送数据。
尽管由节点304、306、308表示的该软件模块的示例网络仅具有两个通信信道312和310,但是检测、隔离和消除动态性能问题或瓶颈可能是非常困难的。这也可以通过通信信道314从用户接口软件模块308到事务软件模块304的反馈回路来暗示。
实际上,相互依赖的软件模块网络可能相当大,包括更多节点、即软件模块和更多链路、即通信信道。然而,可以使用这种更简单的模型来说明基本的发明概念。
在当前实施例中,可以假设处理软件模块304和用户接口软件模块占用同一机器并通过IPC(进程间通信,例如UNIX域套接字)进行通信。可能不要求每个软件模块在单独的计算机上执行。
所提出的解决方案持续监视资源-如上所述-每个节点或软件模块的消耗以及到/来自节点或软件模块的数据流,其中一些可能仅是发送器,如数据库306。其他软件模块可能仅是或大多数情况下是接收器,例如,用户接口软件模块308。
当观看用户接口(UI)模块308并确定它正在等待数据时,还可以确定处理软件模块304也在等待数据。从该状态,可以确定UI软件模块308和处理软件模块304正在等待来自数据库(DB)软件模块306的数据,该DB软件模块306又不能等待来自任何其他组件或软件模块的数据,因为它是图300的端点。因此,DB软件模块306具有潜在的瓶颈。进一步的检查或指标和分析可以揭示磁盘I/O是几乎100%的情况下使用的资源。因此,生成建议以采取措施来增加与DB软件模块306相关的资源盘的I/O速率。对操作员的相关消息可能如下所示:“由于密集的I/O,DB似乎具有瓶颈组件。检测到机器上第二大I/O消耗者是一个名为Apache的进程(I/O利用率为10%)。如果可行,您可以考虑停止它或限制其资源,或者将其迁移到另一个计算机系统。”
在与同一实施例相关的另一示例中,可以确定UI软件模块308正在等待,并且DB软件模块306也大部分是空闲的。由此,直接得出结论,处理软件模块304是潜在的瓶颈。因此,DB软件模块306产生数据的速度可以快于处理软件模块304消耗数据的速度,以及/或者,UI软件模块308接收数据的速度可以快于处理软件模块304传输数据的速度。资源使用分析揭示出处理软件模块304正在与UI软件模块308竞争RAM资源。然后,瓶颈识别系统可以向操作员生成消息,推荐增加RAM数量或将UI软件模块308或处理软件模块304移动到另一个物理计算机系统。基于这些简化的示例和实施例,技术人员可以得出更复杂的场景。
图4示出了用于检测系统中的瓶颈的本发明的瓶颈识别系统400的实施例,该系统包括经由通信信道彼此连接的软件模块。瓶颈识别系统包括适于接收图的接收单元402。每个节点代表一个软件模块,边代表通信信道之一,其中数据流从软件模块中的发送软件模块流到软件模块中的接收软件模块。节点可以表示用作发送软件模块以及接收软件模块的软件模块。每个节点可以涉及表示输入数据的接收量与从所述输入数据导出的输出数据的产生量的预期比率的预定义因子。
瓶颈识别系统400还包括监视单元404,其适于为每个软件模块针对所选资源监视软件模块消耗的资源量与资源的可用量的比率。监视单元404还适于为每个通信信道监视一个通信信道消耗的带宽与该通信信道上的可用带宽的比率,以及通信信道的空闲时间量。遍历模块406适于对于处于空闲模式的软件模块遍历该图,用于识别其产生的输出量低于处于空闲模式的软件模块所需的输出量、以保持其忙碌的源软件模块。分析模块408适于分析所识别的源软件模块的资源消耗,以识别所识别的源软件模块的资源的缺乏量。
本发明的实施例可以与几乎任何类型的计算机一起实现,而不管平台是否适合于存储和/或执行程序代码。
作为示例,图5示出了适合于执行与所提出的方法有关的程序代码的计算系统500。计算系统500仅是合适的计算机系统的一个示例,并不旨在对本文描述的本发明的实施例的使用范围或功能提出任何限制。无论如何,计算机系统500能够实现和/或执行上文所述的任何功能。在计算机系统500中,存在可与许多其他通用或专用计算系统环境或配置一起操作的组件。适于与计算机系统/服务器500一起使用的众所周知的计算系统、环境和/或配置的示例包括但不限于,个人计算机系统,服务器计算机系统,瘦客户端,胖客户端,手持或膝上型设备,多处理器系统,基于微处理器的系统,机顶盒,可编程消费电子产品,网络PC,小型计算机系统,大型计算机系统,以及包括任何上述系统或设备的分布式云计算环境等。计算机系统/服务器500可以在由计算机系统500执行的计算机系统可执行指令(例如程序模块)的一般上下文中描述。
通常,程序模块可以包括执行特定任务或实现特定抽象数据类型的例程、程序、对象、组件、逻辑、数据结构等。计算机系统/服务器500可以在分布式云计算环境中实践,其中任务由通过通信网络连接的远程处理设备执行。在分布式云计算环境中,程序模块可以位于包括存储器存储设备的本地和远程计算机系统存储介质中。
如图所示,计算机系统/服务器500以通用计算设备的形式示出。计算机系统/服务器500的组件可以包括但不限于,一个或多个处理器或处理单元502,系统存储器504,以及将包括系统存储器504的各种系统组件耦合到处理器502的总线506。506表示几种类型的总线结构中的任何一种或多种,包括存储器总线或存储器控制器,外围总线,加速图形端口,以及使用各种总线架构中的任何总线架构的处理器或本地总线。作为示例而非限制,这样的架构包括工业标准架构(ISA)总线,微通道架构(MCA)总线,增强型ISA(EISA)总线,视频电子标准协会(VESA)本地总线和外围组件互连(PCI)总线。计算机系统/服务器500通常包括各种计算机系统可读介质。这样的介质可以是计算机系统/服务器500可访问的任何可用介质,其包括易失性和非易失性介质、可移动和不可移动介质。
系统存储器504可以包括易失性存储器形式的计算机系统可读介质,例如随机存取存储器(RAM)508和/或高速缓冲存储器510。计算机系统/服务器500还可以包括其他可移动/不可移动、易失性/非易失性计算机系统存储介质。仅作为示例,可以提供存储系统512用于从不可移动的非易失性磁介质(未示出并且通常称为“硬盘驱动器”)读取和写入。尽管未示出,但是可以提供用于读取和写入可移动的非易失性磁盘(例如,“软盘”)的磁盘驱动器、以及用于读取或写入可移动的非易失性光盘、诸如CD-ROM,DVD-ROM或其他光学介质的光盘驱动器。在这种情况下,每个可以通过一个或多个数据介质接口连接到总线506。如下面将进一步描绘和描述的,存储器504可以包括至少一个程序产品,该程序产品具有一组(例如,至少一个)程序模块,这些程序模块被配置为执行本发明的实施例的功能。
具有一组(至少一个)程序模块516的程序/实用程序514可以存储在存储器504中,其示例(而非限制地)包括操作系统、一个或多个应用程序、其他程序模块和程序数据。操作系统、一个或多个应用程序、其他程序模块和程序数据中的每一个或其某种组合可以包括网络环境的实现。程序模块516通常执行如本文所述的本发明实施例的功能和/或方法。
计算机系统/服务器500还可以与一个或多个外部设备518通信,例如键盘、指示设备、显示器520等;与一个或多个使用户能够与计算机系统/服务器500交互的设备通信;和/或与使计算机系统/服务器500能够与一个或多个其他计算设备通信的任何设备(例如,网卡,调制解调器等)通信。这种通信可以通过输入/输出(I/O)接口514进行。计算机系统/服务器500还可以与一个或多个网络通信,例如局域网(LAN)、通用广域网(WAN)、和/或经由网络适配器522的公共网络(例如,因特网)。如图所示,网络适配器522可以经由总线506与计算机系统/服务器500的其他组件通信。应当理解,尽管未示出,但是其他硬件和/或软件组件可以与计算机系统/服务器500结合使用。示例包括但不限于:微代码,设备驱动程序,冗余处理单元,外部磁盘驱动器阵列,RAID系统,磁带驱动器和数据存档存储系统等。另外,用于检测系统中的瓶颈的瓶颈识别系统400可以附接到总线系统506。
已经出于说明的目的给出了对本发明的各种实施例的描述,但是并不旨在穷举或限制于所公开的实施例。在不脱离所描述的实施例的范围和精神的情况下,许多修改和变化对于本领域普通技术人员来说是显而易见的。选择这里使用的术语是为了最好地解释实施例的原理、对市场中发现的技术的实际应用或技术改进,或者是为了使本领域普通技术人员能够理解本文公开的实施例。
本发明可以体现为系统、方法和/或计算机程序产品。计算机程序产品可以包括计算机可读存储介质,其上载有用于使处理器实现本发明的各个方面的计算机可读程序指令。
介质可以是用于传播介质的电、磁、光、电磁、红外或半导体系统。计算机可读介质的示例可以包括半导体或固态存储器、磁带、可移动计算机磁盘、随机存取存储器(RAM)、只读存储器(ROM)、刚性磁盘和光盘。光盘的当前示例包括压缩盘-只读存储器(CD-ROM)、压缩盘-读/写(CD-R/W)、DVD和蓝光盘。
计算机可读存储介质可以是可以保持和存储由指令执行设备使用的指令的有形设备。计算机可读存储介质例如可以是――但不限于――电存储设备、磁存储设备、光存储设备、电磁存储设备、半导体存储设备或者上述的任意合适的组合。计算机可读存储介质的更具体的例子(非穷举的列表)包括:便携式计算机盘、硬盘、随机存取存储器(RAM)、只读存储器(ROM)、可擦式可编程只读存储器(EPROM或闪存)、静态随机存取存储器(SRAM)、便携式压缩盘只读存储器(CD-ROM)、数字多功能盘(DVD)、记忆棒、软盘、机械编码设备、例如其上存储有指令的打孔卡或凹槽内凸起结构、以及上述的任意合适的组合。这里所使用的计算机可读存储介质不被解释为瞬时信号本身,诸如无线电波或者其他自由传播的电磁波、通过波导或其他传输媒介传播的电磁波(例如,通过光纤电缆的光脉冲)、或者通过电线传输的电信号。
这里所描述的计算机可读程序指令可以从计算机可读存储介质下载到各个计算/处理设备,或者通过网络、例如因特网、局域网、广域网和/或无线网下载到外部计算机或外部存储设备。网络可以包括铜传输电缆、光纤传输、无线传输、路由器、防火墙、交换机、网关计算机和/或边缘服务器。每个计算/处理设备中的网络适配卡或者网络接口从网络接收计算机可读程序指令,并转发该计算机可读程序指令,以供存储在各个计算/处理设备中的计算机可读存储介质中。
用于执行本发明操作的计算机程序指令可以是汇编指令、指令集架构(ISA)指令、机器指令、机器相关指令、微代码、固件指令、状态设置数据、或者以一种或多种编程语言的任意组合编写的源代码或目标代码,所述编程语言包括面向对象的编程语言-诸如Smalltalk、C++等,以及常规的过程式编程语言-诸如“C”语言或类似的编程语言。计算机可读程序指令可以完全地在用户计算机上执行、部分地在用户计算机上执行、作为一个独立的软件包执行、部分在用户计算机上部分在远程计算机上执行、或者完全在远程计算机或服务器上执行。在涉及远程计算机的情形中,远程计算机可以通过任意种类的网络-包括局域网(LAN)或广域网(WAN)-连接到用户计算机,或者,可以连接到外部计算机(例如利用因特网服务提供商来通过因特网连接)。在一些实施例中,通过利用计算机可读程序指令的状态信息来个性化定制电子电路,例如可编程逻辑电路、现场可编程门阵列(FPGA)或可编程逻辑阵列(PLA),该电子电路可以执行计算机可读程序指令,从而实现本发明的各个方面。
这里参照根据本发明实施例的方法、装置(系统)和计算机程序产品的流程图和/或框图描述了本发明的各个方面。应当理解,流程图和/或框图的每个方框以及流程图和/或框图中各方框的组合,都可以由计算机可读程序指令实现。
这些计算机可读程序指令可以提供给通用计算机、专用计算机或其它可编程数据处理装置的处理器,从而生产出一种机器,使得这些指令在通过计算机或其它可编程数据处理装置的处理器执行时,产生了实现流程图和/或框图中的一个或多个方框中规定的功能/动作的装置。也可以把这些计算机可读程序指令存储在计算机可读存储介质中,这些指令使得计算机、可编程数据处理装置和/或其他设备以特定方式工作,从而,存储有指令的计算机可读介质则包括一个制造品,其包括实现流程图和/或框图中的一个或多个方框中规定的功能/动作的各个方面的指令。
也可以把计算机可读程序指令加载到计算机、其它可编程数据处理装置、或其它设备上,使得在计算机、其它可编程数据处理装置或另一台设备上执行一系列操作步骤,以产生计算机实现的过程,从而使得在计算机、其它可编程数据处理装置、或另一台设备上执行的指令实现流程图和/或框图中的一个或多个方框中规定的功能/动作。
附图中的流程图和/或框图显示了根据本发明的多个实施例的系统、方法和计算机程序产品的可能实现的体系架构、功能和操作。在这点上,流程图或框图中的每个方框可以代表一个模块、程序段或指令的一部分,所述模块、程序段或指令的一部分包含一个或多个用于实现规定的逻辑功能的可执行指令。在有些作为替换的实现中,方框中所标注的功能也可以以不同于附图中所标注的顺序发生。例如,两个连续的方框实际上可以基本并行地执行,它们有时也可以按相反的顺序执行,这依所涉及的功能而定。也要注意的是,框图和/或流程图中的每个方框、以及框图和/或流程图中的方框的组合,可以用执行规定的功能或动作的专用的基于硬件的系统来实现,或者可以用专用硬件与计算机指令的组合来实现
这里使用的术语仅用于描述特定实施例的目的,并不意图限制本发明。如这里所使用的,单数形式“一”,“一个”和“该”也旨在包括复数形式,除非上下文另有明确说明。将进一步理解,当在本说明书中使用时,术语“包括”和/或“包含”指定所描述的特征、整数、步骤、操作、元件和/或组件的存在,但不排除存在或者添加一个或多个其他特征、整数、步骤、操作、元件、组件和/或其组合。
下面的权利要求中的所有装置或步骤加上功能元件的相应结构、材料、动作和等同物旨在包括用于结合其他要求保护的元件执行功能的任何结构、材料或动作,如具体要求保护的那样。已经出于说明和描述的目的给出了对本发明的描述,但是并不旨在穷举或将本发明限于所公开的形式。在不脱离本发明的范围和精神的情况下,许多修改和变化对于本领域普通技术人员来说是显而易见的。对实施例的选择和描述是为了最好地解释本发明的原理和实际应用,并使本领域普通技术人员能够理解本发明的各种实施例,其具有各种修改,适合于预期的特定用途。
Claims (19)
1.一种用于检测系统中的瓶颈的方法,所述系统包括通过通信信道彼此通信的软件模块,所述方法包括:
接收一个图,其中节点表示所述软件模块之一,边表示所述通信信道之一,其中数据流从所述软件模块中的发送软件模块流到所述软件模块中的接收软件模块,并且其中表示软件模块的用作发送软件模块和接收软件模块的节点,涉及表示输入数据的接收量与从所述输入数据导出的输出数据的产生量的预期比率的预定义因子;
为每个软件模块针对所选资源监视所述软件模块消耗的所述资源量与所述资源的可用量的比率;
为每个通信信道监视所述通信信道之一消耗的带宽与所述通信信道的可用带宽的比率,以及所述通信信道的空闲时间量;
对于处于空闲模式的软件模块,遍历所述图,用于识别其产生的输出量低于处于空闲模式的所述软件模块所需的所述输出量的源软件模块;以及
分析所述识别的源软件模块的资源消耗,以识别所述识别的源软件模块的资源的缺乏量。
2.根据权利要求1所述的方法,其中从包括数据源、数据处理系统和用户接口的组中选择所述节点。
3.根据权利要求1或2所述的方法,其中所述数据源是数据库、文件系统、内容管理系统或流数据接口。
4.根据权利要求1-3中任一项所述的方法,其中,所述软件模块中的至少一个是微服务。
5.根据权利要求1-4中任一项所述的方法,其中,分析资源消耗包括跟踪和报告在一段时间内所述缺乏对资源的支持。
6.根据权利要求1-5中任一项所述的方法,其中,分析资源消耗包括确定抵消所述缺乏对资源的支持的推荐。
7.根据权利要求1-6中任一项所述的方法,其中分析资源消耗包括将所述软件模块移动到不同的计算系统。
8.根据权利要求1-7中任一项所述的方法,其中分析资源消耗包括预测所述系统将如何对资源的变化做出反应。
9.根据权利要求1-8中任一项所述的方法,其中分析资源消耗包括跟踪和报告在所述相同计算系统上竞争所述缺乏的资源的另一软件模块。
10.一种用于检测系统中的瓶颈的瓶颈识别系统,所述系统包括通过通信信道彼此通信的软件模块,所述瓶颈识别方法包括:
接收单元,适于接收一个图,其中节点表示所述软件模块之一,边表示所述通信信道之一,其中数据流从所述软件模块中的发送软件模块流到所述软件模块中的接收软件模块,并且其中表示软件模块的用作发送软件模块和接收软件模块的节点,涉及表示输入数据的接收量与从所述输入数据导出的输出数据的产生量的预期比率的预定义因子;
监视单元,适于为每个软件模块针对所选资源监视所述软件模块消耗的所述资源量与所述资源的可用量的比率,其中所述监视单元还适用于为每个通信信道监视所述通信信道之一消耗的带宽与所述通信信道的可用带宽的比率,以及所述通信信道的空闲时间量;
遍历模块,适于对于处于空闲模式的软件模块遍历所述图,以识别源软件模块,其产生的输出量低于处于空闲模式的所述软件模块所需的输出量;以及
分析模块,适于分析所述识别的源软件模块的资源消耗,以识别所述识别的源软件模块的资源的缺乏量。
11.根据权利要求10所述的瓶颈识别系统,其中从包括数据源、数据处理系统和用户接口的组中选择所述节点。
12.根据权利要求10-11中任一项所述的瓶颈识别系统,其中,所述数据源是数据库、文件系统、内容管理系统或流数据接口。
13.根据权利要求10-12中任一项所述的瓶颈识别系统,其中,所述软件模块中的至少一个是微服务。
14.根据权利要求10-13中任一项所述的瓶颈识别系统,其中,所述分析模块还适于跟踪和报告在一段时间内所述缺乏对资源的支持。
15.根据权利要求10-14中任一项所述的瓶颈识别系统,其中,所述分析模块还适于确定抵消所述缺乏对资源的支持的推荐。
16.根据权利要求10-15中任一项所述的瓶颈识别系统,其中,所述分析模块还适于将所述软件模块移动到不同的计算系统。
17.根据权利要求10-16中任一项所述的瓶颈识别系统,其中,所述分析模块还适于预测所述系统将如何对资源的变化做出反应。
18.根据权利要求10-17中任一项所述的瓶颈识别系统,其中所述分析模块还适于跟踪和报告在所述相同计算系统上竞争所述缺乏的资源的另一软件模块。
19.一种用于检测系统中的瓶颈的计算机程序产品,所述系统包括通过通信信道彼此通信的软件模块,所述计算机程序产品包括具有与其一起实现的程序指令的计算机可读存储介质,所述程序指令可由一个或多个计算系统执行,导致所述一个或多个计算系统:
接收一个图,其中节点表示所述软件模块之一,边表示所述通信信道之一,其中数据流从所述软件模块中的发送软件模块流到所述软件模块中的接收软件模块,并且其中表示软件模块的用作发送软件模块和接收软件模块的节点,涉及表示输入数据的接收量与从所述输入数据导出的输出数据的产生量的预期比率的预定义因子;
为每个软件模块针对所选资源监视所述软件模块消耗的所述资源量与所述资源的可用量的比率;
为每个通信信道监视所述通信信道之一消耗的带宽与所述通信信道上的可用带宽的比率,以及所述通信信道的空闲时间量;
对于处于空闲模式的软件模块,遍历所述图,用于识别其产生的输出量低于处于空闲模式的所述软件模块所需的所述输出量的源软件模块;和
分析所述识别的源软件模块的资源消耗,以识别所述识别的源软件模块的资源的缺乏量。
Applications Claiming Priority (3)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US15/182,766 US11093836B2 (en) | 2016-06-15 | 2016-06-15 | Detecting and predicting bottlenecks in complex systems |
US15/182,766 | 2016-06-15 | ||
PCT/IB2017/053390 WO2017216688A1 (en) | 2016-06-15 | 2017-06-08 | Detecting and predicting bottlenecks in complex systems |
Publications (1)
Publication Number | Publication Date |
---|---|
CN109074300A true CN109074300A (zh) | 2018-12-21 |
Family
ID=60659669
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201780023677.9A Pending CN109074300A (zh) | 2016-06-15 | 2017-06-08 | 检测和预测复杂系统中的瓶颈 |
Country Status (6)
Country | Link |
---|---|
US (1) | US11093836B2 (zh) |
JP (1) | JP6823670B2 (zh) |
CN (1) | CN109074300A (zh) |
DE (1) | DE112017001376T5 (zh) |
GB (1) | GB2567570B (zh) |
WO (1) | WO2017216688A1 (zh) |
Families Citing this family (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US11093836B2 (en) * | 2016-06-15 | 2021-08-17 | International Business Machines Corporation | Detecting and predicting bottlenecks in complex systems |
RU2698416C1 (ru) * | 2018-10-04 | 2019-08-26 | Акционерное общество "РОТЕК" (АО "РОТЕК") | Способ мониторинга и прогнозирования состояния отдельных агрегатов и сложных технологических комплексов при помощи семантически-ориентированного искусственного интеллекта |
JP2021185652A (ja) * | 2020-05-25 | 2021-12-09 | 日本電気株式会社 | パケット伝送システム、伝送装置、伝送経路切替方法及び伝送経路切替プログラム |
US11805076B2 (en) | 2020-08-21 | 2023-10-31 | Kyndryl, Inc. | Microservice placement in hybrid multi-cloud using graph matching |
JP2022080545A (ja) | 2020-11-18 | 2022-05-30 | 富士通株式会社 | サービス管理装置、サービス管理方法、及びサービス管理プログラム |
US20220318117A1 (en) * | 2021-04-06 | 2022-10-06 | EMC IP Holding Company LLC | Method to identify the performance bottle neck in the complex enterprise virtualized environment |
Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20070046664A1 (en) * | 2005-08-25 | 2007-03-01 | International Business Machines Corporation | Method and system for displaying performance constraints in a flow design tool |
US20090300173A1 (en) * | 2008-02-29 | 2009-12-03 | Alexander Bakman | Method, System and Apparatus for Managing, Modeling, Predicting, Allocating and Utilizing Resources and Bottlenecks in a Computer Network |
US20120109889A1 (en) * | 2008-08-08 | 2012-05-03 | Oracle International Corporation | Automated Topology-Based Statistics Monitoring And Performance Analysis |
CN104731574A (zh) * | 2013-12-19 | 2015-06-24 | 国际商业机器公司 | 用于识别多级工作流处理中的资源瓶颈的方法和系统 |
CN105511957A (zh) * | 2014-09-25 | 2016-04-20 | 国际商业机器公司 | 用于生成作业告警的方法和系统 |
Family Cites Families (31)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP3537356B2 (ja) | 1998-12-09 | 2004-06-14 | 株式会社日立製作所 | ジョブシステムにおける遅延要因解析方法 |
US7424528B2 (en) * | 2002-11-27 | 2008-09-09 | Hewlett-Packard Development Company, L.P. | System and method for measuring the capacity of a streaming media server |
US7469143B2 (en) * | 2003-10-07 | 2008-12-23 | Microsoft Corporation | Model and method for computing performance bounds in multi-hop wireless networks |
US7289947B2 (en) | 2004-06-10 | 2007-10-30 | International Business Machines Corporation | Finding and removing performance bottlenecks in large systems |
US8104041B2 (en) | 2006-04-24 | 2012-01-24 | Hewlett-Packard Development Company, L.P. | Computer workload redistribution based on prediction from analysis of local resource utilization chronology data |
US7496683B2 (en) * | 2006-07-27 | 2009-02-24 | International Business Machines Corporation | Maximization of sustained throughput of distributed continuous queries |
US8225291B2 (en) | 2008-01-04 | 2012-07-17 | International Business Machines Corporation | Automated detection of application performance bottlenecks |
JP4872945B2 (ja) * | 2008-02-25 | 2012-02-08 | 日本電気株式会社 | 運用管理装置、運用管理システム、情報処理方法、及び運用管理プログラム |
US8276035B1 (en) * | 2008-07-28 | 2012-09-25 | Netmotion Wireless, Inc. | High performance digital communications resiliency in a roamable virtual private network |
US8527238B2 (en) * | 2008-09-30 | 2013-09-03 | Microsoft Corporation | Storage input/output utilization associated with a software application |
JP5428075B2 (ja) * | 2009-04-17 | 2014-02-26 | 株式会社日立製作所 | 性能モニタリングシステム、ボトルネック判定方法及び管理計算機 |
CN101604287A (zh) | 2009-07-14 | 2009-12-16 | 浪潮电子信息产业股份有限公司 | 一种基于硬件计数器获取性能数据实现动态优化服务器性能的方法 |
US20110202650A1 (en) * | 2010-02-12 | 2011-08-18 | Brocade Communications Systems, Inc. | Method and system for monitoring data flows in a network |
US8738972B1 (en) * | 2011-02-04 | 2014-05-27 | Dell Software Inc. | Systems and methods for real-time monitoring of virtualized environments |
US8782656B2 (en) | 2011-02-24 | 2014-07-15 | International Business Machines Corporation | Analysis of operator graph and dynamic reallocation of a resource to improve performance |
US8756310B2 (en) | 2011-03-09 | 2014-06-17 | International Business Machines Corporation | Comprehensive bottleneck detection in a multi-tier enterprise storage system |
US9804893B2 (en) | 2011-04-08 | 2017-10-31 | Qualcomm Incorporated | Method and apparatus for optimized execution using resource utilization maps |
US9015289B2 (en) * | 2012-04-12 | 2015-04-21 | Netflix, Inc. | Method and system for evaluating the resiliency of a distributed computing service by inducing a latency |
GB2506164A (en) * | 2012-09-24 | 2014-03-26 | Ibm | Increased database performance via migration of data to faster storage |
US8954381B1 (en) * | 2012-09-27 | 2015-02-10 | Emc Corporation | Determining data movements in a multi-tiered storage environment |
US20140215077A1 (en) | 2013-01-26 | 2014-07-31 | Lyatiss, Inc. | Methods and systems for detecting, locating and remediating a congested resource or flow in a virtual infrastructure |
US20130219372A1 (en) | 2013-03-15 | 2013-08-22 | Concurix Corporation | Runtime Settings Derived from Relationships Identified in Tracer Data |
US9424160B2 (en) | 2014-03-18 | 2016-08-23 | International Business Machines Corporation | Detection of data flow bottlenecks and disruptions based on operator timing profiles in a parallel processing environment |
CN103870374A (zh) | 2014-03-27 | 2014-06-18 | 浪潮电子信息产业股份有限公司 | 一种分析在Linux系统测试环境服务器性能瓶颈的方法 |
US20150373071A1 (en) | 2014-06-19 | 2015-12-24 | International Business Machines Corporation | On-demand helper operator for a streaming application |
US10009397B2 (en) * | 2014-10-13 | 2018-06-26 | Blue Jeans Network, Inc. | Optimizing teleconferencing using transparent relays |
US10091063B2 (en) * | 2014-12-27 | 2018-10-02 | Intel Corporation | Technologies for directed power and performance management |
US20160261523A1 (en) * | 2015-03-06 | 2016-09-08 | Apollo Education Group, Inc. | Dynamically tuning system components for improved overall system performance |
US10007580B2 (en) * | 2016-04-11 | 2018-06-26 | International Business Machines Corporation | Assigning storage locations based on a graph structure of a workload |
US11093836B2 (en) * | 2016-06-15 | 2021-08-17 | International Business Machines Corporation | Detecting and predicting bottlenecks in complex systems |
US10320957B2 (en) * | 2016-09-01 | 2019-06-11 | International Business Machines Corporation | Increasing data resiliency operations based on identifying bottleneck operators |
-
2016
- 2016-06-15 US US15/182,766 patent/US11093836B2/en active Active
-
2017
- 2017-06-08 WO PCT/IB2017/053390 patent/WO2017216688A1/en active Application Filing
- 2017-06-08 CN CN201780023677.9A patent/CN109074300A/zh active Pending
- 2017-06-08 JP JP2018562008A patent/JP6823670B2/ja active Active
- 2017-06-08 GB GB1900356.5A patent/GB2567570B/en active Active
- 2017-06-08 DE DE112017001376.3T patent/DE112017001376T5/de active Pending
Patent Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20070046664A1 (en) * | 2005-08-25 | 2007-03-01 | International Business Machines Corporation | Method and system for displaying performance constraints in a flow design tool |
US20090300173A1 (en) * | 2008-02-29 | 2009-12-03 | Alexander Bakman | Method, System and Apparatus for Managing, Modeling, Predicting, Allocating and Utilizing Resources and Bottlenecks in a Computer Network |
US20120109889A1 (en) * | 2008-08-08 | 2012-05-03 | Oracle International Corporation | Automated Topology-Based Statistics Monitoring And Performance Analysis |
CN104731574A (zh) * | 2013-12-19 | 2015-06-24 | 国际商业机器公司 | 用于识别多级工作流处理中的资源瓶颈的方法和系统 |
CN105511957A (zh) * | 2014-09-25 | 2016-04-20 | 国际商业机器公司 | 用于生成作业告警的方法和系统 |
Also Published As
Publication number | Publication date |
---|---|
GB2567570A (en) | 2019-04-17 |
GB2567570B (en) | 2021-09-01 |
US11093836B2 (en) | 2021-08-17 |
DE112017001376T5 (de) | 2018-11-29 |
GB201900356D0 (en) | 2019-02-27 |
JP2019525285A (ja) | 2019-09-05 |
JP6823670B2 (ja) | 2021-02-03 |
WO2017216688A1 (en) | 2017-12-21 |
US20170364811A1 (en) | 2017-12-21 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN109074300A (zh) | 检测和预测复杂系统中的瓶颈 | |
US11551123B2 (en) | Automatic visualization and explanation of feature learning output from a relational database for predictive modelling | |
US11283863B1 (en) | Data center management using digital twins | |
US10353738B2 (en) | Resource allocation based on social networking trends in a networked computing environment | |
CN110516714B (zh) | 一种特征预测方法、系统及引擎 | |
US11568242B2 (en) | Optimization framework for real-time rendering of media using machine learning techniques | |
CN110363427A (zh) | 模型质量评估方法和装置 | |
US11488014B2 (en) | Automated selection of unannotated data for annotation based on features generated during training | |
US11044155B2 (en) | Utilizing unstructured data in self-organized networks | |
US20210135966A1 (en) | Streaming and event management infrastructure performance prediction | |
US20200387377A1 (en) | Instruction fusion using dependence analysis | |
CN110866040A (zh) | 用户画像生成方法、装置和系统 | |
Ravi et al. | Analytics in/for cloud-an interdependence: A review | |
Pääkkönen et al. | Online architecture for predicting live video transcoding resources | |
US11121986B2 (en) | Generating process flow models using unstructure conversation bots | |
McLoughlin et al. | An Urban Data Business Model framework for identifying value capture in the Smart City: The case of Organicity | |
CN116910567B (zh) | 推荐业务的在线训练样本构建方法及相关装置 | |
JP7416718B2 (ja) | 音声およびビデオ・マルチメディアの修正および提示 | |
WO2023147131A1 (en) | Auto adapting deep learning models on edge devices for audio and video | |
CN108700642A (zh) | 基于具有不确定性的用户移动数据的位置上下文推断 | |
US11240118B2 (en) | Network mixing patterns | |
Loh et al. | Performance evaluation of video streaming service chains in softwarized 5g networks with task graph reduction | |
US20210216942A1 (en) | Assessing an individual's competencies through social network analysis | |
CN108885447A (zh) | 分析和控制冷链系统的方法和系统 | |
US20240020641A1 (en) | Domain driven secure design of distributed computing systems |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
RJ01 | Rejection of invention patent application after publication | ||
RJ01 | Rejection of invention patent application after publication |
Application publication date: 20181221 |