JP6886110B2 - 情報処理装置及びプログラム - Google Patents

情報処理装置及びプログラム Download PDF

Info

Publication number
JP6886110B2
JP6886110B2 JP2017137127A JP2017137127A JP6886110B2 JP 6886110 B2 JP6886110 B2 JP 6886110B2 JP 2017137127 A JP2017137127 A JP 2017137127A JP 2017137127 A JP2017137127 A JP 2017137127A JP 6886110 B2 JP6886110 B2 JP 6886110B2
Authority
JP
Japan
Prior art keywords
log
storage area
data
weight loss
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.)
Active
Application number
JP2017137127A
Other languages
English (en)
Other versions
JP2019020906A (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.)
Fujitsu Ltd
Original Assignee
Fujitsu Ltd
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 Fujitsu Ltd filed Critical Fujitsu Ltd
Priority to JP2017137127A priority Critical patent/JP6886110B2/ja
Publication of JP2019020906A publication Critical patent/JP2019020906A/ja
Application granted granted Critical
Publication of JP6886110B2 publication Critical patent/JP6886110B2/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Landscapes

  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)

Description

本発明は、情報処理装置及びプログラムに関する。
PC(Personal Computer)、サーバ装置、携帯端末、無線通信装置などの各種情報処理装置においては、特定のイベントが発生した際にデータログが出力される。
特定のイベントとしては、例えば、ハードウェアにトラブルが発生したことや、ソフトウェアの動作に不具合が生じたことなどがある。その他、ログインやファイル操作などのユーザ操作に応じてデータログが出力されることがある。データログは、特定のイベントに関する情報などを一定の形式で時系列に記録したデータである。
なお、トラブルが発生した場合にトラブル発生の経緯や原因を調査するために採取されるデータログはトレースログと呼ばれる。コンピュータプログラムのバグなどを取り除くためのデバッグやデータ修復のためにメモリ内のデータやデータベースの情報などを書き出す処理はダンプと呼ばれる。採取したトレースログやダンプなどを利用して、上記のような情報処理装置に生じたトラブルの原因調査などが行われる。
出力されるデータログの数は情報処理装置で実行される処理の量が増えるにつれて増大する。そのため、データログを記憶装置に格納する際にデータログを圧縮する方法が提案されている。この方法では、圧縮する際にデータログのデータ構造を汎用的な圧縮アルゴリズムに適した表形式のデータ構造に変更する。データの圧縮に関し、発電プラントで生じるデータを特定データと特定データ以外のデータとに分け、特定データを非圧縮の状態で保持し、特定データ以外のデータを圧縮した状態で保持する方法が提案されている。
特開2012−226502号公報 特開2008−146267号公報
データログの出力数が大きくなると、データログを書き込むために、情報処理装置に外部接続又は搭載される記憶装置へのアクセスが増大する。SSD(Solid State Drive)などの書き込み回数に制限がある記憶装置をデータログの格納に利用する場合、データログの書き込みにより記憶装置の寿命が短くなるリスクがある。
揮発性メモリの格納領域にデータログを一時的に格納し、その格納領域が充填されたタイミングでデータログを記憶装置に書き込めば、記憶装置への書き込み頻度を減らすことができる。また、限られた格納領域の容量を有効活用し、より多くのデータログを格納領域に蓄積できれば、記憶装置への書き込み頻度をさらに減らすことができる。そして、書き込み頻度が低減されればデータログの書き込みに伴う記憶装置の負担が軽減される。
1つの側面によれば、本発明の目的は、ログ情報の書き込みに伴う不揮発性記憶領域への負担を低減できる情報処理装置及びプログラムを提供することにある。なお、ログ情報は上記のログデータを含みうる。上記の記憶装置は不揮発性記憶領域の一例である。
一態様によれば、第1の揮発性記憶領域及び第2の揮発性記憶領域と、不揮発性記憶領域と、データログを第1の揮発性記憶領域に格納する制御部とを有し、制御部は、データログが格納された第1の揮発性記憶領域の開放の判定を行うための第1の開放条件に基づいて、第1の揮発性記憶領域にあるデータログのデータ量を削減する減量処理を実行し、減量処理に関する情報と減量処理の結果とを有するログ情報を第2の揮発性記憶領域に格納し、第2の開放条件に基づいて、第2の揮発性記憶領域にあるログ情報を不揮発性記憶領域に格納する情報処理装置が提供される。
ログ情報の書き込みに伴う不揮発性記憶領域への負担を低減できる。
第1実施形態に係る情報処理装置について説明するための図である。 第2実施形態に係る情報処理システムについて説明するための図である。 第2実施形態に係るクライアント装置の機能を実現可能なハードウェアについて説明するためのブロック図である。 第2実施形態に係るサーバ装置の機能を実現可能なハードウェアの一例を示したブロック図である。 第2実施形態に係るログ情報の格納領域及び格納処理について説明するための図である。 第2実施形態に係るログ情報の構造について説明するための図である。 第2実施形態に係るサーバ装置の機能について説明するためのブロック図である。 第2実施形態に係る圧縮レベル情報について説明するための図である。 第2実施形態に係る管理情報について説明するための図である。 第2実施形態に係る登録処理及び定期チェック処理(高頻度ログ管理以外)について説明するための第1の図である。 第2実施形態に係る登録処理及び定期チェック処理(高頻度ログ管理以外)について説明するための第2の図である。 第2実施形態に係る登録処理及び定期チェック処理(高頻度ログ管理)について説明するための図である。 第2実施形態に係る再圧縮及び詰め処理について説明するための図である。 第2実施形態に係る登録処理の流れを示したフロー図である。 第2実施形態に係る定期チェック処理の流れを示した第1の図である。 第2実施形態に係る定期チェック処理の流れを示した第2の図である。 第2実施形態に係る登録処理について、さらに説明するための図である。 第2実施形態に係る定期チェック処理のうち、圧縮処理について、さらに説明するための図である。 第2実施形態に係る定期チェック処理のうち、重複排除処理について、さらに説明するための図である。 第2実施形態に係る定期チェック処理のうち、高頻度ログ管理の処理について、さらに説明するための図である。 第2実施形態に係る定期チェック処理のうち、低頻度ログ管理の処理について、さらに説明するための図である。 第2実施形態に係る技術を適用可能なストレージシステムの一例を示した図である。
以下に添付図面を参照しながら、本発明の実施形態について説明する。なお、本明細書及び図面において実質的に同一の機能を有する要素については、同一の符号を付することにより重複説明を省略する場合がある。
<1.第1実施形態>
図1を参照しながら、第1実施形態について説明する。
第1実施形態は、データログを含むログ情報を不揮発性記憶領域に格納する際の格納制御に関する。図1は、第1実施形態に係る情報処理装置について説明するための図である。なお、図1に示した情報処理装置10は、第1実施形態に係る情報処理装置の一例である。
図1に示すように、情報処理装置10は、制御部11、揮発性メモリ12、不揮発性記憶領域13を有する。揮発性メモリ12は、第1の揮発性記憶領域12a、及び第2の揮発性記憶領域12bを有する。
なお、制御部11は、は、CPU(Central Processing Unit)、DSP(Digital Signal Processor)、ASIC(Application Specific Integrated Circuit)、FPGA(Field Programmable Gate Array)などのプロセッサである。揮発性メモリ12は、RAM(Random Access Memory)などの揮発性記憶装置である。不揮発性記憶領域13は、HDD(Hard Disk Drive)やフラッシュメモリなどの不揮発性記憶装置の記憶領域である。
制御部11は、例えば、不揮発性記憶領域13や他のメモリ(非図示)に格納されたプログラムを実行する。
データログ21が出力されたとき、制御部11は、出力されたデータログ21を第1の揮発性記憶領域12aに格納する(図1の符号a)。このとき、制御部11は、データログ21の出力元や種類などの情報をデータログ21に付加して第1の揮発性記憶領域12aに格納してもよい。その後、制御部11は、第1の開放条件及び情報処理装置10の負荷に基づいて、第1の揮発性記憶領域12aにあるデータログ21のデータ量を削減する減量処理15を実行する。
情報処理装置10の負荷、第1の開放条件、及び後述する第2の開放条件は、例えば、管理情報14を用いて制御部11により管理される。図1の例では、情報処理装置10の負荷(例えば、CPU負荷)が50%である。
第1の開放条件は、例えば、前回の減量処理15の実施タイミングを基準とする経過時間が5分経過したことである。第2の開放条件は、例えば、第2の揮発性記憶領域12bの空き容量が5%を切ったことである。なお、第1の開放条件及び第2の開放条件は、上記以外の条件に変更可能である。
減量処理15としては、例えば、圧縮処理や重複排除処理などである。圧縮処理は、例えば、LZH、ZIP、CAB、RARなどの形式に対応する汎用的な圧縮アルゴリズムによるデータ圧縮の処理である。
重複排除処理は、一のデータログと他のデータログとの少なくとも一部が重複する場合に、一のデータログの重複部分を参照する情報を追加して他のデータログの重複部分を削除する処理である。なお、上記以外の処理を減量処理15として実行してもよい。
制御部11は、第1の開放条件を満たしたとき、情報処理装置10の負荷に基づいて減量処理15を実行するか否かを判断する。
例えば、制御部11は、情報処理装置10の負荷が閾値(例えば、80%)以下の場合に減量処理15を実行する。この場合、制御部11は、第1の揮発性記憶領域12aに格納したデータログ21を読み出し(図1の符号b)、読み出したデータログ21に対して減量処理15を実行する。そして、制御部11は、減量処理に関する情報24aと減量処理の結果24bとを有するログ情報24を生成し、ログ情報24を第2の揮発性記憶領域12bに格納する(図1の符号c)。
減量処理15として圧縮処理が実行された場合、減量処理の結果24bは、データログ21を圧縮した圧縮ログ22になる。この場合、減量処理に関する情報24aには、減量処理15の種類(「圧縮」)などの情報が含まれる。例えば、情報処理装置10の負荷に応じて圧縮レベルが設定される場合、減量処理に関する情報24aには、圧縮レベルの情報が含まれる。
他方、減量処理15として重複排除処理が実行された場合、減量処理の結果24bは、重複排除後のデータ(重複排除データ23)となる。この場合、減量処理に関する情報24aには、減量処理15の種類(「重複排除」)などの情報が含まれる。
なお、制御部11は、例えば、重複排除の対象となる他のデータログがある場合にデータログ21の重複排除処理を実行し、そのような他のデータログがない場合に圧縮処理を実行する。但し、減量処理15の選択方法については上記以外の方法が適用されてもよい。
ログ情報24を第2の揮発性記憶領域12bに格納した後、制御部11は、第1の揮発性記憶領域12aにあるデータログ21を削除する。また、制御部11は、第1の開放条件とは異なる第2の開放条件に基づいて、第2の揮発性記憶領域12bにあるログ情報24を不揮発性記憶領域13に格納する(図1の符号d)。ログ情報24を不揮発性記憶領域13に格納した後、制御部11は、第2の揮発性記憶領域12bにあるログ情報24を削除する。
なお、第1の開放条件を満たす前に第1の揮発性記憶領域12aがデータログで溢れる場合、制御部11は、第1の揮発性記憶領域12aにあるデータログを不揮発性記憶領域13に格納してもよい(図1の符号e)。
また、情報処理装置10の負荷が高く、減量処理15が実行されずに第1の揮発性記憶領域12aがデータログで溢れる場合、制御部11は、第1の揮発性記憶領域12aにあるデータログを不揮発性記憶領域13に格納してもよい(図1の符号e)。
また、第1の揮発性記憶領域12aがデータログで溢れる場合、制御部11は、第1の揮発性記憶領域12aにある古いデータログを削除して新しいデータログを格納してもよい。
上記のように、揮発性メモリ12にデータログを一時的に格納することで、データログが出力される度に書き込みが発生する場合に比べ、不揮発性記憶領域13への書き込み回数を減らすことができる。
また、減量処理15を実施することで、揮発性メモリ12の容量を有効活用でき、さらに不揮発性記憶領域13への書き込み回数を低減しうる。
また、第1の揮発性記憶領域12a及び第2の揮発性記憶領域12bを利用することで、揮発性メモリ12に対するデータログの格納と減量処理15とを非同期に実施できるようになる。そのため、情報処理装置10の負荷が低いときに減量処理15を実施でき、減量処理15に伴う情報処理装置10の負担増加を抑制しうる。
また、第1の揮発性記憶領域12aにあるデータログの集合を利用することで、圧縮処理だけでなく重複排除処理などの減量処理15を組み合わせることが可能になる。
以上、第1実施形態について説明した。
<2.第2実施形態>
次に、第2実施形態について説明する。第2実施形態は、データログを含むログ情報を不揮発性メモリに格納する際の格納制御に関する。
[2−1.システム]
図2を参照しながら、第2実施形態に係る情報処理システムについて説明する。図2は、第2実施形態に係る情報処理システムについて説明するための図である。
なお、図2に示した情報処理システム100は、第2実施形態に係る情報処理システムの一例である。
図2に示すように、情報処理システム100は、クライアント装置101、サーバ装置102、及びストレージ装置103を有する。
クライアント装置101は、ネットワークを介してサーバ装置102と接続される。ネットワークは、例えば、FC(Fibre Channel)やLAN(Local Area network)などの通信回線である。
ストレージ装置103にアクセスするホストコンピュータは、クライアント装置101の一例である。ストレージ装置103を制御するストレージ制御装置は、サーバ装置102の一例である。HDDやSSDなどの記憶装置、及び複数の記憶装置を組み合わせたRAID(Redundant Arrays of Inexpensive Disks)装置などは、ストレージ装置103の一例である。
(ハードウェア)
クライアント装置101の機能は、例えば、図3に示すハードウェアにより実現されうる。図3は、第2実施形態に係るクライアント装置の機能を実現可能なハードウェアについて説明するためのブロック図である。
図3に示すように、クライアント装置101は、記憶装置101a、プロセッサ101b、及び通信インターフェース(I/F)101cを有する。
記憶装置101aは、RAMなどの揮発性記憶装置、或いは、HDD、SSD、フラッシュメモリなどの不揮発性記憶装置である。プロセッサ101bは、1つ又は複数のCPU、DSP、ASIC、FPGAなどの演算装置である。通信インターフェース101cは、クライアント装置101とサーバ装置102や他の機器(ネットワーク機器など)とを接続するためのHBA(Host Bus Adapter)や通信回路などである。
プロセッサ101bは、例えば、記憶装置101aに格納されたプログラムを実行する。このプログラムは、記憶装置101aに格納されているか、或いは、光ディスク、磁気ディスク、半導体メモリなどの可搬記憶媒体(非図示)からプロセッサ101bにより読み出される。
クライアント装置101には、キーボード、マウス、タッチパッドなどの入力装置(非図示)や、ELD(Electro-Luminescent Display)、LCD(Liquid Crystal Display)などの表示装置(非図示)が接続されていてもよい。
サーバ装置102の機能は、例えば、図4に示すハードウェアにより実現されうる。図4は、第2実施形態に係るサーバ装置の機能を実現可能なハードウェアの一例を示したブロック図である。
図4に示すように、サーバ装置102は、記憶装置102a(揮発性メモリ102b、不揮発性メモリ102c)、プロセッサ102d、接続インターフェース102e、及び通信インターフェース(I/F)102fを有する。
揮発性メモリ102bは、RAMなどの揮発性記憶装置である。不揮発性メモリ102cは、HDD、SSD、フラッシュメモリなどの不揮発性記憶装置である。
プロセッサ102dは、1つ又は複数のCPU、DSP、ASIC、FPGAなどの演算装置である。
接続インターフェース102eは、例えば、SCSI(Small Computer System Interface)、SAS(Serial Attached SCSI)、FCなどの方式でストレージ装置103と接続するためのインターフェースである。
通信インターフェース102fは、クライアント装置101とサーバ装置102や他の機器(ネットワーク機器など)とを接続するためのHBAや通信回路などである。
プロセッサ102dは、例えば、記憶装置102aに格納されたプログラムを実行する。このプログラムは、記憶装置102aに格納されているか、或いは、光ディスク、磁気ディスク、半導体メモリなどの可搬記憶媒体102gからプロセッサ102dにより読み出される。
サーバ装置102には、キーボード、マウス、タッチパッドなどの入力装置(非図示)や、ELD、LCDなどの表示装置(非図示)が接続されていてもよい。
(ログ情報の格納領域及び格納処理)
上記の揮発性メモリ102b及び不揮発性メモリ102cに格納されるログ情報、ログ情報が格納される揮発性メモリ102bの格納領域、及びログ情報の格納処理について、図5を参照しながら説明する。図5は、第2実施形態に係るログ情報の格納領域及び格納処理について説明するための図である。
図5には、ログ情報201が揮発性メモリ102b及び不揮発性メモリ102cに格納される様子が示されている。なお、ログ情報201については後述する。揮発性メモリ102bには、ログ情報201の格納領域として、一次格納領域121、二次格納領域122、及び高頻度ログ格納領域123が設けられる。
ログ情報201は、非圧縮の状態で一次格納領域121に格納される。一次格納領域121に格納されたログ情報201は、定期的に二次格納領域122に格納され、一次格納領域121から削除される(図5の符号a)。
また、一次格納領域121の空き領域が不足したタイミングなどで、一次格納領域121にある非圧縮のログ情報201が不揮発性メモリ102cに格納され、一次格納領域121から削除される(図5の符号b)。
また、ログ情報201と同じ内容のログ情報が多数出力され、一次格納領域121に格納された場合、一次格納領域121にあるログ情報201は高頻度ログ格納領域123に格納され、一次格納領域121から削除される(図5の符号c)。
二次格納領域122の空き容量が不足する場合、二次格納領域122にあるログ情報の集合は、不揮発性メモリ102cに格納され、二次格納領域122から削除される。このとき、高頻度ログ格納領域123にあるログ情報の格納状態は維持される。
上記のように、第2実施形態では、一次格納領域121、二次格納領域122、及び高頻度ログ格納領域123を利用して不揮発性メモリ102cへの格納制御を実施する。
(ログ情報)
上記のログ情報201は、図6に示すような構造を有する。図6は、第2実施形態に係るログ情報の構造について説明するための図である。
図6に示すように、ログ情報201は、制御情報部202、及び実データ部203を有する。実データ部203は、例えば、1から1024バイトの長さを有する。
また、実データ部203には、サーバ装置102上で動作する各種モジュールから出力されるデータログが格納される。
各種モジュールとしては、例えば、CLI(Command Line user Interface)モジュール、HTTP(Hypertext Transfer Protocol)モジュール、iSCSIモジュールなどがある。
制御情報部202には、例えば、データログの種類(Type)、データログの出力元(Group)、実データ部203のサイズ(Format)、ログ情報201の識別番号(TraceNo)、及びデータログの出力時間(TimeStamp)が含まれる。また、制御情報部202には、ログ情報201の格納位置を示すアドレス(Address)、及びログ情報201のサイズ(Size)が含まれる。また、制御情報部202には、データログ(実データ部203)のハッシュ値(ハッシュデータ)が含まれる。
さらに、制御情報部202には、ログ情報201の減量処理に関する情報として、圧縮、重複排除、高頻度ログ管理、低頻度ログ管理、間引きに関する情報が含まれる。
ログ情報201の減量処理に関する情報のうち、「圧縮」に関する情報としては、例えば、ログ情報201が圧縮処理の対象か否かを示す値や圧縮レベルを示す値が制御情報部202に記載される。
圧縮処理の対象である場合、例えば、サーバ装置102の負荷状況などに応じて10段階で設定される圧縮レベル(1−10)が記載される。他方、圧縮処理の対象でない場合、圧縮なしを示す値(0)が記載される。
また、ログ情報201の減量処理に関する情報のうち、「重複排除」に関する情報としては、例えば、重複排除処理の対象か否かを示す値や重複排除の単位ブロック長が固定長か可変長かを示す値が制御情報部202に記載される。
重複排除処理の対象でない場合には値(0)が記載され、他のログ情報に対する重複排除処理の際にログ情報201が参照先となる場合には値(1)が記載される。他方、重複排除の単位ブロック長が固定長である場合には値(2)が記載され、重複排除の単位ブロック長が可変長である場合には値(3)が記載される。
また、ログ情報201の減量処理に関する情報のうち、「高頻度ログ管理」に関する情報としては、例えば、高頻度ログ管理の対象か否かを示す値や、不揮発性メモリ102cへの格納状況を示す値が制御情報部202に記載される。
高頻度ログ管理の処理は、減量処理を実行する際、一次格納領域121に格納されたログ情報の集合に同じ内容のログ情報が高頻度で現れる場合に、高頻度で現れるログ情報(高頻度ログ情報)を高頻度ログ格納領域123に別途格納する処理である。
ログ情報201が高頻度ログ管理の対象でない場合には値(0)が記載される。他方、ログ情報201が高頻度ログ管理の対象であり、不揮発性メモリ102cに未格納の場合には値(1)、不揮発性メモリ102cに格納済みの場合には値(2)が記載される。
また、ログ情報201の減量処理に関する情報のうち、「低頻度ログ管理」に関する情報としては、例えば、低頻度ログ管理の対象か否かを示す値が制御情報部202に記載される。
低頻度ログ管理の処理は、減量処理を実行する際、一次格納領域121に格納されたログ情報の集合に同じ内容のログ情報が低頻度で現れる場合に、低頻度で現れるログ情報(低頻度ログ情報)から同内容の他のログ情報を参照できるように実データ部203を書き換える処理である。ログ情報201が低頻度ログ管理の対象でない場合には値(0)が記載され、低頻度ログ管理の対象である場合には値(1)が記載される。
また、ログ情報201の減量処理に関する情報のうち、「間引き」に関する情報としては、例えば、間引き対象か否かを示す値が制御情報部202に記載される。間引き処理は、ログ情報201の重要度が低い場合に、実データ部203にあるデータログの先頭から一定の部分を残して、残りを削除する処理である。
ログ情報201が間引きの対象でない場合には値(0)が記載される。他方、ログ情報201が間引きの対象である場合には、間引きにより残される先頭部分の長さを示す値が記載される。
データログが出力される度にログ情報201の制御情報部202と同じ構造の制御情報部がプロセッサ102dにより生成され、そのデータログ及び制御情報部を含むログ情報が一次格納領域121に格納される。また、後述するように、一次格納領域121にあるログ情報に対する減量処理が実行される度に制御情報部の内容が更新される。
サーバ装置102は、上記の一次格納領域121、二次格納領域122、高頻度ログ格納領域123、及び制御情報部202の構造を利用して不揮発性メモリ102cに対するログ情報の格納制御を実施する。以下、上記の情報処理システム100を例に、サーバ装置102の機能について説明する。
[2−2.サーバ装置の機能]
図7を参照しながら、サーバ装置102の機能について説明する。図7は、第2実施形態に係るサーバ装置の機能について説明するためのブロック図である。
図7に示すように、サーバ装置102は、記憶部124、ログ情報生成部125、減量処理部126、及び書き出し部127を有する。なお、記憶部124の機能は、上述した記憶装置102aにより実現できる。ログ情報生成部125、減量処理部126、及び書き出し部127の機能は、主に上述したプロセッサ102dにより実現できる。
記憶部124は、圧縮レベル情報124a、及び管理情報124bを有する。
圧縮レベル情報124aは、図8に示すように、サーバ装置102の負荷状況と圧縮レベルとを対応付ける情報である。図8は、第2実施形態に係る圧縮レベル情報について説明するための図である。
図8の例では、サーバ装置102の負荷状況を10段階のレベルで規定している。サーバ装置102の負荷状況は、例えば、プロセッサ102dの使用率、及びストレージ装置103へのI/Oアクセス要求を発行したクライアント装置101への応答にかかる時間(応答時間)に基づいて決定される。
例えば、プロセッサ102dの使用率が20%以下、かつ応答時間が10msec以下の場合、最も低負荷の状態を示す負荷状況のレベル1と判断される。一方、プロセッサ102dの使用率が80%以上、かつ応答時間が1sec以上の場合、最も高負荷の状態を示す負荷状況のレベル10と判断される。
負荷状況のレベルが1の場合には最も高い圧縮レベル10に設定され、負荷状況のレベルが10の場合には最も低い圧縮レベルが1に設定される。なお、圧縮レベル情報124aの設定内容は上記以外に変更してもよい。
管理情報124bは、図9に示すように、1回の減量処理により削減されたデータ量の合計値を示す総減量値と、重複排除処理の対象にするか否かを判定する際の基準となる類似ログ情報の個数を示す類似ログ数とを含む情報である。
図9は、第2実施形態に係る管理情報について説明するための図である。類似ログ情報は、例えば、制御情報部(図6を参照)の特定部分(Type, Group, Format)が他のログ情報と共通するログ情報である。なお、類似ログ情報を規定する上記の特定部分は他の部分に変更してもよい。
ログ情報生成部125は、データログが出力されたとき、データログの出力元などから制御情報部(図6を参照)を生成し、出力されたデータログ及び生成した制御情報部を含むログ情報を生成する。
また、ログ情報生成部125は、生成したログ情報を一次格納領域121に格納する。なお、一次格納領域121の空き容量が不足する場合、ログ情報生成部125は、例えば、古いログ情報を削除して空き領域を確保し、確保した空き領域に新しいログ情報を格納する。
減量処理部126は、定期的に一次格納領域121からログ情報を読み出して減量処理を実行する。このとき、減量処理部126は、サーバ装置102の負荷状況を確認し、負荷が高い場合(例えば、プロセッサ102dの使用率が90%以上、かつ応答時間が1msec以上など)には減量処理を回避する。
減量処理として圧縮処理を選択した場合、減量処理部126は、圧縮レベル情報124aを参照し、サーバ装置102の負荷状況に基づいて圧縮レベルを決定する。また、減量処理部126は、減量処理の対象となるログ情報が重複排除処理の対象になるか否かを判断する際に管理情報124bを参照する。
また、減量処理部126は、減量処理後のログ情報を二次格納領域122又は高頻度ログ格納領域123に格納する。減量処理部126は、減量処理後のログ情報を二次格納領域122又は高頻度ログ格納領域123に格納した場合、一次格納領域121にあるログ情報を削除する。
書き出し部127は、二次格納領域122の空き状況を監視し、二次格納領域122の空きが閾値以下の場合、二次格納領域122にあるログ情報を不揮発性メモリ102cに格納して二次格納領域122のログ情報を削除する。
サーバ装置102は、上記のような機能を有する。なお、以下では説明の都合上、ログ情報生成部125によるログ情報の生成及び一次格納領域121への格納を含む処理を登録処理と呼ぶ場合がある。また、減量処理部126及び書き出し部127による上記の処理を定期チェック処理と呼ぶ場合がある。以下、登録処理及び定期チェック処理について、さらに説明する。
(登録処理及び定期チェック処理)
既に述べたように、減量処理としては、例えば、圧縮、重複排除、高頻度ログ管理、低頻度ログ管理、間引きなどの処理がある(図6を参照)。高頻度ログ管理以外の減量処理では、減量処理後のログ情報が二次格納領域122に移動される。
一方、高頻度ログ管理の処理では、高頻度で現れるログ情報(高頻度ログ情報)が高頻度ログ格納領域123に格納される。以下、高頻度ログ管理以外の処理、及び高頻度ログ管理の処理に関する登録処理及び定期チェック処理について順に説明する。
図10及び図11を参照しながら、高頻度ログ管理以外の減量処理が選択される状況について登録処理及び定期チェック処理の説明を行う。
図10は、第2実施形態に係る登録処理及び定期チェック処理(高頻度ログ管理以外)について説明するための第1の図である。図11は、第2実施形態に係る登録処理及び定期チェック処理(高頻度ログ管理以外)について説明するための第2の図である。
図10(A)は、ログ情報生成部125がログ情報201を生成して一次格納領域121に格納する処理(登録処理)を示している。ログ情報201は、制御情報部202、及びデータログを含む実データ部203を有する(図6を参照)。ログ情報生成部125による登録処理は、例えば、データログが出力されたタイミングで実行される。
登録処理の際、ログ情報生成部125は、制御情報部202にログ情報201に関する情報を記載する。例えば、ログ情報生成部125は、データログの重要度、出力元、サイズ(実データ部203のサイズ)、出力時間(出力日時など)、ハッシュデータ、及びログ情報201のサイズ、識別番号(トレース番号)を記載する(図6を参照)。
なお、ハッシュデータ(実データ部203のハッシュ値)は、ログ情報生成部125により計算される。
図10(B)は、減量処理部126によるログ情報201の減量処理、及び減量処理の結果を二次格納領域122に格納する処理を示している。なお、これらの処理は定期チェック処理の一部である。定期チェック処理は、所定の時間間隔(例えば、5分間隔)で定期的に実行される。つまり、登録処理と定期チェック処理とは非同期に実行される。
減量処理部126は、ログ情報201のうち、実データ部203に対して減量処理を実行する。例えば、減量処理部126は、実データ部203に含まれるデータログに対して圧縮や重複排除などの処理を実行する。また、減量処理部126は、減量処理の内容に基づいて制御情報部202を更新する。
例えば、圧縮処理を実行した場合、減量処理部126は、制御情報部202に圧縮レベルを記載する(図6を参照)。また、減量処理部126は、圧縮処理の結果を格納する二次格納領域122のアドレスを制御情報部202に記載する。
重複排除処理を実行した場合、減量処理部126は、他のデータログとの間で重複の有無を比較する際の単位となるデータブロック(単位ブロック)の情報(固定長/可変長など)を制御情報部202に記載する。低頻度ログ管理の処理を実行した場合、減量処理部126は、ログ情報201が低頻度ログ管理の対象である旨(有効)を示す値を制御情報部202に記載する。
間引き処理を実行した場合、減量処理部126は、間引き後に残留する部分の情報(例えば、先頭からのバイト数など)を制御情報部202に記載する。さらに、減量処理部126は、選択しなかった減量処理の情報(例えば、「圧縮なし」など)を制御情報部202に記載する。減量処理の結果を二次格納領域122に格納した後、減量処理部126は、一次格納領域121にあるログ情報201を削除する。これらの処理によりログ情報201が減量されて二次格納領域122に移動する。
図10(C)は、二次格納領域122にログ情報201の減量処理結果が格納された状態で、他のログ情報が一次格納領域121に格納された様子(登録処理後の様子)を示している。
図10(D)は、定期チェック処理により一次格納領域121に格納された他のログ情報の減量処理結果が二次格納領域122に格納された様子を示している。なお、図10(B)の定期チェック処理で実行された減量処理の種類と、図10(D)の定期チェック処理で実行された減量処理の種類とは異なってもよい。
図10(D)の後、図11(E)に処理が進む。図11(E)は、定期チェック処理が繰り返し実行された結果、二次格納領域122が一杯になった状態(FULL:領域充填の状態)を示している。つまり、領域充填の状態は、二次格納領域122の空き容量が、次に減量処理の結果を格納するに足りないリスクがある状態である。
例えば、空き容量の閾値(残5%など)を設定しておけば、二次格納領域122の空き容量が閾値以下となった場合に領域充填の状態にあると判断できる。
書き出し部127は、二次格納領域122が領域充填の状態にあると判断した場合、二次格納領域122にある減量処理の結果を全て不揮発性メモリ102cに書き出す(図11(F)を参照)。書き出しが完了した後、書き出し部127は、二次格納領域122の中身を削除して空き領域にする。
なお、変形例として、二次格納領域122の中身を全て一度に削除するのではなく、二次格納領域122に対する書き込みが生じたタイミングで、書き込まれるデータの分だけ中身を削除する方法(上書き)を適用してもよい。
上記のように、減量処理として高頻度ログ管理以外の処理が選択される場合、データログの発生時に登録処理が実行され、定期チェック処理により減量処理の結果が二次格納領域122に格納される。
また、二次格納領域122の空き状態に応じて二次格納領域122の中身が不揮発性メモリ102cに書き出される。なお、不揮発性メモリ102cへの書き出しは、減量処理の実行タイミングとは異なるタイミングで実行されてもよい。
次に、図12を参照しながら、高頻度ログ管理の処理が減量処理として選択される状況について登録処理及び定期チェック処理の説明を行う。図12は、第2実施形態に係る登録処理及び定期チェック処理(高頻度ログ管理)について説明するための図である。
図12(A)に示すように、ログ情報生成部125は、登録処理の対象が高頻度ログ情報であるか否かを確認する。
例えば、ログ情報生成部125は、確認対象となるログ情報のデータログ(対象ログ)と、一次格納領域121にあるログ情報に含まれるデータログのうち、対象ログより前に出力されたデータログ(参照ログ)とを個々に比較する。なお、参照ログとして、高頻度ログ格納領域123にあるログ情報のデータログを比較対象に追加してもよい。
また、ログ情報生成部125は、対象ログと同じ内容を有する参照ログが、比較したデータログ(対象ログ、参照ログ)の総数に占める割合を計算する。そして、ログ情報生成部125は、計算した割合が、高頻度ログ情報の判定に用いる閾値(例えば、30%)以上の場合に、対象ログを含むログ情報を高頻度ログ情報と判定する。
図12(B)に示すように、定期チェック処理の中で、減量処理部126は、高頻度ログ情報を高頻度ログ格納領域123に格納し、それ以外の一次格納領域121にあるログ情報の減量処理結果を二次格納領域122に格納する。高頻度ログ情報以外のログ情報については、上述した図10及び図11と同様に処理される。
一方、高頻度ログ格納領域123に格納された高頻度ログ情報は、図12(C)及び(D)に示すように、領域充填の状態になった二次格納領域122の中身が不揮発性メモリ102cに書き出されるときに高頻度ログ格納領域123に残留する。つまり、二次格納領域122の状態に依らず高頻度ログ情報は高頻度ログ格納領域123に維持される。
このように、高頻度ログ格納領域123に高頻度ログ情報を退避しておくことで、高頻度ログ情報を揮発性メモリ102bに維持しておくことができる。出現頻度が高い高頻度ログ情報を揮発性メモリ102b上に維持すれば、例えば、新たに登録されるデータログとの間で重複排除を実施することで、揮発性メモリ102bの容量を有効活用でき、不揮発性メモリ102cに対する書き込み回数や書き込みデータ量の削減に寄与しうる。
(再圧縮及び詰め処理)
上記の定期チェック処理は、サーバ装置102の負荷状況に応じて実行される。また、減量処理として圧縮処理が適用される場合、サーバ装置102の負荷状況に基づいて圧縮レベルが決定される(図8を参照)。例えば、図13(A)に示すように、サーバ装置102の負荷レベルが6の場合、圧縮レベル5で圧縮処理が実行される。
他方、サーバ装置102の負荷状況は時間の経過と共に変化しうる。サーバ装置102の負荷レベルが下がった場合、減量処理部126は、図13(B)に示すように、下がった負荷レベルに応じた圧縮レベルで圧縮済みのログ情報を再圧縮する。図13は、第2実施形態に係る再圧縮及び詰め処理について説明するための図である。
図13の例では、サーバ装置102の負荷レベルが6から2に下がっている。この場合、減量処理部126は、二次格納領域122にある圧縮済みのログ情報のうち、負荷レベル2に対応する圧縮レベル9より低い圧縮レベルで圧縮されたログ情報を特定する。そして、減量処理部126は、特定したログ情報のデータログを圧縮レベル9で再圧縮する。
再圧縮すると、図13(B)のように、再圧縮したログ情報の後部に空き領域が生じる。そこで、減量処理部126は、図13(C)に示すように、二次格納領域122に生じた空き領域を詰める処理を実行する。
上記の再圧縮及び詰め処理を実行することで、不揮発性メモリ102cの容量をさらに有効活用することができ、不揮発性メモリ102cに対する書き込み回数や書き込みデータ量の削減に寄与しうる。
以上、サーバ装置102の機能について説明した。
[2−3.処理の流れ]
次に、第2実施形態に係る登録処理及び定期チェック処理の流れについて説明する。
(登録処理)
図14を参照しながら、登録処理の流れについて説明する。図14は、第2実施形態に係る登録処理の流れを示したフロー図である。
(S101)ログ情報生成部125は、各種モジュールから出力されたデータログのハッシュ値を計算する。また、ログ情報生成部125は、制御情報部を生成し、データログの重要度、出力元、サイズ、出力時間、ハッシュデータ(計算したハッシュ値)、及びログ情報のサイズ、識別番号(トレース番号)を制御情報部に記載する(図6を参照)。また、ログ情報生成部125は、出力されたデータログと、生成した制御情報部とを結合してログ情報を生成する。
(S102)ログ情報生成部125は、一次格納領域121にログ情報を格納するための空き領域があるか否かを判定する。一次格納領域121に空き領域がある場合、処理はS106へと進む。一方、一次格納領域121に空き領域がない場合、処理はS103へと進む。
(S103)ログ情報生成部125は、一次格納領域121にあるログ情報を古い順に選択する。また、ログ情報生成部125は、選択したログ情報と1つ新しいログ情報との間で優先度を比較する。
例えば、データログの種類が「故障」のログ情報は、データログの種類が「環境」のログ情報より高い優先度に設定される。なお、優先度は、制御情報部に記載がある情報のうち、データログの種類以外の項目について設定されてもよい。
(S104)ログ情報生成部125は、S103の比較から、選択したログ情報の優先度が低いか否かを判定する。選択したログ情報の優先度が低い場合、処理はS105へと進む。一方、選択したログ情報の優先度が低くない場合、処理はS103へと進む。
(S105)ログ情報生成部125は、選択したログ情報を一次格納領域121から削除する。
(S106)ログ情報生成部125は、新たなログ情報(S101で生成されたログ情報)を一次格納領域121に格納する。なお、クライアント装置101の要求に応じてログ情報を格納した場合、ログ情報生成部125は、ログ情報の格納が完了した旨の応答をクライアント装置101に返す。S106の処理が完了すると、図14に示した一連の処理は終了する。
(定期チェック処理)
図15及び図16を参照しながら、定期チェック処理の流れについて説明する。図15は、第2実施形態に係る定期チェック処理の流れを示した第1の図である。図16は、第2実施形態に係る定期チェック処理の流れを示した第2の図である。
(S111)減量処理部126は、サーバ装置102の負荷が閾値以上(プロセッサ102dの使用率が90%以上、かつ応答時間が1msec以上など)か否かを判定する。サーバ装置102の負荷が閾値以上の場合、図15及び図16に示した一連の処理は終了する。つまり、高負荷の場合には定期チェック処理が回避される。一方、サーバ装置102の負荷が閾値未満の場合、処理はS112へと進む。
(S112)減量処理部126は、一次格納領域121にログ情報があるか否かを判定する。一次格納領域121にログ情報がある場合、処理はS113へと進む。一方、一次格納領域121にログ情報がない場合、処理はS124へと進む。
(S113)減量処理部126は、減量処理の対象となるログ情報を選択する。例えば、減量処理部126は、各ログ情報の制御情報部にあるデータログの出力時間を参照し、古い順に未選択のログ情報を選択する。
(S114)減量処理部126は、選択したログ情報が高頻度ログ情報か否かを判定する。
例えば、ログ情報生成部125は、選択したログ情報のデータログ(対象ログ)と、一次格納領域121にあるログ情報に含まれるデータログのうち、対象ログより前に出力されたデータログ(参照ログ)とを個々に比較する。なお、参照ログとして、高頻度ログ格納領域123にあるログ情報のデータログを比較対象に追加してもよい。
また、ログ情報生成部125は、対象ログと同じ内容を有する参照ログが、比較したデータログ(対象ログ、参照ログ)の総数に占める割合を計算する。そして、ログ情報生成部125は、計算した割合が、高頻度ログ情報の判定に用いる閾値(例えば、30%)以上の場合に、対象ログを含むログ情報を高頻度ログ情報であると判定する。
選択したログ情報が高頻度ログ情報である場合、処理はS115へと進む。一方、選択したログ情報が高頻度ログ情報でない場合、処理はS116へと進む。
(S115)減量処理部126は、高頻度ログ管理の処理(図12(B)を参照)を実行する。つまり、減量処理部126は、選択したログ情報を高頻度ログ格納領域123に格納する。S115の処理が完了すると、処理はS123へと進む。
(S116)減量処理部126は、選択したログ情報が低頻度ログ情報であるか否かを判定する。
S114で、選択したログ情報が高頻度ログ情報ではないと判定されており、S116では、対象ログと同じ内容を有する参照ログの割合が上記の閾値未満である。しかし、対象ログと同じ内容を有する参照ログが存在する可能性はある。対象ログと同じ内容を有する参照ログが存在する場合、減量処理部126は、選択したログ情報を低頻度ログ情報であると判定する。
選択したログ情報が低頻度ログ情報である場合、処理はS117へと進む。一方、選択したログ情報が低頻度ログ情報でない場合、処理はS118へと進む。
(S117)減量処理部126は、低頻度ログ管理の処理を実行する。例えば、減量処理部126は、選択したログ情報の実データ部を、対象ログと同じ内容の参照ログを含むログ情報のアドレスに書き換える。この書き換えにより、実データ部のデータ量が削減されると共に、アドレスの参照により参照ログを利用できるようになる。減量処理部126は、実データ部を書き換えたログ情報を二次格納領域122に格納する。S117の処理が完了すると、処理はS123へと進む。
(S118)減量処理部126は、選択したログ情報が間引き対象ログ情報であるか否かを判定する。例えば、減量処理部126は、選択したログ情報の制御情報部を参照し、予め設定された低重要度のデータログ(例えば、種類が「環境」など)である場合に、選択したログ情報を間引き対象ログ情報であると判定する。
選択したログ情報が間引き対象ログ情報である場合、処理はS119へと進む。一方、選択したログ情報が間引き対象ログ情報でない場合、処理はS120へと進む。
(S119)減量処理部126は、選択したログ情報に対する間引き処理を実行する。例えば、減量処理部126は、選択したログ情報のデータログに対して先頭の8バイト分を残して削除する処理を実行する。なお、残す部分のサイズは予め設定される。減量処理部126は、間引き処理後のログ情報を二次格納領域122に格納する。S119の処理が完了すると、処理はS123へと進む。
(S120)減量処理部126は、選択したログ情報が重複排除対象の類似ログ情報か否かを判定する。なお、類似ログ情報は、例えば、制御情報部(図6を参照)の特定部分(例えば、Type, Group, Format)が他のログ情報と共通するログ情報である。減量処理部126は、選択したログ情報より古い他のログ情報と、選択したログ情報とで特定部分が共通する場合、選択したログ情報が重複排除対象の類似ログ情報であると判定する。
選択したログ情報が重複排除対象の類似ログ情報である場合、処理はS121へと進む。一方、選択したログ情報が重複排除対象の類似ログ情報でない場合、処理はS122へと進む。
(S121)減量処理部126は、選択したログ情報に対する重複排除処理を実行する。
例えば、減量処理部126は、選択したログ情報と制御情報部の特定部分が共通する他のログ情報のデータログ(元ログ)及び選択したログ情報のデータログを単位ブロックに分けて比較し、内容が重複する単位ブロックを特定する。
そして、減量処理部126は、重複する単位ブロックについて、選択したログ情報のデータログから元ログが参照できるように設定した上で、選択したログ情報から重複する単位ブロックを削除する。減量処理部126は、重複排除後のログ情報を二次格納領域122に格納する。
S121の処理が完了すると、処理はS123へと進む。
(S122)減量処理部126は、選択したログ情報の圧縮処理を実行する。例えば、減量処理部126は、サーバ装置102の負荷レベルを検出し、検出した負荷レベルに基づいて圧縮レベルを決定する(図8を参照)。また、減量処理部126は、選択したログ情報のデータログに対し、決定した圧縮レベルで圧縮処理を実行する。減量処理部126は、圧縮処理後のログ情報を二次格納領域122に格納する。
(S123)減量処理部126は、所定数(例えば、100)のログ情報を処理したか否かを判定する。一度に処理するログ情報の数を制限することで、減量処理による急激な負荷増大を抑制することができる。所定数のログ情報を処理した場合、処理はS124へと進む。一方、処理が完了したログ情報の数が所定数に満たない場合、処理はS113へと進む。
(S124)減量処理部126は、制御情報部を参照し、二次格納領域122に格納されたログ情報の中から、現在の負荷状況に応じた圧縮レベルより低い圧縮レベルで圧縮されたログ情報(圧縮ログ情報)を検出する。
(S125)減量処理部126は、検出したログ情報を再圧縮する(図13(B)を参照)。また、減量処理部126は、再圧縮により二次格納領域122に生じた空き領域を埋めるようにログ情報の位置を移動する(図13(C)を参照)。
(S126)減量処理部126は、二次格納領域122の空きが閾値(例えば、全容量の5%)以下か否かを判定する。二次格納領域122の空きが閾値以下である場合、処理はS127へと進む。一方、二次格納領域122の空きが閾値以下でない場合、図15及び図16に示した一連の処理は終了する。
(S127)減量処理部126は、二次格納領域122にあるログ情報を不揮発性メモリ102cに移動する(図11(F)及び図12(D)を参照)。S127の処理が完了すると、図15及び図16に示した一連の処理は終了する。
以上、登録処理及び定期チェック処理の流れについて説明した。
(適用例)
ここで、図17を参照しながら、具体的なデータログの出力値を例に上述した登録処理について、さらに説明する。図17は、第2実施形態に係る登録処理について、さらに説明するための図である。また、図18を参照しながら、同じ出力値の例を用いて、圧縮処理について、さらに説明する。図18は、第2実施形態に係る定期チェック処理のうち、圧縮処理について、さらに説明するための図である。
図17を参照する。クライアント装置101(ホスト)から一定時間間隔でサーバ装置102やストレージ装置103にアクセスがある場合、同じ傾向のデータログが出力される。なお、説明の都合上、n番目のデータログをデータログ#nと表記し、データログ#nを含むログ情報のトレース番号をnと表記する場合がある。
例えば、1時間に1回、ストレージ装置103の環境情報(温度、電圧、FRUなど)が読み出されると、図17に例示したデータログ#1、…、#4のようなデータログが出力される。
データログ#1は、10時にクライアント装置101からCLIコマンドでストレージ装置103の環境情報が採取される場合に出力されるデータログの例である。データログ#1のStatus、温度、電圧、FRU情報は、CLIコマンドで採取される環境情報の一例である。また、サイズは、データログ#1のデータサイズを表す。
ログ情報生成部125は、データログ#1が出力されるとデータログ#1のハッシュ値を計算し、ハッシュデータとして制御情報部に記載する。また、データログ#1のサイズ(64)、トレース番号(1)、ログ情報のサイズ(96)を制御情報部に記載する。なお、ログ情報のサイズは、実データ部となるデータログ#1のサイズ(64)に制御情報部のサイズ(32)を加えた値である。登録処理の段階では、圧縮などの減量処理に関する項目、及びアドレスの項目には初期値(0)が設定される。
また、ログ情報生成部125は、管理情報124bの総減量値を初期値(0)に設定する。また、ログ情報生成部125は、データログ#1、…、#4を比較し、類似ログ情報に該当するデータログの数(類似ログ数)をカウントする。
また、ログ情報生成部125は、カウントした類似ログ数を管理情報124bに記載する。ログ情報生成部125は、データログ#1、…、#4のそれぞれについて登録処理が完了した旨を示す応答をクライアント装置101に返す。
次に、図18を参照する。定期チェック処理の開始時に、減量処理部126は、サーバ装置102の負荷を確認する。例えば、サーバ装置102の負荷が(A)の状況(CPU使用率が4%、応答時間が2msec)である場合、減量処理部126は、CPU使用率及び応答時間の基準値に基づいて減量処理を実行するかを判断する。図18の例では、(B)のように減量処理が実行される。減量処理部126は、(C)のような選択条件を確認し、条件に該当する減量処理を選択する。
上記の選択条件としては、例えば、高頻度ログ情報に該当するか、低頻度ログ情報に該当するか、間引き対象か、重複排除対象かという項目を含む。(C)の例(データログ#1の場合)では、データログ#1のログ情報が高頻度ログ情報に該当せず、低頻度ログ情報に該当せず、間引き対象外であり、重複排除対象外である。この場合、データログ#1のログ情報は、(D)のように圧縮処理の対象となる(図15、図16を参照)。
この場合、減量処理部126は、サーバ装置102の負荷状況に応じた圧縮レベル(この例では10)を決定する。そして、減量処理部126は、データログ#1を圧縮し、圧縮結果に応じて制御情報部の内容を更新する。
例えば、圧縮率25%で圧縮された場合、制御情報部のサイズ32に、圧縮後の実データ部のサイズ16を加えた48が圧縮後におけるログ情報のサイズになる。
減量処理部126は、(E)のように、ログ情報のサイズ、及び二次格納領域122におけるログ情報の書き込み先となるアドレス(この例では二次格納領域122の先頭を示す0)を更新する。また、減量処理部126は、制御情報部に圧縮レベルを記載する。また、上記の圧縮処理によりログ情報のサイズが96から48に削減されたため、減量処理部126は、管理情報124bの総減量値を48に更新する。但し、サイズの単位はByteである。データログ#2、…、#4も上記と同様に処理される。
次に、図19を参照しながら、具体的なデータログの出力値を例に上述した重複排除処理について、さらに説明する。図19は、第2実施形態に係る定期チェック処理のうち、重複排除処理について、さらに説明するための図である。
図19に例示したデータログ#1、…、#11に対応するログ情報は、いずれもType, Group, Formatが共通する類似ログ情報である。このように類似ログ情報が検出された場合、減量処理部126は、時間的に連続する類似ログ情報の数(類似ログ数)をカウントする。そして、減量処理部126は、類似ログ数を管理情報124bに記載する。また、減量処理部126は、類似ログ数が基準値(この例では10)以降の類似ログ情報を重複排除対象に設定する。
図19の例では、データログ#10、#11が重複排除対象になる。但し、重複排除処理では、重複する単位ブロック(重複ブロック)が存在しても、ベースとなる一方のデータログの重複ブロックは排除されず、他方のデータログの重複ブロックが排除される。
この例では、データログ#10がベースに設定され、データログ#11の重複ブロックが排除される。減量処理部126は、データログ#10に対応する制御情報部に含まれる重複排除の項目を1(ベースである旨を示す値)に設定する。また、減量処理部126は、データログ#11に対応する制御情報部に含まれる重複排除の項目を2に設定する。
なお、データログ#10、#11で重複排除を実施した結果、データログ#11の実データ部のサイズが64から8に減少した場合、(C)のように、減量処理部126は、管理情報124bの総減量値を56に設定する。また、減量処理部126は、管理情報124bの類似ログ数を11に設定する。また、データログ#1、…、#9のログ情報については圧縮処理対象(図18を参照)となる。
次に、図20を参照しながら、具体的なデータログの出力値を例に上述した高頻度ログ管理の処理について、さらに説明する。図20は、第2実施形態に係る定期チェック処理のうち、高頻度ログ管理の処理について、さらに説明するための図である。
また、図21を参照しながら、同じ出力値の例を用いて、低頻度ログ管理の処理について、さらに説明する。図21は、第2実施形態に係る定期チェック処理のうち、低頻度ログ管理の処理について、さらに説明するための図である。
図20を参照する。クライアント装置101やサーバ装置102のGUI(Graphical User Interface)でログイン、GUI操作、ログアウトなどの操作を繰り返すと、図20(A)に示すような同じ傾向のデータログ#1、…、#13が出力される。この例では、データログ#1、#7、#10、#13が同じ内容である。
減量処理部126は、(B)のように、データログの総数と同じデータログの数との比を出現頻度として計算する。この例では、データログ#10より前にあるデータログ#1、#7が同じであるため、データログ#10の出現頻度は0.3(0.3=3/10)となる。高頻度ログ情報と判断される条件(高頻度条件)が「出現頻度≧閾値(30%)」である場合、データログ#10のログ情報は高頻度ログ情報と判定される。データログ#13についても同様である。
上記の例では、データログ#10のログ情報が1番目の高頻度ログ情報であるから、減量処理部126は、データログ#10のログ情報を圧縮して高頻度ログ格納領域123に格納する。
なお、高頻度ログ格納領域123に格納されるログ情報は圧縮しなくてもよい。減量処理部126は、データログ#11のログ情報について実データ部をデータログ#10のログ情報が格納された高頻度ログ格納領域123のアドレスに書き換える。そして、減量処理部126は、書き換え後のログ情報を二次格納領域122に格納する。
なお、高頻度ログ情報以外のログ情報は圧縮処理後に二次格納領域122に格納される。但し、低頻度ログ管理が有効に設定されている場合、出現頻度が閾値未満であるデータログ#7のログ情報は、図21(A)の条件に基づいて低頻度ログ情報と判定される。
この場合、減量処理部126は、(B)のようにデータログ#7に対応するログ情報の実データ部を、データログの内容が同じデータログ#1のログ情報を示すトレース番号に書き換える。そして、減量処理部126は、書き換え後のログ情報を二次格納領域122に格納する。
以上、登録処理及び定期チェック処理について、具体例に則して説明した。
上記のように、サーバ装置102は、減量前のログ情報が格納される一次格納領域121、減量後のログ情報が格納される二次格納領域122、及び高頻度ログ情報が格納される高頻度ログ格納領域123を利用する。
また、サーバ装置102の負荷に応じて減量処理の回避や圧縮レベルの制御を実施することで、減量処理に伴うサーバ装置102の急な負荷増大が抑制される。また、ログ情報のサイズ低減により揮発性メモリ102bに蓄積可能なログ情報が増加し、不揮発性メモリ102cへの書き込み回数や書き込みデータ量を減らすことに寄与しうる。
[2−4.適用例]
上記の情報処理システム100に係る技術は、例えば、図22に示すストレージシステム300に適用することが可能である。図22は、第2実施形態に係る技術を適用可能なストレージシステムの一例を示した図である。
図22に例示したストレージシステム300は、ホスト装置301、及びストレージ装置302を有する。ストレージ装置302は、CM321、322、及び記憶装置323を有する。
なお、図22には、ストレージ装置302に2つのCMが搭載される例を示しているが、ストレージ装置302に搭載されるCMの数は2以外でもよい。また、CM321、322は実質的に同じハードウェア及び機能を有する。
CM321は、複数のCA(Channel Adapter)、複数のI/F(Interface)、プロセッサ321a、及びメモリ321bを有する。
CAは、ホスト装置301との間の接続制御を実施するアダプタ回路である。例えば、CAは、FCなどの通信回線を介して、ホスト装置301に搭載されるHBA(Host Bus Adapter)や、CAとホスト装置301との間に設置されるスイッチに接続される。I/Fは、SAS(Serial Attached SCSI(Small Computer System Interface))やSATA(Serial ATA(Advanced Technology Attachment))などの回線を介して記憶装置323と接続するためのインターフェースである。
プロセッサ321aは、例えば、CPU、DSP、ASIC、FPGAなどである。メモリ321bは、例えば、RAMやフラッシュメモリなどである。なお、図22の例ではCM321の内部にメモリ321bが搭載されているが、CM321の外部に接続されたメモリを利用してもよい。
記憶装置323は、少なくとも1つの記録媒体が搭載される。記録媒体は、例えば、SSDやHDDなどである。記憶装置323には、異なる種類の記録媒体(HDD、SSDなど)が混在していてもよい。ディスクアレイ(ストレージアレイ)やRAID装置などは記憶装置323の一例である。記憶装置323により提供される物理ボリュームやストレージプールなどの記憶領域は物理記憶領域の一例である。
CM322は、上述したCM321と同じ要素を有する。また、CM321、322はストレージ装置302の内部で通信可能に接続されている。また、CM322は、CM321と同様に記憶装置323へのアクセスが可能である。
上述した情報処理システム100と、上記のストレージシステム300との対応関係は次の通りである。
上述したクライアント装置101は、ホスト装置301に対応する。上述したサーバ装置102は、ストレージ装置302のCM321、322に対応する。上述したストレージ装置103は、ストレージ装置302の記憶装置323に対応する。
上述したサーバ装置102の記憶装置102aは、CM321のメモリ321bに対応する。上述したサーバ装置102のプロセッサ102dは、CM321のプロセッサ321aに対応する。
なお、ここでは説明の都合上、上述したサーバ装置102とCM321との対応関係を示したが、上述したサーバ装置102とCM322との対応関係も同様である。
上記の対応関係を考慮することで、情報処理システム100を例に説明した第2実施形態の技術を上記のストレージシステム300にそのまま適用可能である。
以上、第2実施形態について説明した。
<3.付記>
以上説明した実施形態に関し、さらに以下の付記を開示する。
(付記1) 第1の揮発性記憶領域及び第2の揮発性記憶領域と、
不揮発性記憶領域と、
データログを前記第1の揮発性記憶領域に格納する制御部とを有し、
前記制御部は、
前記データログが格納された前記第1の揮発性記憶領域の開放の判定を行うための第1の開放条件に基づいて、前記第1の揮発性記憶領域にあるデータログのデータ量を削減する減量処理を実行し、前記減量処理に関する情報と前記減量処理の結果とを有するログ情報を前記第2の揮発性記憶領域に格納し、
第2の開放条件に基づいて、前記第2の揮発性記憶領域にある前記ログ情報を前記不揮発性記憶領域に格納する
情報処理装置。
(付記2) 前記制御部は、前記第1の開放条件及び前記情報処理装置の負荷に基づいて前記減量処理を実行する
付記1に記載の情報処理装置。
(付記3) 前記制御部は、前記減量処理を実行するとき、
前記第1の揮発性記憶領域にある複数のデータログのうち、データログの取得環境に関する所定の環境条件が共通し、かつ時間的に連続する所定数以上のデータログがある場合に前記減量処理として重複排除処理を実行する
付記1に記載の情報処理装置。
(付記4) 前記情報処理装置は、第3の揮発性記憶領域を有し、
前記制御部は、前記減量処理を実行するとき、
前記第1の揮発性記憶領域にある複数のデータログの中で、同じ内容を有するデータログの組が前記複数のデータログに占める割合を計算し、前記割合が閾値以上の場合に、前記減量処理として、前記組に含まれるデータログのうち一のデータログを前記第3の揮発性記憶領域に格納し、他のデータログを、前記一のデータログを参照するための第1の参照情報に書き換える処理を実行する
付記1に記載の情報処理装置。
(付記5) 前記制御部は、前記減量処理を実行するとき、
前記割合が前記閾値未満の場合に、前記減量処理として、前記組に含まれるデータログのうち一のデータログを圧縮し、他のデータログを、前記一のデータログの参照するための第2の参照情報に書き換える処理を実行する
付記4に記載の情報処理装置。
(付記6) 前記制御部は、前記減量処理を実行するとき、
前記第1の揮発性記憶領域にある複数のデータログのうち、前記減量処理の対象となるデータログの種類が所定の種類である場合に、前記減量処理として、当該データログの先頭から所定サイズの領域を残して削除する処理を実行する
付記1に記載の情報処理装置。
(付記7) 前記制御部は、
前記減量処理を実行するとき、前記減量処理として圧縮処理が選択された場合に、前記自装置の負荷が第1の大きさであるとき、前記第1の大きさに応じた第1の圧縮率で前記第1の揮発性記憶領域にあるデータログを圧縮し、
前記自装置の負荷が前記第1の大きさより小さい第2の大きさに変化したとき、前記第1の圧縮率で圧縮後のデータログを前記第2の揮発性記憶領域から読み出し、前記圧縮後のデータログを前記第1の圧縮率より大きい第2の圧縮率で再圧縮する
付記1に記載の情報処理装置。
(付記8) 前記制御部は、
前記再圧縮により前記第2の揮発性記憶領域に空き領域が生じた場合、前記空き領域がなくなるように前記第2の揮発性記憶領域にあるデータの格納位置を移動させる
付記7に記載の情報処理装置。
(付記9) コンピュータに、
データログを第1の揮発性記憶領域に格納し、
前記データログが格納された前記第1の揮発性記憶領域の開放の判定を行うための第1の開放条件に基づいて、第1の揮発性記憶領域にあるデータログのデータ量を削減する減量処理を実行し、前記減量処理に関する情報と前記減量処理の結果とを有するログ情報を第2の揮発性記憶領域に格納し、
第2の開放条件に基づいて、前記第2の揮発性記憶領域にある前記ログ情報を前記不揮発性記憶領域に格納する
処理を実行させる、プログラム。
(付記10) 前記減量処理は、前記第1の開放条件及び前記情報処理装置の負荷に基づいて実行される
付記9に記載のプログラム。
(付記11) 前記減量処理を実行する処理では、
前記第1の揮発性記憶領域にある複数のデータログのうち、データログの取得環境に関する所定の環境条件が共通し、かつ時間的に連続する所定数以上のデータログがある場合に前記減量処理として重複排除処理を前記コンピュータに実行させる、
付記9に記載のプログラム。
(付記12) 前記減量処理を実行する処理では、
前記第1の揮発性記憶領域にある複数のデータログの中で、同じ内容を有するデータログの組が前記複数のデータログに占める割合を計算し、前記割合が閾値以上の場合に、前記減量処理として、前記組に含まれるデータログのうち一のデータログを第3の揮発性記憶領域に格納し、他のデータログを、前記一のデータログを参照するための第1の参照情報に書き換える処理を前記コンピュータに実行させる、
付記9に記載のプログラム。
(付記13) 前記減量処理を実行する処理では、
前記割合が前記閾値未満の場合に、前記減量処理として、前記組に含まれるデータログのうち一のデータログを圧縮し、他のデータログを、前記一のデータログの参照するための第2の参照情報に書き換える処理を前記コンピュータに実行させる、
付記12に記載のプログラム。
(付記14) 前記減量処理を実行する処理では、
前記第1の揮発性記憶領域にある複数のデータログのうち、前記減量処理の対象となるデータログの種類が所定の種類である場合に、前記減量処理として、当該データログの先頭から所定サイズの領域を残して削除する処理を前記コンピュータに実行させる、
付記9に記載のプログラム。
(付記15) 前記減量処理を実行する処理では、
前記減量処理として圧縮処理が選択された場合に、前記自装置の負荷が第1の大きさであるとき、前記第1の大きさに応じた第1の圧縮率で前記第1の揮発性記憶領域にあるデータログを圧縮する処理を前記コンピュータに実行させ、
前記自装置の負荷が前記第1の大きさより小さい第2の大きさに変化したとき、前記第1の圧縮率で圧縮後のデータログを前記第2の揮発性記憶領域から読み出し、前記圧縮後のデータログを前記第1の圧縮率より大きい第2の圧縮率で再圧縮する処理を前記コンピュータに実行させる、
付記9に記載のプログラム。
(付記16) 前記再圧縮により前記第2の揮発性記憶領域に空き領域が生じた場合、前記空き領域がなくなるように前記第2の揮発性記憶領域にあるデータの格納位置を移動させる処理を前記コンピュータに実行させる、
付記15に記載のプログラム。
(付記17) 前記第1の開放条件は、前記ログ情報を前記第2の揮発性記憶領域に格納してから所定時間が経過したことである
付記1に記載の情報処理装置。
(付記18) 前記第2の開放条件は、前記第2の揮発性記憶領域の空き容量が第1の空き容量以下になったことである
付記1に記載の情報処理装置。
(付記19) 前記制御部は、
前記第1の揮発性記憶領域の空き容量が第2の空き容量以下になったとき、前記第1の揮発性記憶領域にあるデータログを古い順に削除し、新しいデータログを前記第1の揮発性記憶領域に格納する
付記18に記載の情報処理装置。
(付記20) 前記制御部は、
前記第1の開放条件を満たし、かつ前記自装置の負荷が第3の大きさより大きいとき、前記減量処理を回避し、前記第1の揮発性記憶領域にあるデータログを前記不揮発性記憶領域に格納する
付記19に記載の情報処理装置。
(付記21) 前記制御部は、
前記ログ情報を前記第2の揮発性記憶領域に格納した後、前記第1の揮発性記憶領域を空き領域にする
付記20に記載の情報処理装置。
(付記22) 前記制御部は、
前記不揮発性記憶領域に前記ログ情報を格納した後、前記第2の揮発性記憶領域を空き領域にする
付記21に記載の情報処理装置。
10 情報処理装置
11 制御部
12 揮発性メモリ
12a 第1の揮発性記憶領域
12b 第2の揮発性記憶領域
13 不揮発性記憶領域
14 管理情報
15 減量処理
21 データログ
22 圧縮ログ
23 重複排除データ
24 ログ情報
24a 減量処理に関する情報
24b 減量処理の結果

Claims (9)

  1. 第1の揮発性記憶領域及び第2の揮発性記憶領域と、
    不揮発性記憶領域と、
    データログを前記第1の揮発性記憶領域に格納する制御部とを有し、
    前記制御部は、
    前記データログが格納された前記第1の揮発性記憶領域の開放の判定を行うための第1の開放条件に基づいて、前記第1の揮発性記憶領域にあるデータログのデータ量を削減する減量処理を実行し、前記減量処理に関する情報と前記減量処理の結果とを有するログ情報を前記第2の揮発性記憶領域に格納し、
    第2の開放条件に基づいて、前記第2の揮発性記憶領域にある前記ログ情報を前記不揮発性記憶領域に格納する
    情報処理装置。
  2. 前記制御部は、前記第1の開放条件及び前記情報処理装置の負荷に基づいて前記減量処理を実行する
    請求項1に記載の情報処理装置。
  3. 前記制御部は、前記減量処理を実行するとき、
    前記第1の揮発性記憶領域にある複数のデータログのうち、データログの取得環境に関する所定の環境条件が共通し、かつ時間的に連続する所定数以上のデータログがある場合に前記減量処理として重複排除処理を実行する
    請求項1に記載の情報処理装置。
  4. 前記情報処理装置は、第3の揮発性記憶領域を有し、
    前記制御部は、前記減量処理を実行するとき、
    前記第1の揮発性記憶領域にある複数のデータログの中で、同じ内容を有するデータログの組が前記複数のデータログに占める割合を計算し、前記割合が閾値以上の場合に、前記減量処理として、前記組に含まれるデータログのうち一のデータログを前記第3の揮発性記憶領域に格納し、他のデータログを、前記一のデータログを参照するための第1の参照情報に書き換える処理を実行する
    請求項1に記載の情報処理装置。
  5. 前記制御部は、前記減量処理を実行するとき、
    前記割合が前記閾値未満の場合に、前記減量処理として、前記組に含まれるデータログのうち一のデータログを圧縮し、他のデータログを、前記一のデータログを参照するための第2の参照情報に書き換える処理を実行する
    請求項4に記載の情報処理装置。
  6. 前記制御部は、前記減量処理を実行するとき、
    前記第1の揮発性記憶領域にある複数のデータログのうち、前記減量処理の対象となるデータログの種類が所定の種類である場合に、前記減量処理として、当該データログの先頭から所定サイズの領域を残して削除する処理を実行する
    請求項1に記載の情報処理装置。
  7. 前記制御部は、
    前記減量処理を実行するとき、前記減量処理として圧縮処理が選択された場合に、前記自装置の負荷が第1の大きさであるとき、前記第1の大きさに応じた第1の圧縮率で前記第1の揮発性記憶領域にあるデータログを圧縮し、
    前記自装置の負荷が前記第1の大きさより小さい第2の大きさに変化したとき、前記第1の圧縮率で圧縮後のデータログを前記第2の揮発性記憶領域から読み出し、前記圧縮後のデータログを前記第1の圧縮率より大きい第2の圧縮率で再圧縮する
    請求項1に記載の情報処理装置。
  8. 前記制御部は、
    前記再圧縮により前記第2の揮発性記憶領域に空き領域が生じた場合、前記空き領域がなくなるように前記第2の揮発性記憶領域にあるデータの格納位置を移動させる
    請求項7に記載の情報処理装置。
  9. コンピュータに、
    データログを第1の揮発性記憶領域に格納し、
    前記データログが格納された前記第1の揮発性記憶領域の開放の判定を行うための第1の開放条件に基づいて、第1の揮発性記憶領域にあるデータログのデータ量を削減する減量処理を実行し、前記減量処理に関する情報と前記減量処理の結果とを有するログ情報を第2の揮発性記憶領域に格納し、
    第2の開放条件に基づいて、前記第2の揮発性記憶領域にある前記ログ情報を前記不揮発性記憶領域に格納する
    処理を実行させる、プログラム。
JP2017137127A 2017-07-13 2017-07-13 情報処理装置及びプログラム Active JP6886110B2 (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2017137127A JP6886110B2 (ja) 2017-07-13 2017-07-13 情報処理装置及びプログラム

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2017137127A JP6886110B2 (ja) 2017-07-13 2017-07-13 情報処理装置及びプログラム

Publications (2)

Publication Number Publication Date
JP2019020906A JP2019020906A (ja) 2019-02-07
JP6886110B2 true JP6886110B2 (ja) 2021-06-16

Family

ID=65355778

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2017137127A Active JP6886110B2 (ja) 2017-07-13 2017-07-13 情報処理装置及びプログラム

Country Status (1)

Country Link
JP (1) JP6886110B2 (ja)

Family Cites Families (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2005115857A (ja) * 2003-10-10 2005-04-28 Sony Corp ファイル記憶装置
JP5963228B2 (ja) * 2013-05-30 2016-08-03 株式会社日立製作所 ストレージシステム及びデータバックアップ方法
JP6291776B2 (ja) * 2013-10-11 2018-03-14 富士通株式会社 情報処理システム、情報処理システムの制御方法及び情報処理装置の制御プログラム
JP5982025B1 (ja) * 2015-02-27 2016-08-31 京セラドキュメントソリューションズ株式会社 情報処理装置およびメモリー管理プログラム

Also Published As

Publication number Publication date
JP2019020906A (ja) 2019-02-07

Similar Documents

Publication Publication Date Title
US11921684B2 (en) Systems and methods for database management using append-only storage devices
US10324843B1 (en) System and method for cache management
US8843716B2 (en) Computer system, storage apparatus and data transfer method
US20130311429A1 (en) Method for controlling backup and restoration, and storage system using the same
EP2976713B1 (en) Information processing system, control program, and information processing device
US9798629B1 (en) Predicting backup failures due to exceeding the backup window
US8700871B2 (en) Migrating snapshot data according to calculated de-duplication efficiency
JP5756394B2 (ja) 順次バックアップ・デバイス内に格納されたバックアップ・オブジェクトからファイルの復元セットを復元するためのコンピュータ・プログラム、システム、および方法
US9798734B2 (en) Preserving redundancy in data deduplication systems by indicator
US9747357B2 (en) Fast snapshots
US20100268689A1 (en) Providing information relating to usage of a simulated snapshot
US8935304B2 (en) Efficient garbage collection in a compressed journal file
US10606499B2 (en) Computer system, storage apparatus, and method of managing data
US20130138705A1 (en) Storage system controller, storage system, and access control method
US9703795B2 (en) Reducing fragmentation in compressed journal storage
JP6886110B2 (ja) 情報処理装置及びプログラム
WO2011125132A1 (en) Information processing device and data shredding method for avoiding multiple shredding of a same data block
US11403182B2 (en) Method and system for any-point in time recovery within traditional storage system via a continuous data protection interceptor
JP6579149B2 (ja) ストレージ制御装置、及びストレージ制御プログラム
WO2017212515A1 (ja) ストレージシステム、計算機、およびストレージ制御方法
JP6875449B2 (ja) ストレージシステム、及びデータの回復方法

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20200409

RD02 Notification of acceptance of power of attorney

Free format text: JAPANESE INTERMEDIATE CODE: A7422

Effective date: 20200414

RD04 Notification of resignation of power of attorney

Free format text: JAPANESE INTERMEDIATE CODE: A7424

Effective date: 20200414

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

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20210426

R150 Certificate of patent or registration of utility model

Ref document number: 6886110

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150