JP5247192B2 - 周期更新データ管理システム - Google Patents
周期更新データ管理システム Download PDFInfo
- Publication number
- JP5247192B2 JP5247192B2 JP2008066035A JP2008066035A JP5247192B2 JP 5247192 B2 JP5247192 B2 JP 5247192B2 JP 2008066035 A JP2008066035 A JP 2008066035A JP 2008066035 A JP2008066035 A JP 2008066035A JP 5247192 B2 JP5247192 B2 JP 5247192B2
- Authority
- JP
- Japan
- Prior art keywords
- record
- update
- records
- information source
- target
- 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
Links
- 238000013523 data management Methods 0.000 title claims description 42
- 125000004122 cyclic group Chemical group 0.000 title 1
- 239000000872 buffer Substances 0.000 claims description 201
- 238000012545 processing Methods 0.000 claims description 139
- 230000000737 periodic effect Effects 0.000 claims description 40
- 230000006870 function Effects 0.000 claims description 6
- 238000004891 communication Methods 0.000 claims description 4
- 238000004148 unit process Methods 0.000 claims 2
- 238000000034 method Methods 0.000 description 59
- 238000010586 diagram Methods 0.000 description 7
- 230000015556 catabolic process Effects 0.000 description 4
- 238000006731 degradation reaction Methods 0.000 description 4
- 230000000694 effects Effects 0.000 description 3
- 230000002411 adverse Effects 0.000 description 2
- 239000000284 extract Substances 0.000 description 2
- 230000002159 abnormal effect Effects 0.000 description 1
- 230000003139 buffering effect Effects 0.000 description 1
- 238000004590 computer program Methods 0.000 description 1
- 235000014510 cooky Nutrition 0.000 description 1
- 230000001186 cumulative effect Effects 0.000 description 1
- 238000012217 deletion Methods 0.000 description 1
- 230000037430 deletion Effects 0.000 description 1
- 238000013461 design Methods 0.000 description 1
- 238000013467 fragmentation Methods 0.000 description 1
- 238000006062 fragmentation reaction Methods 0.000 description 1
- 238000007429 general method Methods 0.000 description 1
- 230000004044 response Effects 0.000 description 1
- 230000002123 temporal effect Effects 0.000 description 1
Images
Landscapes
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Description
この結果、多数のレコードを更新する際には、2次記憶へのアクセスパターンがシーケンシャルであるかランダムであるかによって、得られる性能が著しく異なってしまう。
図1はこの発明の実施の形態1に係る周期更新データ管理システムを示すブロック構成図である。
図1において、周期更新データ管理システムは、記憶部1と、記憶部1に接続された読込バッファ4と、記憶部1に接続された書込バッファ5a、5b、・・・と、書込バッファ5a、5b、・・・を制御する更新処理部6と、記憶部1とは異なる第2の記憶部8と、第2の記憶部8に接続された要求受付部10とを備えている。
以下、代表的に、複数の書込バッファのうちの2つの書込バッファ5a、5bに注目して説明する。
以下、代表的に、複数のバケットのうちの3つのバケット2a〜2cに注目して説明する。
第2の記憶部8は、情報源登録テーブル9aを有しており、たとえば情報源7a〜7cに対応した識別子A〜Cを格納する。
要求受付部10は、更新処理部6および制御端末11からの登録要求に応答して、書込バッファ5a、5bの保持データを制御する。
ここでは、代表例として、情報源7a〜7cは、Webサーバ上のWebページにより構成され、制御端末11は、一般的なコンピュータにより構成されるものとする。
たとえば、情報源7a〜7cは、論理的な実体であり、物理的な実体であるWebサーバに、各情報源7a〜7cを識別するURLを指定して、Webページ取得要求を送付することに対応する。
ここで、レコードは、Webページを取得するごとに更新され、次の取得タイミングは、適応的に制御されるものとする。実際に取得したWebページの内容自体は、ログ形式などで、記憶部1以外の別の記憶手段に格納されてもよい。
すなわち、記憶部1および第2の記憶部8を磁気ディスク装置で実現し、読込バッファ4および書込バッファ5a〜5bをランダムアクセスメモリで実現し、更新処理部および要求受付部10を、ランダムアクセスメモリに格納されプロセッサで実行されるコンピュータプログラムとして実現することができる。
記憶部1内のバケット2a〜2cは、たとえばLinuxやWindows(登録商標)などの一般的なオペレーティングシステムが提供するファイルとして実現することができる。
各レコード3は、各情報源7a〜7cと1対1に対応しており、それぞれ、独立の周期で、対応する情報源7a〜7cの情報に基づいて更新される。
すなわち、レコード3の次回更新時刻に応じて格納するバケット2a〜2cを定める。また、各バケット2a〜2c内でのレコード3の配置は格納順であり、特定の情報源識別子を持つレコード3を検索するためには、バケット2a〜2cの全体の走査を必要とする。
情報源登録テーブル9aは、既知の情報源の識別子を格納しており、たとえば、公知の「B−tree」などの木構造を用いて、特定の情報源識別子の検索が効率的に行えるようにする。
図2において、レコード3は、情報源識別子31と、次回更新時刻32と、最終状態33と、最終更新時刻34と、更新周期35とを、情報として含む。
次回更新時刻32は、レコードが次に更新される予定の時刻であり、前述の通り、同一バケット内の各レコード3は、所定単位(たとえば、「日」)で表した同一の次回更新時刻を持つ。
なお、レコード3の次回更新時刻32を決定するために、情報の値自体ではなく、値の変化の有無のみ、が重要な場合には、最終状態33には値自体に代えて、値にハッシュ関数(hash function)を適用してデータ長を圧縮した表現を用いることができる。
なお、レコード3は、情報源7a〜7cから情報を取得する際に必要な補助的なデータ(たとえば、Webサイトの認証情報やクッキー情報など)をさらに含んでいてもよい。
図3において、更新処理部6は、まず、バケット2a〜2cのうち、最小(t)の次回更新時刻32に対応するものを、処理対象バケット(処理対象領域)t(以下、単に「バケットt」ともいう)として選択する(ステップS1)。
続いて、読込バッファ4内のすべてのレコードが処理されたか否かを判定して(ステップS4)、すべてのレコードが処理済み(すなわち、YES)と判定されれば、ステップS10に進み、未処理レコードが残っている(すなわち、NO)と判定されれば、ステップS5に進む。
なお、上述したように、取得した情報を別の記憶手段に格納する必要がある場合は、ステップS5の時点で格納する。
次回更新時刻t’は、たとえば、レコード3に格納された最終状態33と、取得した情報に基づく新たな最終状態とを比較して、情報の更新の検出有無に基づいて設定される。すなわち、情報の更新が検出された場合には、更新周期35の1/2を現在時刻に加算し、情報の更新が検出されなかった場合には、更新周期35に「1」を加算した値を現在時刻に加算する、などの方法により決定することができる。
一般に、情報源からの情報取得は、異常終了することもあり、また、情報の更新がないと更新周期35が非常に大きくなる。したがって、たとえば、異常終了が「3回」続いた場合や、更新周期35が「2年以上」になった場合など、の所定条件を設けることにより、所定条件に当てはまる場合に「棄却対象」と判定することができる。
ステップS7において、空きがない(すなわち、YES)と判定されれば、次のステップS8に進み、空きがある(すなわち、NO)と判定されれば、ステップS8をスキップしてテップS9に進む。
続いて、ステップS5で更新したレコードの値を書込バッファt’の末尾に追加して(ステップS9)、ステップS4に戻る。
最後に、読込バッファを空にし(ステップS11)、処理を終えたバケットtを削除して(ステップS12)、ステップS1に戻る。
図4において、要求受付部10は、まず、登録要求を受信する(ステップS21)。
このとき、登録要求は、登録対象となる情報源の情報源識別子Rを含んでいる。
一方、ステップS22において、情報源登録テーブル9a内に情報源識別子Rが存在しない(すなわち、NO)と判定されれば、次のステップS23に進み、情報源識別子Rを情報源登録テーブル9aに追加登録する。
更新時刻t’は、現在時刻tに所定の定数(たとえば、「1」)、または所定範囲内の乱数を加算して決定することができる。
最後に、要求受付部10は、更新処理部6(図3)のステップS7〜S9と同様のレコード書き込み処理(ステップS25〜S27)を実行して、ステップS21に戻る。
また、レコード単位のランダムアクセスを回避して、記憶部1(磁気ディスク装置)の性能低下を防ぐことができる。
この場合、更新処理部6は、処理対象バケットに格納されたすべての対象レコードを一括して読込バッファ4に読み込み、読込バッファ4内の各対象レコードについて、複数の情報源7a〜7cの中から対象レコードに対応する対象情報源を参照して、更新後の値および次回更新時刻t’を決定する。
また、一括して読み込まれたバケットは、直ちに再利用可能となるので、バケット(記憶領域)の断片化を回避することができる。
第2の記憶部8は、記憶部1に格納されたすべてのレコードに対応する各情報源の識別子を格納する情報源登録テーブル9aを有する。
要求受付部10は、複数の情報源のいずれか1つに対応する識別子を含む登録要求を受け付け、その識別子が情報源登録テーブル9aに格納されていない場合には、その識別子を情報源登録テーブル9aに追加するとともに、その識別子に対応するレコードを所定値に初期化して、記憶部1内の複数のバケット2a〜2cのうちの1つ、または書込バッファ5a、5bの1つの末尾に書き込む。
特に、情報源の情報がWebサイト上のWebページの場合には、情報源の識別子は、WebページのURLであり、更新処理部6は、処理対象バケット内の対象レコードに対応するWebページの内容をダウンロードして、対象レコードの更新後の値を決定するとともに、対象レコードに対応するWebページからリンクを抽出して、得られたURLの各々を登録要求として要求受付部10に送付することにより、ハイパーリンクから新たな情報源の候補を発見することができ、自律的なWeb情報収集が可能になる。
これにより、一度不要と判定された情報源を、再度登録することが可能になる。
これにより、書込バッファt+1のレコードをバケットt+1に書き込み、再度読込バッファに読み込むオーバーヘッドを回避することができる。
この場合、情報源の識別子は、ファイルのパス名であり、更新処理部6は、処理対象バケット内の対象レコードに対応するファイルの内容をダウンロードして、対象レコードの更新後の値を決定するとともに、対象レコードに対応するファイルがディレクトリである場合には、そのディレクトリ内のファイルおよびサブディレクトリの各パス名を登録要求として要求受付部10に送付する。
また、ファイルの削除に対しては、ステップS6の棄却処理で対応することができる。
なお、上記実施の形態1(図3)では、ステップS4の判定結果がNO(レコード処理が未完了)の場合に、無条件で次回更新時刻t’の決定処理(ステップS5)を実行したが、図5のように、所定数処理または所定時間経過の判定条件(ステップS51)の正否に応じて、次回更新時刻t’の決定処理(ステップS52、S53)を実行してもよい。
なお、この発明の実施の形態2に係る周期更新データ管理システムの全体構成は、前述(図1参照)と同様であり、更新処理部6の一部動作が異なるのみである。
ただし、ステップS53において選択されるレコードは、未処理レコードのうち、以下の値Kが最も大きいものとする。
このとき、次回更新時刻t’は、現在時刻tに所定の定数(たとえば、「1」)または所定範囲の乱数を加算することにより、決定することができる。
また、更新処理部6は、ステップS51の条件が不成立の場合に、レコードを相対累積待ち時間に基づいて、処理対象バケットの各レコードを優先度順に処理(ステップS52)するので、高負荷時であってもレコードの更新を公平に実行することができる。
なお、上記実施の形態1、2では特に言及しなったが、図6のように、次々回以降に処理対象となるすべてのバケットに書き込まれるレコードを一時的に格納するために、第1の書込バッファ5xとは別に、第2の書込バッファ5yを設けてもよい。
図6はこの発明の実施の形態3に係る周期更新データ管理システムを示すブロック構成図であり、前述(図1参照)と同様のものについては、前述と同一符号を付して、または符号の後に「A」を付して詳述を省略する。
この場合、前述の書込バッファ5a、5bの数とは異なり、書込バッファ数は、バケット2a〜2cの数とは無関係に、2つ(第1および第2の書込バッファ5x、5y)である。
また、第2の書込バッファ5yには、単一バケット以外のバケットに書き込まれるレコードが格納される。
棄却バケット12a、12b、・・・は、前述と同様に、バケット2a〜2cに対応した複数のレコードを格納する。
さらに、制御端末11から要求受付部10Aに対しては、前述の登録要求のみならず、検索要求および更新要求が送信される。
図7において、情報源登録テーブル9bは、前述(図1参照)の情報源登録テーブル9aとは異なり、情報源識別子91に加えて、情報源(A、B、C、・・・)7a、7b、7c、・・・ごとに、次回更新時刻92を格納している。
次回更新時刻92は、情報源識別子91に対応するレコード3の次回更新時刻32(図2参照)の値であり、一部の情報源については、棄却済みであることを示す場合がある。
図8において、バケット2は、前述(図2)とは異なり、レコード3に加えて、形式の異なる更新レコード30を含む場合がある。
更新内容37は、レコード3の更新対象項目名およびその値を含む。
まず、図9を参照しながら、更新処理部6Aの動作について説明する。
図9において、ステップS101〜S104、S106、S107およびS118は、それぞれ、前述(図3参照)のステップS1〜S6およびS12と同様の処理である。
ステップS107でレコードが棄却対象である(すなわち、YES)と判定されればステップS108に進み、レコードが棄却対象でない(すなわち、NO)と判定されればステップS109に進む。
さらに、ステップS108においては、レコードの情報源識別子に対応する情報源登録テーブル9bの次回更新時刻92に対し、書き込んだ棄却バケットを識別するための情報を設定して、ステップS104に戻る。
ステップS109において、t’=t+1(すなわち、YES)と判定されればステップS110に進み、t’≠t+1(すなわち、NO)と判定されればステップS113に進む。
まず、第1の書込バッファ5xが満杯(フル)であるか否かを判定し(ステップS110)、満杯でない(すなわち、NO)と判定されれば、直ちにステップS112に進み、満杯である(すなわち、YES)と判定されれば、第1の書込バッファ5xの各レコードを一括してバケットt+1の末尾に追加して、第1の書込バッファ5xを空にする(ステップS111)。
まず、第2の書込バッファ5yが満杯(フル)であるか否かを判定し(ステップS113)、満杯でない(すなわち、NO)と判定されれば、直ちにステップS115に進み、満杯である(すなわち、YES)と判定されれば、第2の書込バッファ5yの各レコードを次回更新時刻順にソートして、同一の次回更新時刻ごとに一括して対応するバケットの末尾に追加し、すべてのレコードを書き込み終えたら第2の書込バッファを空にする(ステップS114)。
図10において、ステップS201、S202およびS204は、それぞれ、前述(図4参照)のステップS21、S22およびS24と同様の処理である。
続いて、ステップS204で情報源識別子Rを情報源登録テーブル9bに追加登録し、ステップS208に進む。
続いて、ステップS203と同様に、次回更新時刻t’の値を決定して(ステップS207)、ステップS208に進む。
図11において、ステップS211は、前述(図10参照)のステップS201と同様の処理である。
続いて、読込バッファ4、第1の書込バッファ5x、第2の書込バッファ5y、およびバケットsの順に、先頭から走査を行い、情報源識別子Qに対応するレコードを取得する(ステップS214)。
以下、取得したレコードを要求元に送信して(ステップS215)、ステップS211に戻る。
一方、ステップS216においては、検索失敗通知を要求元に送信し、ステップS211に戻る。
図12において、ステップS221は、前述(図11参照)のステップS211と同様の処理である。
続いて、情報源識別子31を「U」、次回更新時刻32を「r」、更新内容37を更新要求に含まれる更新内容として、更新レコード30を構成し、次回更新時刻32の値rに応じて、適当なバッファに書き込む(ステップS224)。
なお、第1の書込バッファ5xおよび第2の書込バッファ5yが満杯であれば、図9内のステップS111、ステップS114と同様にフラッシュ処理を行う。以下、ステップS221に戻る。
このように、バケット2a〜2cには、通常のレコード3に加えて、更新レコード30を格納し、更新処理部6Aでその処理(ステップS105)を行うことにより、情報源に対応するレコードの内容を外部から更新することができる。
この場合、周期更新データ管理システムは、記憶部1Aに接続された単一の読込バッファ4と、記憶部1Aに接続された単一の書込バッファ5yとを備え、更新処理部6Aは、処理対象バケットに格納されたすべての対象レコードを一括して読込バッファ4に読み込み、読込バッファ4内の各対象レコードについて、複数の情報源の中から対象レコードに対応する対象情報源を参照して、更新後の値および次回更新時刻を決定する。
たとえば、情報源7a〜7cとして通信機能を有するセンサ素子を用いた場合、更新処理部6、6Aは、処理対象バッファ内の対象レコードに対応するセンサ素子からデータを取得して、対象レコードの更新後の値を決定し、要求受付部10、10Aは、センサ素子からの登録要求を受け付けることになる。
さらに、要求受付部10、10Aは、センサ素子自体からの登録要求を受け付けることにより、センサ素子がアドホック(ad hoc)に追加設置される環境にも対応することができる。
Claims (19)
- 記憶部と更新処理部とを備えた周期更新データ管理システムであって、
前記記憶部は、外部の複数の情報源と1対1に対応する複数のレコードを、各々の次回更新時刻に基づいて異なる複数の領域に格納し、
前記更新処理部は、
前記複数の領域のうち、現在時刻に対応するものを処理対象領域として選択し、
前記処理対象領域内の対象レコードについて、前記複数の情報源の中から前記対象レコードに対応する対象情報源を参照し、前記対象情報源から取得した取得情報に基づいて、前記対象レコードの更新後の値を決定するとともに、
前記取得情報の前回参照時からの変化の有無または大きさに基づいて、前記対象レコードの次回更新時刻を決定し、
決定された前記次回更新時刻に対応する領域の末尾に、前記対象レコードの更新後の値を格納し、
前記処理対象領域内のすべての対象レコードを処理し終えた後に、前記処理対象領域を削除することを特徴とする周期更新データ管理システム。 - 前記記憶部に接続された単一の読込バッファと、
前記記憶部内の複数の領域と1対1に対応する所定容量の複数の書込バッファとを備え、
前記更新処理部は、
前記処理対象領域に格納されたすべての対象レコードを一括して前記読込バッファに読み込み、
前記読込バッファ内の各対象レコードについて、前記複数の情報源の中から前記対象レコードに対応する対象情報源を参照して、前記更新後の値および前記次回更新時刻を決定するとともに、
決定された前記次回更新時刻に対応する第1の書込バッファを、前記複数の書込バッファから選択し、
前記第1の書込バッファにすでに所定容量のレコードが格納されている場合には、
前記第1の書込バッファ内のすべてのレコードを前記第1の書込バッファに対応する領域の末尾に書き込んで、前記第1の書込バッファを空にしてから、
前記第1の書込バッファの末尾に前記対象レコードの更新後の値を格納し、
前記読込バッファのすべてのレコードを処理し終えた後に、
次に処理対象となる次回処理対象領域に対応する第2の書込バッファ内のすべての次回対象レコードを、前記次回処理対象領域の末尾に書き込んで、前記第2の書込バッファを空にしてから、
前記第2の書込バッファおよび前記処理対象領域を削除することを特徴とする請求項1に記載の周期更新データ管理システム。 - 前記更新処理部は、
前記読込バッファのすべてのレコードを処理し終えた後に、
前記次回処理対象領域に対応する第2の書込バッファを新たな読込バッファとし、
元の前記読込バッファおよび前記処理対象領域を削除することを特徴とする請求項2に記載の周期更新データ管理システム。 - 前記記憶部に接続された単一の読込バッファと、
前記記憶部に接続された単一の書込バッファとを備え、
前記更新処理部は、
前記処理対象領域に格納されたすべての対象レコードを一括して前記読込バッファに読み込み、
前記読込バッファ内の各対象レコードについて、前記複数の情報源の中から前記対象レコードに対応する対象情報源を参照して、前記更新後の値および前記次回更新時刻を決定するとともに、
前記書込バッファにすでに所定数のレコードが格納されている場合には、
前記書込バッファ内のすべてのレコードを前記次回更新時刻の順に、前記すべてのレコードの各々の次回更新時刻に対応する領域の末尾に書き込んで、前記書込バッファを空にしてから、
前記書込バッファの末尾に前記対象レコードの更新後の値を格納し、
前記読込バッファのすべてのレコードを処理し終えた後に、
前記書込バッファが空でない場合には、
前記書込バッファ内のすべてのレコードを前記次回更新時刻の順に、前記すべてのレコードの各々の次回更新時刻に対応する領域の末尾に書き込んで、前記書込バッファを空にしてから、
前記処理対象領域を削除することを特徴とする請求項1に記載の周期更新データ管理システム。 - 前記記憶部に接続された単一の読込バッファと、
前記記憶部に接続された第1および第2の書込バッファとを備え、
前記更新処理部は、前記処理対象領域に格納されたすべての対象レコードを一括して前記読込バッファに読み込み、
前記読込バッファ内の各対象レコードについて、前記複数の情報源の中から前記対象レコードに対応する対象情報源を参照して、前記更新後の値および前記次回更新時刻を決定するとともに、
決定された前記次回更新時刻が前記現在時刻よりも1単位だけ大きな値であって、かつ前記第1の書込バッファにすでに所定数のレコードが格納されている場合には、
前記第1の書込バッファ内のすべてのレコードを前記次回更新時刻に対応する領域の末尾に書き込んで、前記第1の書込バッファを空にし、決定された前記次回更新時刻が前記現在時刻よりも1単位だけ大きな値である場合には、
前記第1の書込バッファの末尾に前記すべてのレコードの各々の更新後の値を格納し、
決定された前記次回更新時刻が前記現在時刻よりも2単位以上大きな値であって、かつ前記第2の書込バッファにすでに所定数のレコードが格納されている場合には、
前記第2の書込バッファ内のすべてのレコードを前記次回更新時刻の順に、前記すべてのレコードの各々の次回更新時刻に対応する領域の末尾に書き込んで、前記第2の書込バッファを空にし、決定された前記次回更新時刻が前記現在時刻よりも2単位以上大きな値である場合には、
前記第2の書込バッファの末尾に前記すべてのレコードの各々の更新後の値を格納し、
前記読込バッファのすべてのレコードを処理し終えた後に、
前記読込バッファと前記第1の書込バッファとの役割を交換し、
前記第2の書込バッファ内のすべてのレコードを前記次回更新時刻の順に、前記すべてのレコードの各々の次回更新時刻に対応する領域の末尾に書き込んで、前記第2の書込バッファを空にしてから、
前記処理対象領域を削除することを特徴とする請求項1に記載の周期更新データ管理システム。 - 前記次回更新時刻の時間分解能に対応する単位は、前記現在時刻との差の大きさに応じて異なる値に設定されたことを特徴とする請求項1から請求項5までのいずれか1項に記載の周期更新データ管理システム。
- 前記更新処理部は、
前記レコードの更新後の値が所定条件を満たす場合には、
前記レコードを前記複数の領域または前記書込バッファのいずれにも書き込まないことを特徴とする請求項1から請求項6までのいずれか1項に記載の周期更新データ管理システム。 - 前記記憶部とは異なる第2の記憶部と、
前記第2の記憶部に接続された要求受付部とを備え、
前記第2の記憶部は、前記記憶部に格納されたすべてのレコードに対応する各情報源の識別子を格納する情報源登録テーブルを有し、
前記要求受付部は、
前記複数の情報源のいずれか1つに対応する識別子を含む登録要求を受け付け、前記識別子が前記情報源登録テーブルに格納されていない場合には、前記識別子を前記情報源登録テーブルに追加するとともに、
前記識別子に対応するレコードを所定値に初期化して、前記記憶部内の複数の領域のうちの1つ、または前記書込バッファの1つの末尾に書き込むことを特徴とする請求項1から請求項7までのいずれか1項に記載の周期更新データ管理システム。 - 前記情報源登録テーブルは、前記各情報源に対応するレコードが格納されている領域を識別するための領域識別情報を含み、
前記更新処理部および前記要求受付部は、
前記複数の情報源のいずれかに対応するレコードを前記記憶部内の複数の領域のいずれかに書き込む際に、前記情報源登録テーブルの前記レコードに対応する領域識別情報を更新し、
前記要求受付部は、
前記識別子を含む検索要求を受け付け、前記識別子が前記情報源登録テーブルに格納されている場合には、前記識別子に対応する領域を走査して前記識別子に対応するレコードを読み込み、前記レコードの内容を前記検索要求の要求元に返信することを特徴とする請求項8に記載の周期更新データ管理システム。 - 前記要求受付部は、
前記複数の情報源のいずれかに対応する識別子と、前記情報源に対応するレコードに対する更新内容とを含む更新要求を受け付け、
前記識別子が前記情報源登録テーブルに格納されている場合には、
前記識別子に対応する領域の末尾に更新要求を書き込み、
前記更新処理部は、前記処理対象領域に格納されたレコードおよび更新要求を前記識別子の順に処理し、
対応する情報源を参照した結果と、更新要求とに基づいてレコードの更新後の値を決定することを特徴とする請求項9に記載の周期更新データ管理システム。 - 前記更新処理部は、
前記レコードの更新後の値が所定条件を満たす場合には、
前記レコードを前記複数の領域または前記書込バッファのいずれにも書き込まず、
前記レコードに対応する識別子を前記情報源登録テーブルから削除することを特徴とする請求項8から請求項10までのいずれか1項に記載の周期更新データ管理システム。 - 前記第2の記憶部は、複数のレコードを格納する棄却領域を有し、
前記更新処理部は、
前記レコードの更新後の値が所定条件を満たす場合には、
前記レコードを前記棄却領域の末尾に書き込むとともに、
前記情報源登録テーブルの前記レコードに対応する領域識別情報を前記棄却領域に設定し、
前記要求受付部は、
受け付けた登録要求の情報源識別子が前記情報源登録テーブルに格納されており、かつ対応する領域識別情報が前記棄却領域を示している場合には、
前記棄却領域を走査して前記識別子に対応するレコードの値を読み込み、前記レコードの値に基づいて前記レコードを再設定して、前記複数の領域のうちの1つ、または前記書込バッファの1つの末尾に書き込むとともに、
前記情報源登録テーブルのレコードに対応する領域識別情報を更新することを特徴とする請求項9または請求項10に記載の周期更新データ管理システム。 - 前記更新処理部は、
前記処理対象領域の所定数のレコードを処理し終えたか、前記処理対象領域の処理開始から所定時間が経過した際に、
未処理のレコードに対応する情報源を参照せずに、前記次回更新時刻を所定値に更新して、前記複数の領域のうちの1つ、または前記書込バッファの1つの末尾に書き込むことを特徴とする請求項1から請求項12までのいずれか1項に記載の周期更新データ管理システム。 - 前記更新処理部は、前記処理対象領域の各レコードを優先度順に処理することを特徴とする請求項13に記載の周期更新データ管理システム。
- 前記記憶部は、磁気ディスク装置であることを特徴とする請求項1から請求項14までのいずれか1項に記載の周期更新データ管理システム。
- 前記記憶部は、フラッシュメモリであることを特徴とする請求項1から請求項14までのいずれか1項に記載の周期更新データ管理システム。
- 前記情報源は、Webサイト上のWebページであり、
前記情報源の識別子は、WebページのURLであり、
前記更新処理部は、
前記処理対象領域内の対象レコードに対応するWebページの内容をダウンロードして、前記対象レコードの更新後の値を決定するとともに、
前記対象レコードに対応するWebページからリンクを抽出して、得られたURLの各々を登録要求として前記要求受付部に送付することを特徴とする請求項8から請求項12までのいずれか1項に記載の周期更新データ管理システム。 - 前記情報源は、ファイルサーバ上のファイルであり、
前記情報源の識別子は、前記ファイルのパス名であり、
前記更新処理部は、
前記処理対象領域内の対象レコードに対応するファイルの内容をダウンロードして、前記対象レコードの更新後の値を決定するとともに、
前記対象レコードに対応するファイルがディレクトリである場合には、前記ディレクトリ内のファイルおよびサブディレクトリの各パス名を登録要求として前記要求受付部に送付することを特徴とする請求項8から請求項12までのいずれか1項に記載の周期更新データ管理システム。 - 前記情報源は、通信機能を有するセンサ素子であり、
前記更新処理部は、前記処理対象領域内の対象レコードに対応するセンサ素子からデータを取得して、前記対象レコードの更新後の値を決定し、
前記要求受付部は、前記センサ素子からの登録要求を受け付けることを特徴とする請求項8から請求項12までのいずれか1項に記載の周期更新データ管理システム。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2008066035A JP5247192B2 (ja) | 2008-03-14 | 2008-03-14 | 周期更新データ管理システム |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2008066035A JP5247192B2 (ja) | 2008-03-14 | 2008-03-14 | 周期更新データ管理システム |
Publications (2)
Publication Number | Publication Date |
---|---|
JP2009223507A JP2009223507A (ja) | 2009-10-01 |
JP5247192B2 true JP5247192B2 (ja) | 2013-07-24 |
Family
ID=41240236
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2008066035A Active JP5247192B2 (ja) | 2008-03-14 | 2008-03-14 | 周期更新データ管理システム |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP5247192B2 (ja) |
Families Citing this family (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US10846265B2 (en) | 2015-05-27 | 2020-11-24 | Huawei Technologies Co., Ltd. | Method and apparatus for accessing file, and storage system |
Family Cites Families (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPH0934765A (ja) * | 1995-07-20 | 1997-02-07 | Fuji Xerox Co Ltd | ファイル管理装置 |
JP3618917B2 (ja) * | 1996-08-05 | 2005-02-09 | 株式会社東芝 | 情報収集方法 |
JPH11328191A (ja) * | 1998-05-13 | 1999-11-30 | Nec Corp | Wwwロボット検索システム |
JP2000011067A (ja) * | 1998-06-23 | 2000-01-14 | Oki Software Okayama:Kk | 自動機集中監視運用システムにおけるマスタ情報の更新予約方法 |
JP4380375B2 (ja) * | 2003-03-19 | 2009-12-09 | 富士ゼロックス株式会社 | 文書収集装置および文書収集用コンピュータプログラム |
JP2008293218A (ja) * | 2007-05-23 | 2008-12-04 | Nec Corp | ファイル管理システム、ファイル管理方法、ファイル管理プログラム |
-
2008
- 2008-03-14 JP JP2008066035A patent/JP5247192B2/ja active Active
Also Published As
Publication number | Publication date |
---|---|
JP2009223507A (ja) | 2009-10-01 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
RU2581560C2 (ru) | Способ сканирования файлов, клиентский компьютер и сервер | |
KR101127304B1 (ko) | 극히 큰 파일 시스템에 대한 hsm 상호 고아 조정 | |
US7769792B1 (en) | Low overhead thread synchronization system and method for garbage collecting stale data in a document repository without interrupting concurrent querying | |
EP2237185B1 (en) | Method for optimization of anti-virus scan | |
CN100454305C (zh) | 文档管理方法和装置以及文档搜索方法和装置 | |
US20110295913A1 (en) | Database apparatus | |
US20100115061A1 (en) | Server system, server apparatus, program and method | |
CN102096626A (zh) | 移动终端测试日志的处理方法和移动终端 | |
CN102819586A (zh) | 一种基于高速缓存的url分类方法和设备 | |
CN103186622A (zh) | 一种全文检索***中索引信息的更新方法以及装置 | |
US10599726B2 (en) | Methods and systems for real-time updating of encoded search indexes | |
US9886446B1 (en) | Inverted index for text searching within deduplication backup system | |
US8316008B1 (en) | Fast file attribute search | |
JP5448428B2 (ja) | データ管理システム及びデータ管理方法及びデータ管理プログラム | |
CN110088745B (zh) | 数据处理***以及数据处理方法 | |
US6640225B1 (en) | Search method using an index file and an apparatus therefor | |
US8559764B2 (en) | Editing an image representation of a text | |
KR101666440B1 (ko) | 환형큐 기반의 인-메모리 데이터베이스 시스템에서의 데이터 처리방법 | |
JP5247192B2 (ja) | 周期更新データ管理システム | |
CN111857556B (zh) | 管理存储对象的元数据的方法、装置和计算机程序产品 | |
JP5655538B2 (ja) | データ管理装置及びデータ管理方法 | |
CN117544642A (zh) | 存储***的扩容方法、装置、设备及存储介质 | |
JP2009104669A (ja) | 文書検索方法、システム及びプログラム | |
CN114328031A (zh) | 元数据组织方法、***、存储介质及备份方法、检索方法 | |
JPH10289135A (ja) | 検索結果のキャッシュ機能を有するデータベース検索方式 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20101220 |
|
A977 | Report on retrieval |
Free format text: JAPANESE INTERMEDIATE CODE: A971007 Effective date: 20121108 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20121120 |
|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20121214 |
|
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: 20130312 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20130409 |
|
R150 | Certificate of patent or registration of utility model |
Free format text: JAPANESE INTERMEDIATE CODE: R150 Ref document number: 5247192 Country of ref document: JP Free format text: JAPANESE INTERMEDIATE CODE: R150 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20160419 Year of fee payment: 3 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |