JP5108011B2 - バス接続されたコンシューマとプロデューサとの間でのメッセージ・フローを削減するためのシステム、方法、およびコンピュータ・プログラム - Google Patents
バス接続されたコンシューマとプロデューサとの間でのメッセージ・フローを削減するためのシステム、方法、およびコンピュータ・プログラム Download PDFInfo
- Publication number
- JP5108011B2 JP5108011B2 JP2009521197A JP2009521197A JP5108011B2 JP 5108011 B2 JP5108011 B2 JP 5108011B2 JP 2009521197 A JP2009521197 A JP 2009521197A JP 2009521197 A JP2009521197 A JP 2009521197A JP 5108011 B2 JP5108011 B2 JP 5108011B2
- Authority
- JP
- Japan
- Prior art keywords
- message flow
- physical processing
- processing node
- logical operator
- logical
- 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.)
- Expired - Fee Related
Links
Images
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L12/00—Data switching networks
- H04L12/28—Data switching networks characterised by path configuration, e.g. LAN [Local Area Networks] or WAN [Wide Area Networks]
- H04L12/40—Bus networks
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L12/00—Data switching networks
- H04L12/28—Data switching networks characterised by path configuration, e.g. LAN [Local Area Networks] or WAN [Wide Area Networks]
- H04L12/40—Bus networks
- H04L12/4013—Management of data rate on the bus
Landscapes
- Engineering & Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Quality & Reliability (AREA)
- Debugging And Monitoring (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
- Data Exchanges In Wide-Area Networks (AREA)
- Multi Processors (AREA)
- Management, Administration, Business Operations System, And Electronic Commerce (AREA)
Description
図1は、イベント・エミッタ102、104、106およびコンシューマ108のバス接続システム100における、イベントおよびさらにはメタデータの流れを示す。一実施形態では、イベント・エミッタ102、104、106が様々なイベントを生成し、これらのイベントを、本明細書では「メッセージ・バス110」と呼ばれる共通イベント・インフラストラクチャ(たとえばイベント/メッセージ・バス110)に送信する。一実施形態では、イベントとは、状態の変更に関連する情報を含むメッセージである。たとえば、センサまたはタイマからの読み取りである。イベントは、時間に依存した情報を含むことが可能であり、構造化または非構造化テキストとすることができる。
図2に示されるように、本発明の実施形態に従った例示的な分散処理システム200が示される。図2は、物理処理ノード202、204、206、208、210のサブセットを介してシステム200に入る、様々なリアルタイム・ストリーム212、214、216、218を示す。一実施形態では、分散処理システム200は、図1に示されたメッセージ・バス110などのメッセージ・バスを介して互いの間でメッセージを渡す、物理処理ノードのシステムである。処理ノード202、204、206、208、210は、たとえば単一のクラスタ内に一緒に配置されるか、または広域にわたって地理的に分散される場合がある。
図3は、情報処理システムの詳細を示すブロック図である。一実施形態では、情報処理システムは、図2の物理処理ノード202、204、206、208、210のいずれかとすることができる。他の実施形態では、情報処理システムは、図2の物理処理ノード202、204、206、208、210に通信に関して結合された、別個かつ異質な情報処理システムである。
図4は、一実施形態では共通イベント・インターフェースである、例示的イベント/メッセージ・バス410を示す。一実施形態では、物理処理ノード402、404、406、408、414が通信に関してメッセージ・バス410に結合される。物理処理ノードは、一実施形態では、イベント/メッセージのプロデューサ、あるいは、モニタリング・アプリケーションなどのイベント/メッセージのコンシューマ、またはその両方を、含むことができる。一実施形態では、各物理処理ノード402、404、406、408、414は、コストおよび選択性などの意味論的および計算上の制約のセットに関連付けられる。これらの制約は、一実施形態では、どの物理処理ノード上に論理演算子が配置できるかを指示する。メッセージ・バス410は、一実施形態では、イベント・エミッタによって生成されたトピックにサブスクライブする。これらのトピックに関して発行されたメッセージは、メッセージ・バス410によって処理あるいは格納またはその両方が実行され、その後、それらのイベントにサブスクライブしている論理演算子へとルーティングされる。他方で、論理演算子はイベントの受け取りおよび処理を実行する。論理演算子は、ビジネス観察モニタ・モデルなどのモニタリング・モデルに従って、受け取ったメッセージをさらに処理する。他方でアプリケーションは、通常は結果が戻されるエンド・ポイントである。
図5〜図9は、物理処理ノードへの論理演算子の割り当てを示すDAGを示す。図5は、論理演算子に対応する複数のノードを備えるDAG 500を示す。図5(および図6〜図9)は、物理処理ノード502、504、506、508、512、514、516のセットを含む、例示的メッセージ・バス510も含む。メッセージ・バス510は、イベント・バス510上の物理処理ノードの配置を示すための参照として示される。たとえば、所与のメッセージ・フロー・シーケンスでは、物理処理ノードC0 502は、物理処理ノードC1 504より前に処理を実行する。
図10は、論理演算子への物理処理ノードの初期割り当ての例示的プロセスを示す。図10の動作流れ図はステップ1002から始まり、ステップ1004へと直接進む。論理演算子アサイナ324は、ステップ1004で、いずれかの論理演算子が特定の物理処理ノードによる処理を必要とするかどうかを判別する。この判別の結果が否定的である場合、制御はステップ1008へと進む。この判別の結果が肯定的である場合、論理演算子アサイナ324は、ステップ1006で、これらの論理演算子をそれらの必要な物理処理ノードにピンニングする。論理演算子アサイナ324は、ステップ1008で、各論理演算子に関する入力および出力メッセージ・フロー量を決定する。その後論理演算子は、ステップ1010で、初期物理処理ノードに割り当てられる。その後論理演算子アサイナは、ステップ1012で、論理演算子への物理処理ノードの初期割り当てに関する総メッセージ・フロー・コストを決定する。その後、制御フローは図11の入口ポイントAへと続く。
図11は、最適な割り当て構成を決定するための、論理演算子への物理処理ノードの再割り当ての例示的プロセスを示す。動作流れ図は、入口ポイントAから始まり、ステップ1102へと直接進む。論理演算子アサイナ324は、ステップ1102で、各論理演算子に関する入力および出力メッセージ・フロー量を分析する。論理演算子アサイナ324は、ステップ1104で、各論理演算子について、入力メッセージ・フロー量の合計が出力メッセージ・フロー量の合計よりも多いかまたはこれに等しいかどうかを判別する。この判別の結果が否定的である場合、論理演算子アサイナ324は、ステップ1106で、所与のメッセージ・フロー・シーケンスに関するメッセージ・バス324上の、現在論理演算子に割り当てられている物理処理ノードよりも後続のある位置に位置する物理処理ノードに、論理演算子を割り当てる。その後、制御はステップ1110に進む。
図12は、子論理演算子のうちの1つの物理処理ノードへの親論理演算子の割り当ての例示的プロセスを示す。動作流れはステップ1202で開始され、ステップ1204へ直接進む。論理演算子アサイナ324は、ステップ1204で、親論理演算子が、現在子論理演算子に割り当てられている物理処理ノードの位置に先行する、メッセージ・バス上のある位置に位置する物理処理ノードに割り当てられるかどうかを判別する。この判別の結果が否定的である場合、制御フローはステップ1206で終了する。この判別の結果が肯定的である場合、論理演算子アサイナ324は、ステップ1208で、親論理演算子を、現在子論理演算子に割り当てられている物理処理オードに再割り当てする。
本発明は、ハードウェア、ソフトウェア、またはハードウェアおよびソフトウェアの組み合わせで実現可能である。本発明の好ましい実施形態に従ったシステムは、1コンピュータ・システム内で集中的に、または、異なる要素がいくつかの相互接続されたコンピュータ・システムにまたがって散在する分散的に、実現可能である。任意の種類のコンピュータ・システム、または、本明細書で説明した方法を実施するように適合された他の装置が好適である。ハードウェアおよびソフトウェアの典型的な組み合わせは、ロードおよび実行された場合にコンピュータ・システムを制御し、その結果として本明細書で説明した方法を実施する、コンピュータ・プログラムを備えた、汎用コンピュータ・システムとすることができる。
Claims (10)
- メッセージ・バス上のメッセージ・フローを削減するための、情報処理システムを伴う方法であって、
複数の論理演算子内の少なくとも1つの論理演算子が、物理ノード・グループ内の所与の物理処理ノードでの処理を必要とするかどうかを判別するステップと、
前記論理演算子が前記所与の物理処理ノードでの処理を必要とする旨の決定に応答して、前記論理演算子が前記所与の物理処理ノードにピンニングするステップと、
前記複数の論理演算子内の各論理演算子を、メッセージ・バス上にある前記物理処理ノード・グループ内の初期の物理処理ノードに割り当てるステップと、
を含み、前記割り当てるステップは、
前記複数の論理演算子内の少なくとも1つの論理演算子について、前記論理演算子に関連付けられた入力メッセージ・フロー量セットの合計が、前記論理演算子に関連付けられた出力メッセージ・フロー量セットの合計よりも多い、およびこれに等しい、のうちの少なくとも1つであるかどうかを判別するステップと、
前記入力メッセージ・フロー量セットの合計が、前記出力メッセージ・フロー量セットの合計よりも多い、およびこれに等しい、のうちの1つであることに応答して、前記論理演算子を、前記論理演算子が現在関連付けられている前記物理処理ノードに先行する所与のメッセージ・フロー・シーケンスに関する前記メッセージ・バス上のある位置に位置する、先行する物理処理ノードに割り当てるステップと、
前記入力メッセージ・フロー量セットの合計が、前記出力メッセージ・フロー量セットの合計よりも少ないことに応答して、前記論理演算子を、前記論理演算子が現在関連付けられている前記物理処理ノードに対して、前記所与のメッセージ・フロー・シーケンスに関する前記メッセージ・バス上のある後続位置に位置する、後続の処理ノードに割り当てるステップと、
を含む、方法。 - 前記メッセージ・フロー量が、
統計と、
観察と、
仮定と、
のうちの少なくとも1つに基づいて決定される、請求項1に記載の方法。 - 前記複数の論理演算子内の各論理演算子をそれぞれの初期の物理処理ノードに割り当てるステップに関連付けられた、総メッセージ・フロー・コストを決定するステップをさらに含む、請求項1に記載の方法。
- 前記メッセージ・フロー・コストが、前記初期の物理処理ノードにメッセージを伝送する各論理演算子に関連付けられたメッセージ・フロー量の合計を含む、請求項3に記載の方法。
- 前記入力メッセージ・フロー量セットの合計が、前記出力メッセージ・フロー量セットの合計よりも多い、およびこれに等しい、のうちの1つであることに応答して、割り当てる前記ステップが、
前記物理処理ノードが、前記論理演算子のリソース要件を満たすために使用可能なリソースを備えるかどうかを判別するステップと、
前記物理処理ノードが使用可能なリソースを備えることに応答して、前記論理演算子を、前記論理演算子が現在関連付けられている前記物理処理ノードの前記メッセージ・バス上の位置に位置する前記先行する物理処理ノードに割り当てるステップと、
をさらに含む、請求項1に記載の方法。 - 前記複数の論理演算子を各物理処理ノードに割り当てるステップに関連付けられた総メッセージ・フロー・コストを決定するステップをさらに含む、請求項1に記載の方法。
- 前記メッセージ・フロー・コストが、物理処理ノードにメッセージを伝送する各論理演算子に関連付けられたメッセージ・フロー量の合計を含む、請求項1に記載の方法。
- 前記先行する物理処理ノードおよび前記後続の物理処理ノードのうちの1つに前記論理演算子のそれぞれを割り当てるステップに関連付けられた、後続のメッセージ・フロー・コストが、前記論理演算子のそれぞれを初期物理処理ノードに割り当てるステップに関連付けられた初期メッセージ・フロー・コストよりも少ないかどうかを判別するステップと、
前記後続のメッセージ・フロー・コストが前記初期メッセージ・フロー・コストよりも少ないことに応答して、前記後続のメッセージ・フロー・コストに関連付けられた前記論理演算子の前記割り当てを選択するステップと、
をさらに含む、請求項1に記載の方法。 - 請求項1〜8のいずれか一項に記載の方法のすべてのステップを実施するように適合された手段を備えるシステム。
- 請求項1〜8のいずれか一項に記載の方法のすべてのステップをコンピュータに実行させるコンピュータ・プログラム。
Applications Claiming Priority (3)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US11/495,312 US7529849B2 (en) | 2006-07-27 | 2006-07-27 | Reduction of message flow between bus-connected consumers and producers |
US11/495,312 | 2006-07-27 | ||
PCT/EP2007/057027 WO2008012198A1 (en) | 2006-07-27 | 2007-07-10 | Reduction of message flow between bus-connected consumers and producers |
Publications (2)
Publication Number | Publication Date |
---|---|
JP2009545043A JP2009545043A (ja) | 2009-12-17 |
JP5108011B2 true JP5108011B2 (ja) | 2012-12-26 |
Family
ID=38519753
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2009521197A Expired - Fee Related JP5108011B2 (ja) | 2006-07-27 | 2007-07-10 | バス接続されたコンシューマとプロデューサとの間でのメッセージ・フローを削減するためのシステム、方法、およびコンピュータ・プログラム |
Country Status (5)
Country | Link |
---|---|
US (3) | US7529849B2 (ja) |
EP (1) | EP2052325B1 (ja) |
JP (1) | JP5108011B2 (ja) |
CN (1) | CN101495978B (ja) |
WO (1) | WO2008012198A1 (ja) |
Families Citing this family (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP5104489B2 (ja) | 2008-04-03 | 2012-12-19 | 日本電気株式会社 | 分散イベント検出システム、分散イベント検出方法、及び分散イベント検出用プログラム |
CN103095564B (zh) * | 2011-11-01 | 2016-07-06 | 北京新媒传信科技有限公司 | 数据业务平台上数据交互方法和*** |
CN103259701A (zh) * | 2012-12-04 | 2013-08-21 | 中国科学院沈阳自动化研究所 | 面向复杂生产过程管理***的消息总线实现方法 |
US9591063B2 (en) * | 2013-03-09 | 2017-03-07 | Sas Institute Inc. | Parallel community detection |
US10860186B2 (en) * | 2014-09-26 | 2020-12-08 | Oracle International Corporation | User interface component wiring for a web portal |
US10761750B2 (en) * | 2017-03-09 | 2020-09-01 | Netapp Inc. | Selectively storing data into allocation areas using streams |
Family Cites Families (24)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US5257374A (en) | 1987-11-18 | 1993-10-26 | International Business Machines Corporation | Bus flow control mechanism |
JP2589932B2 (ja) | 1992-06-15 | 1997-03-12 | インターナショナル・ビジネス・マシーンズ・コーポレイション | 装置の割り当てのグローバルな最適化方法とシステム |
JPH06149756A (ja) * | 1992-11-16 | 1994-05-31 | Hitachi Ltd | 分散型情報処理方法およびその装置 |
DE69432746T2 (de) * | 1994-06-10 | 2004-03-25 | Hewlett-Packard Co. (N.D.Ges.D.Staates Delaware), Palo Alto | Ereignisverarbeitungssystem und Verfahren zur Herstellen eines solchen Systems |
JPH0830558A (ja) * | 1994-07-20 | 1996-02-02 | Fujitsu Ltd | 計算機システムにおける負荷分散方法及びそれを利用した計算機システム |
US7233998B2 (en) * | 2001-03-22 | 2007-06-19 | Sony Computer Entertainment Inc. | Computer architecture and software cells for broadband networks |
US7093104B2 (en) * | 2001-03-22 | 2006-08-15 | Sony Computer Entertainment Inc. | Processing modules for computer architecture for broadband networks |
CN100364293C (zh) * | 2002-09-28 | 2008-01-23 | 华为技术有限公司 | 消息传输部分2层用户适配对ip网络拥塞的处理方法 |
US20050193113A1 (en) | 2003-04-14 | 2005-09-01 | Fujitsu Limited | Server allocation control method |
JP2004348680A (ja) * | 2003-05-26 | 2004-12-09 | Fujitsu Ltd | 複合イベント通知システムおよび複合イベント通知プログラム |
JP2005004676A (ja) * | 2003-06-16 | 2005-01-06 | Fujitsu Ltd | 適応型分散処理システム |
US7088371B2 (en) * | 2003-06-27 | 2006-08-08 | Intel Corporation | Memory command handler for use in an image signal processor having a data driven architecture |
US7516456B2 (en) * | 2003-09-25 | 2009-04-07 | International Business Machines Corporation | Asymmetric heterogeneous multi-threaded operating system |
US7415703B2 (en) * | 2003-09-25 | 2008-08-19 | International Business Machines Corporation | Loading software on a plurality of processors |
US7389508B2 (en) * | 2003-09-25 | 2008-06-17 | International Business Machines Corporation | System and method for grouping processors and assigning shared memory space to a group in heterogeneous computer environment |
US7549145B2 (en) * | 2003-09-25 | 2009-06-16 | International Business Machines Corporation | Processor dedicated code handling in a multi-processor environment |
US7478390B2 (en) * | 2003-09-25 | 2009-01-13 | International Business Machines Corporation | Task queue management of virtual devices using a plurality of processors |
US7444632B2 (en) * | 2003-09-25 | 2008-10-28 | International Business Machines Corporation | Balancing computational load across a plurality of processors |
US7523157B2 (en) * | 2003-09-25 | 2009-04-21 | International Business Machines Corporation | Managing a plurality of processors as devices |
US7093080B2 (en) * | 2003-10-09 | 2006-08-15 | International Business Machines Corporation | Method and apparatus for coherent memory structure of heterogeneous processor systems |
EP1533699B1 (en) | 2003-11-21 | 2012-08-08 | Sap Ag | A method of assigning objects to processing units |
US7240182B2 (en) * | 2004-09-16 | 2007-07-03 | International Business Machines Corporation | System and method for providing a persistent function server |
US7506325B2 (en) * | 2004-10-07 | 2009-03-17 | International Business Machines Corporation | Partitioning processor resources based on memory usage |
US7398482B2 (en) * | 2005-07-28 | 2008-07-08 | International Business Machines Corporation | Modular design method and apparatus |
-
2006
- 2006-07-27 US US11/495,312 patent/US7529849B2/en not_active Expired - Fee Related
-
2007
- 2007-07-10 CN CN200780027832.0A patent/CN101495978B/zh not_active Expired - Fee Related
- 2007-07-10 WO PCT/EP2007/057027 patent/WO2008012198A1/en active Application Filing
- 2007-07-10 EP EP07787302.4A patent/EP2052325B1/en active Active
- 2007-07-10 JP JP2009521197A patent/JP5108011B2/ja not_active Expired - Fee Related
-
2009
- 2009-05-04 US US12/434,840 patent/US8364818B2/en not_active Expired - Fee Related
-
2012
- 2012-07-27 US US13/560,299 patent/US8392577B2/en not_active Expired - Fee Related
Also Published As
Publication number | Publication date |
---|---|
US8364818B2 (en) | 2013-01-29 |
EP2052325B1 (en) | 2013-05-22 |
JP2009545043A (ja) | 2009-12-17 |
US7529849B2 (en) | 2009-05-05 |
EP2052325A1 (en) | 2009-04-29 |
CN101495978A (zh) | 2009-07-29 |
US20120297085A1 (en) | 2012-11-22 |
US20090216899A1 (en) | 2009-08-27 |
WO2008012198A1 (en) | 2008-01-31 |
US8392577B2 (en) | 2013-03-05 |
CN101495978B (zh) | 2011-12-14 |
US20080028098A1 (en) | 2008-01-31 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US11442935B2 (en) | Determining a record generation estimate of a processing task | |
US12007996B2 (en) | Management of distributed computing framework components | |
US11341131B2 (en) | Query scheduling based on a query-resource allocation and resource availability | |
US11321321B2 (en) | Record expansion and reduction based on a processing task in a data intake and query system | |
US11599541B2 (en) | Determining records generated by a processing task of a query | |
US11593377B2 (en) | Assigning processing tasks in a data intake and query system | |
US11586627B2 (en) | Partitioning and reducing records at ingest of a worker node | |
US20200364223A1 (en) | Search time estimate in a data intake and query system | |
US20190310977A1 (en) | Bucket data distribution for exporting data to worker nodes | |
US20190324819A1 (en) | Distributed-system task assignment method and apparatus | |
US8402469B2 (en) | Allocating resources for parallel execution of query plans | |
US20150293994A1 (en) | Enhanced graph traversal | |
US20160112531A1 (en) | Scripting distributed, parallel programs | |
JP5108011B2 (ja) | バス接続されたコンシューマとプロデューサとの間でのメッセージ・フローを削減するためのシステム、方法、およびコンピュータ・プログラム | |
CN111949832A (zh) | 批量作业依赖关系的解析方法及装置 | |
WO2011142227A1 (ja) | コンピュータ・システム、方法及びプログラム | |
Bhowmik et al. | Distributed control plane for software-defined networks: A case study using event-based middleware | |
US10944846B2 (en) | Distribution schedule creation method and distribution schedule creation apparatus | |
Yao et al. | Genetic scheduling on minimal processing elements in the grid | |
JP2009065256A (ja) | トラヒック情報処理装置、トラヒック情報処理方法、及び、トラヒック情報処理プログラム | |
Hammad et al. | Novel methods for virtual network composition | |
CN115396319B (zh) | 数据流分片方法、装置、设备及存储介质 | |
CN112965807A (zh) | 一种任务调度方法、装置、设备及介质 | |
CN113760942A (zh) | 一种交互式分析中的数据处理方法及装置 | |
CN115729719A (zh) | 数据处理方法及相关设备 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20100421 |
|
A977 | Report on retrieval |
Free format text: JAPANESE INTERMEDIATE CODE: A971007 Effective date: 20120514 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20120522 |
|
A521 | Written amendment |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20120808 |
|
TRDD | Decision of grant or rejection written | ||
A01 | Written decision to grant a patent or to grant a registration (utility model) |
Free format text: JAPANESE INTERMEDIATE CODE: A01 Effective date: 20120918 |
|
A01 | Written decision to grant a patent or to grant a registration (utility model) |
Free format text: JAPANESE INTERMEDIATE CODE: A01 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20121004 |
|
R150 | Certificate of patent or registration of utility model |
Ref document number: 5108011 Country of ref document: JP Free format text: JAPANESE INTERMEDIATE CODE: R150 Free format text: JAPANESE INTERMEDIATE CODE: R150 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20151012 Year of fee payment: 3 |
|
LAPS | Cancellation because of no payment of annual fees |