JP5629261B2 - 別々の情報技術製品/ソリューション展開間でパフォーマンス・データを共有する方法およびシステム - Google Patents

別々の情報技術製品/ソリューション展開間でパフォーマンス・データを共有する方法およびシステム Download PDF

Info

Publication number
JP5629261B2
JP5629261B2 JP2011526426A JP2011526426A JP5629261B2 JP 5629261 B2 JP5629261 B2 JP 5629261B2 JP 2011526426 A JP2011526426 A JP 2011526426A JP 2011526426 A JP2011526426 A JP 2011526426A JP 5629261 B2 JP5629261 B2 JP 5629261B2
Authority
JP
Japan
Prior art keywords
computing node
configuration
determining
optimal
performance information
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
Application number
JP2011526426A
Other languages
English (en)
Other versions
JP2012526304A (ja
Inventor
ブランカ、サルバトーレ
カバッツァ、パオロ
マクレラン、スコット
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
International Business Machines Corp
Original Assignee
International Business Machines Corp
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by International Business Machines Corp filed Critical International Business Machines Corp
Publication of JP2012526304A publication Critical patent/JP2012526304A/ja
Application granted granted Critical
Publication of JP5629261B2 publication Critical patent/JP5629261B2/ja
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F17/00Digital computing or data processing equipment or methods, specially adapted for specific functions
    • G06F17/40Data acquisition and logging
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F8/00Arrangements for software engineering
    • G06F8/60Software deployment
    • G06F8/61Installation
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F15/00Digital computers in general; Data processing equipment in general
    • G06F15/16Combinations of two or more digital computers each having at least an arithmetic unit, a program unit and a register, e.g. for a simultaneous processing of several programs
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements 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/44Arrangements for executing specific programs
    • G06F9/445Program loading or initiating
    • G06F9/44505Configuring for program initiating, e.g. using registry, configuration files

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • General Engineering & Computer Science (AREA)
  • Software Systems (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Computer Hardware Design (AREA)
  • Data Mining & Analysis (AREA)
  • Databases & Information Systems (AREA)
  • Mathematical Physics (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
  • Stored Programmes (AREA)
  • Management, Administration, Business Operations System, And Electronic Commerce (AREA)

Description

本発明は、全般的に、情報技術(IT:information technology)製品/ソリューションを構成することに関し、特に、IT製品/ソリューション展開間で構成情報を共有することに関する。
情報技術(IT)製品/ソリューションをプロダクション環境に展開するときに頻繁に起こる解決が難しい課題は、特定のサービス・レベルまたはパフォーマンス目標を達成する構成の最適集合を発見することである。今日、エンタープライズ・アプリケーションを展開し、最適パフォーマンスを実現する構成を判断することにおける問題は、アプリケーションが、そのアプリケーション(ミドルウェア)のランタイム・プラットフォームを提供する他のソフトウェア製品のセットに基づくようになってきているということである。別の問題は、アプリケーションが、多数のプラットフォーム(オペレーティング・システム)上で実行されるよう開発されているということである。さらに別の問題は、最適パフォーマンスの展開および提供に関するベスト・プラクティスが必ずしも従われるとは限らないことから、各アプリケーションが明確に調整されなければならないということである。
現在、同じIT製品/ソリューションが別々の顧客環境で展開されると、各顧客が時間を費やして最適構成を発見しなければならない。2つの顧客が類似したコンピューティング環境を有し、それが結果として同じ最適構成につながる場合でも、この顧客が最適構成についての情報を共有する動的メカニズムがないことから、各顧客が時間を費やして最適構成を発見しなければならない。ITサービス・プロバイダが製品/ソリューションを複数回構成しなければならない場合にも、同様の問題が生じる。
本発明の実施形態によれば、本発明は、別々の情報技術製品/ソリューション展開間でパフォーマンス・データを共有する方法およびシステムを提供する。一実装は、複数のコンピューティング・ノード間でパフォーマンス情報を動的に共有する方法およびシステムを含み、前記コンピューティング・ノードにおける情報技術(IT)製品/ソリューションの展開からパフォーマンス情報を動的に取得することと、取得されたパフォーマンス情報を知識データベース内に記憶するために、取得されたパフォーマンス情報を通信ネットワーク上でサーバに送信することとを含む。サーバは、データベース内の情報に基づき、新たな構成情報を動的に判断し、新たな構成をデータベース内に記憶し、新たな構成情報をネットワーク上で送信することによって前記展開に新たな構成情報を提供するよう動作する。
各展開におけるパフォーマンス情報は、その展開における現在の構成情報を含むとよく、新たな構成情報を判断することは、データベース内の構成情報に基づいて新たな構成情報を判断することをさらに含むとよい。
パフォーマンス情報は、展開の構成ポリシーに基づく展開それぞれにおけるハードウェアおよびソフトウェア構成に関する現在の構成パラメータ情報を含むとよく、新たな構成情報を判断することは、データベース内の情報に基づいて最適構成を判断することをさらに含むとよい。
展開の最適構成情報を判断することは、その展開から取得された情報に基づき、展開から取得されたパラメータ情報に基づいて展開タイプを展開に割り当てることであって、展開タイプは、展開のコンピューティング環境の特徴に応じたものである、該割り当てることと、その展開タイプに関してデータベース内に最適構成が存在すれば、その結果、その展開タイプに関して存在する最適構成を提供することとをさらに含むとよい。その展開タイプに関してデータベース内に最適構成が存在しなければ、その結果、その展開タイプに関してデータベース内にある構成情報に基づき展開の最適構成を判断し、展開の最適構成をデータベース内に格納し、展開の最適構成を提供する。
新たな構成情報は、展開における構成ポリシーに基づき展開において適用されるとよい。展開は、新たな構成情報をリクエストしてもよく、その結果、新たな構成情報を提供することは、リクエストしている展開に新たな構成情報を提供することを含むとよい。
本発明の他の側面および利点が、以下の詳細な説明から明らかになる。詳細な説明は、図面と併せて理解されると、本発明の原理の例示となる。
本発明の本質および利点、ならびに好適な使用形態をよりよく理解するためには、添付の図面と併せて読まれる、以下の詳細な説明を参照すべきである。
本発明の実施形態による、別々の情報技術製品/ソリューション展開間でパフォーマンス・データを共有する知識共有システムの機能ブロック図を示す。 本発明の実施形態による、知識共有システム内のクライアント・モジュールの機能ブロック図を示す。 本発明の実施形態による、知識共有システム内のサーバ・モジュールの機能ブロック図を示す。 本発明の実施形態による、別々の情報技術製品/ソリューション展開間でパフォーマンス・データを共有するアーキテクチャの機能ブロック図を示す。 本発明の実施形態による、別々の情報技術製品/ソリューション展開間でパフォーマンス・データを共有するプロセスのフローチャートを示す。 本発明の実施形態による、別々の情報技術製品/ソリューション展開間で最適構成情報を判断および共有するプロセスのフローチャートを示す。 本発明の実施形態による、別々の情報技術製品/ソリューション展開間での最適構成情報の共有および適用の図形による例を示す。
以下の説明は、本発明の全般的な原理を示すためのものであり、本願明細書において請求される発明概念を限定することは意図されていない。さらに、本願明細書に記載される特定の特徴は、様々な可能な組み合わせおよび置換のそれぞれにおいて、記載されている他の特徴と組み合わせて使用可能である。本願明細書で明確に他の記載がない限り、すべての表現には、明細書が暗示する意味、ならびに当業者により理解される意味または辞書、論文などで定義されている意味あるいはその両方を含め、その最大限広範な解釈が与えられるものとする。
本発明は、構成情報などのパフォーマンス・データを、別々の情報技術(IT)製品/ソリューション展開間で動的に共有する方法およびシステムを提供する。一実施形態は、様々なコンピューティング環境における(IT)製品/ソリューション(例えばソフトウェア製品)の展開に関する新たな構成についての情報を含む情報を動的に取得してデータベース内に記憶し、そのような、或る環境向けの新たな構成情報を、データベースからその環境のクライアントに提供することによって構成情報を共有することを可能にする知識共有メカニズムを含む。
一実施形態では、新たな構成情報は、実質的に最適な構成情報を含む。知識共有メカニズムは、IT製品/ソリューションの複数の展開に適用され、そのような複数の展開における最適構成を発見する期間を短縮し、その結果、複数の展開で同じタスクへの取り組みが重複することを避ける。本発明はさらに、IT製品/ソリューションのパフォーマンス・モデルの動的な改善を提供し、その結果、静的なローカルの構成アドバイザを使用することの制限を克服する。
一実装は、エンタープライズ・レベルおよびエンタープライズ間で価値を提供する、Web2.0のようなシステム(Enterprise2.0)を可能にする知識共有メカニズムを含む。これは、所定のIT製品/ソリューションの複数展開間の知識共有システムを提供し、そのIT製品/ソリューションの最適パフォーマンス構成を発見する。当該のシステムは、概して、各IT製品/ソリューション展開のクライアントと、サーバとを含む。クライアントは、対応するIT製品/ソリューション展開を、その展開から必要なハードウェアおよびソフトウェア・データを収集し、そのデータをサーバへ送り、その展開に最適な構成を受信することにより最適化するよう構成されている。サーバは、IT製品/ソリューションのすべての展開からデータを収集し、各展開の最良(最適)構成を発見し、最適構成情報を各展開へ返送するよう構成されている。
1つの運用シナリオでは、クライアントは、特定のIT製品/ソリューションに組み込まれたソフトウェア・モジュールを含み、コンピューティング環境におけるそのIT製品/ソリューション展開の構成状況を、その展開に適用される最適化ポリシーとともに定期的にサーバへ送る。サーバは、当該情報を分析して、所望の顧客最適化ポリシーに従い、その環境にその構成が最適であるかどうかを判断する。サーバは、他の展開(顧客)からの、類似したコンピューティング環境(単数または複数)および類似した最適化ポリシーに関して既に公知である構成、または分析的構成最適化技術(analytical configuration optimization techniques)、あるいはその両方を活用することで、構成が最適であるかどうかを判断する。
サーバが、コンピューティング環境におけるIT製品/ソリューション展開の最適構成を判断すると、サーバは、その展開のクライアントへ最適構成情報を送る。次に、その展開の顧客は、最適構成状態に移行するよう構成変更を現在の構成に対し自動的にシステムに実装させること、または変更を処理する前に変更を検証するよう手動確認を要求することを決定することができる。
IT製品/ソリューションの展開の数が増えるにつれて、類似したコンピューティング環境の構成の最適性も増す。これはさらに、IT製品/ソリューションのパフォーマンス・モデルの動的強化を可能にする。別々の時間に別々の構成が必要な場合(例えば、コンピューティング負荷の季節ごとの変化)、このシステムは、サーバから各展開へのダウンロードを迅速にリクエストできる種々の構成を提供する。このシステムは、様々な構成についての情報(肯定的および否定的)収集に基づき各展開の最適構成を作り出すことによる、知識生成メカニズムを提供する。したがって、「否定的」知識(すなわち、IT製品/ソリューションに何か不具合が生じたときに作り出される知識)のみでなく、「肯定的」知識(すなわち、IT製品/ソリューションの優れた動作の知識)も活用される。
図1は、本発明の実施形態による、別々のIT製品/ソリューション(例えば、顧客Aおよび顧客Bコンピューティング環境での展開)間でパフォーマンス・データを共有するシステム10の機能ブロック図を示す。クライアント・モジュール11が、最適化されるコンピューティング環境にある各IT製品/ソリューション展開に提供され、サーバ12は、最適構成を作り出すために、種々の展開の知識共有を活用する。クライアント・モジュール11およびサーバ12は、インターネットなどの通信ネットワークを介して接続されている(他の通信ネットワークが利用されてもよい)。各コンピューティング環境は、1つ以上のコンピューティング・ノードを含むとよく、各コンピューティング・ノードは、1つ以上のプロセッサ、ストレージ・デバイス、データベース・モジュール、通信モジュール、ネットワークなどを含むとよい。
図2は、データ・コレクタ15、データ送信機16、ソリューション受信機17、構成アクチュエータ(configuration actuator)18、定期チェッカ(periodical checker)19、および最適化ポリシー・コンフィギュレータ(optimization policy configurator)20を含むクライアント・モジュール11の実施形態の機能ブロック図を示す。データ・コレクタ15は、プローブ(probe)21を使用してパフォーマンス・モデルに必要なデータを集める。一例では、プローブ21は、OSプローブ、HWプローブ、およびSWプローブを含み、それぞれ展開コンピューティング環境のOS、ハードウェア、ミドルウェアとインターフェースで接続するソフトウェア・モジュールを含み、最適構成およびパフォーマンス・モデルに必要なデータを抽出する。
データ送信機16は、パフォーマンス・モデル・データをサーバ12(図1)へ送る。ソリューション受信機17は、サーバから構成の最適セット(すなわち「ソリューション」)を受信し、それをストレージ22に記憶する。構成アクチュエータ18は、IT製品/ソリューション展開にて必要な構成変更を実行する。定期チェッカ19は、パフォーマンス・モデルに関して展開においてパラメータのセットを監視し、前記パラメータの1つ以上の値が特定の閾値より上/下に変化すると、データ・フローを開始する(すなわち、パフォーマンス・モデル・データをサーバへ送り構成の最適セットを受信する)。最適化ポリシー・コンフィギュレータ20は、適用される最適化ポリシーを顧客が指定できるようにする。
図3は、サーバ12の実施形態の機能ブロック図を示す。サーバ12は、各IT製品/ソリューションのプラグイン25を提供する製品独立インフラストラクチャを利用する。プラグイン25は、IT製品/ソリューションの構成を記述するのに必要なパフォーマンス・データのセットを含むパフォーマンス・モデル・データを、IT製品/ソリューション展開の各クライアント11から受信すること、および対応する展開を最適化するために必要なデータのセットを各クライアントへ送ることを可能にする。サーバ12は、知識データベース14に存在するデータに基づき各IT製品/ソリューション展開に関して実質的に最良の構成を提供するパフォーマンス・モデルを操作するよう構成された最適化エンジン(ソリューション・ファインダ(solution finder))13を含む。最適化エンジン13は、線形補間アルゴリズムまたは遺伝的アルゴリズム(またはその他任意の最適化手法)を利用して、各展開の最適構成を提供するとよい。
IT製品/ソリューション(例えばソフトウェア製品X、ソフトウェア製品Y)のプラグイン25は、そのIT製品/ソリューションの展開にあるクライアント11と通信するとよい。一実施形態では、IT製品/ソリューションのプラグイン25は、データ受信機26、製品パフォーマンス・モデル27、およびソリューション送信機28を含むソフトウェア・モジュールを含む。データ受信機26は、対応するIT製品/ソリューションの展開に関してクライアント11により送られたデータを受信する。製品パフォーマンス・モデル27は、IT製品/ソリューションのパフォーマンス・モデルを表す。一例では、分析されるパフォーマンス・パラメータのセットは、ベクトル={HWデータ,SWデータ,展開ディメンション}であり、最適化されるパラメータのセットはベクトルであり、ベクトルPの各要素Pに適用される最適化ポリシーのセットは要素Pの現在の値の所望の変化として顧客により指定されることができ、状態iでの構成はdとしての和集合であり、パフォーマンス・モデルは、φ(d)により構成状態の関数として表される。
最適化エンジン13は、IT製品/ソリューションの所定のパフォーマンス・モデルの最適構成を、IT製品/ソリューションの別々の展開(別々の顧客)間で共有されるデータにアクセスすることによって判断する。最適化エンジン13は、各IT製品/ソリューション(ソフトウェア製品X、ソリューション製品Y)のクライアント11に、対応する最適構成を提供する。したがって、図4において例示アーキテクチャ30により示されているように、サーバ12は、各IT製品/ソリューションの複数展開にある関連クライアント11の、対応するプラグイン25を介して、複数IT製品/ソリューションの最適構成分析を実行するとよい。
図5は、本発明の実施形態による、異なるIT製品/ソリューション展開間でパフォーマンス・データを共有するクライアント・プロセス40のフローチャートを示す。プロセス・ブロック41は、ハードウェア・データ、ソフトウェア・データ(例えばOS、ミドルウェア、製品特有)、展開ディメンション(例えばこの展開によりサポートされるクライアントの数)などの分析されるパラメータのセット、最適化されるパラメータのセット(例えば、以前のデータ・グループのサブセット)を、各パラメータに関する所望の最適化ポリシーとともに含む、IT製品/ソリューション展開に関するクライアント側の現在の構成データをスキャンする。プロセス・ブロック42は、そのようなデータがサーバにアップロードされているかどうかを判断する。されていれば、プロセスは、ブロック41へと戻り、そうでなければブロック43へ進む。
プロセス・ブロック43において、クライアントは、スキャンされたデータをサーバへ送る。例えば、スキャンされたデータは、定期的に、またはパラメータ値の一部が所定の閾値より上/下に変化したときに、サーバにアップロードされることが可能である。図6に関係して以下にさらに記載するように、サーバ側でのプロセス・ブロック44において、IT製品/ソリューションの別々のクライアントすべてからデータが収集され、各展開の最適構成が判断される。プロセス・ブロック45において、最適構成情報が、リクエストしているクライアントそれぞれにダウンロードされる。クライアント側でのプロセス・ブロック46において、新たに受信された構成情報が、IT製品/ソリューション展開に自動/手動で適用される。具体的には、クライアントが、自動(すなわち、サーバからプッシュされる構成変更を常に適用)、閾値未満/超のとき(すなわち、所定の閾値未満/超の構成パラメータに構成変更を適用)、手動介入が必要(すなわち、オペレータが変更の承認またはその逆を行わなければならない)などのポリシー設定に基づき、最適構成を適用するとよい。
図6は、本発明の実施形態による、IT製品/ソリューションの各展開の最適構成を判断するサーバ・プロセス50のフローチャートを示す。処理ブロックについて以下に記載する。
ブロック51:展開カテゴリを定義。このプロセスは、展開タイプに従って、クライアントから受信されたパフォーマンス・モデル・パラメータ・データをフィルタリングすることを含む。各製品パフォーマンス・モデルは、各展開のカテゴリを定義するよう、分析されるパラメータのサブセットの範囲を定義する。
ブロック52:最適化ポリシー・カテゴリを定義。展開は、カテゴリ(例えばSMB展開、エンタープライズ展開など)に割り当てられると、展開の顧客により指定された最適化ポリシーに従いさらにフィルタリングされる(例えば、ウェブ・アプリケーションの2つの異なるポリシーは、「スループットを最大化」または「応答時間を最小化」であることもある)。
ブロック53:展開が既知の展開タイプ()であるかどうかを判断。そうであれば、ブロック54aへ進み、そうでなければブロック54bへ進む。
ブロック54a:展開の未知の構成(d)が既に最適であるかどうかを判断。最適でなければ、ブロック55へ進み、他の場合は停止する。
ブロック54b:展開の構成(d)が既に最適であるかどうかを判断。最適でなければ、ブロック55へ進み、他の場合は停止する。
ブロック55:展開の新たなよりよい/最適な構成を発見。
ブロック56:新たな構成をその展開のクライアントへ送る。
よって、ブロック54aおよび54bにおいて、その展開環境の最適構成が既に存在すれば(例えば、同じ顧客または他の顧客に関して以前に特定されているため)、さらなる処理は生じない。ブロック55では、その環境の最適ソリューションが存在しないため、ソリューション・エンジン13(図3)が、別々の展開からのデータを活用することで最適構成を判断する。
図7の例示プロセス60を参照する。分析されるパフォーマンス・モデル・パラメータのセット(P,i=1,...,8)により表されるIT製品/ソリューションの展開(顧客A)であって、その最適化ポリシーを、パラメータPの値の所望の増分として表すことができる展開について考える。展開タイプおよび最適化ポリシーが顧客Aと同じである別の顧客(顧客B)が、その展開の最適構成に既に達していると仮定すると、ソリューション・エンジン13は、パフォーマンス・モデル・パラメータの2つのセット(すなわち顧客Aおよび顧客Bのパフォーマンス・モデル・パラメータ)を比較して、そのうち2つ(例えばPおよびP)を変えると、顧客Aは、顧客Bでの展開に類似した、その展開の所望の最適構成に達することができると発見できる。
以下の例は、新たな次善IT製品/ソリューション構成(IT製品/ソリューションの新たなインストールに相当)を処理するための知識共有のプロセスを説明するシナリオを提供し、その展開の既知の「優れた」構成を提案する。知識共有システムは、XMLファイルを使用して製品/ソリューションに関係するすべての構成情報を管理すると仮定する。このシナリオを示すために考案されたサンプル製品は、次のXMLスキーマにより定義されたパフォーマンス・モデルを有する:
Figure 0005629261
Figure 0005629261
Figure 0005629261
Figure 0005629261
製品開発およびテスト段階の間に定義される製品パフォーマンス・モデルは、そのパフォーマンスに影響し得るすべてのパラメータ(例えばハードウェア、オペレーティング・システム、および製品構成のパラメータ)を、主要/重要メトリクスの現在の値(当該システム上で製品が現在どのように機能しているかを表す)、およびそうした値の顧客により指定された所望の変化(そのパフォーマンス目標または最適化ポリシー)と共に含む。説明を簡潔にするために、パラメータおよびメトリクスの数およびタイプは、少数にとどめた。例えば、サンプル製品は、単一サーバ・トポロジを有し、サーバ・モジュールが、その構成が製品全体のパフォーマンスに影響を及ぼす唯一のモジュールである。他の製品およびパフォーマンス・モデルは、さらなる情報を含み得る。サンプル製品の各インストール/展開は、そのXMLスキーマのインスタンス(XMLファイル)により表現される。
サンプル製品は、4つの異なる顧客サイト(顧客A、B、C、D)にて展開され、顧客のうち3つ(顧客A、CおよびD)は、しばらくの間製品を実行しており、その構成は既に知識共有システム10のサーバ12上のデータベース内に記憶されている(例えば、図6のプロセス50により)。製品の前記3つの顧客展開の構成は、以下のXMLコードにより表される。
顧客Aは、知識共有システム10が「大型」と分類した(XMLファイルでは「Enterprise」)環境でサンプル製品を展開したクライアント11を表す。その構成は、顧客がまだパフォーマンス・メトリクスの一部の「up」または「down」の変更を行うことをリクエストしているため、まだ「最適」ではない。顧客Aの構成:
Figure 0005629261
Figure 0005629261
顧客Cは、知識共有システム10が「小規模」と分類した(XMLファイルでは「SMB」)環境でサンプル製品を展開したクライアントを表す。顧客Aのように、そのパフォーマンス目標はまだ達成されていない。顧客Cの構成:
Figure 0005629261
Figure 0005629261
顧客Dは、知識共有システム10が、顧客Cのものなど、「SMB」として分類した環境にサンプル製品を展開したクライアントを表す。顧客Dは、製品パフォーマンス主要メトリクスのいかなる変化も指定していないため、その構成は「最適」と見なされる。顧客Dの構成:
Figure 0005629261
Figure 0005629261
4番目の顧客(顧客B)は、サンプル製品のそのインスタンスを展開したばかりであり、その構成が初めて知識共有システム10に送られる。顧客Bの構成:
Figure 0005629261
Figure 0005629261
顧客Bの展開タイプは、システム10によって「SMB」として分類されている。したがって、サーバ12が他の顧客の構成を照合すると、顧客Cおよび顧客Dのみがさらなる比較対象として考慮され、その一方で、展開が「Enterprise」として分類された顧客Aは、この最適化分析から除外される。
知識共有システム10が、次の分類ステップ(すなわち、顧客最適化ポリシーの比較を含む)へ進むと、その結果、顧客Cが、顧客Bに対し異なる最適化ポリシーを有することが発見される。したがって、顧客Bのデータは、この場合最適化に使用されない。
代わりに、顧客Dは、その最適化ポリシーを達成しており、顧客Bにより指定されたパフォーマンス目標の「方向」にあるそのメトリクスの現在の値のセットを提供する。例えば、顧客DのCPU利用および応答時間は、顧客BのCPU利用および応答時間よりも低く、顧客Bはまさに、顧客BのCPU利用および応答時間の値を低くすることができる新たな構成をリクエストしている。さらに、顧客Dは、顧客Bのスループットの値よりも高いスループットの値を有し、顧客Bは、そのスループットを上げようとしている。
したがって、知識共有システム10は(サーバ12の動作を介して)顧客Bのパフォーマンス目標を顧客Bが達成できるよう、顧客Dの構成を顧客Bにも提案できると判断するとよい。2つの構成間の比較を実行することで、製品パフォーマンスに違いをもたらしそうなパラメータ値は、スレッド・プール・サイズおよびDB接続プール・サイズであることが分かる。新たな構成の提案が、サーバによって顧客Bへ送られ、スレッド・プール・サイズおよびDB接続プール・サイズ構成パラメータの変化を提供する。
よって、本発明の知識共有システムの実施形態によれば、クライアント間で共有される知識が動的に作り出されて、複数のクライアントからサーバに与えられ、貢献者(クライアント)の数が増えるにつれて、作り出される知識の有効性が向上する。知識共有システムは、クライアントと共有される構成の動的なセットを含む知識ベースを利用する。知識共有システムは、知識ベースが、それを使用するクライアント(例えば、異なるインストール/展開間で一般的アプリケーションの構成情報を共有する)の数とともに動的に更新および改善されることを可能にする。共有メカニズムは、クライアントが、任意の他のクライアントにより使用されている構成にアクセスできるようにする。具体的には、或るクライアントのニーズに適した新たな構成について、当該構成を使用してその利用から何らかの恩恵(例えば、応答時間のよりよいパフォーマンス)を受けた別のクライアントによって当該構成が利用可能にされると、クライアントはすぐに「通知」される。
当業者には周知のように、本発明による、上記に記載した上述の例示実施形態は、例えばプロセッサにより実行されるプログラム命令、ソフトウェア・モジュール、コンピュータ可読媒体上のコンピュータ・プログラム製品、論理回路、シリコン・ウエハー、集積回路、特定用途向け集積回路、ファームウェアなど、多数の方法で実装することができる。本発明は、その特定のバージョンを参照して記載されたが、そのほか複数のバージョンが考えられる。したがって、添付の特許請求の範囲に記載の意図および範囲は、本願明細書に含まれている好適なバージョンの記載に制限されるべきではない。
「コンピュータ・プログラム媒体」、「コンピュータ使用可能媒体」、および「コンピュータ可読媒体」、「コンピュータ・プログラム製品」という用語は、全般的に、メイン・メモリ、二次メモリ、リムーバブル・ストレージ・ドライブ、ハード・ディスク・ドライブに取り付けられたハード・ディスク、および信号などの媒体を指すために使用されている。こうしたコンピュータ・プログラム製品は、ソフトウェアをコンピュータ・システムに提供する手段である。コンピュータ可読媒体は、コンピュータ・システムが、データ、命令、メッセージまたはメッセージ・パケット、およびその他のコンピュータ可読情報を、コンピュータ可読媒体から読み取ることができるようにする。コンピュータ可読媒体は、例えば、フレキシブル・ディスク、ROM、フラッシュ・メモリ、ディスク・ドライブ・メモリ、CD−ROM、およびその他の永久ストレージなどの不揮発性メモリを含むとよい。例えば、データおよびコンピュータ命令などの情報をコンピュータ・システム間で輸送するのに有用である。さらに、コンピュータ可読媒体は、コンピュータがそのようなコンピュータ可読情報を読み取ることができるようにする、有線ネットワークまたは無線ネットワークを含むネットワーク・リンクまたはネットワーク・インターフェースあるいはその両方などの一時的状態媒体(transitory state medium)にあるコンピュータ可読情報を含み得る。コンピュータ・プログラム(コンピュータ制御論理とも呼ばれる)は、メイン・メモリまたは二次メモリあるいはその両方に記憶される。さらにコンピュータ・プログラムは、通信インターフェースを介して受信されてもよい。そのようなコンピュータ・プログラムは、実行されると、コンピュータ・システムが本願明細書に記載された本発明の機能を実行できるようにする。特に、コンピュータ・プログラムは、実行されると、マルチコア・プロセッサがコンピュータ・システムの機能を実行できるようにする。したがって、そのようなコンピュータ・プログラムは、コンピュータ・システムのコントローラに相当する。
当業者であれば当然のことであるが、記載したばかりの好適な実施形態の様々な適応および変更を、本発明の範囲および意図から逸脱することなく構成することができる。したがって、当然のことながら、添付の特許請求の範囲に記載の範囲内で、本願明細書に具体的に記載された以外の本発明の実践が可能である。

Claims (8)

  1. 複数のコンピューティング・ノード間でパフォーマンス情報を動的に共有する方法であって、
    各コンピューティング・ノードそれぞれが、当該コンピューティング・ノードにインストールされたソフトウェアから前記パフォーマンス情報を動的に取得するステップであって、前記パフォーマンス情報は、前記コンピューティング・ノードのハードウェア及び前記ソフトウェアの現在の構成パラメータを含む、前記取得するステップと、
    前記各コンピューティング・ノードそれぞれが、前記現在の構成パラメータの1つ以上の値が特定の閾値より上又は下に変化することに応じて、前記取得したパフォーマンス情報を、通信ネットワークを介してサーバへ送信するステップと、
    前記サーバが、前記各コンピューティング・ノードそれぞれから送信された前記パフォーマンス情報それぞれを知識データベース内に記憶し、前記知識データベース内に記憶された前記パフォーマンス情報に基づき、前記コンピューティング・ノードのハードウェア及びソフトウェアの新たな構成パラメータを動的に判断し、前記新たな構成パラメータを前記知識データベース内に記憶し、前記新たな構成パラメータを、前記ネットワークを介して前記コンピューティング・ノードに送信するステップであって、前記送信によって、前記コンピューティング・ノードに前記新たな構成パラメータが動的に提供される、前記送信するステップと
    を含み、
    前記新たな構成パラメータを判断することは、前記知識データベース内の前記パフォーマンス情報に基づいて、前記コンピューティング・ノードのハードウェア及びソフトウェアの最適構成パラメータを判断することを含み、
    前記最適構成パラメータを判断することは、前記コンピューティング・ノードの環境特徴に応じたタイプが同じであるコンピューティング・ノードのパフォーマンス情報に基づいて行われることを含み、
    前記最適構成パラメータを判断することは、前記タイプについての最適構成パラメータが前記知識データベース内に存在することに応じて、当該存在する最適構成パラメータを提供することを含む、
    前記方法。
  2. 前記最適構成パラメータを判断することは、前記タイプについての最適構成パラメータが前記知識データベース内に存在しないことに応じて、前記タイプに関して前記知識データベース内にある前記構成パラメータに基づき最適構成情報を判断し、当該判断された最適構成情報を提供することを含む、請求項に記載の方法。
  3. 前記サーバが、前記判断された最適構成情報を前記知識データベース内に格納するステップをさらに含む、請求項に記載の方法。
  4. 前記タイプが、SMB又はエンタープライズである、請求項に記載の方法。
  5. 前記新たな構成情報を動的に判断することが、第1のコンピューティング・ノードのパフォーマンス目標を、第2のコンピューティング・ノードが達成できるように、前記第1のコンピューティング・ノードの構成情報を前記第2のコンピューティング・ノードに提案することを含む、請求項1に記載の方法。
  6. 前記新たな構成情報を受信したコンピューティング・ノードが、前記新たな構成情報を適用するステップ
    をさらに含む、請求項1に記載の方法。
  7. 複数のコンピューティング・ノード間でパフォーマンス情報を動的に共有するシステムであって、
    1つ以上のコンピューティング・ノードと、
    サーバと
    を含み、
    各コンピューティング・ノードそれぞれが、当該コンピューティング・ノードにインストールされたソフトウェアから前記パフォーマンス情報を動的に取得し、ここで、前記パフォーマンス情報は、前記コンピューティング・ノードのハードウェア及び前記ソフトウェアの現在の構成パラメータを含み、
    前記各コンピューティング・ノードそれぞれが、前記構成パラメータの1つ以上の値が特定の閾値より上又は下に変化することに応じて、前記取得したパフォーマンス情報を、通信ネットワークを介してサーバへ送信し、
    前記サーバが、前記各コンピューティング・ノードそれぞれから送信された前記パフォーマンス情報それぞれを知識データベース内に記憶し、前記知識データベース内に記憶された前記パフォーマンス情報に基づき、前記コンピューティング・ノードのハードウェア及びソフトウェアの新たな構成パラメータを動的に判断し、前記新たな構成パラメータを前記知識データベース内に記憶し、前記新たな構成パラメータを、前記ネットワークを介して前記コンピューティング・ノードに送信し、
    前記送信によって、前記コンピューティング・ノードに前記新たな構成パラメータが動的に提供され
    前記新たな構成パラメータを判断することは、前記知識データベース内の前記パフォーマンス情報に基づいて、前記コンピューティング・ノードのハードウェア及びソフトウェアの最適構成パラメータを判断することを含み、
    前記最適構成パラメータを判断することは、前記コンピューティング・ノードの環境特徴に応じたタイプが同じであるコンピューティング・ノードのパフォーマンス情報に基づいて行われることを含み、
    前記最適構成パラメータを判断することは、前記タイプについての最適構成パラメータが前記知識データベース内に存在することに応じて、当該存在する最適構成パラメータを提供することを含む、
    前記システム。
  8. 前記最適構成パラメータを判断することは、前記タイプについての最適構成パラメータが前記知識データベース内に存在しないことに応じて、前記タイプに関して前記知識データベース内にある前記構成パラメータに基づき最適構成情報を判断し、当該判断された最適構成情報を提供することを含む、請求項に記載のシステム。
JP2011526426A 2008-09-09 2009-05-11 別々の情報技術製品/ソリューション展開間でパフォーマンス・データを共有する方法およびシステム Expired - Fee Related JP5629261B2 (ja)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US12/207,318 US8055739B2 (en) 2008-09-09 2008-09-09 Sharing performance data between different information technology product/ solution deployments
PCT/EP2009/055659 WO2010028868A1 (en) 2008-09-09 2009-05-11 Method and system for sharing performance data between different information technology product/solution deployments

Publications (2)

Publication Number Publication Date
JP2012526304A JP2012526304A (ja) 2012-10-25
JP5629261B2 true JP5629261B2 (ja) 2014-11-19

Family

ID=41009917

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2011526426A Expired - Fee Related JP5629261B2 (ja) 2008-09-09 2009-05-11 別々の情報技術製品/ソリューション展開間でパフォーマンス・データを共有する方法およびシステム

Country Status (6)

Country Link
US (2) US8055739B2 (ja)
EP (1) EP2335151A1 (ja)
JP (1) JP5629261B2 (ja)
KR (1) KR101369026B1 (ja)
CN (1) CN102150134B (ja)
WO (1) WO2010028868A1 (ja)

Families Citing this family (29)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20060025984A1 (en) * 2004-08-02 2006-02-02 Microsoft Corporation Automatic validation and calibration of transaction-based performance models
US8055739B2 (en) 2008-09-09 2011-11-08 International Business Machines Corporation Sharing performance data between different information technology product/ solution deployments
US8589558B2 (en) * 2010-11-29 2013-11-19 Radware, Ltd. Method and system for efficient deployment of web applications in a multi-datacenter system
US9792156B2 (en) 2011-11-03 2017-10-17 Microsoft Technology Licensing, Llc Hybrid configuration engine
CN104011701B (zh) 2011-12-14 2017-08-01 第三雷沃通讯有限责任公司 内容传送网络系统和能够在内容传送网络中操作的方法
US8903993B2 (en) 2012-06-01 2014-12-02 International Business Machines Corporation Performance analysis using anonymous aggregated data
US8966462B2 (en) 2012-08-10 2015-02-24 Concurix Corporation Memory management parameters derived from system modeling
US9043788B2 (en) * 2012-08-10 2015-05-26 Concurix Corporation Experiment manager for manycore systems
US9634918B2 (en) 2012-12-13 2017-04-25 Level 3 Communications, Llc Invalidation sequencing in a content delivery framework
US10652087B2 (en) 2012-12-13 2020-05-12 Level 3 Communications, Llc Content delivery framework having fill services
US9660874B2 (en) 2012-12-13 2017-05-23 Level 3 Communications, Llc Devices and methods supporting content delivery with delivery services having dynamically configurable log information
US10701149B2 (en) 2012-12-13 2020-06-30 Level 3 Communications, Llc Content delivery framework having origin services
US10701148B2 (en) 2012-12-13 2020-06-30 Level 3 Communications, Llc Content delivery framework having storage services
US10791050B2 (en) 2012-12-13 2020-09-29 Level 3 Communications, Llc Geographic location determination in a content delivery framework
US20140337472A1 (en) 2012-12-13 2014-11-13 Level 3 Communications, Llc Beacon Services in a Content Delivery Framework
WO2014121467A1 (zh) * 2013-02-06 2014-08-14 东莞宇龙通信科技有限公司 Tdd上下行子帧比例的配置方法、基站和系统
US20130219372A1 (en) 2013-03-15 2013-08-22 Concurix Corporation Runtime Settings Derived from Relationships Identified in Tracer Data
US9755902B2 (en) * 2014-05-20 2017-09-05 Via Alliance Semiconductor Co., Ltd. Dynamic system configuration based on cloud-collaborative experimentation
US20160063379A1 (en) * 2014-09-03 2016-03-03 International Business Machines Corporation Anonymous Crowd Sourced Software Tuning
CN105871584A (zh) * 2015-12-02 2016-08-17 乐视体育文化产业发展(北京)有限公司 一种键值对数据库中的客户端配置更新方法、设备及系统
US10339497B2 (en) * 2016-07-21 2019-07-02 Ebay Inc. System and method for dynamic inventory management
US20200028739A1 (en) * 2017-01-11 2020-01-23 Nutanix, Inc. Method and apparatus for closed-loop and dynamic capacity management in a web-scale data center
CN107203681B (zh) * 2017-06-23 2020-07-14 马德海 一种硬件模型参数配置平台的工作方法
US10601676B2 (en) 2017-09-15 2020-03-24 Cisco Technology, Inc. Cross-organizational network diagnostics with privacy awareness
CN108733750A (zh) * 2018-04-04 2018-11-02 安徽水利开发股份有限公司 一种数据库优化方法
US11347491B2 (en) * 2019-11-15 2022-05-31 Mastercard International Incorporated Containerized application deployment
US11467947B2 (en) 2020-10-19 2022-10-11 EMC IP Holding Company LLC Automated mocking of computer system deployments
US11663112B2 (en) * 2020-10-22 2023-05-30 EMC IP Holding Company LLC Selection of computer system deployments to mock for testing
US11520675B2 (en) 2020-10-23 2022-12-06 EMC IP Holding Company LLC Accelerated replay of computer system configuration sequences

Family Cites Families (19)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP3512204B2 (ja) * 1992-03-06 2004-03-29 株式会社日立製作所 ファイル配置方法
US6421719B1 (en) * 1995-05-25 2002-07-16 Aprisma Management Technologies, Inc. Method and apparatus for reactive and deliberative configuration management
US6466980B1 (en) * 1999-06-17 2002-10-15 International Business Machines Corporation System and method for capacity shaping in an internet environment
GB2355821A (en) 1999-10-29 2001-05-02 Futuremark Oy Computer upgrading and technical support
US6944759B1 (en) * 2000-09-29 2005-09-13 Hewlett-Packard Development Company, L.P. Automatic system configuration management
US6976063B1 (en) * 2000-11-02 2005-12-13 Microsoft Corporation Method and system for dynamically configuring a server computer
US6877035B2 (en) * 2001-01-29 2005-04-05 International Business Machines Corporation System for optimal resource allocation and planning for hosting computing services
US7328261B2 (en) * 2001-11-21 2008-02-05 Clearcube Technology, Inc. Distributed resource manager
US7644392B2 (en) * 2002-04-12 2010-01-05 Telelogic Technologies North America, Inc. System and method for active configuration management
JP3703460B2 (ja) * 2002-04-16 2005-10-05 キヤノン株式会社 提案処理システム
US7191329B2 (en) * 2003-03-05 2007-03-13 Sun Microsystems, Inc. Automated resource management using perceptron prediction
US7509324B2 (en) * 2004-09-07 2009-03-24 General Electric Company Apparatus and method for sharing configuration data among a plurality of devices
US20060070060A1 (en) * 2004-09-28 2006-03-30 International Business Machines Corporation Coordinating service performance and application placement management
JP4799419B2 (ja) * 2004-10-20 2011-10-26 富士通株式会社 設定プログラム、設定方法、および設定装置
US7941309B2 (en) * 2005-11-02 2011-05-10 Microsoft Corporation Modeling IT operations/policies
US20070180433A1 (en) * 2006-01-27 2007-08-02 International Business Machines Corporation Method to enable accurate application packaging and deployment with optimized disk space usage
US7853945B2 (en) * 2006-02-22 2010-12-14 Michael Kramer Integrated computer server imaging
WO2008024349A2 (en) * 2006-08-21 2008-02-28 Wms Gaming Inc. Automated remote configuration of wagering game machines
US8055739B2 (en) 2008-09-09 2011-11-08 International Business Machines Corporation Sharing performance data between different information technology product/ solution deployments

Also Published As

Publication number Publication date
US8055739B2 (en) 2011-11-08
WO2010028868A1 (en) 2010-03-18
KR101369026B1 (ko) 2014-02-28
CN102150134A (zh) 2011-08-10
KR20110063630A (ko) 2011-06-13
US8316115B2 (en) 2012-11-20
US20120079083A1 (en) 2012-03-29
US20100064035A1 (en) 2010-03-11
CN102150134B (zh) 2014-04-30
EP2335151A1 (en) 2011-06-22
JP2012526304A (ja) 2012-10-25

Similar Documents

Publication Publication Date Title
JP5629261B2 (ja) 別々の情報技術製品/ソリューション展開間でパフォーマンス・データを共有する方法およびシステム
US10904319B2 (en) Dynamic deployment of an application based on micro-services
US10567303B2 (en) System and method for routing service requests
Chowdhury et al. Vineyard: Virtual network embedding algorithms with coordinated node and link mapping
US20090192981A1 (en) Query Deployment Plan For A Distributed Shared Stream Processing System
Zheng et al. An adaptive QoS-aware fault tolerance strategy for web services
US9268613B2 (en) Scheduling and management in a personal datacenter
JP2020504552A (ja) リソース割り当てシステム、方法、およびプログラム
EP2472400A2 (en) System and method for remote administration of computer network
US10250460B2 (en) Multifunctional platform system with device management mechanism and method of operation thereof
Eidenbenz et al. Latency-aware industrial fog application orchestration with kubernetes
Santos et al. Towards dynamic fog resource provisioning for smart city applications
Faticanti et al. Deployment of application microservices in multi-domain federated fog environments
CN111556135A (zh) 一种请求调度方法、系统、装置及电子设备
Sacha et al. Decentralising a service-oriented architecture
US11711810B1 (en) System, security and network management using self-organizing communication orbits in distributed networks
Ghezzi et al. Performance‐driven dynamic service selection
JP2012522318A (ja) スマートルーティング
US10904327B2 (en) Method, electronic device and computer program product for searching for node
KR102476271B1 (ko) 자율 관리(semi-managed) DHT 구성 방법 및 시스템
CN114731297A (zh) 用于计算设备对等方匹配的消息限制的自组织网络组
Zheng et al. Qos-aware fault tolerance for web services
US20040267898A1 (en) Status information for software used to perform a service
Bommannavar et al. Resource constrained failure management in networked computing systems

Legal Events

Date Code Title Description
A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20130820

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20131115

Free format text: JAPANESE INTERMEDIATE CODE: A821

Effective date: 20131115

RD12 Notification of acceptance of power of sub attorney

Free format text: JAPANESE INTERMEDIATE CODE: A7432

Effective date: 20131115

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A821

Effective date: 20131115

A02 Decision of refusal

Free format text: JAPANESE INTERMEDIATE CODE: A02

Effective date: 20140402

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20140701

Free format text: JAPANESE INTERMEDIATE CODE: A821

Effective date: 20140701

A911 Transfer to examiner for re-examination before appeal (zenchi)

Free format text: JAPANESE INTERMEDIATE CODE: A911

Effective date: 20140710

TRDD Decision of grant or rejection written
A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A821

Effective date: 20140919

RD14 Notification of resignation of power of sub attorney

Free format text: JAPANESE INTERMEDIATE CODE: A7434

Effective date: 20140919

A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20140919

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20141003

R150 Certificate of patent or registration of utility model

Ref document number: 5629261

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

LAPS Cancellation because of no payment of annual fees