JP5909467B2 - 情報記録方法、及び情報記録装置、及びプログラム - Google Patents

情報記録方法、及び情報記録装置、及びプログラム Download PDF

Info

Publication number
JP5909467B2
JP5909467B2 JP2013175088A JP2013175088A JP5909467B2 JP 5909467 B2 JP5909467 B2 JP 5909467B2 JP 2013175088 A JP2013175088 A JP 2013175088A JP 2013175088 A JP2013175088 A JP 2013175088A JP 5909467 B2 JP5909467 B2 JP 5909467B2
Authority
JP
Japan
Prior art keywords
file
chunk
list
reference count
lock
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
JP2013175088A
Other languages
English (en)
Other versions
JP2015043190A (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.)
Nippon Telegraph and Telephone Corp
Original Assignee
Nippon Telegraph and Telephone 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 Nippon Telegraph and Telephone Corp filed Critical Nippon Telegraph and Telephone Corp
Priority to JP2013175088A priority Critical patent/JP5909467B2/ja
Publication of JP2015043190A publication Critical patent/JP2015043190A/ja
Application granted granted Critical
Publication of JP5909467B2 publication Critical patent/JP5909467B2/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Landscapes

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

Description

本発明は、センサ情報データベースの構成法に関する。
従来、センサの計測データのような情報、すなわちセンサ情報を効率的に記録することを目的として、チャンクと呼ばれるデータファイルを生成する方法ならびに装置(特許文献1)が提案されていた。
該文献には、情報記録装置が一時プール、第1チャンク、第2チャンク、および第1チャンクの索引情報であるチャンクプールを保持し、該情報記録装置は一時プールから第1チャンクへのチャンク生成手段ならびにチャンクプールから第2チャンクへのチャンク生成手段を有することが開示されている。このように2段階のチャンク生成を行う従来技術により、チャンクの生成を効率的に行うことができるため、大量のデータを効率的に記録し検索できる。
また、一般的に、複数CPUを有するコンピュータ等でマルチスレッドによる並行処理を正しく行うために、スレッド間で共有する変数等データをロックにより保護することが行われている。ロックの種類には排他ロックや読み書きロックなどがある。読み書きロックとは、データの読み込みは複数人が同時に行っても良いが、書き込みは同時に1人だけしか行えないように排他制御するロックである。また、これらのロックで保護する対象の考え方として、特定のデータに対してロック変数を割り付ける方法や、処理全体に1つだけロック変数を割り付けて処理開始から終了までを一括して保護する方法であるジャイアントロックがある。
2段階のチャンク生成を行う上記従来技術においては、並行処理の保護のため、読み書きロックを用いたジャイアントロックによる保護を行っていた。
一方、従来、スマートフォン等で用いる軽量な情報記録装置(非特許文献1)が提案されていた。該情報記録装置は、アーカイブファイルすなわちチャンクを生成する機能を有し、また、処理全体を保護するロックを検索処理の完了する以前に解放することで並行処理の可能度合いを高める手段を具備している。検索処理を完了する前にロックを解放すると、並行的に行われるデータ登録処理によってデータファイルの書き換えが起こり、そのために検索結果に矛盾を来す可能性が起きうる。該情報記録装置においては、これを防ぐため、一度切り出されたチャンクへの書き換えなどが起きないことを利用する。新たなデータの登録処理を並行して行うと、検索途中にチャンクが増加してしまうことが起きうるが、処理対象となるチャンク名の一覧を差分管理することで、当該増加を検知できるようにする手段が備わっている。これにより、検索結果にデータの抜け等の矛盾を来すことなく検索結果を返却することができていた。
特開2013−016112号公報
軽量化uTupleSpaceの設計と実装(柏木啓一郎ほか著、電子情報通信学会 2013年総合大会、B−19−30、2013年3月)
2段階のチャンク生成を行う従来技術においては、読み書きロックを用いたジャイアントロックによる保護を行っていたため、並行処理の可能度合いが低いという問題があった。
特に、大量のデータを記録している状況下では検索処理に長大な時間を要することがあり、その間に新たなデータ登録を行うことができないため、データの登録処理漏れに繋がってしまうという問題があった。
また、スマートフォン等で用いる軽量な情報記録装置の従来技術で用いられている並行処理の可能度合いを高める手法は、2段階のチャンク生成を行う情報記録装置に対してそのままでは適用できないという問題があった。
なぜならば、チャンク生成とは一時的な保管領域からデータをチャンクと呼ばれるファイルへと転記し、当該データを該保管領域から削除する動作だからである。特に、該2段階のチャンク生成において、チャンクプールから第2チャンクへのチャンク生成が問題となる。上記の従来手法において、当該手法を適用する前提は、一度切り出されたチャンクへの書き換えなどが起きないことが条件であった。しかし、該2段階のチャンク生成においては、一度切り出されたチャンクである第1チャンクが、チャンクプールから第2チャンクへのチャンク生成に伴って削除されなければならないため、上記前提が成り立たない。以上の理由により、従来手法を用いては、2段階のチャンク生成を行う情報記録装置の並行処理の可能度合いを高められないという問題があった。
本発明は、このような事情を考慮してなされたものであり、その目的は、2段階のチャンク生成方式による効率的なチャンク生成を行いつつ、データの登録および検索処理を並行に行うことができ、特に、長大な時間を要する検索処理の途中であってもデータ登録が短時間に完了できる特徴を有する情報記録方法、情報記録装置、及びプログラムを提供することにある。
上記目的を達成するためにこの発明の第1の観点は、以下のような構成要素を備えている。すなわち、情報記録方法は、データ群を記録する情報記録装置における情報記録方法であって、前記情報記録装置は、データの削除や検索の並行処理を保護する主ロック手段と、データが格納されているファイル群を保持し、前記ファイル群のうちどのファイルの内容を検索すればよいかを特定する索引情報を保持し、ファイル識別子と削除予定フラグを少なくとも含む情報の並びである参照カウントリストを保持する記憶手段と、参照カウントリストの並行操作を保護する副ロック手段と、を具備し、前記情報記録装置が、(A)主ロックを確保し、(B)前記索引情報を用いて検索対象となるファイルの一覧を取得し、(C)副ロックを確保し、(D)一覧を取得した前記ファイルの識別子を前記参照カウントリストに追加し、(E)前記索引情報を用いて検索対象となるファイルの一覧を取得し、一覧を取得した前記ファイルの識別子を前記参照カウントリストに追加した後、前記副ロックおよび前記主ロックを解放し、(F)前記主ロックまたは前記副ロックを再度確保し、(G)前記主ロックまたは前記副ロックを再度確保した後、前記ファイルのファイル識別子に対応する前記参照カウントリスト内の削除予定フラグがONであるファイルを削除し、(H)前記参照カウントリストから前記ファイルのファイル識別子に対応するエントリを削除し、(I)前記副ロックまたは前記主ロックを解放し、前記(A)、(B)、(C)、または(F)の前のタイミング、または(I)の後のタイミングで削除対象のファイルが前記参照カウントリストに含まれるか否かを判別し、前記参照カウントリストに含まれている前記削除対象のファイル識別子に対応する削除予定フラグをONにする。
以上述べたように、本発明によれば、2段階のチャンク生成方式による効率的なチャンク生成を行いつつ、データの登録および検索処理を並行に行うことができ、特に、長大な時間を要する検索処理の途中であってもデータ登録が短時間に完了できる特徴を有する情報記録方法、情報記録装置、及びプログラムを提供することができる。
図1は、一実施形態に係る情報記録装置の例を示す。 図2は、参照カウントリストが保持するデータの例を示す。 図3は、登録処理のフローの例を示す。 図4は、検索処理のフローの例を示す。 図5は、参照カウントリストの更新処理のフローの例を示す。 図6は、参照カウントリストが保持するデータの例を示す。 図7は、参照カウントリストが保持するデータの例を示す。 図8は、参照カウントリストが保持するデータの例を示す。
以下、図面を参照してこの発明に係わる実施形態を説明する。
第1図は本実施の形態における装置構成を示す。情報記録装置100はネットワーク101に接続され、情報登録部111と情報削除部112と情報検索部113を具備する。さらに、情報記録装置100はデータ保持を行う一時プール121およびSチャンクプール124を具備する。一時プール121は木構造によりデータを保持し、Sチャンクプール124は木構造によりSチャンク123の荷札情報を保持する。なお荷札情報とは、Sチャンク123のコンテンツ概要を記した情報のことである。
さらに、情報記録装置100は、Sチャンク123を保持するSチャンク記憶装置122およびLチャンク126を保持するLチャンク記憶装置125および参照カウントリスト116および主ロック114および副ロック115を具備する。なお、Sチャンク123のうち記号S7、および、Lチャンク126のうち記号L03が点線で記載されているのは、以下の説明において動作開始時にはこれらのファイルが存在しておらず、以下で説明する新たなデータの登録に伴って新規に作成されるファイルであることを表す。これらの具体的な作成手順は以下で詳細に述べる。
第1図に記載の用語と、本発明の用語との対応を示す。本発明における第1チャンクを本実施の形態においてはSチャンク123と呼称し、本発明における第2チャンクを本実施の形態においてはLチャンク126と呼称し、本発明におけるチャンクプールを本実施の形態においてはSチャンクプール124と呼称する。Sチャンクプール124は、Sチャンク123の索引情報である。
本情報記録装置100は、特許文献1に開示されている2段階のチャンク生成動作を行う。この詳細な手順は該文献に開示されており、容易に実施可能である。以下では、特に該従来技術からの差分に関して、詳細に述べることとする。
第2図は、参照カウントリスト116が保持するデータの例を示す。表形式でデータが保持され、本例では行204と行205の2つのエントリを持つ。カラム201はSチャンク123のファイル名を、カラム202は参照数を、カラム203は削除フラグを示す。参照数は、同時に複数の検索が行われた場合に、重複個数を数えるために用いる。
本例においては、1つ目の検索処理が実行中であり、Sチャンク「S1」と「S2」に対してファイル読み込みが行われようとしていることを表している。これらデータの更新手順については以下で詳細に説明していく。
第3図は、登録処理のフローを表す。図中、手順313は、発生したLチャンク生成307の対象データであるSチャンク123の並びに対して、ループによって処理を行うことを表す。
第4図は、検索処理のフローを表す。また、手順414の詳細を第5図に示す。これらの図中、手順408および手順456は、Sチャンクプール124検索403において得られたSチャンク123の並びに対して、ループによって処理を行うことを表す。また、Sチャンク検索412およびLチャンク検索416は、大量のファイルアクセスを伴い、検索条件によっては長大な時間を要する場合がある処理手順である。
以下では、データの検索処理および登録処理が並行的に行われた場合を例にとって、これらの手順について具体的な動作を示していく。
まず、既に述べたように、第2図が示す例では、情報記録装置100は該1つ目の検索処理を実行中である。この検索は大量のデータ候補を対象とし、長大な時間がかかるものとする。
次に、2つ目の検索処理がネットワーク101を通じて情報記録装置100に要求されたとする。情報記録装置100の情報検索部113は、第4図に示すフローに沿って以下のように処理を行う。フロー中、手順401から手順403、手順412、および手順416は、既に述べた従来技術と同様の処理内容であり、特許文献1に手順の詳細が開示されている。
まず、主ロック114を確保する手順401が実行される。主ロック114が読み書きロックである場合には、検索なので読み込みロックを確保する。次に、一時プール121の中を、該要求された検索条件で検索し、検索に合致するデータ集合を得る手順402が実行される。次に、Sチャンクプール124の中を検索し、荷札情報の集合を得る手順403が実行される。ここで、参照カウントリスト116の操作を保護するための副ロック115を取得する手順404が実行される。副ロック115は、排他ロックである。
そして、手順408によって、Sチャンクプール検索403において得られたSチャンク123の並びに対して、手順405から手順407の処理を繰り返し行う。即ち、情報記録装置100は、未処理のSチャンク123があるか否か手順408で判断する。情報記録装置100は、未処理のSチャンク123があると判断した場合、手順405にループする。また、情報記録装置100は、未処理のSチャンク123が無いと判断した場合、手順409の処理に移行する。
情報記録装置100は、該Sチャンク123が参照カウントリスト116に存在しているか否か手順405で判断する。情報記録装置100は、Sチャンク123が参照カウントリスト116に存在していると判断した場合、手順407で該Sチャンク123に対応する参照数に1を加算する。また、情報記録装置100は、Sチャンク123が参照カウントリスト116に存在していないと判断した場合、手順406で該Sチャンク123を参照カウントリスト116に追加する。追加するエントリには、該Sチャンク123のファイル名と、参照数すなわち値1と、参照フラグとしてNOという値を記載する。
次に、副ロック115を解放する手順409が実行される。次に、該要求された検索条件で検索処理を行う必要があるLチャンク126のファイル名一覧を取得する手順410が実行される。本実施の形態においては、単純に、その時点でLチャンク記憶装置125内に存在する全てのLチャンク126のファイル名を得る。次に、主ロック114を解放する手順411が実行される。
以上で主ロック114が解放されるので、これ以降、別のスレッドは、データの登録処理や検索処理を並行して実行できるようになる。
さらに、Sチャンクプール検索403で得られたSチャンク123の並びに対して、個々のSチャンク123のファイルを読み取り、該要求された検索条件で合致するデータを検索する手順412が実行される。次に、再度、副ロック115を確保して手順413が実行され、参照カウントリスト更新手順414すなわち第5図に示すフローで以下の処理を行う。
手順456によって、Sチャンクプール検索403において得られたSチャンク123の並びに対して、手順451から手順455の処理を繰り返し行う。即ち、情報記録装置100は、未処理のSチャンク123があるか否か手順456で判断する。情報記録装置100は、未処理のSチャンク123があると判断した場合、手順451にループする。また、情報記録装置100は、未処理のSチャンク123が無いと判断した場合、処理を終了する。
まず、該Sチャンク123に対応する参照カウントリスト116内のエントリの、参照数列202から1を減じる手順451が実行される。その結果、情報記録装置100は、参照数が0であるか否か手順452で判断する。さらに、情報記録装置100は、該エントリの削除フラグ列203がYESであるか否か手順453で確認する。該削除フラグがYESであれば、該エントリに記載されたファイル名列201のSチャンク123を削除する手順454が実行される。そして、削除フラグがYESであるかNOであるかに関わらず、該エントリを参照カウントリスト116から削除する手順455が実行される。
次に、副ロック115を解放する手順415が実行される。最後に、さらに、Lチャンクファイル名取得410で得られたLチャンク126の並びに対して、個々のLチャンク126のファイルを読み取り、該要求された検索条件で合致するデータを検索する手順416が実行される。以上で検索処理は終了であり、情報記録装置100は上記手順で得られた全ての検索結果のデータを要求元に返却する。
なお、手順413及び手順415で確保または解放されるロックは、本実施の形態においては副ロック115としたが、主ロック114であってもよい。
ここで、説明のための例示として、例えば該2つ目の検索処理では、Sチャンクプール検索403によって「S2」と「S5」という2つのSチャンク123が検索対象として得られたと仮定する。この場合、主ロック114の解放手順411までを実行した時点での、参照カウントリスト116が保持するデータを第6図に示す。S2とS5のうち、S2は行205として元々存在していたので参照数を2とし、S5は新規エントリとして行206に追加される。
上記示した一連の手順において、特に処理時間を要するのは、大量のファイルアクセスを伴うSチャンク検索412およびLチャンク検索416である。これらの手順以前に手順411で主ロック114が解放されているため、これらの手順(例えばSチャンク検索412およびLチャンク検索416)を実行している間に並行して、情報記録装置100は他のデータ登録などの処理を行うことができる。
ここでは、説明のため、該2つ目の検索処理においてSチャンク検索412に今しばらくの処理時間を要し、その間に、新たに、データ登録処理がネットワーク101を通じて情報記録装置100に要求されたとする。情報記録装置100の情報登録部111は、第3図に示すフローに沿って以下のように処理を行う。フロー中、手順302から手順308は、既に述べた従来技術と同様の処理内容であり、特許文献1に手順の詳細が開示されている。
まず、主ロック114を確保する手順301が実行される。主ロック114が読み書きロックである場合には、登録なので書き込みロックを確保する。次に、一時プール121に対して、登録対象データを登録する手順302が実行される。
ここで、一時プール121内のコンテンツ量が予め設定した閾値を超えた場合には手順303、及び手順304以降が実行される。すなわち、Sチャンク記憶装置122内に一時プール121内のデータの部分集合を記載した新たなSチャンク123のファイルを作成する手順304が実行される。ここでは第1図の記号S7のファイルが作成されたものとする。次に、該データのサブセットを一時プール121から削除する手順305が実行される。そして、該Sチャンク記号S7のコンテンツ概要を記した情報である荷札情報をSチャンクプール124へ登録する手順306が実行される。
ここで、Sチャンクプール124内のコンテンツ量が予め設定した閾値を超えた場合には手順307、及び手順308以降が実行される。すなわち、Lチャンク記憶装置125内にSチャンクプール124内の荷札情報の部分集合に対応するSチャンク123の部分集合のファイル内容を記載した新たなLチャンク126のファイルを作成する手順308が実行される。ここでは、該Sチャンク123の部分集合として記号S2およびS4およびS5からなる3つのSチャンク123が処理対象になったものとし、これら3つのファイル内容を記載した記号L03のファイルが作成されたものとする。次に、副ロック115を確保する手順309が実行される。副ロック115は排他ロックである。
そして、情報記録装置100の情報削除部112は、手順313によって、該Sチャンク123の部分集合に対して、手順310から手順312の処理を繰り返し行う。即ち、情報記録装置100は、部分集合内で未処理のSチャンク123があるか否か手順313で判断する。情報記録装置100は、部分集合内に未処理のSチャンク123があると判断した場合、手順310にループする。また、情報記録装置100は、部分集合内に未処理のSチャンク123が無いと判断した場合、手順314の処理に移行する。
情報記録装置100は、手順310で該Sチャンク123が参照カウントリスト116に存在しているか否か判断する。Sチャンク123が参照カウントリスト116に存在していると判断した場合、情報記録装置100は、手順312で該Sチャンク123に対応する削除フラグにYESを設定する。また、Sチャンク123が参照カウントリスト116に存在していないと判断した場合、情報記録装置100は、手順311でSチャンク123のファイルを削除する。
上記手順310から313の処理結果の参照カウントリスト116が保持するデータを第7図に示す。ここでは、第6図に示されるデータを保持する参照カウントリスト116に対してS2およびS4およびS5に関して処理を行うのであるから、参照カウントリスト116に存在するS2およびS5に関しては削除フラグ203がYESとなり、参照カウントリスト116に存在しないS4に関しては当該ファイルが削除される。
次に、情報記録装置100の情報登録部111は、手順314で副ロック115を解放し、最後に、手順315で主ロック114を解放して処理終了となる。
ここでは、説明のため、該データ登録処理が以上示した一連の手順により完了した後、該2つ目の検索処理が完了したとする。この動作例においては、手順413以降が、第7図に示されるデータを保持する参照カウントリスト116に対して実行される。ここでは、該2つ目の検索処理では、Sチャンクプール検索403によって「S2」と「S5」という2つのSチャンク123が検索対象として得られていたのであるから、S2に関しては参照カウントリスト116内の参照数202が2であるため1を減じて値1となり、S5に関しては参照カウントリスト116内の参照数202が1であるため1を減じて値0となり、かつ、削除フラグ203がYESであるため、ファイルS5が削除される。
上記の処理が完了した結果として参照カウントリスト116が保持するデータを第8図に示す。ここでは、第7図に示されるデータを保持する参照カウントリスト116に対してS2及びS5に関して処理が行われる。ファイルS2は、参照カウントリスト116内の参照数202が2であるため、1が減じられた結果値が1になる。また、ファイルS5は、参照カウントリスト116内の参照数202が1であるため、1が減じられた結果値が0になる。尚且つ、ファイルS5は、削除フラグ203がYESである。この為ファイルS5は、削除される。さらに、ファイルS5は、前記処理により参照数202が0になったため、情報記録装置100が参照カウントリスト116からファイルS5に該当する行を削除する。
上記の処理手順の意味は以下の通りである。該データ登録処理において、本来はS2およびS4およびS5を削除すべきであるが、S2およびS5については並行して検索に用いられているため削除されてはならず、そのために削除を遅延する。該2つ目の検索処理が完了した段階で、S5についてはこれを用いている並行的な処理は存在しないため、この時点で削除する。なお、S2については、該1つ目の検索処理でも用いられているため、該検索処理が完了した時点で削除される。
以上示したように、データの検索処理において、長大な時間のかかる可能性のあるSチャンク検索412およびLチャンク検索416は、主ロック114を解放した状態で処理がなされるため、その間に情報記録装置100は他のデータ登録やデータ検索の要求を並行して行うことができる。またこのため、特に、データ検索中であってもデータ登録を迅速に完了することができ、データの取りこぼし等が発生しないという効果が得られる。
本実施の形態に示した手順で得られる効果は、非特許文献1で示されるスマートフォン等で用いる軽量な情報記録装置100の従来技術において開示されている手順を用いては、達成することができない。なぜならば、該従来技術は、登録されたデータが削除されないことを前提とし、検索結果を登録の古いものから順に返すという要求条件を満たすために工夫がなされたものだからである。本発明は、既に示したように2段階のチャンク生成を対象としており、Sチャンク123を削除してLチャンク126を生成することが必要となるため、特にSチャンク123の登録と検索の並行処理に関して該従来技術の前提にあてはまらず、従ってこれを適用することができないため、上記示した新たな一連の手順を発明したものである。
一方、本発明が対象とする装置においては、検索結果を登録の古いものから順に返すという特段の要求条件は存在しないため、該従来技術のような特段の工夫は必要とされず、具体的にはLチャンク126の登録手順308と検索手順410および手順416の並行処理に関しては特段の配慮は不要であり、手順410でファイル名を取得した後に手順411で主ロック114を解放して並行処理を許可するだけの簡素な手順で良い。これは生成されたLチャンク126が削除されることはないという本情報記録装置100の特性を利用したものである。
本実施の形態が、特にSチャンク123の登録と検索の並行処理に関して上記示した一連の手順により効果を得られるのは、2段階のチャンク生成という本情報記録装置100の特性のうち特に以下の2つの特性を活用していることが大きく寄与している。1つは、データの検索において、時間のかかるSチャンク123のファイルアクセスを伴う検索処理手順412に先だって、検索処理の対象となるファイルの集合を、手順403によって木構造を用いて事前に高速に取得することができることが挙げられる。このため、手順403と手順412の間に手順411のようにして主ロック114を解放することができる。この結果、情報記録装置100は、主ロック114を確保した状態の時間を最小限に留めることができる。
いま1つは、データの登録において、手順311での削除処理の対象が、本情報記録装置100が扱う個々のデータ単位ではなく、Sチャンク123のファイル単位であることが挙げられる。仮に、2段階のチャンク生成を採用せず、一時プール121からLチャンク126を直接生成すると仮定した場合には、Lチャンク126生成のために削除する対象は、一時プール121内に蓄積されている個々のデータであり、特定のファイルを丸ごと削除するといった手順は採用できない。本実施の形態においては、Lチャンク126は複数のSチャンク123のファイルの内容を記載したものであり、削除はファイル単位で行われるため、当該ファイルが並行する他のデータ検索処理で使われているか否かを参照カウントリスト116を用いて効果的に判定でき、ファイル削除を遅延することによって、データ登録とデータ検索との並行動作を可能とした。
なお、本実施の形態においても一時プール121からSチャンク123の生成に関してはファイル単位の削除が採用できないという問題が存在し、このためこれらの処理中には主ロック114を解放できないという問題が存在するが、これは大きな問題とはならない。なぜなら、2段階のチャンク生成においては、一時プール121のサイズを小さく抑えることができるという利点があるため、一時プール121に関する検索処理は瞬時に終了するため、並行動作を阻害しないからである。
このように、本実施の形態においては、削除予定のファイルを記憶しておき不要になった時点で削除するという一般的手法を、2段階のチャンク生成と組み合わせることによって、2段階のチャンク生成の各種特性を活用することができ、顕著な効果を得ることができる。
なお、本実施の形態においては、参照カウントリスト116は表形式でデータを保持した。本発明の範囲はこれに限るものではなく、木構造やリストやハッシュや連想配列などを用いてもよい。また、参照カウントリスト116のようなデータを別途準備するのではなく、例えばファイル名やiノード等の各ファイルに付随する領域に、削除フラグに相当する情報を保持してもよい。
また、本実施の形態において、データ検索処理における一時プール121とSチャンク123とLチャンク126からの検索手順は、第4図に示した順序に限るものではなく、任意の順序でよい。特に、主ロック114を確保している間であれば、他の並行する処理が割り込んで処理結果が左右されるおそれはないため、検索結果の意味が変わらない範囲において任意の順序に並べ替えてもよい。
なお、この発明は上記実施形態に限定されるものではない。例えば、本発明の装置はコンピュータとプログラムによっても実現でき、プログラムを記録媒体に記録することも、ネットワークを通して提供することも可能である。また、この発明の要旨を逸脱しない範囲で上記実施形態を種々変形して実施可能である。
要するにこの発明は、上記実施形態そのままに限定されるものではなく、実施段階ではその要旨を逸脱しない範囲で構成要素を変形して具体化できる。また、上記実施形態に開示されている複数の構成要素の適宜な組み合せにより種々の発明を形成できる。例えば、実施形態に示される全構成要素から幾つかの構成要素を削除してもよい。さらに、異なる実施形態に亘る構成要素を適宜組み合せてもよい。
100…情報記録装置、101…ネットワーク、111…情報登録部、112…情報削除部、113…情報検索部、114…主ロック、115…副ロック、116…参照カウントリスト、121…一時プール、122…Sチャンク記憶装置、123…Sチャンク、124…Sチャンクプール、125…Lチャンク記憶装置、126…Lチャンク。

Claims (7)

  1. データ群を記録する情報記録装置における情報記録方法であって、
    前記情報記録装置は、
    データの削除や検索の並行処理を保護する主ロック手段と、
    データが格納されているファイル群を保持し、前記ファイル群のうちどのファイルの内容を検索すればよいかを特定する索引情報を保持し、ファイル識別子と削除予定フラグを少なくとも含む情報の並びである参照カウントリストを保持する記憶手段と、
    参照カウントリストの並行操作を保護する副ロック手段と、
    を具備し、
    前記情報記録装置が、
    (A)主ロックを確保し、
    (B)前記索引情報を用いて検索対象となるファイルの一覧を取得し、
    (C)副ロックを確保し、
    (D)一覧を取得した前記ファイルの識別子を前記参照カウントリストに追加し、
    (E)前記索引情報を用いて検索対象となるファイルの一覧を取得し、一覧を取得した前記ファイルの識別子を前記参照カウントリストに追加した後、前記副ロックおよび前記主ロックを解放し、
    (F)前記主ロックまたは前記副ロックを再度確保し、
    (G)前記主ロックまたは前記副ロックを再度確保した後、前記ファイルのファイル識別子に対応する前記参照カウントリスト内の削除予定フラグがONであるファイルを削除し、
    (H)前記参照カウントリストから前記ファイルのファイル識別子に対応するエントリを削除し、
    (I)前記副ロックまたは前記主ロックを解放し、
    前記(A)、(B)、(C)、または(F)の前のタイミング、または(I)の後のタイミングで削除対象のファイルが前記参照カウントリストに含まれるか否かを判別し、前記参照カウントリストに含まれている前記削除対象のファイル識別子に対応する削除予定フラグをONにする、
    ことを特徴とする情報記録方法。
  2. 前記情報記録装置は、
    第1チャンクを前記ファイル群として保持し、
    一時プール、及び前記第1チャンクの索引情報であるチャンクプールを前記索引情報として保持し、
    前記情報記録装置が、
    前記一時プールから前記第1チャンクを生成し、
    前記チャンクプールから前記第2チャンクを生成し、
    前記チャンクプールから前記第2チャンクを生成する場合に前記第1チャンクのデータを削除する、
    ことを特徴とする請求項1に記載の情報記録方法。
  3. 前記情報記録装置が、
    一時プールを検索して検索結果データを取得し、
    前記チャンクプールを検索して第1チャンクのファイル一覧を取得し、
    前記第2チャンクのファイル一覧を取得し、
    前記検索結果データを取得し、前記第1チャンクファイル一覧を取得し、前記ファイルの識別子を前記参照カウントリストに追加し、前前記第2チャンクファイル一覧を取得した後に前記主ロックを解放し、
    前記第1チャンクのファイル一覧を検索して検索結果データを取得し、
    前記第2チャンクのファイル一覧を検索して検索結果データを取得する、
    ことを特徴とする請求項2に記載の情報記録方法。
  4. データ群を記録する情報記録装置であって、
    前記情報記録装置は、
    情報削除部と、
    情報検索部と、
    データの削除や検索の並行処理を保護する主ロック手段と、
    データが格納されているファイル群を保持し、前記ファイル群のうちどのファイルの内容を検索すればよいかを特定する索引情報を保持し、ファイル識別子と削除予定フラグを少なくとも含む情報の並びである参照カウントリストを保持する記憶手段と、
    参照カウントリストの並行操作を保護する副ロック手段と、
    を具備し、
    前記情報検索部は、
    主ロックを確保する主ロック確保手段と、
    前記索引情報を用いて検索対象となるファイルの一覧を取得するファイル一覧取得手段と、
    副ロックを確保する副ロック確保手段と、
    一覧を取得した前記ファイルの識別子を前記参照カウントリストに追加する参照カウントリスト追加手段と、
    前記参照カウントリスト追加手段が前記ファイルの識別子を前記参照カウントリストに追加した後、前記副ロックおよび前記主ロックを解放するロック解放手段と、
    前記主ロックまたは前記副ロックを再度確保するロック再確保手段と、
    前記ロック再確保手段により前記主ロックまたは前記副ロックを再度確保した後、前記ファイルのファイル識別子に対応する前記参照カウントリスト内の削除予定フラグがONであるファイルを削除するファイル削除手段と、
    前記参照カウントリストから前記ファイルのファイル識別子に対応するエントリを削除するエントリ削除手段と、
    を具備し、
    前記情報削除部は、
    削除対象のファイルが前記参照カウントリストに含まれるか否かを判別する判別手段と、
    前記参照カウントリストに含まれている前記削除対象のファイル識別子に対応する削除予定フラグをONにする削除予定フラグ切替手段と、
    を具備することを特徴とする情報記録装置。
  5. 前記記憶手段は、
    第1チャンクを前記ファイル群として保持し、一時プール、及び前記第1チャンクの索引情報であるチャンクプールを前記索引情報として保持し、
    前記一時プールから前記第1チャンクを生成する第1のチャンク生成手段と、前記チャンクプールから前記第2チャンクを生成する第2のチャンク生成手段とを有する情報登録部をさらに具備し、
    前記情報削除部は、前記チャンクプールから前記第2チャンクを生成する場合に前記第1チャンクのデータを削除する、
    ことを特徴とする請求項4に記載の情報記録装置。
  6. 該情報検索部は、
    一時プールを検索して検索結果データを取得する第1の検索結果データ取得手段と、
    前記チャンクプールを検索して第1チャンクのファイル一覧を取得する第1チャンクファイル一覧取得手段と、
    前記第2チャンクのファイル一覧を取得する第2チャンクファイル一覧取得手段と、
    前記第1チャンクのファイル一覧を検索して検索結果データを取得する第2の検索結果データ取得手段と、
    前記第2チャンクのファイル一覧を検索して検索結果データを取得する第3の検索結果データ取得手段と、
    をさらに具備し、
    前記ロック解放手段は、前記第1の検索結果データ取得手段が前記検索結果データを取得し、前記第1チャンクファイル一覧取得手段が前記第1チャンクファイル一覧を取得し、前記参照カウントリスト追加手段が前記ファイルの識別子を前記参照カウントリストに追加し、前記第2チャンクファイル一覧取得手段が前記第2チャンクファイル一覧を取得した後に前記主ロックを解放することを特徴とする請求項5に記載の情報記録装置。
  7. データ群を記録する情報記録装置より実行されるプログラムであって、
    前記情報記録装置は、
    データの削除や検索の並行処理を保護する主ロック手段と、
    データが格納されているファイル群を保持し、前記ファイル群のうちどのファイルの内容を検索すればよいかを特定する索引情報を保持し、ファイル識別子と削除予定フラグを少なくとも含む情報の並びである参照カウントリストを保持する記憶手段と、
    参照カウントリストの並行操作を保護する副ロック手段と、
    を具備し、
    前記情報記録装置を、
    主ロックを確保する主ロック確保手段と、
    前記索引情報を用いて検索対象となるファイルの一覧を取得するファイル一覧取得手段と、
    副ロックを確保する副ロック確保手段と、
    一覧を取得した前記ファイルの識別子を前記参照カウントリストに追加する参照カウントリスト追加手段と、
    前記参照カウントリスト追加手段が前記ファイルの識別子を前記参照カウントリストに追加した後、前記副ロックおよび前記主ロックを解放するロック解放手段と、
    前記主ロックまたは前記副ロックを再度確保するロック再確保手段と、
    前記ロック再確保手段により前記主ロックまたは前記副ロックを再度確保した後、前記ファイルのファイル識別子に対応する前記参照カウントリスト内の削除予定フラグがONであるファイルを削除するファイル削除手段と、
    前記参照カウントリストから前記ファイルのファイル識別子に対応するエントリを削除するエントリ削除手段と、
    を具備する情報検索部と、
    削除対象のファイルが前記参照カウントリストに含まれるか否かを判別する判別手段と、
    前記参照カウントリストに含まれている前記削除対象のファイル識別子に対応する削除予定フラグをONにする削除予定フラグ切替手段と、
    を具備する情報削除部として動作させる、
    ことを特徴とするプログラム。
JP2013175088A 2013-08-26 2013-08-26 情報記録方法、及び情報記録装置、及びプログラム Active JP5909467B2 (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2013175088A JP5909467B2 (ja) 2013-08-26 2013-08-26 情報記録方法、及び情報記録装置、及びプログラム

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2013175088A JP5909467B2 (ja) 2013-08-26 2013-08-26 情報記録方法、及び情報記録装置、及びプログラム

Publications (2)

Publication Number Publication Date
JP2015043190A JP2015043190A (ja) 2015-03-05
JP5909467B2 true JP5909467B2 (ja) 2016-04-26

Family

ID=52696683

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2013175088A Active JP5909467B2 (ja) 2013-08-26 2013-08-26 情報記録方法、及び情報記録装置、及びプログラム

Country Status (1)

Country Link
JP (1) JP5909467B2 (ja)

Family Cites Families (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP5343399B2 (ja) * 2008-05-22 2013-11-13 富士通株式会社 管理プログラム、管理方法、及び管理装置
JP5517263B2 (ja) * 2011-07-06 2014-06-11 日本電信電話株式会社 チャンク生成装置、チャンク読み取り装置、チャンク生成方法及びプログラム

Also Published As

Publication number Publication date
JP2015043190A (ja) 2015-03-05

Similar Documents

Publication Publication Date Title
KR102098548B1 (ko) 블록체인에서 블록 데이터를 검증하기 위한 방법 및 장치
CN109933570B (zh) 一种元数据管理方法、系统及介质
US9881041B2 (en) Multiple RID spaces in a delta-store-based database to support long running transactions
US9665439B2 (en) Data processing apparatus and method
US10013312B2 (en) Method and system for a safe archiving of data
US20150278310A1 (en) Database device
US20140320498A1 (en) Terminal device, information processing method, and computer program product
WO2016155510A1 (en) Apparatus and method for creating user defined variable size tags on records in rdbms
US9009730B2 (en) Transaction capable queuing
JP5909467B2 (ja) 情報記録方法、及び情報記録装置、及びプログラム
US9348861B2 (en) Capturing change data of deferred updates
CN117093579A (zh) 数据查询、数据存储方法、装置、设备及存储介质
JP4139613B2 (ja) データ処理方法
WO2023066211A1 (zh) 图数据写入
JP2017167654A (ja) データ管理装置及びデータベースの管理方法
US11809598B2 (en) Devices and methods for safe storage of media containing personal data and erasure of stored personal data
JP6477169B2 (ja) データベースの処理制御方法、処理制御プロラム及びデータベースサーバ
US20200249876A1 (en) System and method for data storage management
US8996521B2 (en) Data caveats for database tables
US20140325271A1 (en) Terminal device, information processing method, and computer program product
US10795875B2 (en) Data storing method using multi-version based data structure
US10042558B1 (en) Method to improve the I/O performance in a deduplicated storage system
US9933961B1 (en) Method to improve the read performance in a deduplicated storage system
US8166018B2 (en) Browsing a list of data items
US10303680B2 (en) Data processing apparatus and data processing method

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20150618

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20160217

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

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20160328

R150 Certificate of patent or registration of utility model

Ref document number: 5909467

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150