首页> 中国专利> 在流设计工具中显示性能约束的方法和系统

在流设计工具中显示性能约束的方法和系统

摘要

对流建模由于涉及许多元件以及异构型环境越来越普及而变得越来越复杂。根据现有技术,对流建模分两个阶段执行。在设计阶段,用户使用流设计工具将流的元件设置在图形用户界面上,以便得到的流满足用户的需求。在第二阶段即仿真阶段中,仿真流的性能,并根据仿真结果,用户改变流的设计以便提高流的性能。在此公开中给出了一种方法和系统,其通过考虑元件之间的交互来确定流的元件的性能值,并在设计阶段期间在图形用户界面上可视化这些性能值。因此,流的元件之间的交互对于用户变为透明的,并且可立即识别瓶颈。

著录项

  • 公开/公告号CN1920825A

    专利类型发明专利

  • 公开/公告日2007-02-28

    原文格式PDF

  • 申请/专利权人 国际商业机器公司;

    申请/专利号CN200610093552.7

  • 发明设计人 S·拉什普尔;Y·萨耶;

    申请日2006-06-26

  • 分类号G06F17/30(20060101);

  • 代理机构11247 北京市中咨律师事务所;

  • 代理人于静;张亚非

  • 地址 美国纽约

  • 入库时间 2023-12-17 18:16:49

法律信息

  • 法律状态公告日

    法律状态信息

    法律状态

  • 2023-07-07

    未缴年费专利权终止 IPC(主分类):G06F17/30 专利号:ZL2006100935527 申请日:20060626 授权公告日:20081022

    专利权的终止

  • 2008-10-22

    授权

    授权

  • 2007-04-25

    实质审查的生效

    实质审查的生效

  • 2007-02-28

    公开

    公开

说明书

技术领域

本发明通常涉及流建模工具,并尤其涉及流的可视化。

背景技术

在流过程例如工作流过程或数据流过程的设计阶段中,经常使用流建模工具。所有流建模工具都包括图形用户界面,可在该界面上绘制将被设计的流。在大多数流建模工具中,通过从选项板(palette)选择操作(operator)并将它们放置在图形用户界面上来绘制流。操作是构成流的步骤。

在数据流的情况下,操作可以是任何类型的提供某种数据的数据源(数据库、平面文件等),或者是任何类型的对数据进行变换的变换器,或者是任何类型的数据可被加载到其中的目标。

在工作流的情况下,操作可以是任何类型的在流中起一定作用的活动(调用服务、通知用户等)。

在计算机网络设计的情况下,操作可以是任何类型的提供或消耗某些数据的硬件(计算机、路由器等)。

在许多情况下,每个操作可具有一列可能的输入和输出通道。输入通道可接受将被操作处理的输入数据,而输出通道生成可用作另一个操作的输入的被变换的数据。

流本身通过在构成流的操作之间绘制一些链接来定义。每个链接将一个操作的输出通道与另一个操作的输入通道相连接。因此,链接代表两个操作之间的数据传送或逻辑转换。两个操作之间的链接还可代表一物理装置,例如在对数据流或计算机网络建模时的网络连接。

但是,对流建模由于涉及许多元件以及异构型环境越来越普及而变得越来越复杂。例如,当对数据库之间的ETL(提取、变换、加载,这是指从异构型源提取数据、变换它们并最终将它们加载到数据仓库中的过程)场景的数据流建模时,这通常涉及范围不同的位于不同服务器上的数据库,这些数据库通过任意的网络连接相连接。从而,数据通过网络连接从一个服务器转到另一个服务器。对于所需的数据吞吐量,网络连接过慢会造成瓶颈。服务器不能以所需的速度传送数据将限制相继的服务器的利用。此外,单个服务器上的峰值负载会使该服务器具有过高的负载,从而阻碍其处理计划安排的其他任务。

设计流过程通常分成两部分:在第一阶段,使用相应的设备设计流。

在第二阶段,在目标环境中部署该设计。保持对该环境良好概览是必要的,但是并能不保证最优结果。

此外,最经常的是当最终实现了设计时才识别出问题区域。于是,解决问题比在设计期间解决问题的代价更高,并且还会造成不可恢复的损失。

迄今为止,流设计工具仅显示出用户所设计的东西,而没有考虑操作或链接的任何性能值。代表例如JOIN操作的操作的性能值是例如处理数据的最大速度。代表例如网络电缆的链接的性能值是例如该电缆支持的最大带宽。可能存在注释,但是注释仅局限于单个对象。对相关对象的影响没有被考虑并且因此也没有被可视化。用户可设计相应的设备允许的任何东西,但是不能防止或至少指示不合理的或不可能的设计。

另外,没有考虑构成数据流的各个元件、操作、输入/输出通道和链接之间的交互。

另一类现有工具是仿真工具。流设计工具和仿真工具经常被包含在一个产品中。仿真工具对完成的设计将在真实环境中如何表现进行精确仿真。因此,使用当前可用的工具,设计流并考虑流的性能将分两个阶段执行:

设计阶段,其中用户将操作和链接安排在图形用户界面上,以便得到的流满足用户需求。在仿真或测量阶段中,仿真流的性能。根据仿真结果,用户改变流的设计,以便在随后的仿真中仿真的流的性能提高。

但是,在这两个阶段之间来回转移会变得冗长乏味,并且如果在每个仿真阶段之中进行多个改变,则造成较大影响的小变化可能会被忽略或难以定位。

因此,需要一种改进的流设计工具。

发明内容

根据本发明,提供了一种数据处理方法,该方法包括提供流设计工具,该流设计工具包括用于可视地表示流的图形用户界面,由此该流包括至少两个操作和至少一个链接,由此该至少两个操作中的一个操作包括至少一个输入通道,而由此该至少两个操作中的另一个操作包括至少一个输出通道,且由此该链接将该一个操作的输出通道与该另一个操作的输入通道相连接。确定该至少两个操作中的每一个的至少一个性能值,确定所述操作的至少一个输入通道的至少一个性能值,所述操作的至少一个输出通道的至少一个性能值,以及该链接的至少一个性能值。在图形用户界面上显示该至少两个操作中的每一个的至少一个性能值、所述操作的至少一个输入通道的至少一个性能值、所述操作的至少一个输出通道的至少一个性能值和该链接的至少一个性能值,以便可视地表示该流。

因为在图形用户界面上显示性能值,所述性能值可例如是元件的限制因素,所以本发明是尤其有利的。用户因此接收到他的设计操作的影响以及副作用的反馈。这样,元件之间的交互对于用户是透明的,并且在流的设计期间可识别瓶颈。

根据本发明的一个实施例,提供了一种这样的方法,其中确定该至少两个操作中的每一个的两个性能值:实际吞吐量和最大吞吐量,且其中确定所述操作的至少一个输入通道的两个性能值:实际吞吐量和最大吞吐量,且其中确定所述操作的至少一个输出通道的两个性能值:实际吞吐量和最大吞吐量,且其中确定该链接的两个性能值:实际吞吐量和最大吞吐量。

根据本发明的一个实施例,提供了一种这样的方法,其中在流的设计期间显示该至少两个操作中的每一个的至少一个性能值、该至少一个输入通道的至少一个性能值,该至少一个输出通道的至少一个性能值以及该链接的至少一个性能值。其优点是用户能够立即识别任何瓶颈,并重新安排该设计以便使瓶颈消失。这缩短了设计流的总时间,并因此本发明提供了一种可成本效率更高地设计流的方法。

根据本发明的一个实施例,提供了一种这样的方法,其中通过使用文本、彩色编码、符号、大小或线宽度约定在图形用户界面上显示该至少两个操作中的每一个的至少一个性能值、该输入通道的至少一个性能值,该输出通道的至少一个性能值以及该链接的至少一个性能值,以便可视地表示该流。

根据本发明的一个实施例,通过使用数学函数确定该至少两个操作中的每一个的至少一个性能值。

根据本发明的一个实施例,通过使用数学函数确定该至少一个链接的一个性能值。

根据本发明的一个实施例,由用于对流进行仿真的仿真工具确定该至少两个操作中的每一个的至少一个性能值、该输入通道的至少一个性能值,该输出通道的至少一个性能值以及该链接的至少一个性能值。

根据本发明的一个实施例,该流设计工具包括用于对流进行仿真的仿真工具,并且在第一步骤中通过使用数学函数或通过用户输入并在第二步骤中通过该仿真工具,确定该至少两个操作中的每一个的至少一个性能值、该输入通道的至少一个性能值,该输出通道的至少一个性能值以及该链接的至少一个性能值。

根据本发明的方法尤其有利,因为该方法使得用户能够在流的设计阶段识别任何严重的问题例如瓶颈。用户可重新安排该流并消除任何瓶颈。通过使用仿真工具确定更精确的性能值。这使得用户能够消除该流的任何微小的问题。

根据本发明的一个实施例,通过流设计工具提供的规格说明确定该至少两个操作中的每一个的至少一个性能值、该输入通道的至少一个性能值,该输出通道的至少一个性能值以及该链接的至少一个性能值。

在本发明的另一方面中,本发明涉及一种计算机程序产品,其包括计算机可执行指令以便执行该方法。

在本发明的另一方面中,本发明涉及一种数据处理系统,该数据处理系统包括流设计工具,该流设计工具包括用于可视地显示流的图形用户界面。该流包括至少两个操作和至少一个链接,该至少两个操作中的一个操作包括至少一个输入通道,而该至少两个操作中的另一个操作包括至少一个输出通道,该链接将该一个操作的输出通道与该另一个操作的输入通道相连接。

附图说明

下文中,将参照附图仅作为示例更详细地说明本发明的优选实施例。

图1是实现本发明的一个实施例的系统的框图,

图2是示出如何根据本发明的一个实施例表示数据流的图示,

图3是示出如何根据本发明的另一个实施例表示数据流的图示,

图4是示出操作和各种输入/输出通道的框图,以及

图5是示出流设计过程的流程图。

具体实施方式

图1是实现本发明的一个实施例的系统的框图。该系统包括计算机系统101和屏幕120。由微处理器106执行根据本发明的流设计工具102和数据处理系统104。流设计工具102和数据处理系统104使用图形卡110在屏幕120上生成图形用户界面122。流设计工具102可包括流仿真工具105。

流设计工具102使用户能够通过使用输入设备108(例如键盘、鼠标等)在图形用户界面122上创建流130。该流包括具有输入通道138和输出通道136的操作132和134。链接140将输出通道136和输入通道138相连接。

操作可例如代表数据库存储在其上的硬件设备、数据处理系统、计算机、路由器等。链接可代表例如物理设备例如网络连接或网络电缆。输入或输出通道可例如代表任何物理I/O端口例如以太网卡,通过该端口数据被从计算机处理到网络上。

数据处理系统104通过使用微处理器106来确定两个操作132和134中的每一个的性能值150、152,输入通道138的性能值154,输出通道136的性能值158,以及链接140的性能值。在本发明的优选实施例中,当用户在图形用户界面上放置或创建对应的操作、通道或链接时,这些性能值就被立即确定。性能值150、152、154、156和158被存储在易失性存储设备114中,并被图示在图形用户界面上。在本发明的另一个实施例中,性能值150、152、154、156、158存储在非易失性存储设备112中。

数据处理系统104确定的、流的各个元件的性能值150、152、154、156、158可能不是非常精确。但是,这并不是缺点,因为数据处理系统106旨在识别流的各个元件的性能值之间的较大的差别。流仿真工具105可用于获得性能值150、152、154、156、和158的精确值。

图2是示出如何显示数据流的图示。其中,用方框代表操作,在操作右侧的圆点代表输出通道,在操作左侧的圆圈代表输入通道,而操作之间的箭头代表链接。在此示例中,用户进行了如下设计:

从数据源1 202和数据源2 204提取数据。源具有一个输出通道而没有输入通道。这里,假设数据源1 202是存储在本地数据库上的表,而数据源2 204是存储在远程数据库上的另一个表。来自数据源1 202的数据通过输出通道212和链接230经由输入通道216传递给操作JOIN 206。来自数据源2 204的数据通过输出通道214和链接232经由输入通道218传递给操作JOIN 206。操作JOIN 206代表集合来自数据源1 202的数据和来自数据源2 204的数据的操作。来自这两个源的数据被操作JOIN 206读取,并被集合在单个表中。

集合数据通过输出通道220、链接234和输入通道222传递给SORT操作208。操作JOIN 206提供的集合数据被操作SORT 208分类。

数据从操作SORT 208通过输出通道224、链接236和输入通道226传递给操作DATA TARGET 210,该操作可代表一数据仓库中的任何表。

在根据本发明的优选实施例中,当选择并在图形用户界面上显示操作202、204、206、208、210时,确定这些操作中的每一个的两个性能值:最大吞吐量和实际吞吐量。此外,还确定输入通道216、218、222和226中的每一个的两个性能值:实际吞吐量和最大吞吐量,确定输出通道212、214、220和224中的每一个的两个性能值:实际吞吐量和最大吞吐量,并确定链接230、232、234和236中的每一个的两个性能值:实际吞吐量和最大吞吐量。

操作、通道或链接的最大吞吐量是当没有其他元件限制该过程时,此元件可处理的每个时间单位的理论上的最大数据量。实际吞吐量依赖于元件的最大吞吐量,但是还依赖于构成流的其他元件的吞吐量。

在200所示的示例中,显示输入通道216、218、222和226的最大吞吐量,而可视化操作202、204、206、208和210的、输出通道212、214、220和224的、以及链接230、232、234和236的实际吞吐量。

但是,根据本发明的方法和系统决不局限于这种显示被确定的性能值的方式。其他方式例如显示操作、通道和链接的实际性能值也是可能的。

在200指示的示例中,数据源1 202是本地数据库,由于不存在网络连接限制吞吐量,所以该数据源具有高吞吐量。因此,该数据源由粗线方框表示,而其输出通道212由大圆圈可视化,该大圆圈指示此元件的实际吞吐量高。

数据源2204是远程数据库,仅能以低速从该数据源检索数据。例如,数据源2204可以是磁带机。因此,它由细线方框表示,并且其输出通道由象征小吞吐量的小圆圈表示。

由于数据源2 202是本地数据库,所以链接230是快速链接。因此,链接230的最大吞吐量高。由于数据源202和输出通道212以高速发送数据,所以链接230的实际吞吐量也高,并因此,链接230由粗箭头图示出。

链接232可以是具有高最大吞吐量的快速网络链接。但是,由于数据源204和输出通道214以低速发送数据,所以链接232的实际吞吐量低。因此,该链接由细箭头示出。

操作JOIN 206代表在理论上以高最大吞吐量处理数据的操作。这由在其左侧的两个输入通道的大圆圈216和218表示。

操作JOIN 206消耗来自数据源1(高吞吐量)和数据源2(低吞吐量)的数据。因此,操作JOIN 206的吞吐量受数据源2 204的吞吐量限制。因此,操作JOIN 206由细线方框表示,并且其输出通道由小圆圈表示。

链接234可以是具有高最大吞吐量的快速链接。但是,由于输出通道220以低速输送数据,所以链接234显示为细箭头。

类似于操作JOIN 206,操作SORT 208具有高最大吞吐量,但是其实际吞吐量受数据到达该操作的速度限制。因此,它的实际吞吐量低,从而该操作由细线方框表示,而输出通道224由小输出圆圈表示。

链接236可以是具有高最大吞吐量的快速链接。但是,由于输出通道224以低速输送数据,所以链接236示出为细箭头。

操作DATA TARGET 210的最大吞吐量小于操作JOIN 206和操作SORT 208的最大吞吐量。因此,代表输入通道226的圆圈的大小小于分别代表操作206、208的输入通道216、218的圆圈的大小。

操作DATA TARGET 210的实际吞吐量由链接236输送数据的速度确定。因此,操作DATA TARGET 210由细线方框表示。

性能值的可视化并不局限于具有变化的粗细的方框和箭头或具有不同大小的圆圈。另一种可视化方法可以是使用明确示出最大和实际吞吐量的文本。另一种方式可以是使用彩色编码。

图3是示出如何显示另一个数据流的图示。图示300包括数据源1 302和数据源2 304,操作JOIN 306,操作ROTATE 308和操作DATATARGET 310,输入通道316、318、322和326,输出通道312、314、320和324,以及链接330、332、334和336。

数据源1302、操作JOIN 306和操作TARGET 310旨在具有与操作202、206和210相同的属性。

但是,数据源2 304代表比数据源2 204快的数据源。链接332也是快速链接。因此,数据源304由粗线方框表示,输出通道314由大圆圈表示,而链接332由粗箭头可视化。此外,操作JOIN 306由粗线方框表示,而输出通道320由具有大半径的圆圈表示。

链接334具有高最大吞吐量。由于操作JOIN 306和输出通道320的实际吞吐量也高,所以链接334的实际吞吐量高。因此,链接334由粗箭头表示。

操作ROTATE 308需要大量CPU资源,并因此具有较小的最大吞吐量。因此,根据本发明的系统用小圆圈示出输入通道322,而用细线方框示出操作ROTATE 308。

334以高速输送的数据现在进一步被低速输入通道322和低速操作ROTATE 308处理。因此,ROTATE操作被认为是流的瓶颈,该瓶颈由指向输入通道322的小圆圈的链接334的粗箭头表示。

本发明是尤其有利的,因为本发明使用户能够立即识别出设计决策对整个流具有什么影响。瓶颈被可视化,并且可通过对流进行重新设计立即除去该瓶颈。在本发明的另一个实施例中,除了可视化之外,还可使用声音使瓶颈明显。

输出通道324的最大和实际吞吐量低,从而其由小圆圈表示。链接336的最大吞吐量高,但是其实际吞吐量受输出通道324的实际吞吐量限制,从而链接336由细箭头表示。

操作DATA TARGET 310的最大吞吐量小于操作JOIN 306的最大吞吐量,但是高于操作ROTATE 308。因此,代表输入通道326的圆圈的尺寸小于代表输入通道316、318的圆圈的尺寸,但是大于代表输入通道322的圆圈。

但是,实际吞吐量由链接336输送数据的速度确定。因此,操作DATATARGET 310由细线方框表示。

下面的段落公开了用于确定性能值例如最大和实际吞吐量的各个实施例。在本发明的一实施例中,用户通过编辑操作、通道或链接的属性来定义它们的最大吞吐量。

例如,如果链接代表100Mbit以太网连接,则其最大吞吐量被指定为100Mbit。然后,通过考虑前一个输出通道的吞吐量来确定其实际吞吐量。如果输出通道的实际吞吐量小于链接的最大吞吐量,则该链接的实际吞吐量由该输出通道的实际吞吐量给出。

但是,在工作流中,链接代表逻辑转换而不受任何物理约束的限制。因此,用户不指定任何性能值。在本发明的一实施例中,假设链接的实际吞吐量等于前一个输出通道的实际吞吐量。

在本发明的一实施例中,用户还指定输出通道、输入通道和操作的最大吞吐量。输出通道的实际吞吐量等于输出通道的最大吞吐量或者等于操作的实际吞吐量,这取决于哪一个值较小。操作的实际吞吐量为操作的最大吞吐量或者输入通道的实际吞吐量,这取决于哪一个值较小。然后输入通道的实际吞吐量为最大吞吐量或者前一个链接的实际吞吐量,这取决于两个值中的哪一个较小。

在本发明的一实施例中,输入和输出通道的实际吞吐量由不同大小的圆圈表示。另外,操作的最大吞吐量通过调整代表该操作的方框的框粗细来显示。这样,在设计阶段可揭示出输入通道和操作之间的瓶颈。用户可重新安排流,并使瓶颈消失。因为可立即消除瓶颈,所以这便利了流设计过程。

但是,根据本发明的方法决不局限于如前面的段落中所述的显示吞吐量的方式。例如,在另一个实施例中,可显示流中的所有元件的最大吞吐量和实际吞吐量(例如通过文本、彩色编码、不同大小的圆圈和矩形等)。还可通过声音或闪烁操作来标识瓶颈。

如果操作具有一个以上输入通道和一个以上输出通道,则用户指定每个输入通道和每个输出通道以及操作的最大吞吐量。所有输入通道的实际吞吐量例如由所有输入通道的最大吞吐量中最小的给出或者由前面的链接的实际吞吐量给出,这取决于哪一个值较小。

如果操作的最大吞吐量大于输入通道的实际吞吐量,则认为操作的最大实际吞吐量为输入通道的实际吞吐量。否则,认为它是操作的最大吞吐量,并且识别出瓶颈。然后所有输出通道的实际吞吐量可以由操作的实际吞吐量或输出通道的最小的最大吞吐量给出,这取决于哪一个值较小。

如上所述,在本发明的范围中,还存在其他可能的根据指定的最大吞吐量确定实际吞吐量的方法。上文给出的示例仅用于说明一些可能的实施例。

还可以其他方式确定操作、通道和链接的性能值。例如,在ETL场景中,数据源(例如来自国际商业机器公司的DB2的JDBC Extract)的吞吐量可从实际吞吐量的测量值或数据库制造商提供的规格说明确定。下文给出了示例,其中可在万维网上找到测量结果或者数据库、数据挖掘引擎或ETL元件的规格说明:

●http://www.sybase.com/detail?id=1009664

●http://www-128.ibm.com/developerworks/db2/library/techarticle/dm-0503aschoff/

●http://support.sas.com/rnd/scalability/papers/41265489-100.pdf

●http://developer.mimer.com/features/feature_16.htm

●http://www.nyoug.org/highspeedetl.pdf

还可使用市场上可买到的工具“Visual Explain”确定操作、链接和通道的性能值,该工具被包含在国际商业机器公司的DB2中。“VisualExplain”包括一应用程序接口(API)。根据本发明的数据处理系统例如可经由该API从“Visual Explain”请求数据库的以下参数:

●一步中可处理的数据库的行的数量,

●增加或减小数据量所需的处理能力,

●数据过滤的处理速度。但是在此情况下,“Visual Explain”请求必须由用户提供的额外信息。

●从数据源到数据目标的数据传送速度,由此“Visual Explain”考虑了网络体系结构。

因此,用户仅选择操作、通道和链接,并将它们安排在图形用户界面中。根据本发明的数据处理系统通过使用前文所述的在万维网上找到的规格说明或使用“Visual Explain”来确定操作、通道和链接的性能值。

但是,与仿真工具相反,根据本发明的系统仅旨在确定近似的性能值而不是精确的性能值。

图4是示出操作402的框图,该操作包括n个输入通道例如404、406、408和410以及m个输出通道例如412、414、416和418。另一种确定操作的性能值的方法是给操作分配一数学函数,该数学函数将n个输入通道与m个输出通道相关联。

在400中,in1是通过输入通道404处理数据的最大吞吐量,in2是通过输入通道406处理数据的最大吞吐量,in3是通过输入通道408处理数据的最大吞吐量,而inn是通过输入通道410处理数据的最大吞吐量。相应地,out1是通过输出通道412的吞吐量,out2是通过输出通道414的吞吐量,out3是通过输出通道416的吞吐量,而outm是通过输出通道418处理的吞吐量。

对于每个输出通道i,可指定函数fi,该函数考虑所有输入通道的吞吐量以便确定输出通道i的吞吐量:

outi=fi(in1,in2,in3,...,inn)

在操作代表本地数据源的情况(这是特殊情况,由于源没有输入:outi=fi())下,函数f可例如是恒定值。

在具有两个输入通道和一个输出通道的操作JOIN的情况下,函数f可由out=min(in1,in2,speed)定义。这里,speed是操作JOIN的吞吐量,而min是选择in1、in2和speed的最小值的操作。

数据处理系统可例如包括这样的数据库,在该数据库中存储针对流设计工具中的每个操作的这样的函数。

可以相同的方式定义链接的数学函数。例如,对于代表网络电缆的链接,可通过选择前一个输出通道的吞吐量(in)和该电缆支持的最大带宽(bandwidth)之间的最小值来确定吞吐量(out):

out=min(in,bandwidth)

图5是示出通常在流设计工具包括仿真工具时执行的流设计过程的流程图。如上文所述,设计过程分两个阶段执行。第一阶段被称为设计阶段,而第二阶段被称为仿真阶段。在流程图500中,设计阶段包括步骤502、504、506和520。仿真阶段包括步骤510、512、522和524。如果流设计工具不包括仿真工具,则流设计过程仅包括设计阶段。

流设计过程从步骤502开始,在该步骤用户在图形用户界面上设计未完成的流。在步骤504,根据本发明的数据处理系统104确定操作、通道和链接的性能值,这些操作、通道和性能是该未完成的流的元件,由此,如前文所述地考虑流的各个元件的交互。

表述“未完成的流”是指仍处于设计阶段的流。实现流的目标所需的所有元件并没有都被放置在图形用户界面上,或者所有元件已被放置在图形用户界面上,但是它们被认为是以就流的性能而言并非最优的方式安排的。

在步骤506,在图形用户界面上可视化流的性能值。在步骤520,用户确定该流是否完成。

如果用户认为流是未完成的,则流程图返回步骤502。用户将改变或重新安排流的元件。揭示例如任何瓶颈的、性能值的可视化帮助用户重新安排未完成的流。这是有利的,因为这使得用户能够在设计阶段重新设计流,并设计出就流的性能而言最优的设计。步骤504、506和520重复执行,直到用户确定流完成。

如果用户在步骤520确定流完成,则流程图转到步骤510,在该步骤流设计进入仿真阶段。在步骤510,用户使用仿真工具仿真流图的性能。在步骤512,仿真工具确定流的各个元件的精确性能值。

根据本发明的数据处理系统104在步骤504确定性能值。例如,在本发明的一个实施例中,如上所述,通过从用户或从数据库请求最大吞吐量确定操作、通道或链接的最大吞吐量。然后,通过将操作、通道或链接的最大吞吐量与流中的前一个元件的实际吞吐量相比较,并将其中的最小值作为操作、通道或链接的实际吞吐量,来获得操作、通道或链接的实际吞吐量。因此,仅确定每个流元件实际吞吐量的估计值,这足以揭示例如流中存在的任何瓶颈。但是,在流的元件的实际吞吐量是通过仿真流确定的而不是通过与前一个流元件的吞吐量相比较确定的意义上,仿真工具确定精确的性能值。

在步骤522,用户确定他是否希望重新设计该流,或者他是否对流的性能感到满意。如果他不希望重新设计,则流程图在步骤524结束,流设计完成。

如果用户决定重新设计流,则设计过程再次从步骤502开始。但是,在设计阶段期间,在步骤504数据处理系统使用在步骤512已由仿真工具确定的流的各个元件的性能值。例如,在其中确定流的每个元件的实际和最大吞吐量的本发明的一个实施例中,认为元件的实际吞吐量是由该仿真确定的、流的每个元件的吞吐量。

仿真所获得的这些值仅用于建模阶段中直到“被仿真”元件的前一个元件使该仿真值无效为止。在此情况下,在仿真再次运行之前,建模工具对于该被无效的元件将再次使用理论值。

标号列表

100  框图

101  计算机系统

102  流设计工具

104  数据处理系统

105  流仿真工具

106  微处理器

108  输入设备(键盘、鼠标)

110  图形卡

112  非易失存储设备

114  易失存储设备

120  屏幕

122  图形用户界面

130  流

132  操作

134  操作

136  输出通道

138  输入通道

140  链接

150  操作的性能值

152  操作的性能值

154  输入通道的性能值

156  输出通道的性能值

158  链接的性能值。

200  流图

202  数据源1

204  数据源2

206  集合操作

208  分类操作

210  数据目标操作

212  输出通道

214  输出通道

216  输入通道

218  输入通道

220  输出通道

222  输入通道

224  输出通道

226  输入通道

230  链接

232  链接

234  链接

236  链接

300  流程图

302  数据源1

304  数据源2

306  集合操作

308  循环(rotate)操作

310  数据目标操作

312  输出通道

314  输出通道

316  输入通道

318  输入通道

320  输出通道

322  输入通道

324  输出通道

326  输入通道

330  链接

332  链接

334  链接

336  链接

400  操作的框图

402  操作

404  输入通道

406  输入通道

408  输入通道

410  输入通道

412  输出通道

414  输出通道

416  输出通道

418  输出通道

500  流程图

502  未完成的流

504  确定性能值

506  可视化性能值

510  仿真工具

512  确定精确的性能值

520  判定

522  判定

524  结束

去获取专利,查看全文>

相似文献

  • 专利
  • 中文文献
  • 外文文献
获取专利

客服邮箱:kefu@zhangqiaokeyan.com

京公网安备:11010802029741号 ICP备案号:京ICP备15016152号-6 六维联合信息科技 (北京) 有限公司©版权所有
  • 客服微信

  • 服务号