JP2004234181A - ダンプ採取方式、ダンプ採取方法、及びプログラム - Google Patents
ダンプ採取方式、ダンプ採取方法、及びプログラム Download PDFInfo
- Publication number
- JP2004234181A JP2004234181A JP2003020114A JP2003020114A JP2004234181A JP 2004234181 A JP2004234181 A JP 2004234181A JP 2003020114 A JP2003020114 A JP 2003020114A JP 2003020114 A JP2003020114 A JP 2003020114A JP 2004234181 A JP2004234181 A JP 2004234181A
- Authority
- JP
- Japan
- Prior art keywords
- block
- dump
- unit
- compression
- output
- 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.)
- Pending
Links
Images
Landscapes
- Debugging And Monitoring (AREA)
Abstract
【解決手段】ダンプ対象のデータを複数に分割したブロック11の単位でダンプデータを記録しブロック11毎にブロックサイズや格納位置を含むブロック管理表24を記録するダンプファイル31と、ダンプの実行を管理するブロック管理部21と、ブロック管理部21により起動され指定されたブロック11の圧縮処理を実行し実行後にブロック管理表24のブロックサイズを登録する圧縮部22と、ブロック管理部21により起動され圧縮部22が圧縮したブロックをブロック11毎にブロック管理部21で指定されたダンプファイル31へ出力するとともにブロック管理表24の格納位置を登録した後にブロック管理表24を指定されたダンプファイル31へ出力する出力部23とを有する。
【選択図】 図1
Description
【発明の属する技術分野】
本発明はダンプ採取方式、ダンプ採取方法、及びプログラムに関し、特にダンプの採取時間を短縮させる技術に関する。
【0002】
【従来の技術】
従来、障害が発生した際にその障害原因を解明するために、障害発生時点のデータを記録しておき、後で専門の知識を有する者により記録した情報により障害原因を解析できるような技術が知られている。障害発生時点にメモリ上に有る障害解析に有効な情報はダンプという処理により磁気ディスク等の不揮発性の外部記憶装置等に記録される。近年、システムの大規模化、メモリ容量の増大によって、ダンプするデータ容量が増大し、ダンプ採取時間が大きくなる傾向があり、ダンプするデータ容量の削減とダンプ採取時間の短縮が必要となってきている。
【0003】
特開平9−171476号公報によれば、ダンプすべきメモリデータをページ単位に分割して圧縮処理し、その分割単位で磁気ディスクに出力して記録することにより、ダンプデータを格納する磁気ディスクの容量を削減している。また、圧縮されたデータの復元が分割単位に実行できるので、全ての復元を待たずに必要な部分から順次復元を行ってより早く必要なデータを取得し解析を始めることができる。
【0004】
【特許文献1】
特開平9−171476号公報
【0005】
【発明が解決しようとする課題】
上述の従来技術では、圧縮処理によりダンプにより記録するデータ容量を削減することができ、解析の際の効率を改善できるが、ダンプの採取時間を短縮することができないという問題がある。
【0006】
本発明の目的は、ダンプ対象のデータを複数のブロックに分割し、圧縮処理と外部記憶装置への出力処理を調整しながら並列処理することによりダンプ採取時間を短縮したダンプ採取方式、ダンプ採取方法、及びプログラムを提供することにある。
【0007】
【課題を解決するための手段】
本発明の第1のダンプ採取方式は、ダンプ対象のデータを複数に分割したブロック単位でダンプデータを記録する1以上のダンプファイルと、ダンプの実行を管理するブロック管理部と、ブロック管理部により起動され指定されたブロックの圧縮処理を実行する圧縮部と、ブロック管理部により起動され圧縮部が圧縮したブロックをブロック毎にブロック管理部で指定されたダンプファイルへ出力する出力部とを有し、前記圧縮部又は前記出力部は少なくとも一方が複数起動されることを特徴とする。
【0008】
本発明の第2のダンプ採取方式は、ダンプ対象のデータを複数に分割したブロック単位でダンプデータを記録する1以上のダンプファイルと、ダンプの実行を管理するブロック管理部とを有するダンプ採取方式であって、
前記ブロック管理部は、ブロック毎に圧縮処理を順次実行する圧縮部を複数起動し、圧縮部で圧縮されたブロックをブロック毎にダンプファイルへ出力する出力部を複数起動し、圧縮部と出力部の動作中に圧縮部の進み具合と出力部の進み具合を比較して遅れている方の進み具合を早めるように調整することを特徴とする。
【0009】
本発明の第3のダンプ採取方式は、ダンプ対象のデータを複数に分割したブロック単位でダンプデータを記録するとともにブロック毎にブロックサイズや格納位置を含む属性情報を含むブロック管理表を記録する1以上のダンプファイルと、
ダンプの実行を管理するブロック管理部と、ブロック管理部により起動され指定されたブロックの圧縮処理を実行し実行後にブロック管理表のブロックサイズを登録する圧縮部と、ブロック管理部により起動され圧縮部が圧縮したブロックをブロック毎にブロック管理部で指定されたダンプファイルへ出力するともにブロック管理表の格納位置を登録した後にブロック管理表を指定されたダンプファイルへ出力する出力部とを有することを特徴とする。
【0010】
本発明の第4のダンプ採取方式は、ダンプ対象のデータを複数に分割したブロック単位でダンプデータを記録するとともにブロック毎のブロックサイズや格納位置を含む属性情報を含むブロック管理表を記録する1以上のダンプファイルと、ダンプの実行を管理するブロック管理部とを有するダンプ採取方式であって、前記ブロック管理部は、ブロック毎に圧縮処理を順次実行し実行後にブロック管理表にブロックサイズを登録する圧縮部を複数起動し、圧縮部で圧縮されたブロックをブロック毎にダンプファイルへ出力するとともにブロック管理表の格納位置を登録した後にブロック管理表を指定されたダンプファイルへ出力する出力部を複数起動し、圧縮部と出力部の動作中に圧縮部の進み具合と出力部の進み具合を比較して遅れている方の進み具合を早めるように調整することを特徴とする。
【0011】
本発明の第5のダンプ採取方式は、本発明の第2又は第4のダンプ採取方式において、前記ブロック管理部は、前記圧縮部の進み具合が速い場合は起動されている前記圧縮部の少なくとも1つを中断し、前記出力部の進み具合が速い場合は起動されている前記出力部の少なくとも1つを中断するように調整することを特徴とする。
【0012】
本発明の第6のダンプ採取方式は、本発明の第2又は第4のダンプ採取方式において、前記ブロック管理部は、前記圧縮部の進み具合が速い場合は中断中の前記出力部があればそれを再開し中断中の前記出力部がなければ新たな前記出力部を起動し、前記出力部の進み具合が速い場合は中断中の前記圧縮部があればそれを再開し中断中の前記圧縮部がなければ前記圧縮部を新たに起動するように調整することを特徴とする。
【0013】
本発明の第7のダンプ採取方式は、本発明の第3又は第4のダンプ採取方式において、前記ダンプファイルは2以上あり、前記ブロック管理部は全てのブロックのダンプファイルへの出力が終了した後に前記ブロック管理表を全てのダンプファイルに出力することを特徴とする。
【0014】
本発明の第1のダンプ採取方法は、ダンプ対象のデータを複数に分割したブロック毎に順次圧縮処理を実行する圧縮部と、圧縮部が圧縮したブロックをブロック毎に指定されたダンプファイルへ順次出力する出力部のうち、少なくとも一方を複数起動してダンプを実行する手順を有することを特徴とする。
【0015】
本発明の第2のダンプ採取方法は、ダンプ対象のデータを複数に分割したブロック毎に圧縮処理を順次実行する圧縮部を複数起動し、圧縮部で圧縮されたブロックをブロック単位でダンプデータを記録するダンプファイルへ出力する出力部を複数起動し、圧縮部と出力部の動作中に圧縮部の進み具合と出力部の進み具合を比較して遅れている方の進み具合を早めるように調整する手順を有することを特徴とする。
【0016】
本発明の第3のダンプ採取方法は、ダンプ対象のデータを複数に分割したブロック毎に圧縮処理を順次実行し実行後にブロック毎にブロックサイズや格納位置を含む属性情報を含むブロック管理表にブロックサイズを登録する圧縮部と、圧縮部で圧縮されたブロックをブロック単位でダンプデータを記録するダンプファイルへ出力するとともにブロック管理表の格納位置を登録した後にブロック管理表を指定されたダンプファイルへ出力する出力部のうち、少なくとも一方を複数起動してダンプを実行する手順を有することを特徴とする。
【0017】
本発明の第4のダンプ採取方法は、ダンプ対象のデータを複数に分割したブロック毎に圧縮処理を順次実行し実行後にブロック毎にブロックサイズや格納位置を含む属性情報を含むブロック管理表にブロックサイズを登録する圧縮部を複数起動し、圧縮部で圧縮されたブロックをブロック単位でダンプデータを記録するダンプファイルへ出力するとともにブロック管理表の格納位置を登録した後にブロック管理表を指定されたダンプファイルへ出力する出力部を複数起動し、圧縮部と出力部の動作中に圧縮部の進み具合と出力部の進み具合を比較して遅れている方の進み具合を早めるように調整する手順を有することを特徴とする。
【0018】
本発明の第5のダンプ採取方法は、本発明の第2又は第4のダンプ採取方法において、前記圧縮部の進み具合が速い場合は起動されている前記圧縮部の少なくとも1つを中断し、前記出力部の進み具合が速い場合は起動されている前記出力部の少なくとも1つを中断するように調整する手順を有することを特徴とする。
【0019】
本発明の第6のダンプ採取方法は、本発明の第2又は第4のダンプ採取方法において、前記圧縮部の進み具合が速い場合は中断中の前記出力部があればそれを再開し中断中の前記出力部がなければ新たな前記出力部を起動し、前記出力部の進み具合が速い場合は中断中の前記圧縮部があればそれを再開し中断中の前記圧縮部がなければ前記圧縮部を新たに起動するように調整する手順を有することを特徴とする。
【0020】
本発明の第7のダンプ採取方法は、本発明の第3又は第4のダンプ採取方法において、前記ダンプファイルは2以上あり、全てのブロックのダンプファイルへの出力が終了した後に前記ブロック管理表を全てのダンプファイルに出力する手順を有することを特徴とする。
【0021】
本発明の第1のプログラムは、ダンプ対象のデータを複数に分割したブロック毎に順次圧縮処理を実行する圧縮部と、圧縮部が圧縮したブロックをブロック毎に指定されたダンプファイルへ順次出力する出力部のうち、少なくとも一方を複数起動してダンプを実行する手順をコンピュータに実行させることを特徴とする。
【0022】
本発明の第2のプログラムは、ダンプ対象のデータを複数に分割したブロック毎に圧縮処理を順次実行する圧縮部を複数起動する手順と、圧縮部で圧縮されたブロックをブロック単位でダンプデータを記録するダンプファイルへ出力する出力部を複数起動する手順と、圧縮部と出力部の動作中に圧縮部の進み具合と出力部の進み具合を比較して遅れている方の進み具合を早めるように調整する手順とをコンピュータに実行させることを特徴とする。
【0023】
本発明の第3のプログラムは、ダンプ対象のデータを複数に分割したブロック毎に圧縮処理を順次実行し実行後にブロック毎にブロックサイズや格納位置を含む属性情報を含むブロック管理表にブロックサイズを登録する圧縮部と、圧縮部で圧縮されたブロックをブロック単位でダンプデータを記録するダンプファイルへ出力するとともにブロック管理表の格納位置を登録した後にブロック管理表を指定されたダンプファイルへ出力する出力部のうち、少なくとも一方を複数起動してダンプを実行する手順をコンピュータに実行させることを特徴とする。
【0024】
本発明の第4のプログラムは、ダンプ対象のデータを複数に分割したブロック毎に圧縮処理を順次実行し実行後にブロック毎にブロックサイズや格納位置を含む属性情報を含むブロック管理表にブロックサイズを登録する圧縮部を複数起動する手順と、圧縮部で圧縮されたブロックをブロック単位でダンプデータを記録するダンプファイルへ出力するとともにブロック管理表の格納位置を登録した後にブロック管理表を指定されたダンプファイルへ出力する出力部を複数起動する手順と、圧縮部と出力部の動作中に圧縮部の進み具合と出力部の進み具合を比較して遅れている方の進み具合を早めるように調整する手順とをコンピュータに実行させることを特徴とする。
【0025】
本発明の第5のプログラムは、本発明の第2又は第4のプログラムにおいて、前記圧縮部の進み具合が速い場合は起動されている前記圧縮部の少なくとも1つを中断し、前記出力部の進み具合が速い場合は起動されている前記出力部の少なくとも1つを中断するように調整する手順をコンピュータに実行させることを特徴とする。
【0026】
本発明の第6のプログラムは、本発明の第2又は第4のプログラムにおいて、前記圧縮部の進み具合が速い場合は中断中の前記出力部があればそれを再開し中断中の前記出力部がなければ新たな前記出力部を起動し、前記出力部の進み具合が速い場合は中断中の前記圧縮部があればそれを再開し中断中の前記圧縮部がなければ前記圧縮部を新たに起動するように調整する手順をコンピュータに実行させることを特徴とする。
【0027】
本発明の第7のプログラムは、本発明の第3又は第4のプログラムにおいて、前記ダンプファイルは2以上あり、全てのブロックのダンプファイルへの出力が終了した後に前記ブロック管理表を全てのダンプファイルに出力する手順をコンピュータに実行させることを特徴とする。
【0028】
【発明の実施の形態】
次に、本発明の実施の形態について図面を参照して詳細に説明する。図1は本発明の実施の形態の構成を示したブロック図である。図1を参照すると、本発明の構成は、主記憶装置10と、主記憶内のダンプ対象領域をブロック11に分割して圧縮し外部記憶装置30へダンプ出力を行うダンプ採取部20と、ダンプ出力を記録するダンプファイル31を含む外部記憶装置30とを含んでいる。
【0029】
主記憶装置10は、プログラムやデータを記憶する装置であり、障害発生の際に原因を究明するために有効なデータでダンプ対象となるデータを含む。図1ではダンプ対象のデータは8つのブロック11に分割され、ブロック11−1、ブロック11−2、ブロック11−3、及びブロック11−8が表示されているが、分割数は8に限定するものではなく特に限定しない。なお、図1では主記憶装置10のダンプ対象のデータは作業域12を除く全てとしているが、主記憶装置10の予め決められた部分的な領域を1以上集めた領域をダンプ対象としこれを分割するようにしてもよく、また、各分割されたブロックの大きさは同じとしてもよいし同じでなくてもよい。また、主記憶装置10はダンプ採取部20が動作する際はダンプ採取部20に含まれるプログラムやデータを含む。
【0030】
ダンプ採取部20は、ダンプが起動された際に実行されるプログラムや作成される管理データを含んだものであり、ブロック11毎のダンプ情報を管理するブロック管理表24と、ブロック11単位に圧縮・出力の実行とブロック管理表24とを管理するブロック管理部21と、ブロック11の圧縮処理をする圧縮部22と、圧縮されたブロック11のデータを外部記憶装置30内のダンプファイル31に出力する出力部23とを含む。図1では、圧縮部22は圧縮部22−1、圧縮部22−2、圧縮部22−3と3つ示し、出力部23は出力部23−1、出力部23−2と2つ示しているが、これらは特に数を限定するものではなく、また実行状況に応じて変化する。
【0031】
ブロック管理表24はダンプ採取部20が動作する際に主記憶装置10上又は専用の記憶手段に置かれ、ブロック管理部21と圧縮部22と出力部23とは図示しないがCPU上で実行されるプログラムであり、実行時には主記憶装置10又は専用の記憶手段に置かれるが、どちらに置かれてもよく、以降の説明では主記憶装置10に置かれるものとする。
【0032】
図2はブロック管理表24に登録される内容の一例としてブロック11−1の内容を示している。ブロック管理表24はブロック11単位に登録され、登録内容としてブロック番号、ブロックサイズ、出力先のファイル名、ファイル内の格納位置、圧縮情報等の情報を含んでいる。圧縮情報は圧縮しないでダンプする特別な指示があった場合のために、出力データが圧縮されているか否かを示す情報である。
【0033】
外部記憶装置30は、磁気ディスク装置や複数の磁気ディスク装置を組み合わせたアレイディスク装置やDVD装置のような光ディスク装置からなり、ブロック管理表24とブロック11を格納するダンプファイル31を含む。図1ではダンプファイル31−1とダンプファイル31−2とがそれぞれ別の磁気ディスク装置に置かれているが、ダンプファイル31の数や配置を限定するものではなく、磁気ディスク装置へのデータ転送時間・書込時間をより短縮できるようにダンプファイル31を割り振ればよい。
【0034】
図3は、ダンプファイル31−1とダンプファイル31−1のダンプ終了後の内容を示した図であり、それぞれブロック管理表24と、割り振られたブロック11の圧縮後のデータを含んでいる。
【0035】
次に、本発明の実施の形態の動作について図面を参照して説明する。図4は本発明の実施の形態の動作を示したフローチャートである。以下の説明ではダンプ対象のデータは図1に示すように8つのブロック11に分割されており、圧縮部22による圧縮処理はCPU上で実行され、本発明の効果を説明するためにCPUは2以上あり主記憶装置10を共有する場合を具体例にして説明していく。
【0036】
一般に圧縮処理、出力処理の実行時間とCPU数との関連についてみると、圧縮処理がCPU内の処理(例えば演算等)が多いのに比べて出力処理は通常主記憶装置10から外部記憶装置30への圧縮後のデータを転送する時間が多くCPUの処理時間が少ない傾向があるため、圧縮処理はCPU数に応じて処理時間の短縮効果が顕著となり、出力処理はCPUが増えても処理時間は大きくは短縮されないといえる。
【0037】
まず、ダンプが起動されるとブロック管理部21が起動され、ブロック管理部21は1以上の圧縮部22と1以上の出力部23をそれぞれCPUに割り当てて起動する(S51)。具体例では、ブロック管理部21は、圧縮22−1と圧縮部22−2とをそれぞれ第1のCPUと第2のCPUで起動し、出力部23−1と出力部23−2をそれぞれ第1のCPUと第2のCPUで起動する。なお、ダンプの起動方法については特に限定しないが、システムが障害を検出した場合に障害を処理する手順により起動される場合や、システムの管理者や運用者がコンソールからコマンドとしてダンプを起動する場合や、これらの起動が正常に実行されない場合に専用のダンプスイッチによって起動する場合がある。
【0038】
ここで、圧縮部22の動作について説明する。図5は、圧縮部22の動作を示したフローチャートである。圧縮部22は起動されるとブロック管理部21に対して未圧縮のブロック11について問い合わせる(S71)。圧縮部22は、問い合わせの結果を判断し(S72)、未圧縮のブロック11が無ければ未圧縮のブロック11が残っていないことを知らせる終了通知をブロック管理部21へ通知して動作を終了する(S73)。
【0039】
問い合わせの結果未圧縮のブロック11があればブロック管理部21で指定されたブロック11のデータ容量を削減する圧縮処理を実行する(S74)。圧縮処理されたデータは、主記憶装置10に設けられた作業域12内の指定場所に保持される。作業域12内の場所はブロック管理部21から指示される。なお、作業域12は通常ダンプ処理のために予め確保されている。
【0040】
指定されたブロック11の圧縮処理が終わると、ブロック管理表24の該当するブロック11の登録情報を更新する(S75)。例えば、圧縮後のブロックサイズや圧縮情報を登録する。次に指定されたブロック11の圧縮処理が終了したことを中間通知としてブロック管理部21へ通知する。
【0041】
続いて、出力部23の動作について説明する。図6は出力部23の動作を示したフローチャートである。出力部23は、起動されると未出力で圧縮済みのブロックが有るかブロック管理部21へ問い合わせる(S81)。問い合わせ結果を判定し(S82)、該当するブロックがなければ、未出力ブロックの有無をブロック管理部21へ問い合わせる(S83)。
【0042】
問い合わせの結果を判定し(S84)、未出力ブロックがなければ未出力ブロックが残っていないこと、すなわち、全てのブロック11の出力処理が終了したことを終了通知としてブロック管理部21へ通知する(S89)。未出力ブロックが残っていれば圧縮済みブロックがなく圧縮処理の終了待ちの状態であることを中間通知としてブロック管理部21へ通知する(S88)。
【0043】
ステップS81の問い合わせの結果、該当するブロック、すなわち、圧縮済みで未出力のブロックが作業域12にあれば、出力部23は、ブロック管理部21で指定された圧縮済み・未出力ブロックをブロック管理部21で指定された主記憶装置10の作業域12からブロック管理部21で指定された外部記憶装置30のダンプファイル31へ転送する出力処理を実行する(S85)。
【0044】
指定された圧縮済みブロックの出力処理が終わると、ブロック管理表24内の該当ブロックの登録情報を更新する(S86)。例えば、出力先ファイル名や出力先ファイル内の格納位置の情報が登録される。ブロック管理表24の登録が終わると出力部23は、ブロック管理表24をダンプ先のダンプファイル31の所定の位置に格納し、ブロックの出力処理が終了したことを中間通知としてブロック管理部21へ通知する(S87)。
【0045】
ブロック管理表24は後述するようにダンプ処理の最後に全てのダンプファイル31に対して最終状態のものが出力されて格納されるが、ブロック単位の出力が終了した時点でブロック管理表24を出力しておく理由は、ダンプ採取中にダンプ処理が異常終了した場合にも、出力したブロック11のデータを有効に使用可能とすることができるためである。
【0046】
次に、図4へ戻り図5と図6も参照して説明を続ける。ブロック管理部21は、ステップS51で圧縮部22と出力部23を起動した後、圧縮部22か出力部23の通知を待ち合わせる(S52)。通知があると終了通知か判定し(S53)、終了通知であれば圧縮部22又は出力部23に中断中のものがあるか確認する(S54)。中断中の圧縮部22又は出力部23があればそれを再開して(S61)、ステップS52へ戻り次の通知を待ち合わせる。
【0047】
ステップS54で中断中の圧縮部22又は出力部23がなければ、まだ動作している圧縮部22又は出力部23があるか判定し(S55)、動作中の圧縮部22又は出力部23があればステップS52へ戻り次の通知を待ち合わせ、動作中の圧縮部22又は出力部23が1つもなければ全てのブロック11について圧縮処理と出力処理が終了したということなので図3に示すようにブロック管理表24を各ダンプファイル31へ出力しダンプ処理を終了する(S56)。
【0048】
ステップS53で通知が終了通知でなかった場合は、ブロック管理部21は1以上の圧縮部22で実行されている圧縮処理と1以上の出力部23で実行されている出力処理の進み具合を比較して、予め決められた比較方法において差がなければステップS52へ戻り次の通知を待ち合わせる(S57)。この比較方法については特に限定しない。
【0049】
進み具合に差があり出力処理が進んでいる場合(S58)、ブロック管理部21は出力処理の進み具合を抑えて、圧縮処理の進み具合を促進するように調整する(S59)。例えば、出力部23の進み具合が速い場合、ブロック管理部21は、中断中の圧縮部22があればそれを再開し、さらに動作中の出力部23を1以上中断したり、圧縮部22を新たに1以上起動したりして調整する。
【0050】
ブロック管理部21は進み具合の差の程度により出力部の中断と圧縮部の起動を一方だけ行ってもよいし両方行ってもよく、また、中断数と起動数は差の程度が大きくシステム構成が大きい場合には2以上としてもよい。また、中断とは実行中の処理を再開できる条件を満たした状態で停止することであり、再開の指示を受けると停止時点の処理を続行できるものとする。例えば、圧縮部22が中断の指示を受けた場合ブロック単位の圧縮処理が終わった時点で停止状態とし中断してもよいし、ブロックの圧縮処理途中で停止状態としてもよく、特に限定しない。
【0051】
進み具合に差があり圧縮処理が進んでいる場合(S58)、ブロック管理部21は圧縮処理の進み具合を抑えて、出力処理の進み具合を促進するようにする(S60)。例えば、圧縮部22の進み具合が速い場合、ブロック管理部21は、中断中の出力部23があればそれを再開し、さらに動作中の圧縮部22を1以上中断したり、出力部23を新たに1以上起動したりして調整する。出力部23の進み具合が速い場合と同様に進み具合の差の程度に合わせて調整してもよい。
【0052】
具体例での動作の流れを示した図7を参照して具体例を説明すると、ステップS51で起動された圧縮部22−1は、ブロック管理部21に問い合わせて(S71)、未圧縮のブロック11−1を得る。ブロック管理部21からはブロック11−1のブロック番号=001、主記憶装置10上のアドレス、圧縮後のデータの作業域12内の格納位置等が指定され、起動されたCPUにてブロック11−1の圧縮処理を図7のT1タイミングで開始する(S74)。同様に、圧縮部22−2も動作してブロック11−2の圧縮処理を開始する。
【0053】
ステップS51で起動された出力部23−1と出力部23−2は未出力で圧縮済みのブロックをブロック管理部21へ問い合わせるが(S81)、圧縮処理が終了していないため(S82)、未出力ブロックを問い合わせる(S83)。ブロック11は全て未出力であるため(S84)、圧縮済みのブロック待ち状態を知らせるための中間通知をそれぞれブロック管理部21へ通知する(S88)。
【0054】
ブロック管理部21は中間通知を受けると(S52、S53)、圧縮処理と出力処理との進み具合を比較する(S57)。ここでは出力処理が実行されていないので比較できずに差がないとして次の通知を待つ。
【0055】
圧縮部22−1はT2タイミングにブロック11−1の圧縮処理を終了すると、圧縮後のブロックサイズや圧縮情報をブロック管理表24のブロック番号001のエントリに登録し(S75)、中間通知をブロック管理部21へ通知する(S76)。そしてまた未圧縮ブロックの問い合わせを行いブロック11−3を得て、ブロック11−3の圧縮処理を開始する。
【0056】
圧縮部22−1の中間通知を受けるとブロック管理部21は圧縮処理と出力処理の進み具合を比較するが、この時点ではまだ出力処理時間の実績がなく比較できないため差がないとして次の通知を待ち合わせる。ブロック管理部21は、圧縮部22−1に続いてブロック11−2の圧縮処理を終了した圧縮部22−2の中間通知を受け同様の処理を行い、次の通知を待つ。
【0057】
出力部23−1は、タイミングT2の圧縮部22−1の中間通知の後の問い合わせによりブロック11−1の圧縮済みのブロックを取得し(S81)、ブロック管理部21から圧縮済みのブロックの作業域12内の格納位置と出力先のダンプファイル31の格納位置を得て出力処理を開始する(S85)。図3を参照すると、出力先はダンプファイル31−1でブロック管理表24の格納位置のすぐ次が格納位置となる。出力部23−2も、圧縮部22−2の中間通知の後にブロック11−2の圧縮済みブロックを得て出力処理を開始する。出力先はダンプファイル31−2でブロック管理表24の格納位置の次となる。
【0058】
図7を参照すると具体例は1つのブロック11の処理時間でみると圧縮処理が出力処理よりも大きくなっており、同数の圧縮部22と出力部23を動作させると圧縮処理の進み具合が悪く遅れることとなる。タイミングT2以降に開始した出力部23−1はタイミングT3にてブロック11−1の出力処理を終了して、ブロック管理表24のブロック番号001のエントリに出力先ダンプファイル名=ダンプファイル31−1、格納位置=1番目という情報を登録し(S86)、更新後のブロック管理表24をダンプファイル31−1へ出力しブロック管理部21へ中間通知を送る(S87)。続いて、出力部23−1は未出力で圧縮済みのブロックを問い合わせるが(S81)、圧縮処理が終わっていないため(S82)、圧縮済みのブロック待ちの中間通知をする(S88)。出力部23−2も同様に動作する。
【0059】
ブロック管理部21は、タイミングT3で出力部23−1のブロック終了の中間通知を受けると、進み具合を判断するが、この時点では圧縮部22より出力部23の処理が早く終了したことは分かるが、その差が大きいとは分からないので次の通知を待ち、出力部23−1のブロック終了の中間通知も受け付ける。出力部23−1と出力部23−2の中間通知はほぼ同じ時刻に通知されるので、同様に処理される。
【0060】
その後は、圧縮処理が終わらないために、出力部23−1と出力部23−2から圧縮済みブロック待ちの中間通知が繰り返し通知される。ブロック管理部21は、出力部23−1のブロック終了の中間通知から一定時間が経過しても圧縮部22からのブロック終了の中間通知が来ないと圧縮部22と出力部23との進み具合に差があると判断し、繰り返し受ける出力部23−1と出力部23−2から圧縮済みブロック待ちの中間通知の処理でステップS57、S58、S59と進み、出力部23−2を中断し、新たに圧縮部22−3を起動する(S59)。具体例では第3のCPUがあるものとして圧縮部22−3を第3のCPUで起動するが、CPUが2つしかない場合で圧縮部22−3を起動しても効果が少ないのであれば起動しないようにしてもよい。
【0061】
このように、ステップS59で出力部23−2が中断し、圧縮部22−3が起動される。タイミングT3の一定時間後に起動された圧縮部22−3は、ブロック管理部21へ問い合わせてブロック11−5の圧縮処理を開始する。
【0062】
タイミングT4で圧縮部22−1はブロック11−3の圧縮処理を終了し、中間通知をした後にブロック11−6の圧縮処理を開始する。同様に圧縮部22−2もブロック11−4の圧縮処理を終了し、中間通知をした後にブロック11−7の圧縮処理を開始する。タイミングT4で出力部23−1は圧縮部22−1が圧縮処理したブロック11−3の圧縮済みブロックの出力処理を実行し、続いてブロック11−4の圧縮済みブロックの出力処理を実行する。
【0063】
圧縮部22−3は、ブロック11−5の圧縮処理を終了した後ブロック11−8の圧縮処理を実行する。圧縮部22−1はタイミングT5でブロック11−6の圧縮処理を終了して中間通知を行い、次の問い合わせを行うが、未圧縮ブロックは全て処理中か終了済みであり未圧縮ブロックは得られず圧縮部22−1はブロック管理部21へ終了通知を行って動作を終了する(S73)。続いて圧縮部22−2も同様にして動作を終了する。
【0064】
ブロック管理部21は、タイミングT4で圧縮部22−1の終了通知を受けるとステップS54で中断中の圧縮部22又は出力部23があるか探し(S54)、出力部23−2が中断しているのでこれを再開する(S61)。タイミングT5の後に出力部23−2が再開しブロック11−5の圧縮済みブロックの出力処理を実行し、続けてブロック11−7の圧縮済みブロックの出力処理を実行する。出力部23−1はブロック11−4に続いてブロック11−6、ブロック11−8の圧縮済みブロックの出力処理を実行する。
【0065】
ブロック管理部21は、タイミングT4の後圧縮部22−1に続いて圧縮部222から終了通知を受けると、中断中の圧縮部22又は出力部23がないので動作中の圧縮部22又は出力部23があるか調べ、この時点ではまだ圧縮部22−3、出力部23−1、出力部23−2が動作中のため次の通知を待つ。タイミングT6で圧縮部22−3が終了して終了通知をし、タイミングT7で出力部23−2が終了して終了通知をし、最後にタイミングT8で出力部23−1が終了して終了通知をする。ブロック管理部21は、タイミングT6とT7の終了通知に対してはタイミングT4の後の圧縮部22−2からの終了通知と同様に処理する。
【0066】
ブロック管理部21は、タイミングT8で出力部23−1から終了通知を受けると動作中の圧縮部22も出力部23もないのでステップS55からS56へ進みブロック管理表24をダンプファイル31−1とダンプファイル31−2の所定位置へ格納する。
【0067】
以上の具体例では、圧縮処理が出力処理よりも遅い場合を説明したが、逆に圧縮処理は出力処理よりも速い場合でも圧縮処理と出力処理との間の調整を行って効率よくリソースを割り当ててダンプ処理時間を短縮することができるのは容易に理解できるので、説明は省略する。
【0068】
また、進み具合の比較方法は圧縮処理と出力処理の処理数の差分が一定値以上となったことで差があると判断してもよいし、本発明では限定しない。また、以上の説明では圧縮処理は主記憶装置10を共有するCPUで実行するとしたが、主記憶装置10を共有する専用の圧縮手段があれば専用圧縮手段とCPUとで並列処理するようにしてもよい。
【0069】
以上のように、本発明ではダンプ対象のデータを複数のブロック11に分けて、ブロック11毎に圧縮処理と出力処理を行い、圧縮処理と出力処理の進み具合を比較して調整を行いダンプ処理を実行するので、ダンプ処理にかかる処理時間を大幅に短縮することができる。特に、CPU数が大きくなるほどこの効果は顕著となる。
【0070】
また、ブロック11単位の出力処理が終了するたびにブロック管理表24をダンプファイル31に出力しているので、ダンプ途中でダンプ処理が停止した場合であっても、停止するまでにダンプされたブロック情報は有効に使うことができ、ダンプファイル31毎にブロック管理表24を持っているので他のダンプファイル31の障害の影響を回避できる。特に1つのダンプファイル31にだけブロック管理表24を格納する場合、そのダンプファイル31が障害を受けると全てのダンプデータが無効となってしまう。
【0071】
以上の説明では、圧縮部22と出力部23とをそれぞれ複数起動してダンプ処理する動作を説明したが、いずれか一方だけを複数起動するようにしても本発明を適用できることは明らかである。例えば、CPUが1つしかないシステムでは、圧縮部22は1つのみ起動して、出力部23を複数起動するようにしてもよく、特に出力処理が圧縮処理に比べて遅いシステムでは十分な効果がある。
【0072】
また、以上の説明では全て圧縮処理をするものとしたが、ブロック11によっては圧縮をせずに出力処理を行うようにしてもよい。その場合圧縮部22はブロック管理部21から指定されたブロック11に対しては圧縮をしないように指示を受け圧縮処理をせずにブロック終了の中間通知を行う。この際ブロック管理表24の圧縮情報は圧縮なしとして登録される。
【0073】
出力部23は、圧縮していないブロック11を圧縮済みのブロックと見なして出力処理を行う。この時対象ブロック11は作業域12ではなく元のブロック11のまま主記憶装置10にあり、出力部23はブロック11の格納位置のデータを指定されたダンプファイル31へ出力処理する。なお、全てのブロックを圧縮しない場合は、圧縮部22の起動はせずに出力部23のみを複数起動して処理すればよい。
【0074】
【発明の効果】
このように本発明によれば、ダンプ対象のデータを複数のブロックに分割して、ブロック単位に圧縮処理と出力処理を実行させるので、ダンプ採取時間を短縮できるという効果があり、さらにダンプ採取中の障害に対してより多くのダンプデータを有効にできるという効果がある。
【図面の簡単な説明】
【図1】本発明の実施の形態の機能的な構成を示す図である。
【図2】本発明の実施の形態のブロック管理表24の内容の一例を示す図である。
【図3】本発明の実施の形態のダンプファイル31の内容の一例を示す図である。
【図4】本発明の実施の形態のブロック管理部21の動作を示すフローチャートである。
【図5】本発明の実施の形態の圧縮部22の動作を示すフローチャートである。
【図6】本発明の実施の形態の出力部23の動作を示すフローチャートである。
【図7】本発明の実施の形態の具体例の動作の時間的な流れを示す図である。
【符号の説明】
10 主記憶装置
11 ブロック
12 作業域
20 ダンプ採取部
21 ブロック管理部
22 圧縮部
23 出力部
24 ブロック管理表
30 外部記憶装置
31 ダンプファイル
Claims (21)
- ダンプ対象のデータを複数に分割したブロック単位でダンプデータを記録する1以上のダンプファイルと、ダンプの実行を管理するブロック管理部と、ブロック管理部により起動され指定されたブロックの圧縮処理を実行する圧縮部と、ブロック管理部により起動され圧縮部が圧縮したブロックをブロック毎にブロック管理部で指定されたダンプファイルへ出力する出力部とを有し、前記圧縮部又は前記出力部は少なくとも一方が複数起動されることを特徴とするダンプ採取方式。
- ダンプ対象のデータを複数に分割したブロック単位でダンプデータを記録する1以上のダンプファイルと、ダンプの実行を管理するブロック管理部とを有するダンプ採取方式であって、
前記ブロック管理部は、ブロック毎に圧縮処理を順次実行する圧縮部を複数起動し、圧縮部で圧縮されたブロックをブロック毎にダンプファイルへ出力する出力部を複数起動し、圧縮部と出力部の動作中に圧縮部の進み具合と出力部の進み具合を比較して遅れている方の進み具合を早めるように調整することを特徴とするダンプ採取方式。 - ダンプ対象のデータを複数に分割したブロック単位でダンプデータを記録するとともにブロック毎にブロックサイズや格納位置を含む属性情報を含むブロック管理表を記録する1以上のダンプファイルと、
ダンプの実行を管理するブロック管理部と、ブロック管理部により起動され指定されたブロックの圧縮処理を実行し実行後にブロック管理表のブロックサイズを登録する圧縮部と、ブロック管理部により起動され圧縮部が圧縮したブロックをブロック毎にブロック管理部で指定されたダンプファイルへ出力するともにブロック管理表の格納位置を登録した後にブロック管理表を指定されたダンプファイルへ出力する出力部とを有することを特徴とするダンプ採取方式。 - ダンプ対象のデータを複数に分割したブロック単位でダンプデータを記録するとともにブロック毎のブロックサイズや格納位置を含む属性情報を含むブロック管理表を記録する1以上のダンプファイルと、ダンプの実行を管理するブロック管理部とを有するダンプ採取方式であって、
前記ブロック管理部は、ブロック毎に圧縮処理を順次実行し実行後にブロック管理表にブロックサイズを登録する圧縮部を複数起動し、圧縮部で圧縮されたブロックをブロック毎にダンプファイルへ出力するとともにブロック管理表の格納位置を登録した後にブロック管理表を指定されたダンプファイルへ出力する出力部を複数起動し、圧縮部と出力部の動作中に圧縮部の進み具合と出力部の進み具合を比較して遅れている方の進み具合を早めるように調整することを特徴とするダンプ採取方式。 - 前記ブロック管理部は、前記圧縮部の進み具合が速い場合は起動されている前記圧縮部の少なくとも1つを中断し、前記出力部の進み具合が速い場合は起動されている前記出力部の少なくとも1つを中断するように調整することを特徴とする請求項2又は4のダンプ採取方式。
- 前記ブロック管理部は、前記圧縮部の進み具合が速い場合は中断中の前記出力部があればそれを再開し中断中の前記出力部がなければ新たな前記出力部を起動し、前記出力部の進み具合が速い場合は中断中の前記圧縮部があればそれを再開し中断中の前記圧縮部がなければ前記圧縮部を新たに起動するように調整することを特徴とする請求項2又は4のダンプ採取方式。
- 前記ダンプファイルは2以上あり、前記ブロック管理部は全てのブロックのダンプファイルへの出力が終了した後に前記ブロック管理表を全てのダンプファイルに出力することを特徴とする請求項3又は4のダンプ採取方式。
- ダンプ対象のデータを複数に分割したブロック毎に順次圧縮処理を実行する圧縮部と、圧縮部が圧縮したブロックをブロック毎に指定されたダンプファイルへ順次出力する出力部のうち、少なくとも一方を複数起動してダンプを実行することを特徴とするダンプ採取方法。
- ダンプ対象のデータを複数に分割したブロック毎に圧縮処理を順次実行する圧縮部を複数起動し、圧縮部で圧縮されたブロックをブロック単位でダンプデータを記録するダンプファイルへ出力する出力部を複数起動し、圧縮部と出力部の動作中に圧縮部の進み具合と出力部の進み具合を比較して遅れている方の進み具合を早めるように調整することを特徴とするダンプ採取方法。
- ダンプ対象のデータを複数に分割したブロック毎に圧縮処理を順次実行し実行後にブロック毎にブロックサイズや格納位置を含む属性情報を含むブロック管理表にブロックサイズを登録する圧縮部と、圧縮部で圧縮されたブロックをブロック単位でダンプデータを記録するダンプファイルへ出力するとともにブロック管理表の格納位置を登録した後にブロック管理表を指定されたダンプファイルへ出力する出力部のうち、少なくとも一方を複数起動してダンプを実行することを特徴とするダンプ採取方法。
- ダンプ対象のデータを複数に分割したブロック毎に圧縮処理を順次実行し実行後にブロック毎にブロックサイズや格納位置を含む属性情報を含むブロック管理表にブロックサイズを登録する圧縮部を複数起動し、圧縮部で圧縮されたブロックをブロック単位でダンプデータを記録するダンプファイルへ出力するとともにブロック管理表の格納位置を登録した後にブロック管理表を指定されたダンプファイルへ出力する出力部を複数起動し、圧縮部と出力部の動作中に圧縮部の進み具合と出力部の進み具合を比較して遅れている方の進み具合を早めるように調整することを特徴とするダンプ採取方法。
- 前記圧縮部の進み具合が速い場合は起動されている前記圧縮部の少なくとも1つを中断し、前記出力部の進み具合が速い場合は起動されている前記出力部の少なくとも1つを中断するように調整することを特徴とする請求項9又は11のダンプ採取方法。
- 前記圧縮部の進み具合が速い場合は中断中の前記出力部があればそれを再開し中断中の前記出力部がなければ新たな前記出力部を起動し、前記出力部の進み具合が速い場合は中断中の前記圧縮部があればそれを再開し中断中の前記圧縮部がなければ前記圧縮部を新たに起動するように調整することを特徴とする請求項9又は11のダンプ採取方法。
- 前記ダンプファイルは2以上あり、全てのブロックのダンプファイルへの出力が終了した後に前記ブロック管理表を全てのダンプファイルに出力することを特徴とする請求項10又は11のダンプ採取方法。
- ダンプ対象のデータを複数に分割したブロック毎に順次圧縮処理を実行する圧縮部と、圧縮部が圧縮したブロックをブロック毎に指定されたダンプファイルへ順次出力する出力部のうち、少なくとも一方を複数起動してダンプを実行する手順をコンピュータに実行させることを特徴とするプログラム。
- ダンプ対象のデータを複数に分割したブロック毎に圧縮処理を順次実行する圧縮部を複数起動する手順と、圧縮部で圧縮されたブロックをブロック単位でダンプデータを記録するダンプファイルへ出力する出力部を複数起動する手順と、圧縮部と出力部の動作中に圧縮部の進み具合と出力部の進み具合を比較して遅れている方の進み具合を早めるように調整する手順とをコンピュータに実行させることを特徴とするプログラム。
- ダンプ対象のデータを複数に分割したブロック毎に圧縮処理を順次実行し実行後にブロック毎にブロックサイズや格納位置を含む属性情報を含むブロック管理表にブロックサイズを登録する圧縮部と、圧縮部で圧縮されたブロックをブロック単位でダンプデータを記録するダンプファイルへ出力するとともにブロック管理表の格納位置を登録した後にブロック管理表を指定されたダンプファイルへ出力する出力部のうち、少なくとも一方を複数起動してダンプを実行する手順をコンピュータに実行させることを特徴とするプログラム。
- ダンプ対象のデータを複数に分割したブロック毎に圧縮処理を順次実行し実行後にブロック毎にブロックサイズや格納位置を含む属性情報を含むブロック管理表にブロックサイズを登録する圧縮部を複数起動する手順と、圧縮部で圧縮されたブロックをブロック単位でダンプデータを記録するダンプファイルへ出力するとともにブロック管理表の格納位置を登録した後にブロック管理表を指定されたダンプファイルへ出力する出力部を複数起動する手順と、圧縮部と出力部の動作中に圧縮部の進み具合と出力部の進み具合を比較して遅れている方の進み具合を早めるように調整する手順とをコンピュータに実行させることを特徴とするプログラム。
- 前記圧縮部の進み具合が速い場合は起動されている前記圧縮部の少なくとも1つを中断し、前記出力部の進み具合が速い場合は起動されている前記出力部の少なくとも1つを中断するように調整する手順をコンピュータに実行させることを特徴とする請求項16又は18のプログラム。
- 前記圧縮部の進み具合が速い場合は中断中の前記出力部があればそれを再開し中断中の前記出力部がなければ新たな前記出力部を起動し、前記出力部の進み具合が速い場合は中断中の前記圧縮部があればそれを再開し中断中の前記圧縮部がなければ前記圧縮部を新たに起動するように調整する手順をコンピュータに実行させることを特徴とする請求項16又は18のプログラム。
- 前記ダンプファイルは2以上あり、全てのブロックのダンプファイルへの出力が終了した後に前記ブロック管理表を全てのダンプファイルに出力する手順をコンピュータに実行させることを特徴とする請求項17又は18のプログラム。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2003020114A JP2004234181A (ja) | 2003-01-29 | 2003-01-29 | ダンプ採取方式、ダンプ採取方法、及びプログラム |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2003020114A JP2004234181A (ja) | 2003-01-29 | 2003-01-29 | ダンプ採取方式、ダンプ採取方法、及びプログラム |
Publications (1)
Publication Number | Publication Date |
---|---|
JP2004234181A true JP2004234181A (ja) | 2004-08-19 |
Family
ID=32949829
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2003020114A Pending JP2004234181A (ja) | 2003-01-29 | 2003-01-29 | ダンプ採取方式、ダンプ採取方法、及びプログラム |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP2004234181A (ja) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2009205254A (ja) * | 2008-02-26 | 2009-09-10 | Fujitsu Ltd | 計算機、ダンププログラムおよびダンプ方法 |
-
2003
- 2003-01-29 JP JP2003020114A patent/JP2004234181A/ja active Pending
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2009205254A (ja) * | 2008-02-26 | 2009-09-10 | Fujitsu Ltd | 計算機、ダンププログラムおよびダンプ方法 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP5911892B2 (ja) | ハイバネイトからの多段レジューム | |
JP3197403B2 (ja) | 計算機システムのアプリケーションプログラム障害発生時の制御方法 | |
JP5212360B2 (ja) | 制御プログラム、制御システムおよび制御方法 | |
US6687799B2 (en) | Expedited memory dumping and reloading of computer processors | |
KR20160150126A (ko) | 결함 내성 배치 처리 | |
JP2008305404A (ja) | データをバックアップするシステム、方法、およびプログラム | |
JP2007207026A (ja) | Dma転送装置 | |
WO2015135370A1 (zh) | 一种数据更新的方法和系统 | |
TW201738781A (zh) | 資料表連接方法及裝置 | |
US9645841B2 (en) | Dynamic virtual machine storage usage monitoring, provisioning, and migration | |
JP2010272059A (ja) | メモリ管理方法計算機システム及びプログラム | |
US20150026694A1 (en) | Method of processing information, storage medium, and information processing apparatus | |
US20160026474A1 (en) | Caching based operating system installation | |
CN111708812A (zh) | 一种分布式数据处理方法 | |
CN107180051B (zh) | 一种日志管理方法、服务器 | |
US20230376357A1 (en) | Scaling virtualization resource units of applications | |
JP2004234181A (ja) | ダンプ採取方式、ダンプ採取方法、及びプログラム | |
CN106775846A (zh) | 用于物理服务器的在线迁移的方法及装置 | |
CN111324413B (zh) | 一种数据迁移方法及数据迁移管理设备 | |
JP6292796B2 (ja) | 情報処理装置、情報処理方法及びプログラム | |
JP2011175459A (ja) | 性能情報採取装置、性能情報採取方法、及び性能情報採取プログラム | |
JPH1040123A (ja) | ジョブ管理方式と方法 | |
JP2016170463A (ja) | 情報処理装置、カーネルダンプ方法、カーネルダンププログラム | |
JPH0465733A (ja) | バックアップファイル作成装置 | |
JPH0452942A (ja) | ファイル転送方式 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
RD01 | Notification of change of attorney |
Free format text: JAPANESE INTERMEDIATE CODE: A7421 Effective date: 20050315 |
|
A977 | Report on retrieval |
Free format text: JAPANESE INTERMEDIATE CODE: A971007 Effective date: 20060721 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20060801 |
|
A521 | Written amendment |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20060920 |
|
A02 | Decision of refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A02 Effective date: 20061031 |