JP6524875B2 - 処理設定検索装置、方法及びプログラム - Google Patents

処理設定検索装置、方法及びプログラム Download PDF

Info

Publication number
JP6524875B2
JP6524875B2 JP2015193035A JP2015193035A JP6524875B2 JP 6524875 B2 JP6524875 B2 JP 6524875B2 JP 2015193035 A JP2015193035 A JP 2015193035A JP 2015193035 A JP2015193035 A JP 2015193035A JP 6524875 B2 JP6524875 B2 JP 6524875B2
Authority
JP
Japan
Prior art keywords
load
predetermined
processing
information
setting
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.)
Active
Application number
JP2015193035A
Other languages
English (en)
Other versions
JP2017068568A (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.)
NEC Corp
Original Assignee
NEC 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 NEC Corp filed Critical NEC Corp
Priority to JP2015193035A priority Critical patent/JP6524875B2/ja
Publication of JP2017068568A publication Critical patent/JP2017068568A/ja
Application granted granted Critical
Publication of JP6524875B2 publication Critical patent/JP6524875B2/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Landscapes

  • Debugging And Monitoring (AREA)

Description

本発明は、処理設定検索装置、方法及びプログラムに関し、特に、所定の処理を実行する際の処理設定を検索するための処理設定検索装置、方法及びプログラムに関する。
ソート処理を高速化するための技術の一例として、特許文献1には、データ処理速度の高速化を図ることができるデータ処理システムに関する技術が開示されている。特許文献1にかかるデータ処理システムの分析部は、処理対象データを含む1以上の入力ファイルと、処理に使用可能な計算資源を示す1以上の環境条件と、を入力する。そして、当該分析部は、入力ファイル及び環境条件を網羅的に組み合わせて前記処理を試行し、試行結果を分析結果記憶部に記憶させる。その後、ソート部は、入力ファイルを入力し、分析結果記憶部を参照して、入力ファイルに係る処理時間が最も短くなる環境条件を特定し、特定した環境条件を使用して、処理を実行する。
尚、計算機上の処理に関連する技術として例えば、特許文献2や3が挙げられる。特許文献2には、時刻計測方法に関する技術が開示されている。処理負荷検知部は、計時依頼部に希望の計測時間が入力された時点での汎用OS部における処理負荷を検知する。予想遅延時間取得部は、処理負荷検知部によって検知された処理負荷と同一条件を遅延時間記憶部から検索し、この条件に対応して記憶された遅延時間を予想遅延時間として取得する。遅延時間記憶部は、過去に汎用OS部が時間を計測した際に生じた遅延時間とその時の処理負荷とを対応付けて記憶している。
また、特許文献3には、物理計算機のリソースの仮想計算機に対する割当てを効率的に実行可能な計算機システムに関する技術が開示されている。特許文献3に係る計算機システムは、仮想計算機に保証するリソース量を一度に確保できないと判定する場合には、仮想計算機の起動開始までに、仮想計算機に保証するリソース量を継続的に確保できるか否かを判定し、この判定を肯定すると、確保したリソースの合計量を、仮想計算機に割当てて物理計算機にデプロイするものである。
特開2015−102887号公報 国際公開第2008/126218号 特開2012−058815号公報
ここで、特許文献1には、データ処理速度を高速化するために、入力ファイルから適切な環境条件を特定する精度に改善の余地がある。その理由は、データ処理を実行する実行環境の実運用時には、当該データ処理以外にOS(Operating System)や他のソフトウェアのプロセスが併存しており、データ処理の所要時間は、これらのプロセスによる外的要因の影響を受けるためである。つまり、同一の実行環境において同一の入力ファイルにおけるデータ処理であっても、実行時の実行環境におけるCPU(Central Processing Unit)使用率、ハードディスク使用率又はメモリ使用率などの負荷状態によって、最適な環境条件が異なるためである。
尚、特許文献2及び3は、適切な環境条件を特定するための上述した課題を解決することはできない。
本発明は、このような問題点を解決するためになされたものであり、実行環境の負荷状態に応じて適切な処理設定を提示するための処理設定検索装置、方法及びプログラムを提供することを目的とする。
本発明の第1の態様にかかる処理設定検索装置は、
実行環境において所定の負荷を発生させる負荷発生部と、
前記所定の負荷を発生させた状態での所定の処理設定による処理の試行における所要時間を、当該所定の負荷を示す負荷情報及び当該所定の処理設定と関連付けて記憶する試行情報記憶部と、
前記実行環境における負荷情報を取得する負荷情報取得部と、
前記試行情報記憶部の中から、前記取得した負荷情報に関連付けられた処理設定のうち、前記所要時間が所定の条件を満たすものを検索する検索部と、
を備える。
本発明の第2の態様にかかる処理設定検索方法は、
実行環境において所定の負荷を発生させ、
前記所定の負荷を発生させた状態で所定の処理設定による処理を試行し、
前記試行による所要時間を、当該所定の負荷を示す負荷情報及び当該所定の処理設定と関連付けて試行情報記憶部に記憶し、
前記実行環境における負荷情報を取得し、
前記試行情報記憶部の中から、前記取得した負荷情報に関連付けられた処理設定のうち、前記所要時間が所定の条件を満たすものを検索する。
本発明の第3の態様にかかる処理設定検索プログラムは、
実行環境において所定の負荷を発生させる処理と、
前記所定の負荷を発生させた状態で所定の処理設定による処理を試行する処理と、
前記試行による所要時間を、当該所定の負荷を示す負荷情報及び当該所定の処理設定と関連付けて試行情報記憶部に記憶する処理と、
前記実行環境における負荷情報を取得する処理と、
前記試行情報記憶部の中から、前記取得した負荷情報に関連付けられた処理設定のうち、前記所要時間が所定の条件を満たすものを検索する処理と、
をコンピュータに実行させる。
本発明により、実行環境の負荷状態に応じて適切な処理設定を提示するための処理設定検索装置、方法及びプログラムを提供することができる。
本発明の実施の形態1にかかる処理設定検索装置の構成を示すブロック図である。 本発明の実施の形態1にかかる処理設定検索処理の流れを示すフローチャートである。 本発明の実施の形態2にかかるデータ処理システムの構成を示すブロック図である。 本発明の実施の形態2にかかる試行段階における処理の流れを示すフローチャートである。 本発明の実施の形態2にかかる入力ファイル条件、処理設定及び環境負荷条件の例を示す図である。 本発明の実施の形態2にかかる最速となる処理設定の例を示す図である。 本発明の実施の形態2にかかる実運用段階における処理の流れを示すフローチャートである。 本発明の実施の形態3にかかる実運用段階における処理の流れを示すフローチャートである。
以下では、本発明を適用した具体的な実施の形態について、図面を参照しながら詳細に説明する。各図面において、同一要素には同一の符号が付されており、説明の明確化のため、必要に応じて重複説明は省略する。
<実施の形態1>
図1は、本発明の実施の形態1にかかる処理設定検索装置100の構成を示すブロック図である。処理設定検索装置100は、所定の実行環境における負荷に応じて、所定のプログラム等による処理に最適な処理設定を検索するための情報処理装置である。ここで、実行環境とは、例えば、プロセッサ、メモリ、ハードディスク等のリソースを有する計算機等であるが、これに限定されない。
処理設定検索装置100は、負荷発生部110と、試行情報記憶部120と、負荷情報取得部130と、検索部140とを備える。負荷発生部110は、実行環境において所定の負荷を発生させる。ここで、負荷とは、実行環境におけるリソースの消費度合いを示す指標である。例えば、負荷には、CPUの使用率、メモリの使用率、ハードディスクの使用率等が挙げられるが、これらに限定されない。
試行情報記憶部120は、所定の負荷を発生させた状態での所定の処理設定123による処理の試行における所要時間121を、当該所定の負荷を示す負荷情報122及び当該所定の処理設定123と関連付けて記憶するための記憶領域である。ここで、処理設定123とは、実行環境上で処理を試行又は実行する際に指定する設定情報である。
負荷情報取得部130は、実行環境における負荷情報を取得する。ここで、実行環境における負荷情報とは、実行環境における現在の負荷を示す情報であってもよい。また、負荷情報取得部130は、実行環境において、前記処理の実行による負荷を含まない負荷を負荷情報として取得するものである。負荷情報取得部130により取得される負荷情報は、処理の試行又は実行により発生する負荷が除かれた負荷情報である。
検索部140は、試行情報記憶部120の中から、負荷情報取得部130により取得した負荷情報に関連付けられた処理設定のうち、所要時間が所定の条件を満たすものを検索する。
図2は、本発明の実施の形態1にかかる処理設定検索処理の流れを示すフローチャートである。まず、処理設定検索装置100は、実行環境において所定の負荷を発生させる(S11)。次に、処理設定検索装置100は、所定の負荷を発生させた状態で所定の処理設定による処理を試行する(S12)。そして、処理設定検索装置100は、試行による所要時間を、負荷情報及び処理設定と関連付けて試行情報記憶部120に記憶する(S13)。
その後、処理設定検索装置100は、実行環境における負荷情報を取得する(S14)。そして、処理設定検索装置100は、試行情報記憶部120の中から、取得した負荷情報に関連付けられた処理設定のうち、所要時間が所定の条件を満たすものを検索する(S15)。そのため、処理設定検索装置100は、検索された処理設定により処理を実行することができる。
このように、本発明の実施の形態1では、予め、負荷及び処理設定の複数の組合せについて、実行環境に疑似的に発生させた所定の負荷がかかった状態で所定の処理設定により特定の処理を試行し、各試行において処理に要した所要時間、負荷情報及び処理設定を関連付けて記憶しておくものである。そして、実運用時において、実行環境における負荷情報を取得し、特定の処理の実行時に、取得した負荷情報に関連付けられた処理設定のうち、所定の条件、例えば最短である所要時間に関連付けられた処理設定を検索するものである。つまり、実行環境における実際の負荷状態を加味して、所要時間が最短となる処理設定を検索するため、実行環境の負荷状態に応じて適切な処理設定を提示することができる。
<実施の形態2>
本発明の実施の形態2は、上述した実施の形態1の一実施例である。まず、図3を用いて、本発明の実施の形態2にかかるデータ処理システム200の構成について説明する。データ処理システム200は、処理対象データを記録した入力ファイルを入力し、当該データを対象とするソート処理を行うシステムである。
データ処理システム200は、キーボード等の入力部1と、プログラム制御により動作するデータ処理部2と、情報を記憶する記憶部3と、ディスプレイ装置や印刷装置等の出力部4と、を備える。
入力部1は、試行段階において、ユーザから入力ファイルの条件、環境負荷条件及び処理設定を受け付ける。また、入力部1は、実運用段階において、ユーザから入力ファイルの条件を受け付ける。
データ処理部2は、分析部21と、ソート部22と、情報収集部23と、環境負荷発生部24とを備える。分析部21は、試行段階において、入力部1から試行用の入力ファイルの条件、処理の試行時の環境負荷条件、及び処理設定の組合せを受け付け、環境負荷条件及び処理設定により入力ファイルについてソート処理を試行する。このとき、分析部21は、環境負荷発生部24により環境負荷条件に基づき負荷を発生させた状態で、ソート処理を試行する。特に、分析部21は、複数の条件の組合せのそれぞれについて、個別にソート処理の実行を試行する。分析部21は、試行時のソート処理の所要時間を実測し、ソート処理の所要時間が最速となる処理設定を分析する。分析部21は、分析結果を分析結果記憶部31に保存する。このとき、分析部21は、入力ファイル条件、環境負荷条件、処理設定、及び所要時間の組合せを分析結果記憶部31に保存する。
ソート部22は、実運用段階において、入力部1から実運用時の入力ファイルの条件を受け付け、環境負荷条件を取得し、分析結果記憶部31から入力ファイルの条件及び環境負荷条件を満たし、所要時間が最短となる処理設定を検索する。そして、ソート部22は、検索された処理設定により入力ファイルについてソート処理を実行する。
ここで、ソート部22は、実行環境における現在の負荷情報を取得して環境負荷条件とする。または、ソート部22は、負荷情報記憶部32から負荷履歴情報を取得して、環境負荷条件とする。
情報収集部23は、実運用段階において、ソート処理実行時の実行環境における負荷情報を収集する。ここで、情報収集部23は、実行環境における全体の負荷情報の中からソート処理による負荷を除いたものを収集するものとする。そして、情報収集部23は、実運用段階において、ソート処理実行時の環境負荷条件を負荷情報記憶部32に保存する。言い換えると、実運用段階において、情報収集部23は、検索された処理設定によるソート処理の実行後に、ソート処理の実行時における当該処理以外の負荷を負荷履歴情報として負荷情報記憶部32に記憶する。
環境負荷発生部24は、試行段階において、指定された環境負荷条件に基づいて環境負荷を発生させる。例えば、環境負荷条件が実行環境のコンピュータにおけるメモリである場合、環境負荷発生部24は、指定されたメモリ使用率に応じてメモリを使用するプログラムモジュールである。特に、環境負荷発生部24は、指定された負荷条件のうち実行環境における現在の負荷情報を除外した分を所定の負荷として疑似的に発生させる。例えば、環境負荷発生部24は、メモリ使用率として80%が指定された場合、「80%−現在のメモリ使用率10%=70%」のメモリを使用するように任意の処理をループし続けて70%のメモリを占有させる。そのためこの状態であれば、分析部21は、当該ソート処理は、メモリ使用率が80%の負荷が発生した状態で、ソート処理を試行することができる。尚、「現在のメモリ使用率」とは、ソート処理及び環境負荷発生部24による処理以外のOSその他のプロセスにより使用済みのメモリを示す。
記憶部3は、分析結果記憶部31と、負荷情報記憶部32とを有する。分析結果記憶部31には、入力ファイルの条件と、環境負荷条件と、処理設定と、所要時間とが関連づけて記憶される。分析結果記憶部31には、入力ファイルの条件、環境負荷条件、及び処理設定の組合せのうち少なくとも所要時間が最短のものについて記憶する。尚、分析結果記憶部31には、所要時間によらず試行された全ての条件の組合せを記憶しても構わない。
負荷情報記憶部32は、実運用段階において、ソート処理の実行前に取得された負荷情報を、ソート処理実行後に負荷履歴情報として記憶する。
出力部4は、ソート処理の試行結果、実行結果、検索結果等を出力する。
続いて、本発明の実施の形態にかかる試行段階及び実運用段階における各処理について説明する。図4は、本発明の実施の形態2にかかる試行段階における処理の流れを示すフローチャートである。まず、入力部1は、ユーザから入力ファイルの条件の入力を受け付ける(S21)。また、入力部1は、ユーザから処理設定の入力を受け付ける(S22)。また、入力部1は、ユーザから環境負荷条件の入力を受け付ける(S23)。尚、ステップS21、S22及びS23は、同時又はその順序は入れ替わっても構わない。
ここで、図5は、本発明の実施の形態2にかかる入力ファイル条件、処理設定及び環境負荷条件の例を示す図である。まず、入力ファイルとは、ソート対象のデータが記録されているファイルをいう。また、入力ファイル条件とは、このファイルの特徴を示す要件をいう。入力ファイル条件としては、例えば、入力ファイルの数、サイズ、ファイル形式、レコード数、最大レコード長、平均レコード長、キーの数、同値キーの有無・偏り、データの並び、などがある。尚、入力ファイル条件は、1つの要件だけが指定されてもよく、複数同時に指定されてもよい。
また、処理設定とは、ソート処理を実行する際に指定するコマンドオプションやパラメータ等の設定情報である。処理設定としては、例えば、ディスク上の入力ファイル配置、作業ファイル配置・分割数、出力ファイル配置、使用ディスク、メモリ使用量、ソートアルゴリズム、などがある。また、入力、作業又は出力のファイル配置とは、例えば、ファイルの保存先のディレクトリパス等である。特に、該当のディレクトリが存在するディスクドライブが内蔵か外付けかなどによりソート処理のI/Oに影響があるためである。例えば、入力、作業又は出力のファイル配置のドライブが異なる場合には、それぞれのI/O処理が干渉しないため、処理が速くなり得る。尚、処理設定は、1つの要件だけが指定されてもよく、複数同時に指定されてもよい。
また、環境負荷条件とは、ソート処理が実行されるコンピュータシステムを含む実行環境における負荷を示す条件であり、かつ、ソート処理による負荷を除いた条件である。環境負荷条件としては、例えば、CPU使用率、ハードディスク使用率、メモリ使用率、などがある。尚、環境負荷条件は、1つの要件だけが指定されてもよく、複数同時に指定されてもよい。
図4に戻り説明を続ける。分析部21は、入力部1が受け付けた入力ファイル条件、処理設定、及び環境負荷条件の組合せによりソート処理を試行し、所要時間を実測する(S24)。具体的には、次のように実行できる。まず、分析部21は、受け付けた条件の組合せから複数の試行パターンを生成する。そして、各試行パターンについて任意の順序で負荷の発生及びソート処理の試行が行われる。
例えば、入力ファイル条件として入力ファイルサイズが1GB、処理設定として最大メモリ使用可能量が3GB、環境負荷条件としてメモリ使用率が20%、40%、60%及び80%が入力されたものとする。この場合、分析部21は、以下のような試行パターンを生成する。
入力ファイルサイズ:1GB、メモリ使用量:0GB、メモリ使用率:20%
入力ファイルサイズ:1GB、メモリ使用量:1GB、メモリ使用率:20%
入力ファイルサイズ:1GB、メモリ使用量:2GB、メモリ使用率:20%
入力ファイルサイズ:1GB、メモリ使用量:3GB、メモリ使用率:20%
入力ファイルサイズ:1GB、メモリ使用量:0GB、メモリ使用率:40%
入力ファイルサイズ:1GB、メモリ使用量:1GB、メモリ使用率:40%
・・・
入力ファイルサイズ:1GB、メモリ使用量:3GB、メモリ使用率:80%
そして、環境負荷発生部24は、メモリ使用率20%の負荷を疑似的に発生させる。その上で、分析部21は、1GBの入力ファイルに対してソート処理におけるメモリ使用量を0GB(つまり、外部ファイルを使用)としてソート処理の実行を開始する。そして、分析部21は、当該ソート処理の試行による所要時間を実測し、試行パターンと所要時間とを関連付けて分析結果記憶部31に保存する。
次に、環境負荷発生部24による疑似的な負荷をメモリ使用率20%に維持したまま、分析部21は、1GBの入力ファイルに対してソート処理におけるメモリ使用量を1GBとしてソート処理の実行を開始する。以後同様に処理し、「入力ファイルサイズ:1GB、メモリ使用量:3GB、メモリ使用率:20%」の試行パターンによる試行が終了した後、環境負荷発生部24は、メモリ使用率40%の負荷を疑似的に発生させる。そして、同様に、メモリ使用量を変化させてソート処理の試行時の所要時間を実測し、それぞれの試行パターンと所要時間とを関連付けて分析結果記憶部31に保存する。メモリ使用率60%及び80%の場合についても同様に、処理を行う。
その後、分析部21は、分析結果記憶部31を参照し、入力ファイル条件と環境負荷条件との組合せにおける複数の処理設定のうち、所要時間が最速となる処理設定を特定し、分析結果として分析結果記憶部31に保存する(S25)。図6は、本発明の実施の形態2にかかる最速となる処理設定の例を示す図である。
続いて、図7は、本発明の実施の形態2にかかる実運用段階における処理の流れを示すフローチャートである。まず、入力部1は、ユーザから入力ファイルの条件の入力を受け付ける(S31)。尚、実運用段階では、入力部1は、ユーザからの入力に限定されず、任意の処理プログラムから、ソート処理要の入力ファイルの条件の入力を受け付けても構わない。
次に、ソート部22は、実行環境における現在の負荷情報を環境負荷条件として取得する(S32)。尚、この時点では、ソート処理実行前であるため、負荷情報には、ソート処理による負荷が含まれていないことになる。また、実運用段階の2回目以降であれば、ソート部22は、負荷情報記憶部32から負荷履歴情報を取得して、環境負荷条件としてもよい。
続いて、ソート部22は、入力部1が受け付けた入力ファイル条件と取得された環境負荷条件とを検索キーとして分析結果記憶部31の中を検索し、該当する処理設定のうち所要時間が最速となるものを特定する(S33)。そして、ソート部22は、入力ファイルについて、検索された処理設定によりソート処理を実行する(S34)。
その後、情報収集部23は、ソート部22がソート処理の実行開始時に取得した負荷情報を負荷履歴情報として負荷情報記憶部32に保存する(S35)。
例えば、入力部1が入力ファイル条件としてサイズ=2GB及び入力ファイル数=2を受け付け、実行環境における現在の負荷情報がメモリ使用率=80%であった場合、図6の例において、ソート部22は、分析結果記憶部31から処理設定としてメモリ使用量=3GBを検索できる。ここで、図6では、同一の入力ファイル条件において負荷情報が60%以下の場合には、メモリ使用量=4GBが最速とされているが、負荷情報が80%には、これらの場合よりも低いメモリ使用量により最速となることが示されている。通常は、ソート処理に使用するメモリが多いほど処理速度は速くなるが、ソート処理実行時の他のプロセスによるメモリ使用率が高い場合には、スワップが発生し、かえってソートが著しく遅くなる。本実施の形態では、試行段階で実行環境における特性に即して、入力ファイル条件及び環境負荷条件の組合せごとにおける最適な処理設定を導き出しているため、実運用段階における実際の負荷情報に応じた最適な処理設定を検索することができる。そのため、実運用段階におけるソート処理を効率的に実行できる。すなわち、本実施の形態により、実運用段階において、各種プロセスやネットワーク等により不確定に変化する負荷にも対応し、自動的に最速な処理設定を適用することができる。
<実施の形態3>
本発明の実施の形態3は、上述した実施の形態2の変形例である。本発明の実施の形態3は、実運用段階におけるソート部22による現在の負荷情報の取得を複数回行うものである。尚、本発明の実施の形態3にかかるデータ処理システムの構成は、上述したデータ処理システム200と同等であるため、図示及び重複する説明は省略する。
図8は、本発明の実施の形態3にかかる実運用段階における処理の流れを示すフローチャートである。ステップS31からS34は、図7と同様であり説明を省略する。つまり、ステップS32においてソート部22は、ソート処理実行開始前の実行環境における現在の負荷情報(第1の負荷情報)を取得している。例えば、第1の負荷情報がメモリ使用率=80%であるものとする。
その後、ステップS34によるソート処理の実行後に、ソート部22は、再度、実行環境における現在の負荷情報(第2の負荷情報)を取得する(S35a)。ここで、第2の負荷情報がメモリ使用率=40%であるものとする。つまり、ソート部22は、検索された処理設定によるソート処理の実行前後の複数の負荷情報を実行環境から取得する。
そして、情報収集部23は、第1及び第2の負荷情報を負荷情報記憶部32に保存する(S35b)。そして、このとき、情報収集部23は、複数の負荷情報に所定の統計処理を行って負荷履歴情報を更新することが望ましい。所定の統計処理とは、例えば、複数の負荷情報の平均値を算出する処理等である。尚、情報収集部23は、過去数回の負荷情報に対する平均等の演算処理を行っても構わない。
例えば、上記の例場合、情報収集部23は、80%と40%のメモリ使用率の平均を算出し、60%を負荷履歴情報として負荷情報記憶部32に保存する。これにより、次回以降、ソート部22は、ステップS32において負荷情報記憶部32からメモリ使用率60%を環境負荷条件として取得できる。これは、例えば、前回のソート処理開始時に、偶然、メモリ使用率が極端に高かった場合や、ソート処理実行中に他のプロセスによりメモリ使用率が変動した場合等には、1回の負荷情報の取得だけでは正確な履歴といえないためである。特に、単に、現在の負荷だけでは、実運用中の実行環境の負荷の変動には対応できず、検索条件としての負荷情報の精度が低くなるおそれがある。そこで、ソート処理の実行前後に複数回、取得した負荷情報の平均値により、その誤差を平準化し、検索条件としての負荷情報の精度を向上させ、結果として、負荷情報に応じた処理設定の検索精度を向上させることができる。つまり、実行環境の負荷状態に応じて適切な処理設定を提示することができる。
尚、ソート部22は、ステップS34と並行して、つまりソート処理の実行終了中に、実行環境における現在の負荷情報を第3の負荷情報として取得してもよい。このとき、ステップS35bにおいて、情報収集部23は、検索された処理設定によるソート処理の実行後に、ソート処理の実行以外の負荷を負荷履歴情報として負荷情報記憶部32に保存する。つまり、ソート処理実行中の負荷には、ソート処理自体の負荷も含まれるため、情報収集部23は、負荷情報記憶部32に保存時までに取得した負荷情報からソート処理自体の負荷を除く。これにより、負荷の誤差の平準化の精度をさらに向上できる。
尚、本実施の形態は、少なくとも第1、第2及び第3の負荷情報のいずれか2以上を用いた統計処理により負荷履歴情報を算出すればよい。
<その他の実施の形態>
上述した本発明の各実施の形態により、ユーザによって異なるデータ特性や実行環境において、より速いソートを含む任意の処理を実現するような設定やオプション指定を自動で見つけ出し、高速で実行できる。
また、本発明の各実施の形態は、ソートの必要なあらゆるバッチ処理で利用可能である。さらに、ソート処理だけでなく、マージなどあらゆるプログラムの高速化にも同様の性能チューンが可能であり、利用可能である。
尚、試行段階では、ソート処理以外の他のプロセスによる影響は少ないものの、他のプロセスを完全に制御できるとは限らない。そのため、実行環境におけるOSや常駐プログラム、外部からのアクセス等に伴う負荷の変動が起こり得る。その場合、ステップS23により指定された負荷条件が維持できなくなる。
そこで、負荷発生部24は、ソート処理の試行中に、当該ソート処理以外のプロセスによる負荷の変動に応じて、疑似的に発生させた負荷を調整するとよい。これにより、試行時の負荷条件を安定させることができる。
尚、上述したように、ソート処理に対してメモリの割り当てが多すぎるとスワップが発生し、却ってソートが遅くなる場合がある。そのため、本実施の形態では、予め試行によりメモリの負荷に応じた適切な割り当てメモリを求めることで、試行情報の精度を向上できる。この点は、処理設定がソート処理の実行時に割り当てるメモリ量であり、負荷情報がソート処理以外のプロセスにより使用されるメモリ量である場合には、顕著な効果といえる。
なお、本発明は上記実施の形態に限られたものではなく、趣旨を逸脱しない範囲で適宜変更することが可能である。
また、上述の実施の形態では、本発明をハードウェアの構成として説明したが、本発明は、これに限定されるものではない。本発明は、任意の処理を、CPU(Central Processing Unit)にコンピュータプログラムを実行させることにより実現することも可能である。
上述の例において、プログラムは、様々なタイプの非一時的なコンピュータ可読媒体(non-transitory computer readable medium)を用いて格納され、コンピュータに供給することができる。非一時的なコンピュータ可読媒体は、様々なタイプの実体のある記録媒体(tangible storage medium)を含む。非一時的なコンピュータ可読媒体の例は、磁気記録媒体(例えばフレキシブルディスク、磁気テープ、ハードディスクドライブ)、光磁気記録媒体(例えば光磁気ディスク)、CD−ROM(Read Only Memory)、CD−R、CD−R/W、DVD(Digital Versatile Disc)、BD(Blu-ray(登録商標) Disc)、半導体メモリ(例えば、マスクROM、PROM(Programmable ROM)、EPROM(Erasable PROM)、フラッシュROM、RAM(Random Access Memory))を含む。また、プログラムは、様々なタイプの一時的なコンピュータ可読媒体(transitory computer readable medium)によってコンピュータに供給されてもよい。一時的なコンピュータ可読媒体の例は、電気信号、光信号、及び電磁波を含む。一時的なコンピュータ可読媒体は、電線及び光ファイバ等の有線通信路、又は無線通信路を介して、プログラムをコンピュータに供給できる。
上記の実施形態の一部又は全部は、以下の付記のようにも記載され得るが、以下には限られない。
(付記1)
実行環境において所定の負荷を発生させる負荷発生部と、
前記所定の負荷を発生させた状態での所定の処理設定による処理の試行における所要時間を、当該所定の負荷を示す負荷情報及び当該所定の処理設定と関連付けて記憶する試行情報記憶部と、
前記実行環境における負荷情報を取得する負荷情報取得部と、
前記試行情報記憶部の中から、前記取得した負荷情報に関連付けられた処理設定のうち、前記所要時間が所定の条件を満たすものを検索する検索部と、
を備える処理設定検索装置。
(付記2)
前記負荷情報取得部は、
前記実行環境において、前記処理の実行による負荷を含まない負荷を前記負荷情報として取得する
付記1に記載の処理設定検索装置。
(付記3)
前記検索された処理設定による前記処理の実行後に、前記処理の実行時における当該処理以外の負荷を負荷履歴情報として記憶する負荷情報記憶部をさらに備え、
前記負荷情報取得部は、前記検索時に、前記負荷情報記憶部内の前記負荷履歴情報を前記負荷情報として取得する
付記1又は2に記載の処理設定検索装置。
(付記4)
前記負荷情報取得部は、
前記検索された処理設定による前記処理の実行前後の複数の前記負荷情報を前記実行環境から取得し、
前記負荷情報記憶部は、
前記取得された複数の前記負荷情報に所定の統計処理を行って前記負荷履歴情報を更新する
付記3に記載の処理設定検索装置。
(付記5)
前記負荷発生部は、指定された負荷条件のうち前記実行環境における現在の負荷情報を除外した分を前記所定の負荷として疑似的に発生させる
付記1乃至4のいずれか1項に記載の処理設定検索装置。
(付記6)
前記負荷発生部は、前記処理の試行中に、当該処理以外のプロセスによる負荷の変動に応じて、前記疑似的に発生させた負荷を調整する
付記5に記載の処理設定検索装置。
(付記7)
前記処理設定は、前記処理の実行時に割り当てるメモリ量であり、
前記負荷は、前記処理以外のプロセスにより使用されるメモリ量である
付記1乃至6のいずれか1項に記載の処理設定検索装置。
(付記8)
実行環境において所定の負荷を発生させ、
前記所定の負荷を発生させた状態で所定の処理設定による処理を試行し、
前記試行による所要時間を、当該所定の負荷を示す負荷情報及び当該所定の処理設定と関連付けて試行情報記憶部に記憶し、
前記実行環境における負荷情報を取得し、
前記試行情報記憶部の中から、前記取得した負荷情報に関連付けられた処理設定のうち、前記所要時間が所定の条件を満たすものを検索する
処理設定検索方法。
(付記9)
実行環境において所定の負荷を発生させる処理と、
前記所定の負荷を発生させた状態で所定の処理設定による処理を試行する処理と、
前記試行による所要時間を、当該所定の負荷を示す負荷情報及び当該所定の処理設定と関連付けて試行情報記憶部に記憶する処理と、
前記実行環境における負荷情報を取得する処理と、
前記試行情報記憶部の中から、前記取得した負荷情報に関連付けられた処理設定のうち、前記所要時間が所定の条件を満たすものを検索する処理と、
をコンピュータに実行させる処理設定検索プログラム。
100 処理設定検索装置
110 負荷発生部
120 試行情報記憶部
121 所要時間
122 負荷情報
123 処理設定
130 負荷情報取得部
140 検索部
200 データ処理システム
1 入力部
2 データ処理部
21 分析部
22 ソート部
23 情報収集部
24 環境負荷発生部
3 記憶部
31 分析結果記憶部
32 負荷情報記憶部
4 出力部

Claims (9)

  1. 実行環境において所定の負荷を発生させる負荷発生部と、
    前記所定の負荷を発生させた状態での所定の処理設定による処理の試行における所要時間を、当該所定の負荷を示す負荷情報及び当該所定の処理設定と関連付けて記憶する試行情報記憶部と、
    前記実行環境における負荷情報を取得する負荷情報取得部と、
    前記試行情報記憶部の中から、前記取得した負荷情報に関連付けられた処理設定のうち、前記所要時間が所定の条件を満たすものを検索する検索部と、
    を備える処理設定検索装置。
  2. 前記負荷情報取得部は、
    前記実行環境において、前記処理の実行による負荷を含まない負荷を前記負荷情報として取得する
    請求項1に記載の処理設定検索装置。
  3. 前記検索された処理設定による前記処理の実行後に、前記処理の実行時における当該処理以外の負荷を負荷履歴情報として記憶する負荷情報記憶部をさらに備え、
    前記負荷情報取得部は、前記検索部の2回目以降の検索時に、前記負荷情報記憶部内の前記負荷履歴情報を前記負荷情報として取得する
    請求項1又は2に記載の処理設定検索装置。
  4. 前記負荷情報取得部は、
    前記検索された処理設定による前記処理の実行前後の複数の前記負荷情報を前記実行環境から取得し、
    前記負荷情報記憶部は、
    前記取得された複数の前記負荷情報に所定の統計処理を行って前記負荷履歴情報を更新する
    請求項3に記載の処理設定検索装置。
  5. 前記負荷発生部は、指定された負荷条件のうち前記実行環境における現在の負荷情報を除外した分を前記所定の負荷として疑似的に発生させる
    請求項1乃至4のいずれか1項に記載の処理設定検索装置。
  6. 前記負荷発生部は、前記処理の試行中に、当該処理以外のプロセスによる負荷の変動に応じて、前記疑似的に発生させた負荷を調整する
    請求項5に記載の処理設定検索装置。
  7. 前記処理設定は、前記処理の実行時に割り当てるメモリ量であり、
    前記負荷は、前記処理以外のプロセスにより使用されるメモリ量である
    請求項1乃至6のいずれか1項に記載の処理設定検索装置。
  8. 実行環境において所定の負荷を発生させ、
    前記所定の負荷を発生させた状態で所定の処理設定による処理を試行し、
    前記試行による所要時間を、当該所定の負荷を示す負荷情報及び当該所定の処理設定と関連付けて試行情報記憶部に記憶し、
    前記実行環境における負荷情報を取得し、
    前記試行情報記憶部の中から、前記取得した負荷情報に関連付けられた処理設定のうち、前記所要時間が所定の条件を満たすものを検索する
    処理設定検索方法。
  9. 実行環境において所定の負荷を発生させる処理と、
    前記所定の負荷を発生させた状態で所定の処理設定による処理を試行する処理と、
    前記試行による所要時間を、当該所定の負荷を示す負荷情報及び当該所定の処理設定と関連付けて試行情報記憶部に記憶する処理と、
    前記実行環境における負荷情報を取得する処理と、
    前記試行情報記憶部の中から、前記取得した負荷情報に関連付けられた処理設定のうち、前記所要時間が所定の条件を満たすものを検索する処理と、
    をコンピュータに実行させる処理設定検索プログラム。
JP2015193035A 2015-09-30 2015-09-30 処理設定検索装置、方法及びプログラム Active JP6524875B2 (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2015193035A JP6524875B2 (ja) 2015-09-30 2015-09-30 処理設定検索装置、方法及びプログラム

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2015193035A JP6524875B2 (ja) 2015-09-30 2015-09-30 処理設定検索装置、方法及びプログラム

Publications (2)

Publication Number Publication Date
JP2017068568A JP2017068568A (ja) 2017-04-06
JP6524875B2 true JP6524875B2 (ja) 2019-06-05

Family

ID=58494807

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2015193035A Active JP6524875B2 (ja) 2015-09-30 2015-09-30 処理設定検索装置、方法及びプログラム

Country Status (1)

Country Link
JP (1) JP6524875B2 (ja)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP7131005B2 (ja) * 2018-03-22 2022-09-06 日本電気株式会社 情報処理装置、情報処理方法、及び情報処理プログラム

Family Cites Families (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2000066907A (ja) * 1998-08-21 2000-03-03 Matsushita Electric Ind Co Ltd ワーストケース試験機能付きリアルタイムos
JP5967091B2 (ja) * 2011-08-04 2016-08-10 日本電気株式会社 システムパラメータ設定支援システム、システムパラメータ設定支援装置のデータ処理方法、およびプログラム
JP6287101B2 (ja) * 2013-11-21 2018-03-07 日本電気株式会社 データ処理システム、データ処理方法及びプログラム

Also Published As

Publication number Publication date
JP2017068568A (ja) 2017-04-06

Similar Documents

Publication Publication Date Title
US11055360B2 (en) Data write-in method and apparatus in a distributed file system
JP5774742B2 (ja) データ重複除去方法及び装置
CN108573355B (zh) 模型更新后替换运行的方法、装置、及业务服务器
CN109582485B (zh) 一种配置变更异常检测方法及装置
CN109343793B (zh) 数据迁移方法及装置
JP2009116380A (ja) 仮想サーバ移動制御装置、仮想サーバ移動制御方法およびプログラム
EP3640813A1 (en) Random walk method, apparatus and device, and cluster-based random walk method, apparatus and device
US20170329645A1 (en) Apparatus and method for adding nodes to a computing cluster
CN109144715B (zh) 一种资源优化与更新的方法、服务器及设备
JP6524875B2 (ja) 処理設定検索装置、方法及びプログラム
CN106570091B (zh) 一种增强分布式集群文件系统的高可用性的方法
JP2018018175A (ja) 仮想マシン制御プログラム、仮想マシン制御方法および仮想マシン制御装置
JP2014229235A (ja) ストレージ制御装置、ストレージ制御方法およびストレージ制御プログラム
US10394615B2 (en) Information processing apparatus and job management method
US20150095897A1 (en) Method and apparatus for converting programs
US9658965B2 (en) Cache utilization to efficiently manage a storage system
CN108804625B (zh) 一种lsm树的优化方法、装置及计算机设备
US20190324428A1 (en) State identification device, state identification method and mechanical device
US10089151B2 (en) Apparatus, method, and program medium for parallel-processing parameter determination
JP6310532B1 (ja) 生成装置、生成方法、及び生成プログラム
JP6287101B2 (ja) データ処理システム、データ処理方法及びプログラム
KR101507355B1 (ko) 벡터 분류 장치 및 방법
JP7131005B2 (ja) 情報処理装置、情報処理方法、及び情報処理プログラム
JP2016218847A (ja) 逐次クラスタリング装置、方法、及びプログラム
JP2021018711A (ja) タスク実行管理装置、タスク実行管理方法、および、タスク実行管理プログラム

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20180806

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20190111

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20190205

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20190320

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: 20190409

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20190422

R150 Certificate of patent or registration of utility model

Ref document number: 6524875

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150