JP2010250854A - データベースの分散ロードのためのシステム、方法およびソフトウェア - Google Patents

データベースの分散ロードのためのシステム、方法およびソフトウェア Download PDF

Info

Publication number
JP2010250854A
JP2010250854A JP2010145657A JP2010145657A JP2010250854A JP 2010250854 A JP2010250854 A JP 2010250854A JP 2010145657 A JP2010145657 A JP 2010145657A JP 2010145657 A JP2010145657 A JP 2010145657A JP 2010250854 A JP2010250854 A JP 2010250854A
Authority
JP
Japan
Prior art keywords
load
servers
monitor
database
server
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.)
Withdrawn
Application number
JP2010145657A
Other languages
English (en)
Inventor
Mark A Bluhm
エー. ブルーム マーク
Jon Verreaux
ベリュー ジョン
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.)
Thomson Reuters Global Resources ULC
Original Assignee
Thomson Reuters Global Resources ULC
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 Thomson Reuters Global Resources ULC filed Critical Thomson Reuters Global Resources ULC
Publication of JP2010250854A publication Critical patent/JP2010250854A/ja
Withdrawn legal-status Critical Current

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/20Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
    • G06F16/27Replication, distribution or synchronisation of data between databases or within a distributed database system; Distributed database system architectures therefor
    • G06F16/273Asynchronous replication or reconciliation
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/20Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
    • G06F16/27Replication, distribution or synchronisation of data between databases or within a distributed database system; Distributed database system architectures therefor
    • YGENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y10TECHNICAL SUBJECTS COVERED BY FORMER USPC
    • Y10STECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y10S707/00Data processing: database and file management or data structures
    • Y10S707/99931Database or file accessing
    • Y10S707/99932Access augmentation or optimizing

Landscapes

  • Engineering & Computer Science (AREA)
  • Databases & Information Systems (AREA)
  • Theoretical Computer Science (AREA)
  • Computing Systems (AREA)
  • Data Mining & Analysis (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
  • Computer And Data Communications (AREA)
  • Debugging And Monitoring (AREA)
  • Multi Processors (AREA)

Abstract

【課題】情報検索システムの分散ロードのための1つ以上のシステム、方法およびソフトウェアを提供すること。
【解決手段】1つの例示的なシステムは、2つ以上のロードサーバのセットの個別のロードサーバによって、ロードタスクの完了をモニタし、確実にするだけでなく、別のロードモニタの実行をモニタするための1つのロードモニタを提供もする、2つ以上(少なくとも2つ)のロードモニタサーバを含む。さらに、例示的なシステムは、各ロードサーバに、サービスレベルアグリーメント(SLA)データ構造を提供する。SLAデータ構造は、どのロードタスクのタイプおよび優先レベルが、予め決定された期間において行われるかを決定する。
【選択図】図1

Description

(関連出願)
本出願は、2005年1月7日に出願された米国仮出願第60/642,351号の優先権を主張し、該出願は本明細書において参考により援用される。
(技術分野)
本発明の様々な実施形態は、情報検索に関係し、特にデータをデータベースにロードするためのシステム、方法およびソフトウェアに関係している。
(背景)
本発明者らによって認識される一つの問題は、オンライン情報検索システムに新しいドキュメントをロードすることに関係している。ロードすることは、通常は、ドキュメントにインデックスを付けることにより、ブール(Boolean)言語検索アルゴリズムまたは自然言語検索アルゴリズムを用いる検索を円滑にすることと、次いでドキュメントおよび対応するインデックスデータを、現存のデータベースおよびインデックスファイルに追加することとを伴う。
従来では、大きくかつ高価なサーバ(例えば、Sun Microsystems6500または6800)が購入され、データベースまたはデータコレクションの所与のセットのロードのニーズに特に役立つようにプログラムされる。不幸にも、この単一のサーバに頼ることにより、ロード処理の間に、システムがサーバの誤動作またはクラッシュに対して脆弱になる。多くの例において、クラッシュは、データの全体の量を再ロードすることを必要とし、最終的には追加を遅らせ、結果としてユーザまたは加入者が新しいドキュメントにアクセスすることを遅らせる。このような遅れは、時間に敏感なデータ(例えば、米国最高裁判所の決定または速報ニュース)に対して特に重要である。
従って、本発明者らはオンライン情報検索システムにおいてデータベースをロードするより良い方法に対するニーズを認識する。
(概略)
このニーズおよび/または他のニーズを扱うために、本発明者らは、情報検索システムのロードを分散させるための1つ以上のシステム、方法およびソフトウェアを考案した。例示的な一システムにおいて、分散ロードドメインは、複数のロードサーバの動作を論理的に組織化および調整することにより、1つ以上のデータベースのセットのロード容量のニーズを満たす。例示的なシステムは、個別のロードサーバによるロードタスクの完了をモニタし確実にするだけでなく、別のロードモニタサーバのパフォーマンスをモニタするために一つのロードモニタを提供もする2つ以上(少なくとも2つ)のロードモニタサーバを含む。さらに、例示的なシステムは、各ロードサーバに対してサービスレベルアグリーメント(service−level−agreement)(SLA)データ構造を提供する。SLAデータ構造は、どのロードタスクのタイプおよび優先レベルが、予め決定された期間で行われるかを決定する。
例えば、本発明は以下を提供する。
(項目1)
情報検索システムであって、
ロードデータ要求を格納するためのキューと、
キューからデータを検索し、該キューから検索される該データに基づいた検索のためにドキュメントにインデックスを付けるための2つ以上のロードサーバのセットと、
該ロードサーバの動作をモニタリングし、ローダのセットによってアクセス可能な該キュー上に新しいデータを提供するための第1および第2のロードモニタであって、該第1のロードモニタは、該第2のロードモニタに該第1のロードモニタの動作に関する情報を提供するように構成されており、該第2のロードモニタは、該第1のロードモニタの障害を示すステータス情報に応答して、該ロードサーバのモニタリングを引き継ぐように構成されており、該キュー上に新しいデータを提供する、第1および第2のロードモニタと
を備えている、システム。
(項目2)
前記第2のロードモニタにステータス情報を提供するために、前記第1のロードモニタは、タイムスタンプされた報告を、ネットワークアクセス可能なストレージデバイスの予め決定された部分に定期的に書き込むように構成されており、該第2のロードモニタは、該ネットワークアクセス可能なストレージデバイス上の該タイムスタンプされた報告を予め決定された間隔で読み込むように構成されている、項目1に記載のシステム。
(項目3)
前記第1のロードモニタは、新しいデータが前記キューに加えられた場合には、前記ロードサーバの各々に通知するように構成されており、該ロードサーバのうちのビジーではない全てのロードサーバは、該キューから該新しいデータを検索し、該新しいデータに基づいて前記ドキュメントにインデックスを付けることを試みることによって、該通知に応答するように構成されている、項目1に記載のシステム。
(項目4)
前記ロードサーバによって生成されたインデックスデータおよび対応するドキュメントを、それぞれ加入者による使用のための一次インデックスおよび一次データベースに分散させるように構成されている2つ以上の分散サーバのセットをさらに備えている、項目1に記載のシステム。
(項目5)
各ロードサーバは、前記分散サーバの各々にローダ通知を提供して、前記キューから検索されたデータに基づいてドキュメントのセットにインデックスを付けることが完了していることを示すように構成され、
該分散サーバのうちのビジーでない全ての分散サーバは、マスタインデックスに対して該ローダ通知を提供するロードサーバによって生成されたインデックスデータを分散させ、該ローダ通知に対応するドキュメントを前記データベースに分散させることを試みることにより、該ローダ通知に応答するように構成されている、
項目4に記載のシステム。
(項目6)
各分散サーバは、前記ロードモニタの各々に分散通知を提供して、前記キューから検索されたデータに基づいてドキュメントのセットを、前記マスタインデックスおよび前記データベースに分散させることを完了したことを示すように構成されている、項目5に記載のシステム。
(項目7)
前記分散通知に応答して、前記分散されたインデックスデータおよびドキュメントを、二次インデックスおよびデータベースに複製するための手段をさらに備えている、項目6に記載のシステム。
(項目8)
各ロードサーバは、前記ローダ通知を提供した後に、前記キューを新しいデータに対してチェックするように構成されている、項目5に記載のシステム。
(項目9)
前記第1のロードモニタは、前記二次インデックスおよびデータベース内の前記分散されたインデックスデータおよびドキュメントの複製を確認するように構成されており、複製の確認に応答して、タイムスタンプされたロード完了メッセージをネットワークアクセス可能なストレージデバイスに書き込み、前記第2のロードモニタは、該ネットワークアクセス可能なストレージデバイスが、該第1のロードモニタの適切な動作を確認するメッセージを含むかどうかを定期的に決定するように構成されている、項目7に記載のシステム。
(項目10)
各ロードサーバは、サービスレベルアグリーメントデータ構造に関連し、該データ構造は、どちらのデータベースについて、該ロードサーバがドキュメントにインデックスを付けることが認められているかを識別するための第1のフィールドと、該ロードサーバが受容することを認められている要求にインデックスを付けるドキュメントの最低の優先度を示すための第2のフィールドと、時間的な局面を示す第3のフィールドとを含む、項目1に記載のシステム。
(項目11)
情報検索システムであって、
データベースへの追加のためにドキュメントにインデックスを付ける複数のロードサーバの動作をモニタリングするための第1および第2のロードモニタを備えており、
該第1のロードモニタは、該第2のロードモニタに該第1のロードモニタの動作に関するステータス情報を提供するように構成されており、該第2のロードモニタは、該第1のロードモニタの障害を示すステータス情報に応答して、該ロードサーバのモニタリングを引き継ぐように構成されている、情報検索システム。
(項目12)
前記第2のロードモニタにステータス情報を提供するために、前記第1のロードモニタは、タイムスタンプされた報告を、ネットワークアクセス可能なストレージデバイスの予め決定された部分に定期的に書き込むための手段を含み、該第2のロードモニタは、該ネットワークアクセス可能なストレージデバイス上の該タイムスタンプされた報告を予め決定された間隔で読み込むための手段を含む、項目11に記載のシステム。
(項目13)
前記第1のロードモニタは、新しいドキュメントが前記データベースに追加される準備が出来ている場合には、前記ロードサーバの各々に通知するように構成されており、該ロードサーバのうちのビジーではない全てのロードサーバは、キューから新しいデータを検索し該新しいデータに基づいて該ドキュメントにインデックスを付けることを試みることによって、該通知に応答するように構成されている、項目12に記載のシステム。
(項目14)
方法であって、
オンライン情報検索システムのデータベースへの追加のためにドキュメントを含むファイルを受信することと、
該ファイルを受信することに応答して、2つ以上のロードサーバに通知することと、
該通知されたロードサーバのうちの1つを用いて該ファイル内の該ドキュメントにインデックスを付けることと、
該インデックスを付けられたドキュメントを該データベースにロードすることと、
該ドキュメントが該データベースにロードされていることを、2つ以上のロードモニタに通知することと、
該通知されたロードモニタのうちの第1のロードモニタを用いて、該ドキュメントが該データベースにロードされていることを確認することと、
該通知されたロードモニタのうちの第2のロードモニタを用いて、該通知されたロードモニタのうちの第1のロードモニタの適切な動作を確認することと
を包含する、方法。
(項目15)
前記2つ以上のロードサーバに通知することは、
前記ファイルの受信を検出することと、
該ファイルに関するデータをロードキューに追加することと、
新しいデータが該ロードキューに追加されていることを、該2つ以上のロードサーバに通知することと
を包含する、項目14に記載の方法。
(項目16)
前記インデックスを付けられたドキュメントを前記データベースにロードすることは、
インデックスデータおよび対応するドキュメントがロードに利用可能であることを、複数の分散サーバのうちの2つ以上の分散サーバに通知することと、
該インデックスデータおよび対応するドキュメントを、該データベースにロードするために該2つ以上の分散サーバのうちの1つを使用することと
を包含する、項目14に記載の方法。
(項目17)
前記ドキュメントが前記データベースにロードされていることを確認することは、「エンドオブファイル」または他の類似のインジケータを、該データベースから読み込むことを含む、項目14に記載の方法。
(項目18)
前記ロードモニタのうちの第2のロードモニタを用いて、該ロードモニタのうちの第1のロードモニタの適切な動作を確認することは、該ロードモニタのうちの該第1のロードモニタが、1つ以上のメッセージを共有ディレクトリに書き込むかどうかを決定することを包含する、項目15に記載の方法。
(項目19)
前記通知されたロードサーバのうちの1つを用いて、前記ファイル内の前記ドキュメントにインデックスを付けることは、サービスレベルアグリーメントデータ構造をレビューすることにより、該通知されたロードサーバのうちの1つ以上が、該ドキュメントを処理することを認証されているかどうかを決定することを含む、項目15に記載の方法。
(項目20)
複数のロードサーバを有する情報検索システムにおける使用のためのサービス関連データ構造であって、該データ構造は、該複数のロードサーバのうちの1つに関連し、該1つのロードサーバが処理することを認められるロード要求の優先レベルを示すための手段を含む、データ構造。
(項目21)
データベースのセットのうちのどれについて前記ロードサーバがロード要求を処理し得るかを示すための手段をさらに含む、項目20に記載のデータ構造。
(項目22)
前記ロードサーバの1つ以上のサービス制限に関連する期間を示すための手段をさらに含む、項目20に記載のデータ構造。
図1は、本発明の1つ以上の実施形態に対応する例示的な情報検索システム100のブロック図である。 図2は、本発明の1つ以上の実施形態に対応する例示的な方法のブロック図である。
(例示的な実施形態の詳細な記載)
図面および特許請求の範囲を具体化する本記載は、本発明の1つ以上の特定の実施形態を記載する。本発明を限定するためではなく、例示し、教示するためだけに提供されるこれらの実施形態は、十分に詳細に示され、記載されることにより、当業者が本発明をインプリメントし、または実践することを可能にする。従って、ここで本発明を不明確にすることを避けるために、本記載では、当業者に公知の特定の情報は省略され得る。
(例示的な情報検索システム)
図1は、本発明の教示を具体化する例示的な情報検索システム100を示す。システム100は、ランディングスキッドデータベース110と、ロードドメイン120と、一次データベース130と、二次データベース140とを含む。
ランディングスキッドデータベース110は、システム100または一次データベース130への追加のための、新しいファイルまたはアップデートされたファイルを受信および格納する。例示的な実施形態においては、ランディングスキッドデータベース110は、ネットワークアクセス可能なストレージ(NAS)デバイスの形態をとり、拡張可能なマーク付け言語(XML)フォーマットでファイルを受信し、格納する。ファイルは、全体的に一意的なドキュメント識別子およびデータベースコマンド(例えば、追加または消去)を含むコマンドスクリプトタイプのヘッダ情報を有するドキュメントを含む。
ロードドメイン120は、1つ以上のロードサーバ122のセットと、2つ以上のロードモニタサーバ124のセットと、1つ以上の分散サーバ126のセットと、ロードキュー128と、共有ディレクトリ129とを含む。例示的な実施形態において、サーバの各々は、ロードドメインと論理的に関連し、ロードドメインはそれ自体が1つ以上のドキュメントコレクションまたはデータベース(例えば、一次データベース130)と関連する。(例示的な実施形態において、ロードドメインは、ランディングスキッドおよびロードインデックスファイルへの共有アクセスを有する1つ以上のロードボックスを含む。ロードドメインにおける任意のロードボックスは、そのロードドメインの一部である任意のコレクションを提供し得る)。
サーバ122、124および126は、各々の処理モジュール1221、1241および1261、ならびに各々のメモリモジュール1222、1242および1262を含む。処理モジュールの各々は、1つ以上のプロセッサまたは処理回路(例えば、デュアルプロセッサ)を含む。さらに、メモリモジュールの各々は、各々の処理モジュールに、以下の例示的な方法セクションに記載されるような行動を行わせるためのマシン実行可能な命令(ソフトウェア(SW))を含む。さらに、例示的な実施形態において、サーバの各々は他のサーバの各々の命令を含み、例えば、ロードサーバ(LS)が、ロードモニタサーバ(LM)または分散サーバ(DS)として容易に動作されることを可能にする。(一部の実施形態において、サーバの各々は、サーバブレード(すなわち、通常は複数の基板上に見出されるプロセッサ、メモリおよびネットワーク接続のようなコンポーネントが存在する単一の回路基板)としてインプリメントされる。サーバブレードは、他の実施形態において使用される伝統的なボックスベースのサーバよりも、費用対効果が良く、小さく、消費電力が少ない)。
さらに、ロードサーバ122の各々は、サービスレベルアグリーメント(SLA)データ構造を含むか、該データ構造に関連し、該データ構造は、ロードサーバの動作的なコンテキストを決定する。代表的なSLAデータ構造1223は、どのデータベースまたはデータベースコレクションに、ロード要求または関連するロードサーバによって受容される他の作業が属する必要があるかを示すためのクライアントフィールド1223Aと;ロード要求または関連するロードサーバによって受容される他の作業の最低の優先度を示すための優先度フィールド1223Bと;サービスレベルアグリーメントの関連する時間的な側面(例えば、アグリーメントの効果的な期間または持続期間)を示すための時間的なインジケータ1223Cとを含む。一部の実施形態は、2つのSLAデータ構造、永続的なものと一時的なものとを提供し、一時的なものは、予め決定された期間の後に有効期限切れになり、以前のSLAデータ構造を自動的に復活させる寿命を有する。例えば、結果として、示されていないGUI(グラフィカルユーザインタフェース)を用いるユーザは、特定のデータベース(例えば、米国最高裁判所)に対してロード要求を扱うこと、または特定の最低の優先度の要求を扱うことに専用のロードサーバのうちの1つ以上を確立し得る。SLAは、数時間、数日間、数週間または、自動的に有効期限切れになり、以前のSLAの復活を可能にするまでのさらに長い期間において有効である。
一部の実施形態において、各ロードモニタサーバ124は、以下のパラメータ、Distributed_Load_Shared_Directory(ハートビートタイプの情報がロードモニタによって書き込まれる共有ディレクトリへの経路を識別する);Distributed_Load_Directory_Monitor_Interval(例えば、300000ミリ秒)(アクティブでない、または二次のロードモニタが、ランディングスキッドを新しい要求に対して再チェックする前の時間量をミリ秒で示す);Distributed_Load_Working_File_Monitor_Interval(例えば、300000ミリ秒)(アクティブでないロードモニタが作業ファイルの変更時間を再チェックする前の時間量を示す);Distributed_Load_Completed_Requests_Monitor_Interval(例えば、300000ミリ秒)(アクティブでないロードモニタがロードキュー128を完了した要求に対して再チェックする前の時間量をミリ秒で示す)を用いて動作する。
ロードキュー128は、ロードドメインの作業フローの管理に使用するキュー機能を提供する。例示的な実施形態において、キューはサーバ122、124および126によってアクセス可能である。
共有ディレクトリ129は、通信媒介として機能し、通信媒介はロードドメインの他のコンポーネントまたはサーバ(例えば、ロードドメイン120の全ての他のロードモニタ)にアクセス可能である。例示的な実施形態において、共有ディレクトリは、以下に記載されるように、ネットワークアクセス可能なストレージ(NAS)デバイスの一部であり、1つのロードモニタから別のロードモニタにハートビート情報を交換するために使用される。一部の実施形態においては、共有ディレクトリはランディングスキットデータベースの一部であり得る。(複数のロードドメインを有する一部の実施形態においては、各ロードドメインは、自身のそれぞれの共有ディレクトリを含む自身のロードモニタのセットを含む)。
一次データベース130および二次データベース140は、リダンダントデータベースまたはミラーイメージデータベースである。一部の実施形態において、これらは別々のサイトで維持されることにより、破局的な障害(catastrophic failure)のリスクを減少させる。図面には示されていないが、ユーザまたは加入者は、クライアントデバイス(例えば、ローカルエリアネットワークまたはワイドエリアネットワーク上のパーソナルコンピュータ)を用いて一次データベース130にアクセスする。
(情報検索システムを動作させる例示的な方法)
図2は、情報検索システム(例えば、図1におけるシステム100)を動作させる例示的な方法のフローチャート200を示す。フローチャート200は、ブロック210〜270を含み、これらは直列に配置され、記載される。しかしながら、他の実施形態は、複数のプロセッサまたはプロセッサライクなデバイスを用いて、あるいは2つ以上の仮想マシンまたはサブプロセッサとして組織される単一のプロセッサを用いて、2つ以上のブロックを並行して実行する。他の実施形態はまた、処理シーケンスを変え、または異なる機能パーティションもしくはブロックを提供し、類似の結果を達成する。さらに、他の実施形態は、ブロックを相互接続された2つ以上のハードウェアモジュールとしてインプリメントし、関連する制御およびデータ信号は、モジュール間で、およびモジュールを介して通信される。結果として、例示的な処理フローは、ソフトウェア、ハードウェアおよびファームウェアのインプリメンテーションに適用される。
ブロック210において、例示的な方法は、オンライン情報検索システムのデータベースへの追加のために、ドキュメントを含むファイルを受信することにより開始する。例示的な実施形態において、このことは、2つ以上の司法のドキュメント、金融のドキュメント、ニュースドキュメントまたは科学ドキュメントに含まれるXMLファイルを受信するランディングスキッド110を伴う。実行はブロック220において継続する。
ブロック220は、新しいドキュメントがデータベースへのロードのために利用可能であることを、2つ以上のロードサーバに通知することを伴う。例示的な実施形態において、このことは、ロードモニタサーバ124のうちの1つ、特にロードモニタサーバのうちの指定されたアクティブな、または一次ロードモニタサーバが、1つ以上の特定のコレクションまたはデータベースに対する新しいドキュメントがランディングスキッドに追加されているかを決定する、または検出するために、ランディングスキッド110にポーリングすることを伴う。このようなドキュメントがランディングスキッドに追加されている場合には、アクティブなロードモニタサーバは、ファイルに関するデータをロードキュー128に追加し、ファイルの受信の検出に応答してロードサーバ122のうちの2つ以上に通知する。さらに、アクティブなロードモニタサーバは、共有ディレクトリ129にメッセージを書き込み、または記録し、該メッセージは、タイムスタンプおよびアクティブな(一次)ロードモニタサーバに対するロードサーバ識別子を含む。(いくつかの点において、アクティブでない(バックアップまたは二次)ロードモニタサーバのうちの少なくとも1つは、メッセージをレビューし、アクティブなロードモニタが適切に機能するかどうかの決定を行う。)実行は次いでブロック230に進む。
ブロック230は、通知されたロードサーバのうちの1つを用いて、ファイル内のドキュメントにインデックスを付けることを伴う。例示的な実施形態においては、ロードサーバの各々は、利用可能であり、ロードキューにアクセスし、ファイル内のドキュメントを処理することを試みるために、ロードサーバにファイル内のドキュメントを処理することを許可するSLAデータ構造を有するが、通知に応答して第1のロードサーバのみが、ドキュメントを処理するようになる。一部の実施形態において、ロードドメイン内の全てのビジー状態でないロードサーバは、まず通知に応答し、新しいファイルを処理する権利を取得した後でのみ、それらのSLAデータ構造に対してファイルコンプライアンスをそれぞれ評価する。他の実施形態において、アクティブなロードモニタは、ロードサーバの各々に対してSLAデータ構造に気付いており、対応するドキュメントを処理し得るロードサーバへのロードキューの追加を通信するのみである。ロードサーバのうちの1つがドキュメントにインデックスを付け、対応するインデックスデータを生成した後に、それは分散サーバ126の各々に、例えばキューをチェックするためにこれらのサーバに対してメッセージを送信することによって、分散作業が利用可能であることを通知する。さらに例示的な実施形態において、選択されたロードサーバは、ロードキューを、任意の新しいロード作業に対して自動的にチェックする。実行はブロック240に進む。
ブロック240は、ドキュメントをユーザまたは加入者がアクセス可能なデータベースにロードすることを伴う。例示的な実施形態において、このことは、ブロック230において選択されたロードサーバが、インデックスデータおよび対応するファイルが、分散のために利用可能であることを分散サーバの2つ以上に通知することを伴う。それに応答して、全てのビジーでない分散サーバ128は、分散を行う権利を得ることを試みる、すなわち、ドキュメントおよびインデックスデータを一次データベースのそれぞれの部分にロードする。しかしながら、通知に応答する第1の分散サーバは、分散作業に割り当てられる。分散作業は、ドキュメントおよびインデックスデータを一次データベース130および二次データベース140に、またはより詳しくは、データベース130および140のそれぞれの部分にロードすることを伴う。一部の実施形態において、一次データベース130から二次データベース140にドキュメントをミラーする作業は、選択された分散サーバ以外の別々のサーバまたはソフトウェアコンポーネントによって行われる。例えば、一部の実施形態は、オラクルデータガード製品を使用する。例示的な実行はブロック250において継続する。
ブロック250において、分散サーバ126の選択された1つは、ドキュメントがデータベースにロードされていることを2つ以上のロードモニタ126に通知する。例示的な実施形態において、通知を受信する任意のアクティブでない、または二次ロードモニタは、通知を無視し、一方でアクティブな、または一次ロードモニタは示されるようにブロック260に進む。(さらに、例示的な実施形態において、選択された分散サーバは、ロードキューを任意の新しい作業に対して自動的にチェックする)。
ブロック260は、ドキュメントがデータベースにロードされているかを確認することを伴う。例示的な実施形態において、この確認は、アクティブまたは一次ロードモニタが、「エンドオブファイル」、「エンドオブロード」、または他の類似のインジケータを、二次データベース140から読み込むことを試みることを伴う。インジケータの読み込みが成功することは、ブロック210において開始されたロード処理が完了していることの確認とみなされ、一次ロードモニタは、ロードのタスクの完了の成功を示すタイムスタンプされたメッセージを共有ディレクトリに書き込む。(一部の実施形態は、ロード要求が遂行されているかどうかの指示のために、二次データベースというよりむしろ一次データベースを読み込み得る。しかしながら、他の実施形態は、一次データベースと二次データベースの両方を、「エンドオブファイル」インジケータに対して読み込み得る。「エンドオブファイル」インジケータを読むことの障害は、障害を示し、このステータスはまた、通知されたロードモニタのうちの第1のロードモニタを用いて、共有ディレクトリに通信される)。
ブロック270は、一次またはアクティブなロードモニタが、二次またはアクティブでないロードモニタのうちの1つを用いて適切に動作するかどうかを決定することを伴う。例示的な実施形態において、二次ロードモニタは、共有ディレクトリ内の1つ以上のメッセージをレビューすることにより、一次ロードモニタが、適切に動作するかどうかを決定する。特に、二次ロードモニタは、一次ロードモニタが稼動し実行することを確実にし(例えば、60秒ごと)、一次ロードモニタが追加された全ての新しいファイルを見出すことを確実にし(例えば、5秒ごと)、一次ロードモニタはエンドオブロードインジケータまたはステータスに応答する。これらの条件のうちのいずれかが満たされない場合には、二次ロードモニタは、一次ロードモニタのステータスを引き継ぎ、恐らくは障害が発生したモニタをシャットダウンし、ロード要求の処理を開始し、障害イベントの警告を発する。通常の実行は、さらなる要求の処理のためにブロック210に戻って継続する。
(結論)
上記および特許請求の範囲で記載される実施形態は、本発明を実践する、またはインプリメントする1つ以上の方法を例示し、教示することのみが意図され、本発明の外延または範囲を制限することは意図されない。本発明の実際の範囲は、本発明の教示を実践する、またはインプリメントする全ての方法を包含し、述べられる特許請求の範囲およびそれらと同等のものによってのみ定義される。

Claims (1)

  1. 本願明細書に記載のシステム。
JP2010145657A 2005-01-07 2010-06-25 データベースの分散ロードのためのシステム、方法およびソフトウェア Withdrawn JP2010250854A (ja)

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
US64235105P 2005-01-07 2005-01-07

Related Parent Applications (1)

Application Number Title Priority Date Filing Date
JP2007550549A Division JP4722944B2 (ja) 2005-01-07 2006-01-09 データベースの分散ロードのためのシステム、方法およびソフトウェア

Publications (1)

Publication Number Publication Date
JP2010250854A true JP2010250854A (ja) 2010-11-04

Family

ID=36581217

Family Applications (2)

Application Number Title Priority Date Filing Date
JP2007550549A Expired - Fee Related JP4722944B2 (ja) 2005-01-07 2006-01-09 データベースの分散ロードのためのシステム、方法およびソフトウェア
JP2010145657A Withdrawn JP2010250854A (ja) 2005-01-07 2010-06-25 データベースの分散ロードのためのシステム、方法およびソフトウェア

Family Applications Before (1)

Application Number Title Priority Date Filing Date
JP2007550549A Expired - Fee Related JP4722944B2 (ja) 2005-01-07 2006-01-09 データベースの分散ロードのためのシステム、方法およびソフトウェア

Country Status (12)

Country Link
US (2) US7480644B2 (ja)
EP (1) EP1834261B1 (ja)
JP (2) JP4722944B2 (ja)
CN (1) CN101137984B (ja)
AR (1) AR052083A1 (ja)
AU (1) AU2006206756B2 (ja)
BR (1) BRPI0606259B1 (ja)
CA (1) CA2593542C (ja)
ES (1) ES2500140T3 (ja)
HK (1) HK1108740A1 (ja)
NZ (1) NZ556503A (ja)
WO (1) WO2006078502A2 (ja)

Families Citing this family (13)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP4722944B2 (ja) 2005-01-07 2011-07-13 トムソン ルーターズ グローバル リソーシーズ データベースの分散ロードのためのシステム、方法およびソフトウェア
US7747663B2 (en) * 2008-03-05 2010-06-29 Nec Laboratories America, Inc. System and method for content addressable storage
US8443370B2 (en) 2008-08-26 2013-05-14 Microsoft Corporation Method of assigning resources to fulfill a service request by a programming model abstraction layer at a data center based at least in part on a reference of the requested resource class indicative of an abstract amount of resources
SE533007C2 (sv) * 2008-10-24 2010-06-08 Ilt Productions Ab Distribuerad datalagring
US8713182B2 (en) * 2009-08-03 2014-04-29 Oracle International Corporation Selection of a suitable node to host a virtual machine in an environment containing a large number of nodes
CN101924798B (zh) * 2010-09-08 2012-11-21 北京大学 一种基于文件类型的Android构件透明加载方法及系统
US10341919B2 (en) * 2010-11-24 2019-07-02 Elta Systems Ltd. Handover initiation methods and systems for improvement of cellular network performance
JP5687219B2 (ja) * 2012-01-20 2015-03-18 日本電信電話株式会社 データ検索システム、データ検索方法及びデータ検索プログラム
US11455350B2 (en) 2012-02-08 2022-09-27 Thomson Reuters Enterprise Centre Gmbh System, method, and interfaces for work product management
TWI613556B (zh) * 2013-01-28 2018-02-01 通用儀器公司 對遠端分散式資料庫伺服器之選擇性資料同步及傳送
US10140313B2 (en) * 2015-09-27 2018-11-27 International Business Machines Corporation Parallel processing of large data files on distributed file systems with dynamic workload balancing
DE102016119426B4 (de) * 2016-10-12 2020-03-12 Pierburg Gmbh Klappenvorrichtung für eine Verbrennungskraftmaschine
US11409781B1 (en) 2019-09-30 2022-08-09 Amazon Technologies, Inc. Direct storage loading for adding data to a database

Family Cites Families (40)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6044205A (en) * 1996-02-29 2000-03-28 Intermind Corporation Communications system for transferring information between memories according to processes transferred with the information
US5530855A (en) * 1992-10-13 1996-06-25 International Business Machines Corporation Replicating a database by the sequential application of hierarchically sorted log records
US5838965A (en) * 1994-11-10 1998-11-17 Cadis, Inc. Object oriented database management system
JPH08202573A (ja) * 1995-01-27 1996-08-09 Fuji Electric Co Ltd 二重化システムにおけるras情報の保存方法
JPH10105566A (ja) * 1996-09-30 1998-04-24 Hitachi Software Eng Co Ltd 画像データの検索・表示方法
EP0838924A1 (en) * 1996-10-23 1998-04-29 Alcatel Method to determine a scheduled rate value to be used in a policing algorithm, and related policing device
US5978462A (en) * 1997-10-08 1999-11-02 Mci Communications Corporation Method and system for automating updates to subscriber service accounts to accommodate numbering plan area splits
US6519763B1 (en) * 1998-03-30 2003-02-11 Compuware Corporation Time management and task completion and prediction software
US6247141B1 (en) * 1998-09-24 2001-06-12 Telefonaktiebolaget Lm Ericsson (Publ) Protocol for providing replicated servers in a client-server system
US7100195B1 (en) * 1999-07-30 2006-08-29 Accenture Llp Managing user information on an e-commerce system
US6601192B1 (en) * 1999-08-31 2003-07-29 Accenture Llp Assertion component in environment services patterns
JP3772606B2 (ja) * 1999-10-19 2006-05-10 株式会社日立製作所 電子文書管理方法及びシステム並びに記録媒体
US6985901B1 (en) * 1999-12-23 2006-01-10 Accenture Llp Controlling data collection, manipulation and storage on a network with service assurance capabilities
US6571285B1 (en) * 1999-12-23 2003-05-27 Accenture Llp Providing an integrated service assurance environment for a network
US6983317B1 (en) * 2000-02-28 2006-01-03 Microsoft Corporation Enterprise management system
US20020194251A1 (en) * 2000-03-03 2002-12-19 Richter Roger K. Systems and methods for resource usage accounting in information management environments
US20020120741A1 (en) * 2000-03-03 2002-08-29 Webb Theodore S. Systems and methods for using distributed interconnects in information management enviroments
US20020065864A1 (en) * 2000-03-03 2002-05-30 Hartsell Neal D. Systems and method for resource tracking in information management environments
US20020174227A1 (en) * 2000-03-03 2002-11-21 Hartsell Neal D. Systems and methods for prioritization in information management environments
US6601020B1 (en) * 2000-05-03 2003-07-29 Eureka Software Solutions, Inc. System load testing coordination over a network
US6574617B1 (en) * 2000-06-19 2003-06-03 International Business Machines Corporation System and method for selective replication of databases within a workflow, enterprise, and mail-enabled web application server and platform
US7379994B2 (en) * 2000-10-26 2008-05-27 Metilinx Aggregate system resource analysis including correlation matrix and metric-based analysis
US20030009385A1 (en) * 2000-12-26 2003-01-09 Tucciarone Joel D. Electronic messaging system and method thereof
US6631379B2 (en) * 2001-01-31 2003-10-07 International Business Machines Corporation Parallel loading of markup language data files and documents into a computer database
US6785696B2 (en) * 2001-06-01 2004-08-31 Hewlett-Packard Development Company, L.P. System and method for replication of distributed databases that span multiple primary nodes
US20030037284A1 (en) * 2001-08-15 2003-02-20 Anand Srinivasan Self-monitoring mechanism in fault-tolerant distributed dynamic network systems
US6745209B2 (en) * 2001-08-15 2004-06-01 Iti, Inc. Synchronization of plural databases in a database replication system
US6662198B2 (en) * 2001-08-30 2003-12-09 Zoteca Inc. Method and system for asynchronous transmission, backup, distribution of data and file sharing
US20030074606A1 (en) * 2001-09-10 2003-04-17 Udi Boker Network-based control center for conducting performance tests of server systems
US7149898B2 (en) * 2002-01-14 2006-12-12 Sun Microsystems, Inc. Self-monitoring and trending service system with a cascaded pipeline with enhanced authentication and registration
US20030135823A1 (en) * 2002-01-14 2003-07-17 Richard Marejka Loader and provider configuration for remotely provided services
US20030143978A1 (en) * 2002-01-18 2003-07-31 Boston Communications Group, Inc. Wireless telephone call processing
US20040128165A1 (en) * 2002-10-07 2004-07-01 Block Brad J. Method and apparatus for accessing and synchronizing multiple health care databases
US7085755B2 (en) * 2002-11-07 2006-08-01 Thomson Global Resources Ag Electronic document repository management and access system
US7089356B1 (en) * 2002-11-21 2006-08-08 Oracle International Corporation Dynamic and scalable parallel processing of sequence operations
US7209925B2 (en) * 2003-08-25 2007-04-24 International Business Machines Corporation Method, system, and article of manufacture for parallel processing and serial loading of hierarchical data
WO2005057362A2 (en) * 2003-12-08 2005-06-23 Notable Solutions, Inc. Systems and methods for data interchange among autonomous processing entities
US7246256B2 (en) * 2004-01-20 2007-07-17 International Business Machines Corporation Managing failover of J2EE compliant middleware in a high availability system
US7457796B2 (en) * 2004-07-08 2008-11-25 International Business Machines Corporation Method using virtual replicated tables in a cluster database management system
JP4722944B2 (ja) * 2005-01-07 2011-07-13 トムソン ルーターズ グローバル リソーシーズ データベースの分散ロードのためのシステム、方法およびソフトウェア

Also Published As

Publication number Publication date
BRPI0606259B1 (pt) 2019-04-30
EP1834261B1 (en) 2014-06-25
BRPI0606259A2 (pt) 2009-06-09
EP1834261A2 (en) 2007-09-19
AR052083A1 (es) 2007-02-28
NZ556503A (en) 2011-07-29
AU2006206756A1 (en) 2006-07-27
JP4722944B2 (ja) 2011-07-13
CN101137984B (zh) 2011-08-03
WO2006078502A2 (en) 2006-07-27
WO2006078502A3 (en) 2007-02-08
CA2593542C (en) 2012-02-28
US20100017364A1 (en) 2010-01-21
HK1108740A1 (en) 2008-05-16
ES2500140T3 (es) 2014-09-30
JP2008527547A (ja) 2008-07-24
CA2593542A1 (en) 2006-07-27
AU2006206756B2 (en) 2009-07-30
CN101137984A (zh) 2008-03-05
US7480644B2 (en) 2009-01-20
US20060174101A1 (en) 2006-08-03

Similar Documents

Publication Publication Date Title
JP4722944B2 (ja) データベースの分散ロードのためのシステム、方法およびソフトウェア
US10805227B2 (en) System and method for controlling access to web services resources
US9773015B2 (en) Dynamically varying the number of database replicas
US6434616B2 (en) Method for monitoring abnormal behavior in a computer system
US7418489B2 (en) Method and apparatus for applying policies
US8996482B1 (en) Distributed system and method for replicated storage of structured data records
JP5254611B2 (ja) 固定内容分散データ記憶のためのメタデータ管理
US8856091B2 (en) Method and apparatus for sequencing transactions globally in distributed database cluster
CN100570607C (zh) 用于多处理环境中的数据聚合的方法和系统
US10747732B2 (en) Virtual database administrator
JP2006048559A (ja) ストレージシステムの記憶容量管理方法
US20080059735A1 (en) Method of improving efficiency of replication monitoring
CN110825704B (zh) 一种读数据方法、写数据方法及服务器
US20090204618A1 (en) Storage system
CN113268206B (zh) 一种网络靶场资源热插拔实现方法与系统
CN113485872A (zh) 故障处理方法、装置及分布式存储系统
US8533331B1 (en) Method and apparatus for preventing concurrency violation among resources
CN113609199B (zh) 数据库系统、服务器及存储介质
US11762643B2 (en) System using blockchain
CN112073519B (zh) 操作请求的处理方法和装置
CN109639509B (zh) 一种网络设备配置方法及装置
Garlick I/O forwarding on livermore computing commodity linux clusters
JP2021039490A (ja) 情報処理装置及び情報処理プログラム
JP2009251791A (ja) 分散ファイルシステム、データ書き込み方法、及びプログラム
JP2009048313A (ja) データ処理装置およびデータ処理方法

Legal Events

Date Code Title Description
A072 Dismissal of procedure [no reply to invitation to correct request for examination]

Free format text: JAPANESE INTERMEDIATE CODE: A073

Effective date: 20111110

A300 Application deemed to be withdrawn because no request for examination was validly filed

Free format text: JAPANESE INTERMEDIATE CODE: A300

Effective date: 20111206