(57)【特許請求の範囲】
【請求項１】
データ変換方法であって、コンピュータが、
データ変換ルールをインポートするステップと、
前記データ変換ルールから、ソース・データ定義、宛先データ定義、およびデータ変換ルール定義を取得するステップと、
前記ソース・データ定義、前記宛先データ定義、および前記データ変換ルール定義に従ってデータ変換ノード・サーバのリソース・エネルギ消費パラメータを予測するステップであって、前記ソース・データ定義、前記宛先データ定義、および前記データ変換ルール定義に従って、データ抽出フェーズと、データ処理フェーズと、データ格納フェーズとにおける前記データ変換ノード・サーバの前記リソース・エネルギ消費パラメータを予測するステップをさらに含む、前記予測するステップと、
前記データ変換ノード・サーバの前記予測されたリソース・エネルギ消費パラメータに基づいて、前記データ変換ノード・サーバのリソース・エネルギ消費最適化方策を展開するステップと
を実行することを含む、前記方法。
【請求項２】
前記データ変換ルールは、前記ソース・データ定義により表現された形式から、前記宛先データ定義により表現される形式にどのようにデータを変換するかを規定するために使われる、請求項１に記載の方法。
【請求項３】
前記リソース・エネルギ消費パラメータは、ＣＰＵエネルギ消費、メモリ使用率、およびディスクＩ／Ｏ使用率、の少なくとも一つを含む、請求項１又は２に記載の方法。
【請求項４】
前記予測するステップは、前記データ変換ルール定義に従って前記データ変換ルールの処理方式を識別するステップをさらに含む、請求項１〜３のいずれか一項に記載の方法。
【請求項５】
前記データ変換ルールの前記処理方式は、直接コピー、データ型転換、およびマクロ転換、の少なくとも一つを含む、請求項４に記載の方法。
【請求項６】
前記コンピュータが、
前記データ変換ルールの前記処理方式が直接コピーまたはデータ型転換であると識別された場合、毎回書き込まれるデータのサイズ、および書き込みの回数に基づいて、前記データ抽出フェーズおよび前記データ格納フェーズにおける前記データ変換ノード・サーバの前記メモリ使用率およびディスクＩ／Ｏ使用率を予測するステップ
を実行することをさらに含む、請求項５に記載の方法。
【請求項７】
前記コンピュータが、
前記データ変換ルールの前記処理方式がマクロ転換であると識別された場合、前記データ抽出フェーズおよび前記データ格納フェーズのそれぞれにおいて毎回読み書きされるデータのサイズおよび処理される数値の個数に基づいて、前記データ抽出フェーズおよび前記データ格納フェーズにおける前記メモリ使用率およびディスクＩ／Ｏ使用率を予測するステップ
を実行することをさらに含む、請求項５に記載の方法。
【請求項８】
前記コンピュータが、
前記データ変換ルールの前記処理方式がマクロ転換であると識別された場合、前記データ処理フェーズにおいて毎回読み書きされるデータのサイズ、および中間値の個数に基づいて、前記データ処理フェーズにおける前記データ変換ノード・サーバの前記メモリ使用率を予測するステップ
を実行することをさらに含む、請求項５に記載の方法。
【請求項９】
前記コンピュータが、
前記データ抽出フェーズにおける前記データ変換ノード・サーバの前記予測されたリソース・エネルギ消費パラメータに基づいて、前記データ抽出フェーズにおけるソース・ノード・サーバのリソース・エネルギ消費パラメータを予測するステップ
を実行することをさらに含む、請求項１〜７のいずれか一つに記載の方法。
【請求項１０】
前記コンピュータが、
前記データ格納フェーズにおける前記データ変換ノード・サーバの前記予測されたリソース・エネルギ消費パラメータに基づいて、前記データ格納フェーズにおける宛先ノード・サーバのリソース・エネルギ消費パラメータを予測するステップ
を実行することをさらに含む、請求項１〜７のいずれか一つに記載の方法。
【請求項１１】
前記コンピュータが、
前記データ抽出フェーズ、前記データ処理フェーズ、および前記データ格納フェーズにおいて予測された前記リソース・エネルギ消費パラメータのうち少なくとも一つの同一のエネルギ消費パラメータを有する複数のデータ変換ルールに対し、前記データ変換ノード・サーバ中の前記複数のデータ変換ルールの前記リソース・エネルギ消費最適化方策を一様に展開するステップ
を実行することをさらに含む、請求項１〜８のいずれか一つに記載の方法。
【請求項１２】
データ・トランスフォーマであって、
データ変換ルールをインポートするよう構成されたインポート手段と、
前記データ変換ルールから、ソース・データ定義、宛先データ定義、およびデータ変換ルール定義を取得するよう構成された取得手段と、
前記ソース・データ定義、前記宛先データ定義、および前記データ変換ルール定義に従ってデータ変換ノード・サーバのリソース・エネルギ消費パラメータを予測するよう構成された予測手段であって、前記ソース・データ定義、前記宛先データ定義、および前記データ変換ルール定義に従って、データ抽出フェーズと、データ処理フェーズと、データ格納フェーズとにおける前記データ変換ノード・サーバの前記リソース・エネルギ消費パラメータを予測するようさらに構成される前記予測手段と、
前記データ変換ノード・サーバの前記予測されたリソース・エネルギ消費パラメータに基づいて、前記データ変換ノード・サーバのリソース・エネルギ消費最適化方策を展開するよう構成された展開手段と
を含む、前記データ・トランスフォーマ。
【請求項１３】
前記データ変換ルールは、前記ソース・データ定義により表現された形式から、前記宛先データ定義により表現される形式にどのようにデータを変換するかを規定するために使われる、請求項１２に記載のデータ・トランスフォーマ。
【請求項１４】
前記リソース・エネルギ消費パラメータは、ＣＰＵエネルギ消費、メモリ使用率、およびディスクＩ／Ｏ使用率、の少なくとも一つを含む、請求項１２又は１３に記載のデータ・トランスフォーマ。
【請求項１５】
前記予測手段は、前記データ変換ルール定義に従って前記データ変換ルールの処理方式を識別するようさらに構成される、請求項１２〜１４のいずれか一項に記載のデータ・トランスフォーマ。
【請求項１６】
前記データ変換ルールの前記処理方式は、直接コピー、データ型転換、およびマクロ転換、の少なくとも一つを含む、請求項１５に記載のデータ・トランスフォーマ。
【請求項１７】
前記予測手段は、前記データ変換ルールの前記処理方式が直接コピーまたはデータ型転換であると識別された場合、毎回書き込まれるデータのサイズ、および書き込みの回数に基づいて、前記データ抽出フェーズおよび前記データ格納フェーズにおける前記データ変換ノード・サーバの前記メモリ使用率およびディスクＩ／Ｏ使用率を予測するようさらに構成される、請求項１６に記載のデータ・トランスフォーマ。
【請求項１８】
前記予測手段は、前記データ変換ルールの前記処理方式がマクロ転換であると識別された場合、前記データ抽出フェーズおよび前記データ格納フェーズのそれぞれにおいて毎回読み書きされるデータのサイズおよび処理される数値の個数に基づいて、前記データ抽出フェーズおよび前記データ格納フェーズにおける前記メモリ使用率およびディスクＩ／Ｏ使用率を予測するようさらに構成される、請求項１６に記載のデータ・トランスフォーマ。
【請求項１９】
前記予測手段は、前記データ変換ルールの前記処理方式がマクロ転換であると識別された場合、前記データ処理フェーズにおいて毎回読み書きされるデータのサイズ、および中間値の個数に基づいて、前記データ処理フェーズにおける前記データ変換ノード・サーバの前記メモリ使用率を予測するようさらに構成される、請求項１６に記載のデータ・トランスフォーマ。
【請求項２０】
前記予測手段は、前記データ抽出フェーズにおける前記データ変換ノード・サーバの前記予測されたリソース・エネルギ消費パラメータに基づいて、前記データ抽出フェーズにおけるソース・ノード・サーバの前記リソース・エネルギ消費パラメータを予測するようさらに構成される、請求項１２〜１８のいずれか一つに記載のデータ・トランスフォーマ。
【請求項２１】
前記予測手段は、前記データ格納フェーズにおける前記データ変換ノード・サーバの前記予測されたリソース・エネルギ消費パラメータに基づいて、前記データ格納フェーズにおける宛先ノード・サーバの前記リソース・エネルギ消費パラメータを予測するようさらに構成される、請求項１２〜１８のいずれか一つに記載のデータ・トランスフォーマ。
【請求項２２】
前記展開手段は、前記データ抽出フェーズ、前記データ処理フェーズ、および前記データ格納フェーズにおいて予測された前記リソース・エネルギ消費パラメータのうち少なくとも一つの同一のエネルギ消費パラメータを有する、複数のデータ変換ルールに対し、前記データ変換ノード・サーバ中の前記複数のデータ変換ルールの前記リソース・エネルギ消費最適化方策を一様に展開するようさらに構成される、請求項１２〜１９のいずれか一つに記載のデータ・トランスフォーマ。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明はデータ変換に関し、具体的には、省エネルギのデータ変換方法およびデータ・トランスフォーマに関する。
【背景技術】
【０００２】
データ変換は、データを一つの表現形式から別の表現形式に変換するためにマネジメント・ソフトウェアで広く使われている。例えば、ソフトウェアの全般的なアップグレードは、データベースの全般的なアップグレードをもたらし、ソフトウェアの一本ずつが、そのバックグラウンド・データベース・アーキテクチャおよびデータ・ストレージ形式において異なっており、しかして、多くの場合、データのインポート、エクスポート、および変換が必要となる。さらに、例えば、ますます増大するデータ量の故に、元のデータ・アーキテクチャ設計が実情にそぐわなくなり、さまざまな面において要求事項を満たせず、データベースの置き換えおよびデータ構造体の置き換えによって、データ自体の変換が必要になっている。データ変換は、異なるプロダクトからのデータを統合し、ソフトウェア・プロダクトの融合を実現するプロセスにおいて特に重要である。
【発明の概要】
【発明が解決しようとする課題】
【０００３】
データ変換は、システムの多大なリソース・エネルギ消費量を使うので、データ変換過程におけるシステムのエネルギ消費をいかに低減するかが重要な問題になっている。現在、諸研究者が多くの省エネルギ技法を開発しており、これらは動的技法と静的技法との２つのカテゴリに分けられる。静的技法は、低電力消費動作モードに設定することによって、システムが低電力消費状態に入ることを可能にするもので、例えば、チップ内部の相異なるコンポーネントのクロックまたは電源に、低電力消費モード・スイッチが設けられる。しかしながら、静的モードは、リソースの使用状態に応じてリソース・エネルギ消費を動的に調整することはできない。動的技法は、例えば、動的電圧および周波数スケーリング（ＤＶＦＳ：Ｄｙｎａｍｉｃ  Ｖｏｌｔａｇｅ  ａｎｄ  Ｆｒｅｑｕｅｎｃｙ  Ｓｃａｌｉｎｇ）技術などにより、システムの負荷履歴から今後の負荷状態を予測し、チップの動作周波数および電圧を動的にスケールし、これによって省エネルギの目的を達する。しかしながら、動的技法では、負荷履歴に基づいて次の期間の負荷を予測し、これにより電圧および周波数をどのようにスケールするかの設定が必要となる。各種の予測アルゴリズムは精度が大きく異なり、負荷履歴と実際の負荷との間に比較的大きな狂いがしばしば存在して、予測結果が、実際の適用において非常に不正確なことが間々ある。
【０００４】
従って、データ変換のための、もっと効率的で正確なエネルギ消費制御方法が必要とされている。
【課題を解決するための手段】
【０００５】
本発明は、前述の問題を考慮したデータ変換方法およびデータ・トランスフォーマを提供する。
【０００６】
本発明の第一態様によって、データ変換方法が提供され、該方法は、データ変換ルールをインポートするステップと、データ変換ルールから、ソース・データ定義、宛先データ定義、およびデータ変換ルール定義を取得するステップと、該ソース・データ定義、宛先データ定義、およびデータ変換ルール定義に従って、データ変換ノード・サーバのリソース・エネルギ消費パラメータを予測するステップと、該データ変換ノード・サーバの予測されたリソース・エネルギ消費パラメータに基づいて、データ変換ノード・サーバのリソース・エネルギ消費最適化方策を展開するステップと、を含む。
【０００７】
本発明の第二態様によって、データ・トランスフォーマが提供され、該データ・トランスフォーマは、データ変換ルールをインポートするよう構成されたインポート手段と、データ変換ルールから、ソース・データ定義、宛先データ定義、およびデータ変換ルール定義を取得するよう構成された取得手段と、該ソース・データ定義、宛先データ定義、およびデータ変換ルール定義に従って、データ変換ノード・サーバのリソース・エネルギ消費パラメータを予測するよう構成された予測手段と、該データ変換ノード・サーバの予測されたリソース・エネルギ消費パラメータに基づいて、データ変換ノード・サーバのリソース・エネルギ消費最適化方策を展開するよう構成された展開手段と、を含む。
【０００８】
本発明によるデータ変換方法およびデータ・トランスフォーマは、データ変換ルールに従って、データ変換ノード・サーバのリソース・エネルギ消費パラメータを予測し、しかして、データ変換ノード・サーバのリソース・エネルギ消費パラメータを、より効率的且つ正確に予測することができ、これにより、該データ変換ノード・サーバのリソース・エネルギ消費最適化方策を展開する。
【０００９】
本発明自体、その好適な実施形態、並びに、本発明の目的および利点は、添付の図面と併せ、以下の例示的諸実施形態の説明を参照することによってより良く理解できよう。
【図面の簡単な説明】
【００１０】
【図１】本発明のある実施形態によるデータ変換方法を示す。
【図２】本発明のある実施形態によるデータ変換方法を示すフロー・チャートである。
【図３】ソース・データ定義および宛先データ定義の分析を示すフロー・チャートである。
【図４】データ変換ルール定義の分析を示すフロー・チャートである。
【図５】本発明のある実施形態によるデータ・トランスフォーマを示すブロック図である。
【発明を実施するための形態】
【００１１】
本発明の目的および利点は、添付の図面と併せ、以下の、本発明の諸実施形態による方法の説明によってより良く理解できよう。
【００１２】
本発明の諸実施形態によるデータ変換方法は、データ変換を、データ抽出フェーズ、データ処理フェーズ、およびデータ格納フェーズの３つのフェーズに分ける。この３つのフェーズにおけるリソース・エネルギ消費パラメータを分析することによって、リソース省エネルギ方策が展開される。データ抽出フェーズとデータ格納フェーズとは、主として、ソース・ノード・サーバの負荷と宛先ノード・サーバの負荷とに影響し、データ処理フェーズは、主としてデータ変換ノード・サーバの負荷に影響するので、ソース・ノード・サーバ、データ変換ノード・サーバ、および宛先ノード・サーバのリソース・エネルギ消費要求は、これら３つのフェーズにおける負荷状態に基づいて評価でき、これにより、エネルギ消費最適化方策を設定することができる。
【００１３】
図１は、本発明のある実施形態によるデータ変換方法を示し、該方法は、データ変換ルールをインポートするステップＳ１０１と、データ変換ルールから、ソース・データ定義、宛先データ定義、およびデータ変換ルール定義を取得するステップＳ１０２と、該ソース・データ定義、宛先データ定義、およびデータ変換ルール定義に従って、データ変換ノード・サーバのリソース・エネルギ消費パラメータを予測するステップＳ１０３と、該データ変換ノード・サーバの予測されたリソース・エネルギ消費パラメータに基づいて、データ変換ノード・サーバのリソース・エネルギ消費最適化方策を展開するステップＳ１０４と、を含む。
【００１４】
本発明の本実施形態によれば、リソース・エネルギ消費パラメータは、ＣＰＵエネルギ消費、メモリ使用率、およびディスクＩ／Ｏ使用率、の少なくとも一つを含む。データ定義は、データを表現し、内容、範囲、品質、管理モード、データ・オーナー、構成要素のデータ提供モード、データ・セットまたは一連のデータ・セット、などに関する情報を表すためのデータである。本発明は、データ定義により表現されるオブジェクトの違いによって、「ソース・データ定義」および「宛先データ定義」を使い、それぞれ、データ・ソースを表現するためのデータ定義と、データ・ストレージ先を表現するためのデータ定義とを表す。
【００１５】
データ変換ルールは、ソース・データ定義により表現された形式から、宛先データ定義により表現される形式にどのようにデータを変換するかを規定するために使われる。典型的なデータ変換ルールは、少なくとも、変換ルール識別子（随意）、ソース・データのデータ・オブジェクト、宛先データのデータ・オブジェクト、および処理方式を含む。以下に、あるデータ変換ルールのクラスＢＮＦ定義を示す。
【００１６】
ＴｒａｎｓｆｏｒｍａｔｉｏｎＲｕｌｅ：：＝｛［ＲｕｌｅＩＤ］“：”＜ＳｏｕｒｃｅＤａｔａＡｔｔｒｉｂｕｔｅ＞“：”＜ＤｅｓｔｉｎａｔｉｏｎＤａｔａＡｔｔｒｉｂｕｔｅ＞“：”＜Ｏｐｅｒａｔｉｏｎ＞｝
Ｏｐｅｒａｔｉｏｎ：：＝｛ＤｉｒｅｃｔＣｏｐｙ｜ＴｙｐｅＣｏｎｖｅｒｔ｜Ｍａｃｒｏ｝
【００１７】
このデータ変換ルール定義は、ソース・データ定義から宛先データ定義にどのように変換するかを表すための複数のデータ変換オペレーションを含む。
【００１８】
［ソース・データ定義の例］
以下の例は、ＸＭＬスキーマの形式でのソース・データ定義“ｋｅ９＿ｃｒａｃ＿ｄａｔａ”を表し、これは“Ｎｏｄｅ”、“Ｂｅｇｉｎ＿Ｔｉｍｅ”、“Ｄｅｓｃｒｉｐｔｉｏｎ”および“Ａｍｂｉｅｎｔ＿Ｔｅｍｐ”からこの順番に成る複合データ型を含み、これらのデータ型は、それぞれ「ｖａｒｃｈａｒ型」、「ｓｔｒｉｎｇ型」、「ｖａｒｃｈａｒ型」、および「ｒｅａｌ型」である。
【００１９】
【数１】
0005754824.tif 000002
【００２０】
［宛先データ定義の例］
以下の例は、ＸＭＬスキーマの形式での宛先データ定義“ＣＲＡＣ＿ｄｙｎａｍｉｃ”を表し、これは“ｎｏｄｅ”、“ｂｅｇｉｎ”、“ｄｅｓｃｒｉｐｔｉｏｎ”および“ａｍｂｉｅｎｔ＿Ｔｅｍｐ”からこの順番に成る複合データ型を含み、これらの型は、それぞれ「ｖａｒｃｈａｒ型」、「Ｄａｔｅ型」、「ｖａｒｃｈａｒ型」、および「ｒｅａｌ型」である。
【００２１】
【数２】
0005754824.tif 000003
【００２２】
［データ変換ルール定義の例］
以下の例は、前述の２つの例に基づき、どのようにソース・データ定義“ｋｅ９＿ｃｒａｃ＿ｄａｔａ”から宛先データ定義“ＣＲＡＣ＿ｄｙｎａｍｉｃ”に変換するかを、ＸＭＬの形式で表す。この例は、ソース・データ型の“Ｎｏｄｅ”、“Ｂｅｇｉｎ＿Ｔｉｍｅ”、“Ｄｅｓｃｒｉｐｔｉｏｎ”および“Ａｍｂｉｅｎｔ＿Ｔｅｍｐ”から、それぞれ、宛先データ定義の“ｎｏｄｅ”、“ｂｅｇｉｎ”、“ｄｅｓｃｒｉｐｔｉｏｎ”および“ａｍｂｉｅｎｔ＿Ｔｅｍｐ”に変換するための４つのデータ変換ルールを含み、それぞれの変換オペレーションは、「等価（ｅｑｕａｌ）」、「タイムスタンプ変換（ｔｉｍｅｓｔａｍｐＣｏｎｖｅｒｔ）」、「等価」、および「等価」であり、このことは“Ｂｅｇｉｎ＿Ｔｉｍｅ”に対してはデータ型転換のオペレーションが遂行され、他のデータ型に対しては直接コピーのオペレーションが行われることを示す。
【００２３】
【数３】
0005754824.tif 000004
【００２４】
図２は、本発明のある実施形態によるデータ変換方法を示すフロー・チャートである。ステップＳ２０１で、データ変換ルールをインポートし、例えば、前述のデータ変換ルールの例においては、ソース・データ定義の“Ｎｏｄｅ”、“Ｂｅｇｉｎ＿Ｔｉｍｅ”、“Ｄｅｓｃｒｉｐｔｉｏｎ”、および“Ａｍｂｉｅｎｔ＿Ｔｅｍｐ”から、それぞれ、宛先データ定義の“ｎｏｄｅ”、“ｂｅｇｉｎ”、“ｄｅｓｃｒｉｐｔｉｏｎ”および“ａｍｂｉｅｎｔ＿Ｔｅｍｐ”に変換するため、ソース・データ定義“ｋｅ９＿ｃｒａｃ＿ｄａｔａ”から宛先データ定義“ＣＲＡＣ＿ｄｙｎａｍｉｃ”に、ＸＭＬの形式でどのように変換するかを表すデータ変換ルールをインポートする。
【００２５】
ステップＳ２０２で、このデータ変換ルールから、ソース・データ定義、宛先データ定義、およびデータ変換ルール定義を取得し、例えば、前述のデータ変換ルールの例においては、ソース・データ定義“ｋｅ９＿ｃｒａｃ＿ｄａｔａ”、宛先データ定義“ＣＲＡＣ＿ｄｙｎａｍｉｃ”、並びに、ソース・データ定義“ｋｅ９＿ｃｒａｃ＿ｄａｔａ”から宛先データ定義“ＣＲＡＣ＿ｄｙｎａｍｉｃ”にどのように変換するかを表すデータ変換ルール定義を取得する。
【００２６】
ステップＳ２０３およびＳ２０４で、それぞれ、ソース・データ定義および宛先データ定義を分析する。図３は、ステップＳ２０３およびＳ２０４におけるソース・データ定義および宛先データ定義の分析を詳しく示したフロー・チャートである。ステップＳ３０１で、最初にソース・データの型および宛先データの型を識別する。ステップＳ３０２で、ソース・データの型および宛先データの型が単純データ型かどうかを判断する。本明細書では、データの型を単純データ型と複合データ型とに分類する。この単純データ型は、最下位の抽象層中に格納された値であり、比較的高速の演算速度を有する単純な値をだけを表現する。多く見られる単純データ型には、整数型、Ｆｌｏａｔ型、文字（Ｃｈａｒ）型、Ｄｏｕｂｌｅ型、Ｄｅｃｉｍａｌ型、バイナリ・ラージ・オブジェクト（ＢＬＯＢ：Ｂｉｎａｒｙ  Ｌａｒｇｅ  Ｏｂｊｅｃｔ）型、および列挙（Ｅｎｕｍ：Ｅｎｕｍｅｒａｔｉｏｎ）型などが含まれる。複合データ型は、相互に関連付けられた複数の単純データ型を組み合わせて形成された有機的な統一体である。上記判断の結果が「いいえ」の場合、ステップＳ３０３で、その複合データ型を分割し、プロセスは、複合データ型が単純データ型に分割されるまで、識別のためのステップＳ３０１に戻る。判断の結果が「はい」の場合、ステップＳ３０４でデータ型を記録する。ステップＳ３０５で、識別された単純データ型に対して毎回読み書きされるデータのサイズを計算し、このサイズは、その型定義によって決まり、周知の一般知識である。例えば、Ｊａｖａのデータ型に対しては、整数型、Ｆｌｏａｔ型、文字（Ｃｈａｒ）型などの単純データ型のデータのサイズは、それぞれ、３２ビット、３２ビット、１６ビットである。ただし、識別された複合データ型に対しては、これが相互に関連付けられた複数の単純データ型によって形成されているので、毎回読み書きされるデータのサイズは、単純データ型のデータのサイズの合計となる。
【００２７】
ステップＳ２０５で、データ変換ルール定義を分析する。図４は、データ変換ルール定義の分析を詳しく示したフロー・チャートである。ステップＳ４０１で、最初にデータ変換ルールの処理方式を識別する。データ変換ルールの処理方式が直接コピーであると識別された場合、ステップＳ４０２で、ソース・データ定義および宛先データ定義に対する分析の結果に基づいて、直接コピーのリソース特性パラメータを計算する。具体的には、直接コピーのリソース特性パラメータは、変換ルール識別子、毎回読み書きされるデータのサイズ、直接コピーの回数、およびＣＰＵ負荷を含む。データ変換ルールの処理方式がデータ型転換であると識別された場合、ステップＳ４０３で、ソース・データ定義および宛先データ定義に対する分析の結果に基づいて、データ型転換のリソース特性パラメータを計算する。具体的には、データ型転換は、データの型の間の変換であって、データ型転換のリソース特性パラメータは、データ型転換ルール識別子、毎回読み書きされるデータのサイズ、データ型転換の回数、およびＣＰＵ負荷を含む。データ変換ルールの処理方式がマクロ転換であると識別された場合、ステップＳ４０４で、ソース・データ定義および宛先データ定義に対する分析の結果に基づいて、マクロ転換のリソース特性パラメータを計算する。具体的には、マクロ転換のリソース特性パラメータは、マクロ転換ルール識別子、毎回読み書きされるデータのサイズ、マクロ演算のＣＰＵ負荷、マクロ演算の回数、単位時間内に遂行される基本演算の回数、および基本演算を遂行するためのＣＰＵ負荷を含む。
【００２８】
プロセスはステップＳ２０６に進み、データ変換ノード・サーバのリソース・エネルギ消費パラメータを予測する。具体的には、データ変換ルールに則して、データ抽出フェーズ、データ処理フェーズ、およびデータ格納フェーズそれぞれにおける、データ変換ノード・サーバのリソース・エネルギ消費パラメータを予測する。
【００２９】
本発明のある実施形態によれば、データ変換様式が直接コピーであると識別された場合、直接コピーのリソース特性パラメータに基づいて、データ抽出フェーズ、データ処理フェーズ、およびデータ格納フェーズにおけるデータ変換ノード・サーバのリソース・エネルギ消費パラメータを予測する。直接コピーは、上記３つのフェーズにおいて計算リソースの消費を必要としないので、該３つのフェーズ全てにおけるＣＰＵ負荷は低く（Ｌ：ｌｏｗ）、ＣＰＵエネルギ消費は低（Ｌ）であると予測することができる。さらに、データ処理フェーズにおいては、直接コピーはメモリおよびディスク・リソースを占有しないので、メモリ使用率およびディスクＩ／Ｏ使用率の両方とも低（Ｌ）であることが予測可能である。しかしながら、データ抽出フェーズおよびデータ格納フェーズにおいては、メモリ使用率およびディスクＩ／Ｏ使用率には、毎回読み書きされるバイトの数（サイズ）、読み／書きの回数（カウント）およびハード・ディスクの特性が関連してくる。これにより、メモリ使用率およびディスクＩ／Ｏ使用率に対する、毎回読み書きされるバイトの数（サイズ）および読み／書きの回数（カウント）の影響が考慮に入れられる。ディスクが最大速度に達していなければ、毎回読み書きされるバイトの数（サイズ）、または読み／書きの回数（カウント）が大きいほど、メモリ使用率およびディスクＩ／Ｏ使用率は高くなる。本発明のある実施形態によれば、毎回読み書きされるデータのバイトの数（サイズ）および読み／書きの回数（カウント）に基づいて、表１のリソース特性マッピング表を前もって作表することができ、毎回読み書きされるデータのサイズに対し第一閾値Ｓ１および第二閾値Ｓ２が事前設定され、読み／書きの回数（カウント）に対し第一閾値Ｃ１および第二閾値Ｃ２が事前設定される。表中のＭはメモリ使用率を表し、ＤはディスクＩ／Ｏ使用率を表し、Ｌ、Ｍ、およびＨはそれぞれ、メモリ使用率およびディスクＩ／Ｏ使用率の低、中、および高を表す。表１から、毎回読み書きされるデータのサイズｓが第一閾値Ｓ１より小さく、読み／書きの回数ｃが第一閾値Ｃ１よりも少なければ、毎回読み書きされるデータのサイズは比較的に小さく、読み／書きの回数は比較的に少なくなるので、メモリ使用率はより低く、ディスクＩ／Ｏ使用率もより低くなって、ＭおよびＤは「Ｌ」に設定されるのが分かる。データのサイズｓの増大および読み書きの回数の増加とともに、メモリ使用率およびディスクＩ／Ｏ使用率に対する要求がますます増加する。毎回読み書きされるデータのサイズがＳ１≦ｓ≦Ｓ２であり、読み／書きの回数がＣ１≦ｃ≦Ｃ２のとき、ＭおよびＤは、それぞれ「Ｍ」に設定され、毎回読み書きされるデータのサイズがｓ＞Ｓ２であり、読み／書きの回数がｃ＞Ｃ２のとき、ＭおよびＤは、それぞれ「Ｈ」に設定されることが分かる。閾値Ｓ１およびＳ２並びにＣ１およびＣ２については、リソースの実際の使用状態に基づいてこれらを設定することができ、メモリ使用率ＭおよびディスクＩ／Ｏ使用率Ｄを、高（Ｈ）、中（Ｍ）、または低（Ｌ）とする基準については、例えば、１０％より低いメモリ使用率を「Ｌ」とし、８０％より高いメモリ使用率を「Ｈ」とするなど、いろいろな基準に基づいてこれらを設定することができる。得られた直接コピーのリソース特性パラメータ中の、毎回読み書きされるデータのサイズおよび読み／書きの回数を、リソース特性のマッピング表中のパラメータと比較することによって、メモリ使用率およびディスクＩ／Ｏ使用率が高か、中か、または低か、を判定することができる。
【００３０】
【表１】
0005754824.tif 000005
【００３１】
本発明のある実施形態によれば、データ変換様式がデータ型転換であると識別された場合、データ型転換のリソース特性パラメータに基づいて、データ抽出フェーズ、データ処理フェーズ、およびデータ格納フェーズにおけるデータ変換ノード・サーバのリソース・エネルギ消費パラメータが予測される。データ型転換は、データ抽出フェーズおよびデータ格納フェーズにおいてＣＰＵリソースに対する要求が比較的に低いので、ＣＰＵのエネルギ消費は低「Ｌ」に設定される。データ型転換のデータ処理フェーズにおいて、特定のデータ型転換に対応するＣＰＵエネルギ消費状態は、その特定のデータ型転換に基づいて判定することができる。数値型の間の転換、例えば整数型（ｉｎｔ：ｉｎｔｅｇｅｒ  ｔｙｐｅ）からＤｏｕｂｌｅ型への転換に対しては、これは過度の計算リソースを消費する必要がないので、ＣＰＵのエネルギ消費要求は低「Ｌ」であると予測することが可能である。数値型と文字型との間の転換、例えば、整数型（ｉｎｔ）から文字列型への転換、または文字列型から整数型（ｉｎｔ）への転換に対しては、これはより多くの計算リソースを消費することになるので、ＣＰＵのエネルギ消費要求は中「Ｍ」であると予測することができる。具体的な実装では、使用可能性のあるデータ型転換に対応するＣＰＵエネルギ消費要求条件を、前もって知識データベースとして記録しておくことができる。この知識データベースを読み出すことによって、特定のデータ変換様式に対応するＣＰＵエネルギ消費要求条件を得ることが可能である。メモリおよびディスクＩ／Ｏのエネルギ消費状態については、データ処理フェーズではメモリおよびディスク・リソースが占有されないので、メモリ使用率およびディスクＩ／Ｏ使用率を低「Ｌ」として設定することができ、データ抽出フェーズおよびデータ格納フェーズにおいては、メモリおよびディスク・リソースを占有する必要があり、毎回読み書きされるデータのサイズおよび読み／書きの回数に基づいて、メモリ使用率およびディスクＩ／Ｏ使用率を判定する必要がある。本発明のある実施形態によれば、例えば表１に示すような、リソース特性マッピング表を前もって作表することが可能で、毎回読み書きされるデータのサイズに対する第一閾値Ｓ１および第二閾値Ｓ２、並びにデータ型転換の回数に対する第一閾値Ｃ１および第二閾値Ｃ２を事前設定することができ、メモリ使用率およびディスクＩ／Ｏ使用率を、経験値に基づいて高、中、および低に分類することができる。得られたデータ型転換のリソース特性パラメータ中の、毎回読み書きされるデータのサイズおよびデータ型転換の回数を、リソース特性マッピング表中のパラメータと比較することによって、メモリ使用率およびディスクＩ／Ｏ使用率の、高、中、および低を判定することができる。
【００３２】
本発明のある実施形態によれば、データ変換様式がマクロ転換であると識別された場合、マクロ転換のリソース特性パラメータに基づいて、データ抽出フェーズ、データ処理フェーズ、およびデータ格納フェーズにおけるデータ変換ノード・サーバのリソース・エネルギ消費パラメータが予測される。処理フェーズにおけるリソースの計算のため、最初にＣＰＵ負荷が計算される。マクロ演算中の基本演算の回数を得るために、マクロ演算を意味的に分析して構文解析ツリーを生成することができ、この構文解析ツリーのノードは、プログラム・ノード、基本演算ノード、およびオペランド・ノードを含む。基本演算ノードに対し統計処理を行い、それを実行時間で除することによって、単位時間当たりに実行された各基本演算の回数を得ることができる。基本演算を実行するＣＰＵの負荷については、基本演算を実行するために必要なＣＰＵ負荷は、個別のオペレーティング環境において特定の言語を使って実装される基本演算に対して評価を行うことができ、例えば、ペンティアム（Ｒ）ＣＰＵは、Ｃ言語の加算演算を１クロック期間で実行することができる。単位時間に実行される各基本演算の回数を、１基本演算を行うため必要なＣＰＵ負荷に乗ずることによって、単位時間における全基本演算を実行するため必要なＣＰＵ負荷を得ることが可能である。さらに、マクロ演算の全基本演算のＣＰＵ負荷の加重合計を行うことによって、そのマクロ演算のＣＰＵ負荷が得られる。すなわち、構文解析ツリーの結果に基づいて、データ処理フェーズにおけるマクロ演算中の各基本演算のＣＰＵ負荷をそれぞれ計算し、全基本演算のＣＰＵ負荷の加重合計を行うことによって、１つのマクロ演算に必要なＣＰＵ負荷が得られる。
【００３３】
以下は、本発明のある実施形態による、座標変換（ｘ，ｙ，ｚ→ｘ’，ｙ’，ｚ’）に対するデータ変換ルールを示す一例であり、データ変換ルールの処理方式はマクロ演算で、マクロ演算の回数は２である。
【００３４】
Ｉｆ  （ｄｉｒｅｃｔｉｏｎ’＝ｄｉｒｅｃｔｉｏｎ；  ｏｒｉｇｉｎ＝ｏｒｉｇｉｎ’）  ｔｈｅｎ
Ｘ’＝（ｘ＋ｏｆｆｓｅｔ＿ｘ）＊２＊０．３０４８；
Ｙ’＝（ｗｉｄｔｈ＋ｏｆｆｓｅｔ＿ｙ−ｙ）＊２＊０．３０４８；
Ｚ’＝Ｚ＊４．４４５／１００＋ｒａｉｓｅｄ＿ｈｅｉｇｈｔ
【００３５】
上記のマクロ演算は意味的に分析され、ｉｆノード、加算ノード、減算ノード、乗算ノード、および除算ノードを含む構文解析ツリーが生成され、最終統計結果は、加算の回数が３、減算の回数が１、乗算の回数が５、および除算の回数が１である。特定のハードウェア環境においては、Ｆｌｏａｔ型は、より多くの乗算および除算の演算、並びに加算および減算の演算を有するので、そのデータ変換ルールは、処理フェーズにおいてより高いＣＰＵ負荷を有する。
【００３６】
データ抽出フェーズおよびデータ格納フェーズにおけるマクロ演算のＣＰＵのエネルギ消費状態については、データ抽出フェーズまたはデータ格納フェーズにおけるＣＰＵ負荷によってこれらを測定することができる。本発明のある実施形態によれば、例えば表２に示すような、ＣＰＵリソース特性マッピング表を前もって作表することができ、ＣＰＵのリソース要求は、１マクロ演算に必要なＣＰＵ負荷およびマクロ演算の回数を使って算定され、１マクロ演算に必要なＣＰＵ負荷は以下の方法によって得ることができる。すなわち、構文解析ツリーの結果に基づき、データ抽出フェーズまたはデータ格納フェーズにおけるマクロ演算中の各基本演算のＣＰＵ負荷をそれぞれ計算し、データ抽出フェーズおよびデータ格納フェーズにおけるＣＰＵ負荷の加重合計を行うことによって、１マクロ演算に必要なＣＰＵ負荷を得る。１マクロ演算に必要なＣＰＵ負荷の第一閾値Ｘ１および第二閾値Ｘ２、並びにマクロ演算の回数に対する第一閾値Ｃ１および第二閾値Ｃ２が事前設定され、ＣＰＵ負荷を経験値に基づいて高、中、および低に分類することができる。データ抽出フェーズまたはデータ格納フェーズにおける１マクロ演算のＣＰＵ負荷とマクロ演算の回数とを、それぞれ、表２中の、ＣＰＵ負荷の第一閾値Ｘ１および第二閾値Ｘ２と、マクロ演算の回数の第一閾値Ｃ１および第二閾値Ｃ２と比較することによって、ＣＰＵのエネルギ消費の高（Ｈ）、中（Ｍ）、または低（Ｌ）を判定することができる。
【００３７】
座標変換（ｘ，ｙ，ｚ→ｘ’，ｙ’，ｚ’）に対する上記データ変換ルールを例として取り上げると、データ抽出フェーズおよびデータ格納フェーズでは数値演算がないので計算量は比較的に低く、しかして、マクロ演算の回数が事前設定の第一閾値Ｃ１より少なくＣＰＵ負荷は低である。
【００３８】
【表２】
0005754824.tif 000006
【００３９】
データ抽出フェーズおよびデータ格納フェーズにおけるマクロ演算のメモリおよびディスク読み／書きエネルギ消費状態に対し、表３に示すような、メモリおよびディスク・リソース特性マッピング表を作表することができ、表のデータ・サイズはそれぞれ、データ抽出フェーズおよびデータ格納フェーズにおいて毎回読み書きされるデータのサイズに対応し、カウントは、抽出・格納される数値の個数に対応し、これらは構文解析ツリーから得ることができる。毎回読み書きされるデータのサイズに対し、第一閾値Ｓ１および第二閾値Ｓ２が設定され、諸基本演算のカウントに対し、第一閾値Ｃ１および第二閾値Ｃ２が設定される。第一閾値Ｓ１および第二閾値Ｓ２並びに第一閾値Ｃ１および第二閾値Ｃ２については、これらはリソースの実際の使用状態に基づいて設定することができ、メモリ使用率ＭおよびディスクＩ／Ｏ使用率Ｄを高（Ｈ）、中（Ｍ）、または低（Ｌ）とするための基準については、いろいろな基準に従ってこれらを設定することができる。データ抽出フェーズまたはデータ格納フェーズにおいて得られたリソース特性パラメータ中の、毎回読み書きされるデータのサイズおよびマクロ転換のデータ型転換の回数を、このリソース特性マッピング表中のパラメータと比較することによって、メモリ使用率ＭおよびディスクＩ／Ｏ使用率Ｄが高（Ｈ）か、中（Ｍ）か、または低（Ｌ）か、を判定することができる。
【００４０】
前述の座標変換（ｘ，ｙ，ｚ→ｘ’，ｙ’，ｚ’）に対するデータ変換ルールを例として取り上げると、構文解析ツリーから、データ抽出フェーズで抽出された数値の個数は１１であり、データ格納フェーズで格納された数値の個数は３であり、データ抽出およびデータ格納フェーズにおいて関与する数値の個数は比較的に少なくて、諸基本演算のカウントが少なく、毎回読み書きされるデータのサイズも比較的に小さいので、メモリ使用率およびディスクＩ／Ｏ使用率は両方とも低であることが分かる。
【００４１】
【表３】
0005754824.tif 000007
【００４２】
マクロ演算はデータ処理フェーズにおいてディスク・リソースを必要としないので、ディスクＩ／Ｏ使用率は低「Ｌ」であり、メモリ使用率は個別の条件によって決まることになる。本発明のある実施形態によれば、表４に示すような、メモリ・リソース特性マッピング表を作表することができ、メモリ使用率は、データ処理フェーズにおいて毎回読み書きされるデータのサイズおよび中間値の総数に基づいて、その高、中、または低が判定される。中間値の総数は、構文解析ツリーから得ることができる。毎回読み書きされるデータのサイズに対して第一閾値Ｓ１および第二閾値Ｓ２が設定され、中間値の総数に対して第一閾値Ｃ１および第二閾値Ｃ２が設定される。第一閾値Ｓ１および第二閾値Ｓ２並びに第一閾値Ｃ１および第二閾値Ｃ２については、これらは実際のリソースの使用状態に基づいて設定することができ、メモリ使用率Ｍを高（Ｈ）、中（Ｍ）、または低（Ｌ）とするための基準については、いろいろな基準に従ってこれらを設定することができる。マクロ転換の過程で得られたリソース特性パラメータ中の、毎回読み書きされるデータのサイズおよび中間値の個数を、リソース特性パラメータのマッピング表中のパラメータと比較することによって、メモリ使用率Ｍが高（Ｈ）か、中（Ｍ）か、または低（Ｌ）か、を判定することができる。
【００４３】
前述の座標変換（ｘ，ｙ，ｚ→ｘ’，ｙ’，ｚ’）に対するデータ変換ルールを例として取り上げると、構文解析ツリーから、中間値の個数は６であり、毎回読み書きされるデータのサイズも比較的に小さいので、メモリ使用率は低であることが分かる。
【００４４】
【表４】
0005754824.tif 000008
【００４５】
次に、プロセスはステップＳ２０７に進み、変換ルールの処理が完了したかどうかを判断する。この判断結果が「いいえ」であれば、プロセスはステップＳ２０１に戻り、新しいデータ変換ルールをインポートして分析する。判断結果が「はい」の場合は、プロセスはステップＳ２０８に進み、データ変換ノード・サーバの予測されたリソース・エネルギ消費パラメータに基づいて、該データ変換ノード・サーバのリソース・エネルギ消費最適化方策を展開する。具体的には、データ変換ノード・サーバの予測されたリソース・エネルギ消費パラメータは、データ抽出フェーズ、データ処理フェーズ、およびデータ格納フェーズにおけるリソース・エネルギ消費パラメータを含み、データ変換ノード・サーバのリソース・エネルギ消費最適化方策は、これら３つのフェーズのリソース・エネルギ消費パラメータに基づいて展開される。このリソース・エネルギ消費最適化方策は、リソース・エネルギ消費の最適化された配分を実現することの可能な、従来技術中の任意の方策とすることができることを理解すべきである。
【００４６】
前述の座標変換（ｘ，ｙ，ｚ→ｘ’，ｙ’，ｚ’）に対するデータ変換ルールを例として取り上げると、前述の分析によって、表５に示された、上記３つのフェーズにおいて予測されたリソース・エネルギ消費パラメータが得られる。データ変換ノード・サーバは、３つのフェーズにおけるリソース・エネルギ消費パラメータに基づいて、該３つのフェーズにおける、ＣＰＵ、メモリ、およびディスクのエネルギ消費最適化方策を展開することができる。表５に示されるように、データ抽出フェーズおよびデータ格納フェーズ両方におけるＣＰＵのエネルギ消費は低いので、ＣＰＵの電圧と周波数とを低減して、エネルギ消費を軽減することが可能であり、データ処理フェーズにおけるＣＰＵのエネルギ消費は高く、従って、ＣＰＵの電圧および周波数を増大して、エネルギ消費を増やすことができる。メモリ使用率は３フェーズの全てで低であり、メモリのアクセス頻度は低減が可能である。ディスクＩ／Ｏ使用率は、データ抽出フェーズにおいては中（Ｍ）であり、データ処理フェーズおよびセット格納フェーズでは低（Ｌ）であり、ディスクのエネルギ消費は、複数の電力供給状態を有するディスクに対してはディスクの電力供給状態を調整することによって、複数の回転速度を有するディスクに対しては回転速度を調整することによって、増大または低減することができる。実際の応用において、システム・リソースの全体的エネルギ消費要求の統計処理を行い、データ変換ルールの予測されたリソース・エネルギ消費パラメータに基づいて、システム・リソースを合理的に調整し、これによりリソース・エネルギ消費の配分を最適化することができる。
【００４７】
本発明のある実施形態によるデータ変換方法は、リソース・エネルギ消費パラメータを予測するために負荷履歴の分析を行うことを必要とせず、直接、使用されるデータ変換ルールに従ってデータ変換ノード・サーバのリソース・エネルギ消費パラメータを分析し、これにより、負荷履歴と実際の負荷との間の大きな逸脱に起因する不正確な予測結果を回避し、より正確で効率的なリソース・エネルギ消費予測を提供することができる。
【００４８】
【表５】
0005754824.tif 000009
【００４９】
本発明のある実施形態によれば、３つのフェーズにおいて、複数のデータ変換ルールによって予測されたリソース使用状態を分析して比較することができる。分析の結果が、３つのフェーズにおいて少なくとも一つの同一のエネルギ消費パラメータを有する複数のデータ変換ルールがあることを示している場合、データ変換ノード・サーバのリソース・エネルギ消費最適化方策を一様に展開することが可能である。複数のデータ変換ルールを一緒に統合して処理することによって、リソース・エネルギ消費を高頻度で調整する回数が低減され、エネルギ消費最適化の効率が向上する。
【００５０】
本発明のある実施形態によれば、上記方法は、データ抽出フェーズにおけるデータ変換ノード・サーバの予測されたエネルギ消費パラメータに基づいて、データ抽出フェーズにおけるソース・ノード・サーバのエネルギ消費パラメータを予測するステップと、データ格納フェーズにおけるデータ変換ノード・サーバの予測されたエネルギ消費パラメータに基づいて、データ格納フェーズにおける宛先ノード・サーバのエネルギ消費パラメータを予測するステップと、をさらに含む。データ抽出フェーズにおいて抽出されたデータは、ソース・ノード・サーバからもたらされ、データ格納フェーズにおいて宛先ノード・サーバに該データが書き込まれることになるので、毎回読み取られるデータのサイズおよび毎回書き込まれるデータのサイズは、それぞれ、ソース・ノード・サーバおよび宛先ノード・サーバのデータ・スループットに反映する。また、データ抽出フェーズとデータ格納フェーズとにおけるＣＰＵ負荷も、そのフェーズにおけるソース・ノード・サーバと宛先ノード・サーバとにおけるＣＰＵ負荷に反映する。前述の座標変換（ｘ，ｙ，ｚ→ｘ’，ｙ’，ｚ’）に対するデータ変換ルールを例として取り上げると、データ抽出フェーズとデータ格納フェーズとにおけるソース・ノード・サーバと宛先ノード・サーバとに対するエネルギ消費パラメータは、データ抽出フェーズとデータ格納フェーズとにおけるデータ変換ノード・サーバのエネルギ消費パラメータに基づいて予測することが可能である。ソース・ノード・サーバおよび宛先ノード・サーバは、予測されたリソース・エネルギ消費状態に基づいてリソース・エネルギ消費を調整し、リソース・エネルギ消費最適化方策を展開することができる。
【００５１】
【表６】
0005754824.tif 000010
【００５２】
同じ発明概念によって、本発明はデータ・トランスフォーマを提案する。図５は、本発明のある実施形態によるデータ・トランスフォーマを示すブロック図５００である。本データ・トランスフォーマは、データ変換ルールをインポートするよう構成されたインポート手段５０１と、データ変換ルールから、ソース・データ定義、宛先データ定義、およびデータ変換ルール定義を取得するよう構成された取得手段５０２と、ソース・データ定義、宛先データ定義、およびデータ変換ルール定義に従ってデータ変換ノード・サーバのリソース・エネルギ消費パラメータを予測するよう構成された予測手段５０３と、データ変換ノード・サーバの予測されたリソース・エネルギ消費パラメータに基づいて、データ変換ノード・サーバのリソース・エネルギ消費最適化方策を展開するよう構成された展開手段５０４と、を含み、リソース・エネルギ消費パラメータは、ＣＰＵエネルギ消費、メモリ使用率、およびディスクＩ／Ｏ使用率、の少なくとも一つを含む。
【００５３】
予測手段５０３は、ソース・データ定義、宛先データ定義、およびデータ変換ルール定義に従って、データ抽出フェーズ、データ処理フェーズ、およびデータ格納フェーズにおけるデータ変換ノード・サーバのリソース・エネルギ消費パラメータを予測するようさらに構成される。
【００５４】
本発明のある実施形態によれば、予測手段５０３は、データ変換ルール定義に従って、データ変換ルールの処理方式を識別するよう構成される。データ変換ルールの処理方式が直接コピーであると識別された場合、データ抽出フェーズ、データ処理フェーズ、およびデータ格納フェーズにおけるデータ変換ノード・サーバのリソース・エネルギ消費パラメータが、ソース・データ定義および宛先データ定義に基づいて予測される。直接コピーは、該３つのフェーズにおいて計算リソースの消費を必要としないので、３つのフェーズにおけるＣＰＵエネルギ消費は低（Ｌ）であると予測することができる。データ抽出フェーズおよびデータ格納フェーズにおけるデータ変換ノード・サーバのメモリ使用率およびディスクＩ／Ｏ使用率は、毎回書き込まれるデータのサイズおよび書き込みの回数に基づいて予測することが可能である。さらに、直接コピーは、データ処理フェーズにおいてメモリおよびディスク・リソースを占有しないので、メモリ使用率およびディスクＩ／Ｏ使用率の両方とも低（Ｌ）であると予測できる。
【００５５】
本発明のある実施形態によれば、データ変換様式の処理方式がデータ型転換であると識別された場合、データ抽出フェーズ、データ処理フェーズ、およびデータ格納フェーズにおけるデータ変換ノード・サーバのリソース・エネルギ消費パラメータが、ソース・データ定義および宛先データ定義に基づいて予測される。データ抽出フェーズおよびデータ格納フェーズにおけるデータ型転換のＣＰＵリソースに対する要求は比較的に低いので、そのＣＰＵのエネルギ消費は低「Ｌ」に設定される。データ型転換のデータ処理フェーズにおける、特定のデータ型転換に対応するＣＰＵエネルギ消費状態は、その特定のデータ型転換に基づいて判定することが可能である。また一方、データ処理フェーズではメモリおよびディスク・リソースが占有されないので、メモリ使用率およびディスクＩ／Ｏ使用率は、低「Ｌ」に設定することができる。さらに、データ抽出フェーズおよびデータ格納フェーズでは、メモリおよびディスク・リソースを占有する必要があるので、メモリ使用率およびディスクＩ／Ｏ使用率は、毎回データ・トランスフォーマによって読み書きされるデータのサイズ、および読み／書きの回数に基づいて算定する必要がある。
【００５６】
本発明のある実施形態によれば、データ変換様式がマクロ転換であると識別された場合、データ抽出フェーズ、データ処理フェーズ、およびデータ格納フェーズにおけるデータ変換ノード・サーバのリソース・エネルギ消費パラメータが、ソース・データ定義および宛先データ定義に基づいて予測される。３つのフェーズにおけるマクロ演算のＣＰＵエネルギ消費状態は、これら３フェーズにおけるＣＰＵ負荷によって測定することができる。データ処理フェーズにおけるマクロ演算はディスク・リソースを必要としないので、ディスクＩ／Ｏ使用率は低「Ｌ」であり、データ処理フェーズにおけるデータ変換ノード・サーバのメモリ使用率は、毎回読み書きされるデータのサイズおよび中間値の個数に基づいて予測することが可能である。データ抽出フェーズおよびデータ格納フェーズにおけるメモリおよびディスクの読み／書きのエネルギ消費状態については、データ抽出フェーズおよびデータ格納フェーズにおいて毎回読み書きされるデータのサイズ、および該データ抽出フェーズおよびデータ格納フェーズに対応する数値の個数に基づいて算定することができる。
【００５７】
本発明のある実施形態によれば、予測手段５０３は、データ抽出フェーズにおけるデータ変換ノード・サーバの予測されたエネルギ消費パラメータに基づいて、データ抽出フェーズにおけるソース・ノード・サーバのエネルギ消費パラメータを予測し、データ格納フェーズにおけるデータ変換ノード・サーバの予測されたエネルギ消費パラメータに基づいて、データ格納フェーズにおける宛先ノード・サーバのエネルギ消費パラメータを予測するようさらに構成される。
【００５８】
本発明のある実施形態によれば、展開手段５０４は、データ抽出フェーズ、データ処理フェーズ、およびデータ格納フェーズにおいて予測されたエネルギ消費パラメータのうち少なくとも一つの同一のエネルギ消費パラメータを有する複数のデータ変換ルールに対し、データ変換ノード・サーバ中の該複数のデータ変換ルールのリソース・エネルギ消費最適化方策を一様に展開するようさらに構成される。
【００５９】
当業者なら理解しているように、本発明の少なくとも一部の態様は、前述に換えて、プログラム製品として具現することができる。本発明のファンクションを定義するプログラムは、以下に限らないが、書き込み不可のストレージ媒体（例、ＣＤ−ＲＯＭ）、書き込み可能ストレージ媒体（例、フレキシブル・ディスク、ハード・ディスク・ドライバ、読み／書き可能なＣＤ−ＲＯＭ、光媒体）を含むさまざまな信号担持媒体、およびイーサネット（Ｒ）を含むコンピュータおよび電話ネットワークなどの通信媒体を介して、データ・ストレージ・システムまたはコンピュータ・システムに伝送することができる。従って、かかる信号担持媒体は、本発明の方法のファンクションを管理するコンピュータ可読の命令を担持または符号化している場合、本発明の別の実施形態に相当することを理解すべきである。本発明は、ハードウェア、ソフトウェア、ファームウエアまたはこれらの組み合わせの様式で実現することができる。本発明は、１つのコンピュータ・システム中に統合された仕方で実現することも、あるいは分散された仕方で実現することもでき、後者では、各種のコンポーネントが、相互接続されたいくつかのコンピュータ・システムに分散される。本出願に記載された方法を遂行するのに適した任意のコンピュータ・システムまたは他の装置が使用可能である。望ましくは、本発明は、汎用コンピュータ・ハードウェアと組み合わせたコンピュータ・ソフトウェアの様式で実現され、コンピュータ・プログラムがロードされ実行されたとき、コンピュータ・システムは、本発明の方法を遂行するよう制御され、あるいは本発明のシステムを構築する。
【００６０】
前述の説明では、例示目的のため本発明の好適な実施形態を説明してきた。前述の説明は、網羅的なものではなく、本発明を開示した特定の形態に限定することも意図していない。前述の教示から、多くの修改および変更が可能なのは自明である。当業者には、かかる修改および変更が、添付の請求項によって定義される本発明の範囲に含まれることは明らかであろう。
【図１】
0005754824.tif 000011
【図２】
0005754824.tif 000012
【図３】
0005754824.tif 000013
【図４】
0005754824.tif 000014
【図５】
0005754824.tif 000015