(57)【要約】【課題】設計者が、システムにおけるパラメータの設定ルールの確からしさを把握する。【解決手段】設定支援装置１は、複数の機器に対して過去に行われたパラメータの設定に関する情報から、複数の機器で共通するパラメータの設定および設定に用いられる条件を第１のルールとして生成する。設定支援装置１は、複数の機器に対して過去に行われたパラメータの設定に関する世代毎の情報から、世代毎に複数の機器で共通するパラメータの設定および設定に用いられる条件を第２のルールとして生成する。設定支援装置１は、共通するパラメータの設定に関し、第１のルールと第２のルールを比較し、異なるルールを特定し、特定した異なるルールの確からしさの指標を算出する。【選択図】図１
2015170135.tif 000002
【特許請求の範囲】
【請求項１】
コンピュータに、
複数の機器に対して過去に行われたパラメータの設定に関する情報から、前記複数の機器で共通するパラメータの設定および設定に用いられる条件を第１のルールとして生成し、
前記複数の機器に対して過去に行われたパラメータの設定に関する世代毎の情報から、世代毎に前記複数の機器で共通するパラメータの設定および設定に用いられる条件を第２のルールとして生成し、
共通するパラメータの設定に関し、前記第１のルールと前記第２のルールを比較し、異なるルールを特定し、特定した異なるルールの確からしさの指標を算出する
処理を実行させることを特徴とする設定支援プログラム。
【請求項２】
前記指標を算出する処理は、異なるルールを有する世代に関する規則に基づいて、当該異なるルールの確からしさの指標を算出する
処理を実行させることを特徴とする請求項１に記載の設定支援プログラム。
【請求項３】
前記指標を算出する処理は、異なるルールを有する世代が新しい程、且つ、連続している程、確からしさが高い指標となるように算出する
処理を実行させることを特徴とする請求項２に記載の設定支援プログラム。
【請求項４】
複数の機器に対して過去に行われたパラメータの設定に関する情報から、前記複数の機器で共通するパラメータの設定および設定に用いられる条件を第１のルールとして生成する第１の生成部と、
前記複数の機器に対して過去に行われたパラメータの設定に関する世代毎の情報から、世代毎に前記複数の機器で共通するパラメータの設定および設定に用いられる条件を第２のルールとして生成する第２の生成部と、
共通するパラメータの設定に関し、前記第１の生成部によって生成された第１のルールと前記第２の生成部によって生成された第２のルールを比較し、異なるルールを特定し、特定した異なるルールの確からしさの指標を算出する算出部と、
を有することを特徴とする設定支援装置。
【請求項５】
コンピュータが、
複数の機器に対して過去に行われたパラメータの設定に関する情報から、前記複数の機器で共通するパラメータの設定および設定に用いられる条件を第１のルールとして生成し、
前記複数の機器に対して過去に行われたパラメータの設定に関する世代毎の情報から、世代毎に前記複数の機器で共通するパラメータの設定および設定に用いられる条件を第２のルールとして生成し、
共通するパラメータの設定に関し、前記第１のルールと前記第２のルールを比較し、異なるルールを特定し、特定した異なるルールの確からしさの指標を算出する
各処理を実行することを特徴とする設定支援方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、設定支援プログラム、設定支援装置および設定支援方法に関する。
【背景技術】
【０００２】
近年、サーバやネットワークの仮想化技術を利用して、ネットワーク上にある複数のコンピューティング資源を利用者のコンピューティング資源として使用することができるクラウドシステムが利用されている。かかるクラウドシステムは、大規模化しているとともに複雑化し、例えば、機器の増設、システムの設計に関わるパラメータの追加や変更が行われている。
【０００３】
システムの変更に伴って、システムの設計が行われる。システムの設計では、例えば、設計者が、設計に関わるパラメータを設定する設定ルールを作成する。設定ルールは、例えば複数のシステムで過去に行われたパラメータの設定に基づいて作成される。
【０００４】
また、設定ルールを自動で作成する技術がある。かかる技術では、情報処理装置が、複数のコンピュータに関するコンフィギュレーションデータを受け取り、コンフィギュレーションデータを解析して解析結果からコンフィギュレーションルールを作成する。コンフィグレーションルールには、可変パラメータの設定ルールが含まれる（例えば、特許文献１および特許文献２参照）。
【先行技術文献】
【特許文献】
【０００５】
【特許文献１】特開２００９−０４８６１１号公報
【特許文献２】特開平１０−０９７４１３号公報
【発明の概要】
【発明が解決しようとする課題】
【０００６】
しかしながら、情報処理装置は、設計者に対して、パラメータの設定ルールの確からしさを把握させることができないという問題がある。すなわち、過去に行われたパラメータの設定に誤りが多い場合には、過去に行われたパラメータの設定に基づいて作成される設定ルールは、正確でない。設定ルールを作成する際、誤ったパラメータの設定を削除できれば、正確な設定ルールを作成することが可能であるが、パラメータの設定が誤りであるか否かを示す情報がないため、誤ったパラメータの設定を削除できない。したがって、設計書は、パラメータの設定ルールが正確であるか否かを把握することができない。
【０００７】
１つの側面では、パラメータの設定ルールの確からしさを把握可能とすることを目的とする。
【課題を解決するための手段】
【０００８】
１つの態様では、設定支援プログラムは、コンピュータに、複数の機器に対して過去に行われたパラメータの設定に関する情報から、前記複数の機器で共通するパラメータの設定および設定に用いられる条件を第１のルールとして生成し、前記複数の機器に対して過去に行われたパラメータの設定に関する世代毎の情報から、世代毎に前記複数の機器で共通するパラメータの設定および設定に用いられる条件を第２のルールとして生成し、共通するパラメータの設定に関し、前記第１のルールと前記第２のルールを比較し、異なるルールを特定し、特定した異なるルールの確からしさの指標を算出する処理を実行させる。
【発明の効果】
【０００９】
パラメータの設定ルールの確からしさの把握が可能となる。
【図面の簡単な説明】
【００１０】
【図１】図１は、実施例に係る設定支援装置の構成を示す機能ブロック図である。
【図２】図２は、問題となるパラメータの設定の一例を示す図である。
【図３Ａ】図３Ａは、パラメータ設定履歴の一例を示す図（１）である。
【図３Ｂ】図３Ｂは、パラメータ設定履歴の一例を示す図（２）である。
【図４Ａ】図４Ａは、ルール抽出の一例を示す図（１）である。
【図４Ｂ】図４Ｂは、ルール抽出の一例を示す図（２）である。
【図４Ｃ】図４Ｃは、ルール抽出の一例を示す図（３）である。
【図５】図５は、差分ルール特定の一例を示す図である。
【図６Ａ】図６Ａは、信頼度を表形式で出力する一例を示す図である。
【図６Ｂ】図６Ｂは、信頼度をグラフ形式で出力する一例を示す図である。
【図７】図７は、実施例に係る設定支援処理のフローチャートを示す図である。
【図８】図８は、設定支援プログラムを実行するコンピュータの一例を示す図である。
【発明を実施するための形態】
【００１１】
以下に、本願の開示する設定支援プログラム、設定支援装置および設定支援方法の実施例を図面に基づいて詳細に説明する。なお、実施例によりこの発明が限定されるものではない。
【実施例】
【００１２】
［設定支援装置の構成］
図１は、実施例に係る設定支援装置の構成を示す機能ブロック図である。かかる設定支援装置１は、データセンタに搭載されるシステムの設計に用いられるパラメータの設定を支援する。すなわち、設定支援装置１は、既存の複数のシステムで行われたパラメータの設定情報（教師データ１１）に基づいてパラメータの設定をルール（設定ルールという）として作成することで、例えば構成変更等で行われるパラメータの設定（変更）時に適切な設定を行う。設定ルールとは、設計に関わるパラメータを設定するルールであり、条件と値とからなる。設定ルールは、例えば環境設定ファイル（configuration  file）に設定されるパラメータの値を設定するルールである。ところが、設定支援装置１は、複数のシステムで過去に行われた全ての設定情報に基づいた設定ルールを作成するので、パラメータの設定に誤りが多い場合には、作成した設定ルールは正確ではないという問題がある。
【００１３】
ここで、パラメータの設定に誤りが多い場合に設定ルールが正確でないという問題について、図２を参照して説明する。図２は、問題となるパラメータの設定の一例を示す図である。図２に示すように、データセンタに搭載される複数のシステムＡ、Ｂ、Ｃが、例えば、複数の世代で管理されているとする。複数の世代で管理されているそれぞれのシステムは、教師データ１１としてパラメータの設定情報を有しているとする。設定支援装置１は、データセンタに搭載される複数のシステムＡ、Ｂ、Ｃのパラメータの設定ルールを、例えば複数の世代で管理されている全てのシステムのパラメータの設定情報（教師データ１１）に基づいて生成する。このとき、共通のパラメータについて、パラメータの設定情報に誤りが多い場合には、設定支援装置１は、誤りが多い設定情報を、このパラメータの設定情報として作成する。図２の例では、世代３−６のシステムＣの共通のパラメータについて、世代３−６では、パラメータの設定情報に誤りがあり、世代１、２では、パラメータの設定情報に誤りがないとする。すると、設定支援装置１は、この共通のパラメータについて、誤りが多いパラメータの設定情報を採用し、誤った設定ルールを作成してしまう。
【００１４】
そこで、実施例に係る設定支援装置１は、既存のデータセンタの世代毎のパラメータの設定情報（教師データ１１）を用いて、パラメータの設定で用いられる設定ルールを世代毎に生成する。そして、設定支援装置１は、共通するパラメータの異なる設定ルールの信頼度を算出し、適切な設定ルールの生成の支援を行う。
【００１５】
ここで、世代とは、一例として、時間的な区切りを意味する。すなわち、世代は、データセンタに搭載される複数のシステムのパラメータの設定情報を取得する時点として予め定められた時点を表す。時間的な区切りとして、例えば、１時間であっても、２時間であっても良いし、２４時間であっても良い。つまり、時間の区切りとして、予め定められた時点であれば良い。また、世代とは、別の例として、データセンタ内のシステム等の構成変更による区切りを意味する。すなわち、世代は、データセンタに搭載される複数のシステムのパラメータの設定情報を取得する時点としてシステム等の構成が変更される時点を表す。構成変更による区切りとして、例えば、システムを追加した時点であったり、パラメータを変更した時点であったりする。つまり、構成変更による区切りとして、何らかの構成が変更された時点であれば良い。世代は、例えば、１が現在を示し、数字が小さい程新しいものとする。なお、世代は、時間的な区切りまたは構成変更による区切りであると説明したが、これに限定されず、これらを混合した区切りであっても良い。以降では、世代を、時間的な区切りであるとして説明する。
【００１６】
図１に戻って、設定支援装置１は、記憶部１０と、制御部２０とを有する。
【００１７】
記憶部１０は、例えばフラッシュメモリ（Flash  Memory）やＦＲＡＭ（登録商標）（Ferroelectric  Random  Access  Memory）等の不揮発性の半導体メモリ素子等の記憶装置に対応する。記憶部１０は、教師データ１１としてパラメータ設定履歴１２を有する。パラメータ設定履歴１２は、既存のデータセンタに搭載される複数のシステムのパラメータの設定情報を記憶する。パラメータ設定履歴１２は、世代毎のパラメータの設定情報を記憶する。
【００１８】
ここで、パラメータ設定履歴１２の一例を、図３Ａおよび図３Ｂを参照して説明する。図３Ａおよび図３Ｂは、パラメータ設定履歴の一例を示す図である。
【００１９】
図３Ａは、図２で示した誤りのないパラメータ設定履歴１２であって、世代１および世代２のパラメータ設定履歴１２であるとする。図３Ａに示すように、システムＡのパラメータ設定履歴１２は、パラメータ、サーバＡ１、サーバＡ２、サーバＡ３およびサーバＡ４を対応付けて記憶する。サーバＡ１、サーバＡ２、サーバＡ３およびサーバＡ４は、既存のシステムＡに搭載されているサーバの名称である。ここでは、サーバが４個搭載されているが、システムの設計に応じてサーバの数が異なる。
【００２０】
パラメータは、システムの設計に用いられるパラメータである。ここでは、パラメータには、「ＩＰＡＤＤＲ」、「ｎａｍｅｓｅｒｖｅｒ」、「ＬＡＮＧ」、「ＵＴＣ」および「ＩＰ」が含まれる。「ＩＰＡＤＤＲ」は、サーバのＩＰアドレスを示す。「ｎａｍｅｓｅｒｖｅｒ」は、ＤＮＳ（Domain  Name  Service）のＩＰアドレスを示す。「ＬＡＮＧ」は、サーバの使用言語を示す。「ＵＴＣ」は、協定世界時を使用するか否かを示し、例えば、「ＴＲＵＥ」の場合協定世界時を使用することを意味し、「ＦＡＬＳＥ」の場合協定世界時を使用しないことを意味する。「ＩＰ」は、ＩＰアドレスの割当てを動的にするか静的にするかを示し、例えば、「ｄｈｃｐ」の場合動的であることを意味し、「ｓｔａｔｉｃ」の場合静的であることを意味する。
【００２１】
各サーバには、これらのパラメータの値がそれぞれ設定されている。一例として、サーバＡ１の場合、パラメータ「ＩＰＡＤＤＲ」に「１０．０．０．１」が設定され、パラメータ「ｎａｍｅｓｅｒｖｅｒ」に「１９２．１６８．１．１」が設定されている。さらに、パラメータ「ＬＡＮＧ」に「ｊｐ」が設定され、パラメータ「ＵＴＣ」に「ＦＡＬＳＥ」が設定され、パラメータ「ＩＰ」に「ｓｔａｔｉｃ」が設定されている。図３ＡのシステムＢ、Ｃについても、システムＡと同様に、パラメータ設定履歴１２が記憶部１０に記憶される。
【００２２】
図３Ｂは、図２で示した誤りのあるパラメータ設定履歴１２であって、世代３〜６のパラメータ設定履歴１２であるとする。図３Ｂに示すように、システムＡ〜Ｃについて、図３Ａで示したシステムＡ〜Ｃと同様に、世代毎のパラメータ設定履歴１２が記憶１０に記憶される。誤りのあるパラメータの設定情報として、システムＣのサーバＣ１およびサーバＣ２について、パラメータ「ＵＴＣ」の値が「ＦＡＬＳＥ」である場合に、パラメータ「ＬＡＮＧ」の値に「ｅｎ」が設定されている。一方、誤りのないパラメータの設定情報には、図３Ａに示すように、システムＣのサーバＣ１およびサーバＣ２について、パラメータ「ＵＴＣ」の値が「ＦＡＬＳＥ」である場合に、パラメータ「ＬＡＮＧ」の値に「ｊｐ」が設定されている。
【００２３】
図１に戻って、制御部２０は、各種の処理手順を規定したプログラムや制御データを格納するための内部メモリを有し、これらによって種々の処理を実行する。そして、制御部２０は、例えば、ＡＳＩＣ（Application  Specific  Integrated  Circuit）やＦＰＧＡ（Field  Programmable  Gate  Array）などの集積回路の電子回路に対応する。または、制御部２０は、ＣＰＵ（Central  Processing  Unit）やＭＰＵ（Micro  Processing  Unit）などの電子回路に対応する。さらに、制御部２０は、全世代ルール抽出部２１、世代別ルール抽出部２２、差分ルール特定部２３、信頼度算出部２４、信頼度出力部２５および最適化部２６を有する。なお、全世代ルール抽出部２１は、第１の生成部の一例である。世代別ルール抽出部２２は、第２の生成部の一例である。信頼度算出部２４は、算出部の一例である。
【００２４】
全世代ルール抽出部２１は、全世代のパラメータ設定履歴１２を用いて、複数のシステムで共通するパラメータの設定ルールを抽出する。例えば、全世代ルール抽出部２１は、クラスタリング手法を用いて、全世代に属する複数のシステムのパラメータ設定履歴１２から、システム単位の共通部分を特定する。そして、全世代ルール抽出部２１は、クラスタリング結果から設定ルールを抽出する。なお、クラスタリング手法は、クラスタリングのいかなる手法を用いても構わない。
【００２５】
世代別ルール抽出部２２は、世代毎に、各世代のパラメータ設定履歴１２を用いて、複数のシステムで共通するパラメータの設定ルールを抽出する。例えば、世代別ルール抽出部２２は、クラスタリング手法を用いて、世代毎に、各世代に属する複数のシステムのパラメータ設定履歴１２から、システム単位の共通部分を特定する。そして、世代別ルール抽出部２２は、クラスタリング結果から設定ルールを抽出する。なお、世代別ルール抽出部２２で用いられるクラスタリング手法は、全世代ルール抽出部２１で用いられるクラスタリング手法と同じ手法であることとする。
【００２６】
ここで、ルール抽出の一例を、図４Ａ〜図４Ｃを参照して説明する。図４Ａ〜図４Ｃは、ルール抽出の一例を示す図である。
【００２７】
図４Ａには、世代１に属する複数のシステムＡ、Ｂ、Ｃのルール抽出が示されている。世代別ルール抽出部２２は、クラスタリング手法を用いて、世代１に属する複数のシステムＡ、Ｂ、Ｃのパラメータ設定履歴１２からシステム単位の共通部分を特定する。ここでは、世代別ルール抽出部２２は、サーバ毎に設定されているパラメータ「ＬＡＮＧ」の値とパラメータ「ＵＴＣ」の値とを共通部分として特定する。すなわち、世代１では、パラメータ「ＵＴＣ」が「ＦＡＬＳＥ」である場合、パラメータ「ＬＡＮＧ」が「ｊｐ」であり、パラメータ「ＵＴＣ」が「ＴＲＵＥ」である場合、パラメータ「ＬＡＮＧ」が「ｅｎ」である。また、世代別ルール抽出部２２は、サーバ毎に設定されているパラメータ「ＩＰ」の値を共通部分として特定する。すなわち、世代１では、パラメータ「ＩＰ」の値がすべて「ｓｔａｔｉｃ」である。
【００２８】
また、システム内およびシステム間で、パラメータの値がインクリメンタルに変化する場合には、このパラメータの設定ルールは、変化する部分を「＊」を用いることとする。ここでは、世代別ルール抽出部２２は、サーバ毎に設定されているパラメータ「ＩＰＡＤＤＲ」の値を共通部分として特定する。すなわち、世代１では、パラメータ「ＩＰＡＤＤＲ」が「１０．０．＊．＊」となる。世代別ルール抽出部２２は、サーバ毎に設定されているパラメータ「ｎａｍｅｓｅｒｖｅｒ」の値を共通部分として特定する。すなわち、世代１では、パラメータ「ｎａｍｅｓｅｒｖｅｒ」が「１９２．１６８．＊．１」となる。このような共通部分がクラスタ結果として特定される。
【００２９】
そして、世代別ルール抽出部２２は、クラスタリング結果から世代１の設定ルールを抽出する。ここでは、世代別ルール抽出部２２は、「ＩＦ  ＡＬＬ  ＴＨＥＮ  ＩＰＡＤＤＲ＝１０．０．＊．＊」という設定ルールを抽出する。世代別ルール抽出部２２は、「ＩＦ  ＡＬＬ  ＴＨＥＮ  ｎａｍｅｓｅｒｖｅｒ＝１９２．１６８．＊．１」という設定ルールを抽出する。世代別ルール抽出部２２は、「ＩＦ  ＡＬＬ  ＴＨＥＮ  ＩＰ＝ｓｔａｔｉｃ」という設定ルールを抽出する。世代別ルール抽出部２２は、「ＩＦ  ＵＴＣ＝ＦＡＬＳＥ  ＴＨＥＮ  ＬＡＮＧ＝ｊｐ」という設定ルールを抽出する。世代別ルール抽出部２２は、「ＩＦ  ＵＴＣ＝ＴＲＵＥ  ＴＨＥＮ  ＬＡＮＧ＝ｅｎ」という設定ルールを抽出する。世代別ルール抽出部２２は、「ＩＦ  ＬＡＮＧ＝ｊｐ  ＴＨＥＮ  ＵＴＣ＝ＦＡＬＳＥ」という設定ルールを抽出する。世代別ルール抽出部２２は、「ＩＦ  ＬＡＮＧ＝ｅｎ  ＴＨＥＮ  ＵＴＣ＝ＴＲＵＥ」という設定ルールを抽出する。
【００３０】
図４Ｂには、世代３に属する複数のシステムＡ、Ｂ、Ｃのルール抽出が示されている。世代３には、誤りのあるパラメータ設定履歴１２が含まれる。すなわち、システムＣのサーバＣ１およびサーバＣ２について、パラメータ「ＵＴＣ」の値が「ＦＡＬＳＥ」である場合に、パラメータ「ＬＡＮＧ」の値に「ｅｎ」が設定されている。なお、パラメータ「ＬＡＮＧ」以外のパラメータのルール抽出については、図４Ａで示した世代１と同様であるので、その説明を省略する。
【００３１】
ここでは、世代別ルール抽出部２２は、システムＡ、Ｂに設定されているパラメータ「ＬＡＮＧ」の値とパラメータ「ＵＴＣ」の値とを共通部分として特定する。世代別ルール抽出部２２は、システムＣに設定されているパラメータ「ＬＡＮＧ」の値とパラメータ「ＵＴＣ」の値とを共通部分として特定する。すなわち、世代３では、システムＡ、Ｂでは、パラメータ「ＵＴＣ」が「ＦＡＬＳＥ」である場合、パラメータ「ＬＡＮＧ」が「ｊｐ」である。システムＣでは、パラメータ「ＵＴＣ」が「ＦＡＬＳＥ」である場合、パラメータ「ＬＡＮＧ」が「ｅｎ」である。パラメータ「ＬＡＮＧ」について、このような共通部分がクラスタ結果として特定される。
【００３２】
そして、世代別ルール抽出部２２は、クラスタリング結果から世代３の設定ルールを抽出する。ここでは、世代別ルール抽出部２２は、パラメータ「ＬＡＮＧ」について、以下の設定ルールを抽出する。すなわち、世代別ルール抽出部２２は、「ＩＦ  ｎａｍｅｓｅｒｖｅｒ＝１９２．１６８．３．１  ＆  ＵＴＣ＝ＦＡＬＳＥ  ＴＨＥＮ  ＬＡＮＧ＝ｅｎ」という設定ルールを抽出する。世代別ルール抽出部２２は、「ＩＦ  ＵＴＣ＝ＴＲＵＥ  ＴＨＥＮ  ＬＡＮＧ＝ｅｎ」という設定ルールを抽出する。世代別ルール抽出部２２は、「ＩＦ  ｎａｍｅｓｅｒｖｅｒ！＝１９２．１６８．３．１  ＆  ＵＴＣ＝ＦＡＬＳＥ  ＴＨＥＮ  ＬＡＮＧ＝ｊｐ」という設定ルールを抽出する。
【００３３】
ここで、世代２が世代１と同じパラメータの設定情報であるとすると、世代別ルール抽出部２２は、世代２の設定ルールとして、図４Ａに示した世代１の設定ルールと同じ設定ルールを抽出する。世代４〜世代６が世代３と同じパラメータの設定情報であるとすると、世代別ルール抽出部２２は、世代４〜世代６の設定ルールとして、図４Ｂに示した世代３の設定ルールと同じ設定ルールを抽出する。そして、このような世代１〜世代６のパラメータ設定情報について、全世代ルール抽出部２１は、世代１〜世代６の全世代の設定ルールとして、図４Ｂに示した世代３の設定ルールと同じ設定ルールを抽出する。
【００３４】
図４Ｃには、世代別ルール抽出部２２によって抽出された世代１〜世代６毎の設定ルールが表わされている。また、全世代ルール抽出部２１によって抽出された全世代１〜６の設定ルールが表わされている。なお、以降、全世代の設定ルールのことを「全体ルール」という。
【００３５】
図１に戻って、差分ルール特定部２３は、全世代ルール抽出部２１によって抽出された全体ルールと、世代別ルール抽出２２によって抽出された世代毎の設定ルールとを比較し、共通するパラメータの設定に関し、異なる設定ルールを特定する。例えば、差分ルール特定部２３は、複数の世代の中から順番に１つの世代を選択し、全体ルールと、選択した世代の設定ルールとを比較し、共通するパラメータの設定に関し、異なる設定ルールを特定する。
【００３６】
ここで、差分ルール特定部２３による差分ルールを特定する処理を、図５を参照して説明する。図５は、差分ルール特定の一例を示す図である。なお、図５では、図４Ｃで示された全体ルールおよび各世代の設定ルールを用いて説明する。また、図５で示すルールに続く括弧内の数字は、該当する世代を表す。
【００３７】
図５の１段目と２段目には、全体ルールと、世代１（および世代２）の設定ルールとを比較した結果が示されている。差分ルール特定部２３は、世代１〜世代６の中から世代１を選択し、全体ルールと、選択した世代１の設定ルールとを比較し、共通するパラメータの設定に関し、異なるルールを特定する。ここでは、パラメータ「ＬＡＮＧ」の設定に関し異なる設定ルールが特定される。全体ルールにあって世代１の設定ルールにない設定ルールとして、「ＩＦ  ｎａｍｅｓｅｒｖｅｒ＝１９２．１６８．３．１  ＆  ＵＴＣ＝ＦＡＬＳＥ  ＴＨＥＮ  ＬＡＮＧ＝ｅｎ」が特定される。同様の設定ルールとして、「ＩＦ  ｎａｍｅｓｅｒｖｅｒ！＝１９２．１６８．３．１  ＆  ＵＴＣ＝ＦＡＬＳＥ  ＴＨＥＮ  ＬＡＮＧ＝ｊｐ」が特定される。また、世代１の設定ルールにあって全体ルールにない設定ルールとして、「ＩＦ  ＵＴＣ＝ＦＡＬＳＥ  ＴＨＥＮ  ＬＡＮＧ＝ｊｐ」が特定される。なお、差分ルール特定部２３は、世代２を選択した場合も、世代１を選択した場合と同じ設定ルールを、異なる設定ルールとして特定する。
【００３８】
図５の３段目と４段目には、全体ルールと、世代３（および世代４〜６）の設定ルールとを比較した結果が示されている。差分ルール特定部２３は、世代１〜世代６の中から世代３を選択し、全体ルールと、選択した世代３の設定ルールを比較し、共通するパラメータの設定に関し異なるルールを特定する。ここでは、全体ルールと、世代３の設定ルールとは同一であるので、異なる設定ルールが特定されない。すなわち、全体ルールにあって世代３の設定ルールにない設定ルールとして、何も特定されない。また、世代３の設定ルールにあって全体ルールにない設定ルールとして、何も特定されない。なお、差分ルール特定部２３は、世代４〜６を選択した場合も、世代３を選択した場合と同じように、異なる設定ルールを特定しない。
【００３９】
図１に戻って、信頼度算出部２４は、差分ルール特定部２３によって特定された異なる設定ルールの信頼度を、異なる設定ルールを有する世代に関する規則に基づいて算出する。信頼度とは、確からしさの指標の一例である。例えば、世代に関する規則には、異なる設定ルールを有する世代が新しく、且つ連続している程、信頼度が高くなるという規則がある。この規則には、異なる設定ルールが同じ設定ルールであっても、世代が連続していない設定ルールは、別の設定ルールとして扱うことを含む。このような規則の下、信頼度算出部２４は、以下の式（１）に基づいて、異なる設定ルールの信頼度を算出する。なお、式（１）のＴｎｅｗ（Ｒ）は、異なる設定ルールに対する最新の世代を示す。Ｔｌａｓｔ（Ｒ）は、異なる設定ルールに対する一番古い世代を示す。Ｔｒａｎｇｅ（Ｒ）は、異なる設定ルールに対する一番古い世代と最新の世代との差、すなわちＴｌａｓｔ（Ｒ）からＴｎｅｗ（Ｒ）を引いた差を示す。Ｎは、全世代の数を示す。
【数１】
2015170135.tif 000003
【００４０】
式（１）では、「Ｔｒａｎｇｅ（Ｒ）／Ｎ×ｌｏｇＴｒａｎｇｅ（Ｒ）／Ｎ」の部分は、エントロピー（情報量）を示し、世代が連続する程、情報量が大きくなる。また、「１／ｔ」の部分は、世代に対する重み付けを示し、世代が新しい程、情報量が大きくなる。つまり、式（１）により、世代が連続している程、世代が新しい程、設定ルールの信頼度が大きい値となる。すなわち、設定ルールの確からしさが高い値となる。
【００４１】
一例として、信頼度算出部２４は、図５で示された異なる設定ルールについて、式（１）に基づいて信頼度を算出する。異なる設定ルールとして特定された＜１＞の「ＩＦ  ＵＴＣ＝ＦＡＬＳＥ  ＴＨＥＮ  ＬＡＮＧ＝ｊｐ」の信頼度は、式（１）に当てはめて、以下の式（２）のように算出される。この設定ルールに対する最新の世代は「１」であり、一番古い世代は「２」である。また、Ｎは全世代の数であるので、「６」である。
【数２】
2015170135.tif 000004
【００４２】
異なる設定ルールとして特定された＜２＞の「ＩＦ  ｎａｍｅｓｅｒｖｅｒ＝１９２．１６８．３．１  ＆  ＵＴＣ＝ＦＡＬＳＥ  ＴＨＥＮ  ＬＡＮＧ＝ｅｎ」の信頼度は、式（１）に当てはめて、以下の式（３）のように算出される。この設定ルールに対する最新の世代は「３」であり、一番古い世代は「６」である。また、Ｎは全世代の数であるので、「６」である。
【数３】
2015170135.tif 000005
【００４３】
異なる設定ルールとして特定された＜３＞の「ＩＦ  ｎａｍｅｓｅｒｖｅｒ！＝１９２．１６８．３．１  ＆  ＵＴＣ＝ＦＡＬＳＥ  ＴＨＥＮ  ＬＡＮＧ＝ｊｐ」の信頼度は、式（１）に当てはめて、以下の式（４）のように算出される。この設定ルールに対する最新の世代は「３」であり、一番古い世代は「６」である。また、Ｎは全世代の数であるので、「６」である。
【数４】
2015170135.tif 000006
【００４４】
これによると、＜１＞の設定ルールの信頼度の方が＜２＞および＜３＞の設定ルールの信頼度より高い。すなわち、世代１、２にある設定ルールの方が世代３〜世代６にある設定ルールより信頼度が高いことがわかる。
【００４５】
信頼度出力部２５は、信頼度算出部２４によって算出された異なる設定ルールの信頼度を出力する。一例として、信頼度出力部２５は、異なる設定ルールの信頼度を、設定ルールと世代とともに表形式で出力する。別の例として、信頼度出力部２５は、異なる設定ルールの信頼度を、世代とともにグラフ形式で出力する。
【００４６】
ここで、信頼度出力部２５による信頼度の出力例を、図６Ａおよび図６Ｂを参照して説明する。図６Ａは、信頼度を表形式で出力する一例を示す図である。図６Ｂは、信頼度をグラフ形式で出力する一例を示す図である。
【００４７】
図６Ａに示すように、信頼度出力部２５は、異なる設定ルールの信頼度を、設定ルールとともに出力する。このとき、信頼度出力部２５は、異なる設定ルールがどの世代の設定ルールにあるかないかを、ともに出力する。一例として、異なる設定ルールが「ＩＦ  ｎａｍｅｓｅｒｖｅｒ＝１９２．１６８．３．１  ＆  ＵＴＣ＝ＦＡＬＳＥ  ＴＨＥＮ  ＬＡＮＧ＝ｅｎ」である場合、信頼度として「０．１１」を出力する。このとき、全体ルールにあって世代１および世代２の設定ルールにないことを、ともに出力する。異なる設定ルールが「ＩＦ  ＵＴＣ＝ＦＡＬＳＥ  ＴＨＥＮ  ＬＡＮＧ＝ｊｐ」である場合、信頼度として「０．２４」を出力する。このとき、世代１および世代２の設定ルールにあって全体ルールにないことを、ともに出力する。これにより、信頼度出力部２５は、異なる設定ルールの信頼度を、設計者に対して、提示することができる。
【００４８】
図６Ｂに示すように、信頼度出力部２５は、異なる設定ルールの信頼度を、世代とともに出力する。ここでは、異なる設定ルールの信頼度をＹ軸とし、世代をＸ軸としている。なお、設定ルールに続く括弧内の数字は、該当する世代を表す。これにより、信頼度出力部２５は、全体ルールの信頼度、各世代の設定ルールの信頼度を、設計者に対して、纏めて提示することができる。
【００４９】
図１に戻って、最適化部２６は、信頼度出力部２５によって出力された異なる設定ルールの信頼度を基に、教師データ１１を最適化する。例えば、最適化部２６は、信頼度出力部２５によって出力された異なる設定ルールの中から設定ルールが選択されると、選択された設定ルールの信頼度が他の設定ルールの信頼度より高いか否かを判定する。比較対象の設定ルールは、共通するパラメータの設定に関する設定ルール同士である。最適化部２６は、選択された設定ルールの信頼度が他の設定ルールの信頼度より高い場合には、選択された設定ルールを、選択された設定ルールを有する世代と異なる世代に反映する。そして、最適化部２６は、適用した世代のパラメータ設定履歴１２を書き換える。すなわち、最適化部２６は、パラメータ設定履歴１２を最適化する。また、最適化部２６は、選択された設定ルールの信頼度が他の設定ルールの信頼度より低い場合には、選択された設定ルールの反映を保留する。これにより、最適化部２６は、パラメータの設定履歴として正しい情報を残すことができ、精度の良い設定ルールを生成できるとともに、新たな世代のパラメータの設定を精度良く行うことができる。
【００５０】
一例として、図６Ａで示された設定ルール「ＩＦ  ＵＴＣ＝ＦＡＬＳＥ  ＴＨＥＮ  ＬＡＮＧ＝ｊｐ」が選択されるとする。すると、最適化部２６は、選択された設定ルールの信頼度０．２４が他の設定ルール０．１１より高いので、選択された設定ルールを、選択された設定ルールを有する世代１、２と異なる世代３〜６に反映する。ここでは、選択された設定ルール「ＩＦ  ＵＴＣ＝ＦＡＬＳＥ  ＴＨＥＮ  ＬＡＮＧ＝ｊｐ」が世代３〜６に適用される。そして、世代３〜６のパラメータ設定履歴１２が書き換えられる。ここでは、図３Ｂで示されるシステムＣのパラメータ「ＬＡＮＧ」について、パラメータ「ＵＴＣ」が「ＦＡＬＳＥ」であるサーバＣ１およびサーバＣ２の値が、「ｅｎ」から「ｊｐ」に書き換えられる。
【００５１】
［設定支援処理の手順］
次に、設定支援処理の手順を、図７を参照して説明する。図７は、実施例に係る設定支援処理のフローチャートを示す図である。なお、既存のデータセンタにおける複数のシステムのパラメータの設定情報が、世代毎にパラメータ設定履歴１２に記憶されている。
【００５２】
まず、全世代ルール抽出部２１は、設定支援要求があったか否かを判定する（ステップＳ１１）。設定支援要求がないと判定した場合（ステップＳ１１；Ｎｏ）、全世代ルール抽出部２１は、設定支援要求があるまで、判定処理を繰り返す。一方、設定支援要求があると判定した場合（ステップＳ１１；Ｙｅｓ）、全世代ルール抽出部２１は、全世代のデータ（パラメータ設定履歴１２）全てを用いて、複数のシステムで共通するパラメータの設定ルール（全体ルール）を抽出する（ステップＳ１２）。なお、設定ルールは、クラスタリング手法を用いて抽出される。
【００５３】
そして、世代別ルール抽出部２２は、世代毎のデータ（パラメータ設定履歴１２）を用いて、複数のシステムで共通するパラメータの世代毎の設定ルールを抽出する（ステップＳ１３）。なお、設定ルールは、全世代ルール抽出部２１で用いられるクラスタリング手法と同じ手法を用いて抽出される。
【００５４】
続いて、差分ルール特定部２３は、全体ルールと、世代毎に抽出した設定ルールとを比較する（ステップＳ１４）。そして、差分ルール特定部２３は、共通するパラメータの設定に関し異なる設定ルールを特定する（ステップＳ１５）。
【００５５】
続いて、信頼度算出部２４は、異なる設定ルールの信頼度を、この異なる設定ルールを有する世代に関する規則に基づいて算出する（ステップＳ１６）。例えば、信頼度算出部２４は、式（１）に基づいて、異なる設定ルールの信頼度を算出する。
【００５６】
そして、信頼度出力部２５は、異なる設定ルールの信頼度を出力する（ステップＳ１７）。例えば、信頼度出力部２５は、異なる設定ルールの信頼度を、設定ルールと世代とともに表形式で、設定支援装置１のモニターに出力する。
【００５７】
続いて、最適化部２６は、信頼度出力部２５によって出力された異なる設定ルールのうち、いずれかの設定ルールが選択されたか否かを判定する（ステップＳ１８）。いずれかの設定ルールが選択されなかったと判定した場合（ステップＳ１８；Ｎｏ）、設定支援処理は、終了する。
【００５８】
一方、いずれかの設定ルールが選択されたと判定した場合（ステップＳ１８；Ｙｅｓ）、最適化部２６は、選択された設定ルールの信頼度が他の設定ルールの信頼度より高ければ、教師データ１１に、選択された設定ルールを反映する（ステップＳ１９）。例えば、最適化部２６は、選択された設定ルールの信頼度が他の設定ルールの信頼度より高い場合には、選択された設定ルールを、選択された設定ルールを有する世代と異なる世代に適用する。そして、最適化部２６は、適用した世代のパラメータ設定履歴１２を書き換える。そして、設定支援処理は、終了する。
【００５９】
［実施例の効果］
上記実施例によれば、設定支援装置１は、複数のシステムに対して過去に行われたパラメータの設定に関するパラメータ設定情報から、複数のシステムで共通するパラメータの設定および設定に用いられる条件を第１のルールとして生成する。そして、設定支援装置１は、複数のシステムに対して過去に行われたパラメータの設定に関する世代毎のパラメータ設定情報から、世代毎に、複数のシステムで共通するパラメータの設定および設定に用いられる条件を第２のルールとして生成する。そして、設定支援装置１は、共通するパラメータの設定に関し、第１のルールと、世代毎の第２のルールとを比較し、異なるルールを特定し、特定した異なるルールの確からしさの指標を算出する。かかる構成によれば、設定支援装置１は、設計者に対して、共通するパラメータの設定ルールに差異がある場合に、差異がある設定ルールの確からしさを提示することができ、差異がある設定ルールの確からしさを把握させることができる。
【００６０】
また、上記実施例によれば、設定支援装置１は、異なるルールを有する世代に関する規則に基づいて、当該異なるルールの確からしさの指標を算出する。かかる構成によれば、設定支援装置１は、異なるルールについて、世代を考慮した確からしさの指標を算出することで、精度の高い指標を算出することができる。
【００６１】
また、上記実施例によれば、設定支援装置１は、異なるルールを有する世代が新しい程、且つ、連続している程、確からしさが高い指標となるように算出する。かかる構成によれば、設定支援装置１は、さらに、異なるルールについて、世代を考慮した確からしさの指標を算出することで、精度の高い指標を算出することができる。
【００６２】
［その他］
なお、設定支援装置１は、既知のパーソナルコンピュータ、ワークステーション等の情報処理装置に、上記した差分ルール特定部２３、信頼度算出部２４などの各機能を搭載することによって実現することができる。
【００６３】
また、上記実施例では、信頼度算出部２４は、差分ルール特定部２３によって特定された異なる設定ルールの信頼度を、異なる設定ルールを有する世代に関する規則に基づいて算出する。この際、世代に関する規則の一例を、異なる設定ルールを有する世代が新しく、且つ連続している程、信頼度が高くなるという規則として説明した。しかしながら、世代に関する規則は、これに限定されず、さらに、異なる設定ルールが最新の世代だけのものである場合には、信頼度を下げるようにしても良い。設定ルールが最新の世代だけのものである場合には、まだ実績が不足しているからである。例えば、信頼度算出部２４は、式（１）によって算出される信頼度から予め定められた調整値を減じるようにすれば良い。
【００６４】
また、図示した装置の各構成要素は、必ずしも物理的に図示の如く構成されていることを要しない。すなわち、装置の分散・統合の具体的態様は図示のものに限られず、その全部または一部を、各種の負荷や使用状況等に応じて、任意の単位で機能的または物理的に分散・統合して構成することができる。例えば、全世代ルール抽出部２１と世代別ルール抽出部２２とを１個の部として統合しても良い。一方、全世代ルール抽出部２１を、既存データセンタから教師データ１１を受信して記憶部１０に格納する格納部と、全世代ルールを抽出する抽出部とに分散しても良い。また、記憶部１０を設定支援装置１の外部装置に記憶するようにしても良いし、記憶部１０を記憶した外部装置を設定支援装置１とネットワーク経由で接続するようにしても良い。
【００６５】
また、上記実施例で説明した各種の処理は、あらかじめ用意されたプログラムをパーソナルコンピュータやワークステーション等のコンピュータで実行することによって実現することができる。そこで、以下では、図１に示した設定支援装置１と同様の機能を実現する設定支援プログラムを実行するコンピュータの一例を説明する。図８は、設定支援プログラムを実行するコンピュータの一例を示す図である。
【００６６】
図８に示すように、コンピュータ２００は、各種演算処理を実行するＣＰＵ２０３と、ユーザからのデータの入力を受け付ける入力装置２１５と、表示装置２０９を制御する表示制御部２０７とを有する。また、コンピュータ２００は、記憶媒体からプログラムなどを読取るドライブ装置２１３と、ネットワークを介して他のコンピュータとの間でデータの授受を行う通信制御部２１７とを有する。また、コンピュータ２００は、各種情報を一時記憶するメモリ２０１と、ＨＤＤ２０５を有する。そして、メモリ２０１、ＣＰＵ２０３、ＨＤＤ２０５、表示制御部２０７、ドライブ装置２１３、入力装置２１５、通信制御部２１７は、バス２１９で接続されている。
【００６７】
ドライブ装置２１３は、例えばリムーバブルディスク２１１用の装置である。ＨＤＤ２０５は、設定支援プログラム２０５ａおよび設定支援関連情報２０５ｂを記憶する。
【００６８】
ＣＰＵ２０３は、設定支援プログラム２０５ａを読み出して、メモリ２０１に展開し、プロセスとして実行する。かかるプロセスは、設定支援装置１の各機能部に対応する。設定支援関連情報２０５ｂは、教師データ１１に対応する。そして、例えばリムーバブルディスク２１１が、教師データ１１などの各情報を記憶する。
【００６９】
なお、設定支援プログラム２０５ａについては、必ずしも最初からＨＤＤ２０５に記憶させておかなくても良い。例えば、コンピュータ２００に挿入されるフレキシブルディスク（ＦＤ）、ＣＤ−ＲＯＭ、ＤＶＤディスク、光磁気ディスク、ＩＣカード等の「可搬用の物理媒体」に当該プログラムを記憶させておく。そして、コンピュータ２００がこれらから設定支援プログラム２０５ａを読み出して実行するようにしても良い。
【００７０】
以上の実施例を含む実施形態に関し、さらに以下の付記を開示する。
【００７１】
（付記１）コンピュータに、
複数の機器に対して過去に行われたパラメータの設定に関する情報から、前記複数の機器で共通するパラメータの設定および設定に用いられる条件を第１のルールとして生成し、
前記複数の機器に対して過去に行われたパラメータの設定に関する世代毎の情報から、世代毎に前記複数の機器で共通するパラメータの設定および設定に用いられる条件を第２のルールとして生成し、
共通するパラメータの設定に関し、前記第１のルールと前記第２のルールを比較し、異なるルールを特定し、特定した異なるルールの確からしさの指標を算出する
処理を実行させることを特徴とする設定支援プログラム。
【００７２】
（付記２）前記指標を算出する処理は、異なるルールを有する世代に関する規則に基づいて、当該異なるルールの確からしさの指標を算出する
処理を実行させることを特徴とする付記１に記載の設定支援プログラム。
【００７３】
（付記３）前記指標を算出する処理は、異なるルールを有する世代が新しい程、且つ、連続している程、確からしさが高い指標となるように算出する
処理を実行させることを特徴とする付記２に記載の設定支援プログラム。
【００７４】
（付記４）前記指標を算出する処理は、異なるルールを有する世代に対する識別番号、異なるルールを有する世代の連続する世代数および総世代数を用いて、異なるルールを有する世代が新しい程、且つ、連続している程、確からしさが高い指標となるように算出する
処理を実行させることを特徴とする付記３に記載の設定支援プログラム。
【００７５】
（付記５）複数の機器に対して過去に行われたパラメータの設定に関する情報から、前記複数の機器で共通するパラメータの設定および設定に用いられる条件を第１のルールとして生成する第１の生成部と、
前記複数の機器に対して過去に行われたパラメータの設定に関する世代毎の情報から、世代毎に前記複数の機器で共通するパラメータの設定および設定に用いられる条件を第２のルールとして生成する第２の生成部と、
共通するパラメータの設定に関し、前記第１の生成部によって生成された第１のルールと前記第２の生成部によって生成された第２のルールを比較し、異なるルールを特定し、特定した異なるルールの確からしさの指標を算出する算出部と、
を有することを特徴とする設定支援装置。
【００７６】
（付記６）コンピュータが、
複数の機器に対して過去に行われたパラメータの設定に関する情報から、前記複数の機器で共通するパラメータの設定および設定に用いられる条件を第１のルールとして生成し、
前記複数の機器に対して過去に行われたパラメータの設定に関する世代毎の情報から、世代毎に前記複数の機器で共通するパラメータの設定および設定に用いられる条件を第２のルールとして生成し、
共通するパラメータの設定に関し、前記第１のルールと前記第２のルールを比較し、異なるルールを特定し、特定した異なるルールの確からしさの指標を算出する
各処理を実行することを特徴とする設定支援方法。
【符号の説明】
【００７７】
１  設定支援装置
１０  記憶部
１１  教師データ
１２  パラメータ設定履歴
２０  制御部
２１  全世代ルール抽出部
２２  世代別ルール抽出部
２３  差分ルール特定部
２４  信頼度算出部
２５  信頼度出力部
２６  最適化部
【図１】
2015170135.tif 000007
【図２】
2015170135.tif 000008
【図３Ａ】
2015170135.tif 000009
【図３Ｂ】
2015170135.tif 000010
【図４Ａ】
2015170135.tif 000011
【図４Ｂ】
2015170135.tif 000012
【図４Ｃ】
2015170135.tif 000013
【図５】
2015170135.tif 000014
【図６Ａ】
2015170135.tif 000015
【図６Ｂ】
2015170135.tif 000016
【図７】
2015170135.tif 000017
【図８】
2015170135.tif 000018