(57)【要約】      （修正有）【課題】記憶機器の処理性能を高める記憶機器のデータ位置の処理方法及び処理装置、コンピュータ機器並びにコンピュータ読み取り可能な記憶媒体を提供する。【解決手段】記憶機器のデータ位置の処理方法は、機器の再起動時、記憶機器に記憶された履歴データの第１位置情報セットをメモリに書き込み、履歴データ及びその対応する位置情報が記憶機器に対応して記憶されるステップ１０１と、記憶機器に更新データが存在する場合、記憶機器における更新データに対応して記憶された更新データの位置情報をメモリに書き込むステップ１０２と、第１位置情報セット及び更新データの位置情報に応じて、メモリ内に第２位置情報セットを生成し、且つ記憶機器に記憶するステップ１０３と、を含む。完全な位置情報をメモリ内に迅速に構築でき、スペース割り当て情報の完全性を保証するだけでなく、またＩＯを減らす上で再起動速度を高める。【選択図】図１
2019204527.tif 000002
【特許請求の範囲】
【請求項１】
記憶機器のデータ位置の処理方法であって、
機器の再起動時、記憶機器に記憶された履歴データの第１位置情報セットをメモリに書き込み、前記履歴データ及びその対応する位置情報が前記記憶機器に対応して記憶され、前記第１位置情報セットはデータ位置情報のセットを示すために用いられるステップと、
前記記憶機器に更新データが存在する場合、前記記憶機器における前記更新データに対応して記憶された更新データの位置情報を前記メモリに書き込むステップと、
前記第１位置情報セット及び前記更新データの位置情報に応じて、前記メモリ内に第２位置情報セットを生成し、且つ前記記憶機器に記憶するステップとを含むことを特徴とする記憶機器のデータ位置の処理方法。
【請求項２】
設定時間に達するたびに、前記メモリにおける現在の既存の位置情報に応じて、更新した位置情報セットを生成し、且つ前記記憶機器に記憶し、前記メモリにおける現在の既存の位置情報には現在の前回設定時間に達したときに生成した位置情報セットに含まれる位置情報及び現在の前回設定時間に達した後に更新した位置情報を含むステップをさらに含むことを特徴とする請求項１に記載の記憶機器のデータ位置の処理方法。
【請求項３】
前記記憶機器に新たなデータが書き込まれると、前記メモリにおける現在の既存の位置情報に応じて、更新した位置情報セットを生成し、且つ前記記憶機器に記憶し、前記メモリにおける現在の既存の位置情報には新たなデータを書き込む前の位置情報及び前記新たなデータの位置情報を含むステップをさらに含むことを特徴とする請求項１に記載の記憶機器のデータ位置の処理方法。
【請求項４】
前記履歴データを前記記憶機器に書き込む操作情報、及び前記更新データを前記記憶機器に書き込む操作情報を含むユーザ操作ログを記録するステップをさらに含むことを特徴とする請求項１〜請求項３のいずれか１項に記載の記憶機器のデータ位置の処理方法。
【請求項５】
前記更新データを前記記憶機器に書き込む操作情報は操作時間情報、前記更新データの位置情報及び前記更新データを含み、
これに対応して、前記記憶機器における前記更新データに対応して記憶された更新データの位置情報を前記メモリに書き込むステップは、
前記ユーザ操作ログにおける、前記更新データを前記記憶機器に書き込む操作情報をスキャンし、前記更新データの位置情報を前記メモリに書き込むステップを含むことを特徴とする請求項４に記載の記憶機器のデータ位置の処理方法。
【請求項６】
前記記憶機器における前記更新データに対応して記憶された更新データの位置情報を前記メモリに書き込む前に、
記録した前記第１位置情報セットに対応する前記ユーザ操作ログのログシーケンス番号に応じて、前記記憶機器に更新データが存在するか否かを判断するステップをさらに含むことを特徴とする請求項５に記載の記憶機器のデータ位置の処理方法。
【請求項７】
第２位置情報セットを前記記憶機器に記憶するステップは、
前記第２位置情報セットをスナップショットし、且つ前記記憶機器に書き込むことを含むことを特徴とする請求項１に記載の記憶機器のデータ位置の処理方法。
【請求項８】
機器の再起動時、記憶機器に記憶された履歴データの第１位置情報セットをメモリに書き込むために用いられ、前記履歴データ及びその対応する位置情報が前記記憶機器に対応して記憶され、前記第１位置情報セットはデータ位置情報のセットを示す第１処理モジュールと、
前記記憶機器に更新データが存在する場合、前記記憶機器における前記更新データに対応して記憶された更新データの位置情報を前記メモリに書き込むための第２処理モジュールと、
前記第１位置情報セット及び前記更新データの位置情報に応じて、前記メモリ内に第２位置情報セットを生成し、且つ前記記憶機器に記憶するための生成モジュールと、を含むことを特徴とする記憶機器のデータ位置の処理装置。
【請求項９】
前記生成モジュールは、さらに、
設定時間に達するたびに、前記メモリにおける現在の既存の位置情報に応じて、更新した位置情報セットを生成し、且つ前記記憶機器に記憶するために用いられ、前記メモリにおける現在の既存の位置情報には現在の前回設定時間に達したときに生成した位置情報セットに含まれる位置情報及び現在の前回設定時間に達した後に更新した位置情報を含むことを特徴とする請求項８に記載の記憶機器のデータ位置の処理装置。
【請求項１０】
前記生成モジュールは、さらに、
前記記憶機器に新たなデータが書き込まれると、前記メモリにおける現在の既存の位置情報に応じて、更新した位置情報セットを生成し、且つ前記記憶機器に記憶するために用いられ、前記メモリにおける現在の既存の位置情報には新たなデータを書き込む前の位置情報及び前記新たなデータの位置情報を含むことを特徴とする請求項８に記載の記憶機器のデータ位置の処理装置。
【請求項１１】
前記第２処理モジュールは、さらに、
前記履歴データを前記記憶機器に書き込む操作情報、及び前記更新データを前記記憶機器に書き込む操作情報を含むユーザ操作ログを記録するために用いられることを特徴とする請求項８〜請求項１０のいずれか１項に記載の記憶機器のデータ位置の処理装置。
【請求項１２】
前記更新データを前記記憶機器に書き込む操作情報は操作時間情報、前記更新データの位置情報及び前記更新データを含み、
これに対応して、前記第２処理モジュールは、具体的には、
前記ユーザ操作ログにおける、前記更新データを前記記憶機器に書き込む操作情報をスキャンし、前記更新データの位置情報を前記メモリに書き込むために用いられることを特徴とする請求項１１に記載の記憶機器のデータ位置の処理装置。
【請求項１３】
前記第２処理モジュールは、さらに、
記録した前記第１位置情報セットに対応する前記ユーザ操作ログのログシーケンス番号に応じて、前記記憶機器に更新データが存在するか否かを判断するために用いられることを特徴とする請求項１１に記載の記憶機器のデータ位置の処理装置。
【請求項１４】
前記生成モジュールは、具体的には、
前記第２位置情報セットをスナップショットし、且つ前記記憶機器に書き込むために用いられることを特徴とする請求項８に記載の記憶機器のデータ位置の処理装置。
【請求項１５】
少なくとも１つのプロセッサとストレージを含み、
前記ストレージにコンピュータプログラムが記憶されており、前記少なくとも１つのプロセッサは、前記ストレージに記憶されたコンピュータプログラムを実行して、請求項１〜請求項７のいずれか１項に記載の記憶機器のデータ位置の処理方法を実現することを特徴とするコンピュータ機器。
【請求項１６】
コンピュータプログラムが記憶されており、前記コンピュータプログラムが実行されると請求項１〜請求項７のいずれか１項に記載の記憶機器のデータ位置の処理方法を実現することを特徴とするコンピュータ読み取り可能な記憶媒体。
【発明の詳細な説明】
【技術分野】
【０００１】
本願は、記憶技術の分野に関し、詳しく言えば、記憶機器のデータ位置の処理方法及び処理装置、コンピュータ機器並びにコンピュータ読み取り可能な記憶媒体に関する。
【背景技術】
【０００２】
スペース管理は記憶システムの重要な部分であり、従来のスペース管理方式としては、スペース割り当て情報を記憶するために記憶システム内で専用の記憶領域を区画し、スペースマッピング関係が変更されると当該領域のスペース割り当て情報も変更される。
【０００３】
既存のスペース管理方式はランダム書き込みを導入し、記憶システムのＩＯを追加するので、記憶システムの全体的なスループットを低下させ、記憶システムの処理性能に影響を与える。
【０００４】
したがって、記憶スペースをどのように効果的に管理することは、解決すべき技術的課題である。
【発明の概要】
【発明が解決しようとする課題】
【０００５】
本願は、従来技術の処理性能が低いなどの欠陥を解決するために、記憶機器のデータ位置の処理方法及び処理装置、コンピュータ機器並びにコンピュータ読み取り可能な記憶媒体を提供する。
【課題を解決するための手段】
【０００６】
本願の第１態様にて提供される記憶機器のデータ位置の処理方法は、
機器の再起動時、記憶機器に記憶された履歴データの第１位置情報セットをメモリに書き込み、前記履歴データ及びその対応する位置情報が前記記憶機器に対応して記憶され、前記第１位置情報セットはデータ位置情報のセットを示すために用いられるステップと、
前記記憶機器に更新データが存在する場合、前記記憶機器における前記更新データに対応して記憶された更新データの位置情報を前記メモリに書き込むステップと、
前記第１位置情報セット及び前記更新データの位置情報に応じて、前記メモリ内に第２位置情報セットを生成し、且つ前記記憶機器に記憶するステップとを含む。
【０００７】
本願の第２の態様にて提供される記憶機器のデータ位置の処理装置は、
機器の再起動時、記憶機器に記憶された履歴データの第１位置情報セットをメモリに書き込むために用いられ、前記履歴データ及びその対応する位置情報が前記記憶機器に対応して記憶され、前記第１位置情報セットはデータ位置情報のセットを示す第１処理モジュールと、
前記記憶機器に更新データが存在する場合、前記記憶機器における前記更新データに対応して記憶された更新データの位置情報を前記メモリに書き込むための第２処理モジュールと、
前記第１位置情報セット及び前記更新データの位置情報に応じて、前記メモリ内に第２位置情報セットを生成し、且つ前記記憶機器に記憶するための生成モジュールとを含む。
【０００８】
本願の第３の態様にて提供されるコンピュータ機器は、少なくとも１つのプロセッサとストレージを含み、
前記ストレージにコンピュータプログラムが記憶されており、前記少なくとも１つのプロセッサは、前記ストレージに記憶されたコンピュータプログラムを実行して、上記第１態様に係る記憶機器のデータ位置の処理方法を実現する。
【０００９】
本願の第４の態様にて提供されるコンピュータ読み取り可能な記憶媒体は、コンピュータプログラムが記憶されており、前記コンピュータプログラムが実行されると上記第１態様に係る記憶機器のデータ位置の処理方法を実現する。
【発明の効果】
【００１０】
本願に係る記憶機器のデータ位置の処理方法及び処理装置、コンピュータ機器並びにコンピュータ読み取り可能な記憶媒体は、機器の再起動時、記憶機器に記憶された履歴データの第１位置情報セットをメモリに書き込み、記憶機器に更新データが存在する場合、記憶機器における更新データに対応して記憶された更新データの位置情報をメモリに書き込み、且つ第１位置情報セット及び更新データの位置情報に応じて、メモリ内に第２位置情報セットを生成し、且つ記憶機器に記憶する。履歴データの第１位置情報セット及びログから取得した更新データの位置情報を組み合わせることによって、完全な位置情報をメモリ内に迅速に構築でき、スペース割り当て情報の完全性を保証するだけでなく、またＩＯを減らすことで再起動速度を高める。履歴データ及びその対応する位置情報を記憶機器に対応して記憶し、すなわちスペース割り当て情報をユーザデータと共にログに書き込んで記憶することで、ＩＯ回数を効果的に減らし、従来技術ではスペース割り当て情報とユーザデータを別々に記憶するので、追加のＩＯを導入しやすく、これにより記憶システムの性能を低下させてしまっているという問題が解決される。
【図面の簡単な説明】
【００１１】
本願の実施形態又は従来技術の技術的解決手段についてより明確に説明するために、以下に実施形態又は従来技術の記述に対して必要な図面を用いて簡潔に説明を行う。当然ながら、以下に記載する図面は本願の実施形態の一部にすぎず、当業者であれば、創造的な労力を要することなく、これらの図面に基づき他の図面を想到し得る。これらの図面によって、本願の明確な実施形態を示し、後文でさらに詳しく説明する。これらの図面及び文字による説明はいずれかの方式によって本開示の構想の範囲を制限するためのものではなく、特定の実施形態を参照することにより当業者に本願の概念を説明するためのものである。
【図１】本願の一実施形態に係る記憶機器のデータ位置の処理方法のフローチャートである。
【図２】本願の別の実施形態に係るユーザ操作ログ及びスナップショットの対応関係の概略図である。
【図３】本願の一実施形態に係る記憶機器のデータ位置の処理装置の構造概略図である。
【図４】本願の一実施形態に係るコンピュータ機器の構造概略図である。
【発明を実施するための形態】
【００１２】
本願の実施形態の目的、技術的解決手段及び利点をさらに明確にするために、以下本願の実施形態の図面を参照しながら、本願の実施形態の技術的解決手段について説明する。当然ながら、記載された実施形態は本願の一部に実施形態にすぎず、全ての実施形態を示すものではない。本願の実施形態に基づき、当業者であれば創造的な労力を要さずに想到し得る他の実施形態は、いずれも本願の技術的範囲に属する。
【００１３】
まず本願に係る名詞について解釈する。「記憶機器」とは、磁気ディスク、データベース、ハードディスクなどのメモリに対してデータを永続的に記憶できるコンピュータの外部ストレージを指す。「位置情報セット」とは、ユーザデータが記憶されている記憶スペースの位置情報のセットを指し、位置情報はスペース割り当て情報とも呼ばれ、具体的には物理アドレス、論理アドレス及び物理アドレスと論理アドレスとのマッピング関係などの情報を含んでもよく、具体的には実際の需要に応じて設置されてもよい。「機器の再起動」とは、上記記憶機器を含むコンピュータ機器の再起動を指す。
【００１４】
また、用語「第１」、「第２」などは目的を記述するためのものであり、相対的な重要性を指示又は暗示するもの又は指示された技術的特徴の数を意図するものではない。以下の各実施形態の説明では、特に断りがない限り、用語「複数」は２つ以上である。
【００１５】
以下のこれらの具体的な実施形態は互いに組み合わせてもよく、同じ又は類似の概念又は過程についていくつかの実施形態では繰り返し説明しない。以下、図面を参照しながら、本発明の実施形態について説明する。
【００１６】
本願の実施形態に係る記憶機器のデータ位置の処理方法は、単一のコンピュータ機器の記憶機器のスペース管理に適用可能であり、また分散システムのデータ同期にも適用可能である。分散システムは、１つのマスタノード及び１つ又は複数のスレーブノードを含んでもよく、各ノードの記憶システムに記憶機器のデータ位置の処理装置（以下、装置と略称する）が設置されてもよい。マスタノードがユーザの操作コマンド（操作コマンドは操作タイプ及び操作のユーザデータを含んでもよく、操作タイプは書き込み、更新などを含む）を受信するとき、マスタノードの装置により、ユーザの操作コマンドに応じて、ｒａｆｔ（ログ一致性）プロトコルにしたがって第１ログ（第１ログは今回の操作の操作時間及び操作のユーザデータを含んでもよい）を生成し、且つ各スレーブノード及びマスタノード自体に送信し、各ノード（マスタノード及び各スレーブノードを含む）が第１ログを受信した後、そのうちの１つのノードを例にとり、ノードの装置により、第１ログからユーザの操作コマンドを解析し、且つメモリからユーザデータのスペース割り当て情報を取得し、ユーザデータのスペース割り当て情報を第１ログに含まれる情報と共に第２のログに生成し、すなわち第２のログは、操作時間、ユーザデータのスペース割り当て情報及びユーザデータを含む。第２のログを記憶機器（例えば磁気ディスク）においてユーザデータのスペース割り当て情報に対応する領域に書き込むことができる。ユーザ操作ごとのログをリアルタイムで記憶機器に書き込んで記憶し、このようにして、記憶機器にユーザ操作ログをリアルタイムで記録する。スペース割り当て情報をユーザデータと共にログに書き込んで記憶することで、ＩＯ回数を効果的に減らし、従来技術ではスペース割り当て情報とユーザデータを別々に記憶するので、追加のＩＯを導入しやすく、これにより記憶システムの性能を低下させるという問題を解決する。
【００１７】
＜実施形態１＞
本実施形態は記憶機器のデータ位置の処理方法を提供し、記憶機器のデータの位置情報に対して該当する処理を行うために用いられる。本実施形態の実行主体は記憶機器のデータ位置の処理装置であり、記憶機器のデータ位置の処理装置は記憶機器が含まれるコンピュータ機器に設置されてもよい。
【００１８】
図１は本実施形態に係る記憶機器のデータ位置の処理方法のフローチャートであり、記憶機器のデータ位置の処理方法は、ステップ１０１と、ステップ１０２と、ステップ１０３とを含む。
【００１９】
ステップ１０１において、機器の再起動時、記憶機器に記憶された履歴データの第１位置情報セットをメモリに書き込み、履歴データ及びその対応する位置情報が記憶機器に対応して記憶され、第１位置情報セットはデータ位置情報のセットを示すために用いられる。
【００２０】
具体的には、機器の再起動とは、上記記憶機器を含むコンピュータ機器の再起動を指す。すなわちコンピュータ機器が故障、正常なシャットダウン、人為的な再起動要求などで再起動する必要がある場合である。再起動時、メモリに現在完全な位置情報、すなわち現在割り当てられたすべての記憶スペースのスペース割り当て情報を構築する必要があり、記憶機器に履歴データの第１位置情報セットを記憶している。選択的に、第１位置情報セットは、コンピュータ機器が正常に動作しているとき、特定のトリガメカニズム（例えば周期的）にしたがって、メモリにおける現在完全な位置情報に対してスナップショット又はバックアップなどの処理を実行することで取得され、且つ記憶機器に書き込まれるものであり得る。
【００２１】
コンピュータ機器が正常に動作しているとき、メモリに現在完全な位置情報が記憶されており、メモリにおけるスペース割り当て情報が動的に更新され、記憶機器のデータ位置の処理装置は粒度割り当てスペースを予め設定し、且つ新たに割り当てられたスペース割り当て情報をリアルタイムでメモリに記憶でき、これによりメモリにおけるスペース割り当て情報の完全性を保証する。したがって、新たなユーザが操作する場合、メモリから新たなユーザデータの記憶位置を取得でき、これにより新たなユーザデータを対応する記憶位置に書き込み、或いは、ユーザが既存データを読み取る場合、メモリからユーザが読み取るデータの記憶位置を取得でき、これにより対応する記憶位置でユーザが読み取るデータをユーザに読み取る。
【００２２】
再起動時、記憶機器のデータ位置の処理装置は記憶機器から第１位置情報セットをメモリに読み取ることができるが、再起動前にあるトリガメカニズムに到達したときに第１位置情報セットが生成されるので、生成後、更新データが記憶機器に記憶される可能性もあり、この部分の更新データの位置情報を第１位置情報セットから取得できないので、他の方式で更新データの位置情報を取得する必要がある。
【００２３】
履歴データ及びその対応する位置情報を記憶機器に対応して記憶し、すなわちスペース割り当て情報をユーザデータと共にログに書き込んで記憶することで、ＩＯ回数を効果的に減らし、従来技術ではスペース割り当て情報とユーザデータを別々に記憶するので、追加のＩＯを導入しやすく、これにより記憶システムの性能を低下させるという問題を解決する。
【００２４】
ステップ１０２において、記憶機器に更新データが存在する場合、記憶機器における更新データに対応して記憶された更新データの位置情報をメモリに書き込む。
【００２５】
具体的には、再起動前にあるトリガメカニズムに到達したときに第１位置情報セットが生成されるので、生成後、更新データが記憶機器に記憶される可能性もあり、この部分の更新データの位置情報を第１位置情報セットから取得できないので、記憶機器に更新データが存在する場合、記憶機器における更新データに対応して記憶された更新データの位置情報をメモリに書き込む。
【００２６】
選択的に、コンピュータ機器が正常に動作しているとき、ユーザのデータ操作ごとに、ユーザ操作ログが記録され、且つ記憶機器に記憶される。すなわちユーザ操作ログは上記履歴データを記憶機器に書き込む操作情報（具体的には操作時間情報、履歴データの位置情報及び履歴データを含んでもよい）を含み、また更新データを記憶機器に書き込む操作情報（具体的には操作時間情報、更新データの位置情報及び更新データを含んでもよい）をも含み、したがって、ログロールバック（又はログスキャンとも呼ばれる）によってユーザ操作ログから更新データの位置情報を取得できる。具体的なログロールバック方式は従来技術であり、本実施形態では繰り返し説明しない。
【００２７】
履歴データの第１位置情報セット及びログから取得した更新データの位置情報を組み合わせることによって、完全な位置情報をメモリ内に迅速に構築でき、スペース割り当て情報の完全性を保証するだけでなく、またＩＯを減らす上で再起動速度を高める。
【００２８】
ステップ１０３において、第１位置情報セット及び更新データの位置情報に応じて、メモリ内に第２位置情報セットを生成し、且つ記憶機器に記憶する。
【００２９】
具体的には、履歴データの第１位置情報セット及び更新データの位置情報を取得した後、第１位置情報セット及び更新データの位置情報に応じてメモリ内に第２位置情報セットを生成でき、すなわち完全な位置情報をメモリ内に構築し、後続のユーザ操作のために対応する記憶位置の位置情報を迅速に提供し、且つ第２位置情報セットを記憶機器に記憶でき、例えばスナップショット方式で記憶機器に記憶するか、又はバックアップ方式で記憶機器に記憶するなどがある。
【００３０】
本実施形態に係る記憶機器のデータ位置の処理方法は、機器の再起動時、記憶機器に記憶された履歴データの第１位置情報セットをメモリに書き込み、記憶機器に更新データが存在する場合、記憶機器における更新データに対応して記憶された更新データの位置情報をメモリに書き込み、且つ第１位置情報セット及び更新データの位置情報に応じて、メモリ内に第２位置情報セットを生成し、且つ記憶機器に記憶する。履歴データの第１位置情報セット及びログから取得した更新データの位置情報を組み合わせることによって、完全な位置情報をメモリ内に迅速に構築でき、スペース割り当て情報の完全性を保証するだけでなく、またＩＯを減らす上で再起動速度を高める。履歴データ及びその対応する位置情報を記憶機器に対応して記憶し、すなわちスペース割り当て情報をユーザデータと共にログに書き込んで記憶することで、ＩＯ回数を効果的に減らし、従来技術ではスペース割り当て情報とユーザデータを別々に記憶するので、追加のＩＯを導入しやすく、これにより記憶システムの性能を低下させていたという問題が解決される。
【００３１】
＜実施形態２＞
本実施形態は実施形態１に係る記憶機器のデータ位置の処理方法についてさらに補足説明する。
【００３２】
実施可能な形態として、上記実施形態１に加えて、選択的に、記憶機器のデータ位置の処理方法はさらに、設定時間に達するたびに、メモリにおける現在の既存の位置情報に応じて、更新した位置情報セットを生成し、且つ記憶機器に記憶し、メモリにおける現在の既存の位置情報には現在の前回設定時間に達したときに生成した位置情報セットに含まれる位置情報及び現在の前回設定時間に達した後に更新した位置情報を含むステップを含んでもよい。
【００３３】
具体的には、記憶機器に記憶された第２位置情報セットを定期的に更新し、更新した位置情報セットを生成し、且つ記憶機器に記憶できる。すなわち位置情報セット更新のトリガメカニズムは時間である。具体的には、例えば５分間ごとに１回更新し、１０分間ごとに１回更新するなどのように一定の時間間隔を設定でき、具体的な時間間隔は実際の需要に応じて設置されてもよく、本実施形態ではこれについて限定しない。設定時間に達するたびに、１回更新する。コンピュータ機器が正常に動作しているとき、メモリに現在完全な位置情報がリアルタイムで記憶されているので、メモリにおける現在の既存の位置情報に応じて、更新した位置情報セットを生成し、且つ記憶機器に記憶できる。ただし、メモリにおける現在の既存の位置情報に現在の前回設定時間に達したときに生成した位置情報セットに含まれる位置情報及び現在の前回設定時間に達した後に更新した位置情報を含む。
【００３４】
選択的に、更新した位置情報セットについて、毎回生成した位置情報セットを記憶機器に記憶してもよい。
【００３５】
選択的に、記憶スペースを節約するために、最新更新した位置情報セットのみを記憶してもよく、すなわち更新した位置情報セットが生成されると、記憶機器に記憶された位置情報セットを更新した位置情報セットに置き換える。
【００３６】
例示的には、再起動時に第２位置情報セットを生成し、１回目に設定時間に達したとき、１回目に更新した位置情報セットを生成し、すると１回目に更新した位置情報セットを記憶機器に記憶して第２位置情報セットを削除するか、又は第２位置情報セットを直接カバーする。２回目に設定時間に達したとき、２回目に更新した位置情報セットを生成し、すると記憶スペースに２回目に更新した位置情報セットを記憶し、１回目に更新した位置情報セットを解放する。これに準じて類推して逐次更新する。
【００３７】
選択的に、再起動ごとに、今回の再起動前に最後に更新した位置情報セットはすなわち今回の再起動時に記憶機器から読み取ってメモリに書き込む必要がある第１位置情報セットである。このように往復して、逐次更新することで、スペース割り当て情報の完全性を保証する。
【００３８】
別の実施可能な形態として、上記実施形態１に加えて、選択的に、記憶機器のデータ位置の処理方法はさらに、記憶機器に新たなデータが書き込まれると、メモリにおける現在の既存の位置情報に応じて、更新した位置情報セットを生成し、且つ記憶機器に記憶し、メモリにおける現在の既存の位置情報には新たなデータを書き込む前の位置情報及び新たなデータの位置情報を含むステップを含んでもよい。
【００３９】
具体的には、位置情報セット更新のトリガメカニズムは記憶機器に新たなデータが書き込まれることであり、更新した位置情報セットの具体的な生成過程は上記時間トリガメカニズムの生成過程と類似するので、ここでは説明を省略する。
【００４０】
選択的に、さらに具体的に書き込まれる新たなデータのサイズや書込み回数を設定し、これによってトリガメカニズムを限定してもよい。例えば記憶機器に新たなデータが書き込まれ、且つ書き込み回数が５回であると判断する場合、更新した位置情報セットを生成し、記憶機器に新たなデータが書き込まれ、且つ書き込まれた新たなデータのサイズが予め設定された閾値を超えると判断する場合、更新した位置情報セットを生成するなどのように、具体的に書き込まれた新たなデータのサイズ又は書き込み回数を設置することで、トリガメカニズムを限定してもよく、本実施形態ではこれについて限定しない。
【００４１】
さらに別の実施可能な形態として、上記実施形態１に加えて、選択的に、記憶機器のデータ位置の処理方法はさらに、履歴データを記憶機器に書き込む操作情報、及び更新データを記憶機器に書き込む操作情報を含むユーザ操作ログを記録するステップを含んでもよい。
【００４２】
具体的には、コンピュータ機器が正常に動作しているとき、ユーザデータ操作ごとに、ユーザ操作ログが記録され、且つ記憶機器に記憶される。すなわちユーザ操作ログは上記履歴データを記憶機器に書き込む操作情報（具体的には操作時間情報、履歴データの位置情報及び履歴データを含んでもよい）を含み、また更新データを記憶機器に書き込む操作情報（具体的には操作時間情報、更新データの位置情報及び更新データを含んでもよい）も含み、したがって、ログロールバック（又はログスキャンとも呼ばれる）によってユーザ操作ログから更新データの位置情報を取得できる。具体的なログロールバック方式は従来技術であり、本実施形態では繰り返し説明しない。
【００４３】
選択的に、更新データを記憶機器に書き込む操作情報は操作時間情報、更新データの位置情報及び更新データを含んでもよい。対応して、記憶機器における更新データに対応して記憶された更新データの位置情報をメモリに書き込むステップは、ユーザ操作ログにおける、更新データを記憶機器に書き込む操作情報をスキャンし、更新データの位置情報をメモリに書き込むことを含んでもよい。
【００４４】
具体的には、第１位置情報セットの生成時間と操作時間情報との比較に基づき、どの時点の後のユーザ操作ログが更新データであるかを確定し、これによりスキャンすべきユーザ操作ログ部分を確定する。
【００４５】
選択的に、記憶機器における更新データに対応して記憶された更新データの位置情報をメモリに書き込む前に、記憶機器のデータ位置の処理方法はさらに、記録した第１位置情報セットに対応するユーザ操作ログのログシーケンス番号に応じて、記憶機器に更新データが存在するか否かを判断するステップを含んでもよい。
【００４６】
具体的には、位置情報セット（第２位置情報セット及び更新した各位置情報セットを含む）を生成するたびに、位置情報セットに対応するユーザ操作ログのログシーケンス番号を記録し、すなわち後でログをスキャンして更新データの位置情報を取得する必要がある場合、ユーザ操作ログのどの部分がスキャンされたかを知るように、どのログシーケンス番号が開始する前の位置情報から位置情報セットを生成するかを記録し、すなわち位置情報セットに対応するログシーケンス番号によって履歴データと更新データを区別できる。ユーザ操作ログにおいて位置情報セットに対応するログシーケンス番号の後に新たなログを生成すると、新たなデータが記憶機器に書き込まれたことが証明される。
【００４７】
選択的に、第２位置情報セットを記憶機器に書き込むステップは、具体的には、第２位置情報セットをスナップショット方式で記憶機器に書き込み、すなわち第２位置情報をスナップショットし、且つスナップショットを記憶機器に書き込むことを含んでもよい。具体的にはスナップショットする具体的な操作は従来技術を採用してもよく、ここでは説明を省略する。
【００４８】
選択的に、毎回更新した位置情報セットについても、スナップショット方式で記憶機器に書き込んでもよいが、ここでは説明を省略する。
【００４９】
選択的に、さらにバックアップのような他の方式で各位置情報セットを記憶してもよい。すなわち定期的に、又は一定量の更新データが存在する時、現在の既存の位置情報をバックアップし、同様に従来技術ではスペース割り当て情報とユーザデータを別々に記憶するので、追加のＩＯを導入しやすく、これにより記憶システムの性能を低下させるという問題を解決できる。
【００５０】
なお、本願の各実施形態では、履歴データと更新データが相対的であり、第１位置情報セットにとっては、第１位置情報セットの生成時刻を境界線とし、生成時刻の前にあるのは履歴データであり、生成時刻の後にあるのは更新データである。再起動時に取得した第１位置情報セットは、また再起動前に最後に生成した更新した位置情報セットであるため、位置情報セット（第２位置情報セット及び更新した位置情報セットを含む）を生成するたびに、すなわち位置情報セットと相対的である履歴データを生成し、その後に記憶機器に書き込まれたログ部分はすなわち更新データに対応するログである。
【００５１】
以下では、記憶機器を磁気ディスクとして例に挙げて説明する。コンピュータ機器が、例えば操作タイプが書き込み及び書き込み対象のユーザデータを含む書き込み操作コマンドのようなユーザの操作コマンドを受信した場合、コンピュータ機器の装置は書き込み操作コマンドを取得した後、ｒａｆｔプロトコルにしたがって今回の書き込み操作の操作時間情報及び書き込み対象のユーザデータを含む第１ログを生成し、装置はメモリから現在のスペース割り当て情報、すなわち書き込み対象のユーザデータに対応する目標位置情報を取得し、装置は書き込み対象のユーザデータに対応する位置情報を第１ログに含まれる操作時間情報及び書き込み対象のユーザデータと共に第２のログに生成し、目標位置情報に対応する記憶領域に書き込む。すなわちユーザデータの位置情報をユーザデータと共にユーザ操作ログとして記録して磁気ディスクに書き込む。上記過程により、ユーザデータが逐次書き込まれ、これにより磁気ディスク内のユーザ操作ログが逐次更新される。ユーザ操作ログを記録する過程では、並行して一定のトリガメカニズムにしたがって、例えば定期的に、メモリにおける現在の既存の位置情報を位置情報セット（例えば第２位置情報セット又は更新した位置情報セット）に生成し、且つスナップショット、バックアップなどの方式で位置情報セットを記憶してもよく、又はメモリにおける現在の既存の位置情報を定期的にスナップショットし、且つスナップショットを磁気ディスクに書き込んでもよい。且つスナップショットポイント（スナップショットする時刻）に対応するログシーケンス番号を記録し、すなわちユーザ操作ログにおいてどのログシーケンス番号前のユーザデータの位置情報がスナップショットされたかを記録する。このように記憶したスナップショット、すなわち磁気ディスクにある時刻が記憶された当時、記憶スペースが既に割り当てられたすべてのスペース割り当て情報を定期的に逐次更新する。Ｎ回目にスナップショットした後、様々な要因でコンピュータ機器を再起動する必要がある場合、メモリにおけるスペース割り当て情報が失われ、コンピュータ機器が再起動したとき、完全なスペース割り当て情報をメモリ内に再構築する必要があり、装置は磁気ディスクからＮ回目のスナップショットを読み取ることができ、すなわち上記第１位置情報セットを取得し、履歴データの位置情報を取得し、Ｎ回目にスナップショットした後、新たなユーザ操作がある可能性もあるので、装置はＮ回目のスナップショットに対応するログシーケンス番号に応じて、磁気ディスクに更新データが存在するか否かを判断でき、Ｎ回目のスナップショットに対応するログシーケンス番号の後に新たなログシーケンス番号、すなわち新たなログがある場合、磁気ディスクに更新データが存在すると確定し、装置はログをスキャンするか又はログをロールバックし、Ｎ回目のスナップショットに対応するログシーケンス番号部分までスキャン又はロールバックを停止し、これにより更新データの位置情報を取得することができる。
【００５２】
履歴データの位置情報及び更新データの位置情報を取得した後、この２つの部分の位置情報に応じて完全なスペース割り当て情報をメモリ内に再構築でき、すなわち第２位置情報セットを生成する。第２位置情報セットをスナップショットして磁気ディスクに書き込むことができる。且つ継続して上記過程により、ユーザ操作ログを磁気ディスクに記録しながら、メモリにおける既存の位置情報を定期的にスナップショットして磁気ディスクに書き込み、このように循環して操作し、以降の説明を省略する。
【００５３】
図２は、本実施形態に係るユーザ操作ログ及びスナップショットの対応関係の概略図である。ただし、時間はすなわち操作時間情報であり、位置はすなわち位置情報であり、データはすなわちユーザデータであり、図中ではそれぞれ略記している。スナップショットポイントがログシーケンス番号３の後であれば、スナップショットはログシーケンス番号１〜３に対応するユーザデータの位置情報をスナップショットすることを示し、スナップショットポイントがログシーケンス番号３に対応すると記録してもよい。当然ながら、他の方式で記録してもよく、ここでは例示的に説明するものであり、限定するものではない。ユーザ操作ログにはまた、操作のユーザ（ユーザ名、ユーザ番号など）、操作タイプ（書き込み、読み取りなど）などの他の情報も含むことができる。
【００５４】
ここでは例示的に説明するものであり、再起動から次の再起動までの過程について、更新した位置情報セット又は更新スナップショットを生成するトリガメカニズムは任意の実施可能なメカニズムであり得、具体的には実際の需要に応じて設置してもよい。位置情報セットの記憶方式について、スナップショット、バックアップなどの任意の実施可能な方式でもよい。
【００５５】
なお、本実施形態で実施可能な各形態は別々に実施されてもよく、又は矛盾がない場合には任意の組み合わせで組み合わせて実施されてもよく、本願はこれについて限定しない。
【００５６】
本実施形態に係る記憶機器のデータ位置の処理方法は、機器の再起動時、記憶機器に記憶された履歴データの第１位置情報セットをメモリに書き込み、記憶機器に更新データが存在する場合、記憶機器における更新データに対応して記憶された更新データの位置情報をメモリに書き込み、且つ第１位置情報セット及び更新データの位置情報に応じて、メモリ内に第２位置情報セットを生成し、且つ記憶機器に記憶する。履歴データの第１位置情報セット及びログから取得した更新データの位置情報を組み合わせることによって、完全な位置情報をメモリ内に迅速に構築でき、スペース割り当て情報の完全性を保証するだけでなく、またＩＯを減らす上で再起動速度を高める。履歴データ及びその対応する位置情報を記憶機器に対応して記憶し、すなわちスペース割り当て情報をユーザデータと共にログに書き込んで記憶することで、ＩＯ回数を効果的に減らし、従来技術ではスペース割り当て情報とユーザデータを別々に記憶するので、追加のＩＯを導入しやすく、これにより記憶システムの性能を低下させるという問題を解決する。
【００５７】
＜実施形態３＞
本実施形態は上記実施形態１の記憶機器のデータ位置の処理方法を実行するための記憶機器のデータ位置の処理装置を提供する。
【００５８】
図３は、本実施形態に係る記憶機器のデータ位置の処理装置の構造概略図である。記憶機器のデータ位置の処理装置３０は、第１処理モジュール３１と、第２処理モジュール３２と、生成モジュール３３とを含む。
【００５９】
ただし、第１処理モジュール３１は、機器の再起動時、記憶機器に記憶された履歴データの第１位置情報セットをメモリに書き込むために用いられ、履歴データ及びその対応する位置情報が記憶機器に対応して記憶され、第１位置情報セットはデータ位置情報のセットを示すために用いられる。第２処理モジュール３２は、記憶機器に更新データが存在する場合、記憶機器における更新データに対応して記憶された更新データの位置情報をメモリに書き込む。生成モジュール３３は、第１位置情報セット及び更新データの位置情報に応じて、メモリ内に第２位置情報セットを生成し、且つ記憶機器に記憶する。
【００６０】
本実施形態における装置について、各モジュールが操作を実行する具体的な方式は記憶機器のデータ位置の処理方法に関連する実施形態において詳細に述べられたので、ここでは詳細な説明を省略する。
【００６１】
本実施形態に係る記憶機器のデータ位置の処理装置によれば、機器の再起動時、記憶機器に記憶された履歴データの第１位置情報セットをメモリに書き込み、記憶機器に更新データが存在する場合、記憶機器における更新データに対応して記憶された更新データの位置情報をメモリに書き込み、且つ第１位置情報セット及び更新データの位置情報に応じて、メモリ内に第２位置情報セットを生成し、且つ記憶機器に記憶する。履歴データの第１位置情報セット及びログから取得した更新データの位置情報を組み合わせることによって、完全な位置情報をメモリ内に迅速に構築でき、スペース割り当て情報の完全性を保証するだけでなく、またＩＯを減らす上で再起動速度を高める。履歴データ及びその対応する位置情報を記憶機器に対応して記憶し、すなわちスペース割り当て情報をユーザデータと共にログに書き込んで記憶することで、ＩＯ回数を効果的に減らし、従来技術ではスペース割り当て情報とユーザデータを別々に記憶するので、追加のＩＯを導入しやすく、これにより記憶システムの性能を低下させるという問題を解決する。
【００６２】
＜実施形態４＞
本実施形態は上記実施形態２に係る記憶機器のデータ位置の処理方法を実行するように、上記実施形態３に係る装置についてさらに補足説明する。
【００６３】
実施可能な形態として、上記実施形態３に加えて、選択的に、生成モジュールは、さらに、設定時間に達するたびに、メモリにおける現在の既存の位置情報に応じて、更新した位置情報セットを生成し、且つ記憶機器に記憶してもよく、メモリにおける現在の既存の位置情報には現在の前回設定時間に達したときに生成した位置情報セットに含まれる位置情報及び現在の前回設定時間に達した後に更新した位置情報を含んでもよい。
【００６４】
別の実施可能な形態として、上記実施形態３に加えて、選択的に、生成モジュールは、さらに、記憶機器に新たなデータが書き込まれると、メモリにおける現在の既存の位置情報に応じて、更新した位置情報セットを生成し、且つ記憶機器に記憶するために用いられてもよく、メモリにおける現在の既存の位置情報には新たなデータを書き込む前の位置情報及び新たなデータの位置情報を含んでもよい。
【００６５】
さらに別の実施可能な形態として、上記実施形態３に加えて、選択的に、第２処理モジュールは、さらに、履歴データを記憶機器に書き込む操作情報、及び更新データを記憶機器に書き込む操作情報を含むユーザ操作ログを記録するために用いられる。
【００６６】
選択的に、更新データを記憶機器に書き込む操作情報は操作時間情報、更新データの位置情報及び更新データを含み、対応して、第２処理モジュールは、ユーザ操作ログにおける、更新データを記憶機器に書き込む操作情報をスキャンし、更新データの位置情報をメモリに書き込むために用いられる。
【００６７】
選択的に、第２処理モジュールは、さらに、記録した第１位置情報セットに対応するユーザ操作ログのログシーケンス番号に応じて、記憶機器に更新データが存在するか否かを判断するために用いられる。
【００６８】
選択的に、生成モジュールは、第２位置情報セットをスナップショットし、且つ記憶機器に書き込むために用いられる。
【００６９】
本実施形態における装置について、各モジュールが操作を実行する具体的な方式は、記憶機器のデータ位置の処理方法に関連する実施形態において詳細に述べられたので、ここでは詳細な説明を省略する。
【００７０】
なお、本実施形態で実施可能な各形態は別々に実施されてもよく、又は矛盾がない場合には任意の組み合わせで組み合わせて実施されてもよく、本願はこれについて限定しない。
【００７１】
本実施形態に係る記憶機器のデータ位置の処理装置によれば、機器の再起動時、記憶機器に記憶された履歴データの第１位置情報セットをメモリに書き込み、記憶機器に更新データが存在する場合、記憶機器における更新データに対応して記憶された更新データの位置情報をメモリに書き込み、且つ第１位置情報セット及び更新データの位置情報に応じて、メモリ内に第２位置情報セットを生成し、且つ記憶機器に記憶する。履歴データの第１位置情報セット及びログから取得した更新データの位置情報を組み合わせることによって、完全な位置情報をメモリ内に迅速に構築でき、スペース割り当て情報の完全性を保証するだけでなく、またＩＯを減らす上で再起動速度を高める。履歴データ及びその対応する位置情報を記憶機器に対応して記憶し、すなわちスペース割り当て情報をユーザデータと共にログに書き込んで記憶することで、ＩＯ回数を効果的に減らし、従来技術ではスペース割り当て情報とユーザデータを別々に記憶するので、追加のＩＯを導入しやすく、これにより記憶システムの性能を低下させるという問題を解決する。
【００７２】
＜実施形態５＞
本実施形態は上記実施形態に係る記憶機器のデータ位置の処理方法を実行するためのコンピュータ機器を提供する。
【００７３】
図４は、本実施形態に係るコンピュータ機器の構造概略図である。コンピュータ機器５０は、少なくとも１つのプロセッサ５１と、ストレージ５２とを含む。
【００７４】
ストレージはコンピュータプログラムを記憶する。少なくとも１つのプロセッサは上記実施形態に係る記憶機器のデータ位置の処理方法を実現するようにストレージに記憶されたコンピュータプログラムを実行する。
【００７５】
本実施形態のコンピュータ機器によれば、機器の再起動時、記憶機器に記憶された履歴データの第１位置情報セットをメモリに書き込み、記憶機器に更新データが存在する場合、記憶機器における更新データに対応して記憶された更新データの位置情報をメモリに書き込み、且つ第１位置情報セット及び更新データの位置情報に応じて、メモリ内に第２位置情報セットを生成し、且つ記憶機器に記憶する。履歴データの第１位置情報セット及びログから取得した更新データの位置情報を組み合わせることによって、完全な位置情報をメモリ内に迅速に構築でき、スペース割り当て情報の完全性を保証するだけでなく、またＩＯを減らす上で再起動速度を高める。履歴データ及びその対応する位置情報を記憶機器に対応して記憶し、すなわちスペース割り当て情報をユーザデータと共にログに書き込んで記憶することで、ＩＯ回数を効果的に減らし、従来技術ではスペース割り当て情報とユーザデータを別々に記憶するので、追加のＩＯを導入しやすく、これにより記憶システムの性能を低下させるという問題を解決する。
【００７６】
＜実施形態６＞
本実施形態はコンピュータ読み取り可能な記憶媒体を提供する。コンピュータ読み取り可能な記憶媒体にコンピュータプログラムが記憶されており、コンピュータプログラムが実行される時上記いずれかの実施形態に係る記憶機器のデータ位置の処理方法を実現する。
【００７７】
本実施形態のコンピュータ読み取り可能な記憶媒体によれば、機器の再起動時、記憶機器に記憶された履歴データの第１位置情報セットをメモリに書き込み、記憶機器に更新データが存在する場合、記憶機器における更新データに対応して記憶された更新データの位置情報をメモリに書き込み、且つ第１位置情報セット及び更新データの位置情報に応じて、メモリ内に第２位置情報セットを生成し、且つ記憶機器に記憶する。履歴データの第１位置情報セット及びログから取得した更新データの位置情報を組み合わせることによって、完全な位置情報をメモリ内に迅速に構築でき、スペース割り当て情報の完全性を保証するだけでなく、またＩＯを減らす上で再起動速度を高める。履歴データ及びその対応する位置情報を記憶機器に対応して記憶し、すなわちスペース割り当て情報をユーザデータと共にログに書き込んで記憶することで、ＩＯ回数を効果的に減らし、従来技術ではスペース割り当て情報とユーザデータを別々に記憶するので、追加のＩＯを導入しやすく、これにより記憶システムの性能を低下させるという問題を解決する。
【００７８】
本願によって提供されるいくつかの実施形態において、理解すべきは、指摘する装置及び方法は、他の形態でも実現できることである。例えば、以上で説明した装置の実施形態は単なる概略的なものであり、例えば、ユニットの区分は、単なる論理機能の区分であって、実際に実現する際には別の区分方式が可能であり、例えば複数のユニット又はアセンブリは結合し、又は他のシステムに集積でき、又はいくつかの特徴は無視してもよく、又は実行しないようにすることができる。また、表示又は討論する相互間の結合、又は直接結合、又は通信接続は、いくつかのインタフェース、装置、又はユニットの間接結合、又は通信によって接続でき、電気、機械、又は他の形式であってもよい。
【００７９】
分離部品として説明したユニットは、物理的に分離しても、或いは分離しなくてもよく、ユニットとして表示する部品は物理ユニットであっても、又は物理ユニットでなくてもよく、すなわち同一の場所に位置することができ、又は複数のネットワークユニットに配置することもできる。実際の必要に応じて、その一部又はすべてのユニットを選択して、本実施形態の手段の目的を実現することができる。
【００８０】
その他、本願の各実施形態における各機能ユニットは、同一の処理ユニットに集積することができ、各ユニットは独立して物理的に実在することもでき、２つ、或いは２つ以上のユニットを１つのユニットに集積することもできる。集積した上記ユニットは、ハードウェアの形式で実現でき、ハードウェアとソフトウェア機能ユニットを組み合わせる形式による実現も可能である。
【００８１】
集積したユニットは、ソフトウェア機能ユニットの形式で実現し、１つのコンピュータ読み取り可能な記憶媒体に記憶できる。上記ソフトウェア機能ユニットは１つの記憶媒体に記憶され、それは１台のコンピュータ機器（パーソナルコンピュータ、サーバ、又はネットワーク機器などであってもよい）又はプロセッサ（ｐｒｏｃｅｓｓｏｒ）が、本願の各実施形態における記憶機器のデータ位置の処理方法のステップの一部を実行するための複数のコマンドを含む。前述した記憶媒体は、プログラムコードを記憶できるＵディスク、モバイルハードディスク、読み出し専用メモリ（Ｒｅａｄ−Ｏｎｌｙ  Ｍｅｍｏｒｙ、ＲＯＭ）、ランダムアクセスメモリ（Ｒａｎｄｏｍ  Ａｃｃｅｓｓ  Ｍｅｍｏｒｙ、ＲＡＭ）、磁気ディスク又は光ディスクなどの各種の媒体を含む。
【００８２】
当業者であれば明らかに認識できるように、説明を容易且つ簡潔にするために、上記各機能モジュールの区分のみを例に説明しており、実際の応用において、必要に応じて上記機能の配分を異なる機能モジュールで達成することができ、すなわち装置の内部構造を異なる機能モジュールに区分し、それによって以上で説明されたすべて又は一部の機能を完了する。上記説明する装置の具体的な動作過程は、前述の記憶機器のデータ位置の処理方法の実施形態における対応する過程を参照することができ、ここでは説明を省略する。
【００８３】
最後に説明すべきこととして、以上の各実施形態は本願の実施形態の技術的解決手段の説明にすぎず、それを限定するものではない。前述した各実施形態を参照して本願の実施形態について詳細に説明したが、当業者には明らかなように、依然として前述した各実施形態に記載の技術的解決手段を変更し、又は技術的特徴の一部又はすべてについて等価の置換を行うことができる。これらの変更又は等価の置換は、対応する技術的解決手段の本質を本願の実施形態の技術的解決手段の範囲から逸脱させるものではない。
【図１】
2019204527.tif 000003
【図２】
2019204527.tif 000004
【図３】
2019204527.tif 000005
【図４】
2019204527.tif 000006