3

16GBのファイルシステムスペースに200万のXMLドキュメントがありません。それらはすべて有効であり、単一のDTDを共有します。それらはすべてほぼ同じサイズです(すべて同じラボ情報システムによって生成されます)。

1人のユーザーが2Mのドキュメントコーパス全体をクエリする簡単な方法を探しています。私はこれをWebや複数のLANユーザーに公開するつもりはありません。ただし、クエリインターフェイスをイントラネットに公開できるようにしたいと思います。クエリ言語には柔軟性がありますが、アドホッククエリを実行できるようにしたいと考えています。少なくとも同様のパフォーマンスを実現したいので、インデックスに対応するために必要に応じて追加のディスク領域を割り当てたいと考えています。

実行可能なソリューションは、8GBのRAMを搭載したシングルクアッドコアLinuxボックスで嘆かわしいものでなければなりません。新しいハードウェアはオプションではありません。

e-Xist DBを見つけましたが、アクティビティがそれほど多くないようで、デモサイトがダウンしています。

4

4 に答える 4

3

私はこの順序で試してみます:

  1. BaseX(優れたGUIを備えています。私が見つけた最も有望なオープンソースXMLデータベース。BSDライセンス)
  2. セドナ(BaseX以前の私のお気に入り。Apache2.0ライセンス)
  3. Berkeley DB-XML(組み込みフラットファイルDBです。Sleepycatライセンス)
  4. eXist(eXistは常にハッキーな災害でした。GNULGPLライセンス)

私の勘では、バークレーが最速ですが、BaseXとSednaはどちらもネットワークにアクセス可能であり、BaseXの使用とクエリを開始するのが最も簡単です。セドナにはスキーマ対応のストレージシステムもあり、これはあなたが説明する状況に役立つ可能性があります。Berkeleyのsleepycatライセンスは、商用利用の場合は邪魔になる可能性があります。注意深く見てください。

于 2012-02-03T02:49:58.103 に答える
1

私の好みは、全文検索エンジンを使用して転置インデックスを作成することです。以下は私の好みです。これら3つの調査に時間をかけることをお勧めします。

  1. Solr(クエリ用のWebインターフェース、簡単に開始できます)
  2. ElasticSearch(分散型、簡単に開始できます)
  3. Raw Lucene(1と2はLuceneを舞台裏で使用します)

なぜ全文検索エンジンなのか?

  1. もっと早く
  2. ハイライト
  3. ファセット
  4. 自由形式の検索を許可します(xml dbsを使用すると、xpathやxqueryなどに対して作業します)
  5. 膨大なファイルセットでもより高速に検索できることが証明されています
  6. ファイルベース
于 2012-02-03T01:02:12.263 に答える
1

あなたは間違いなくXMLデータベースが必要です。新興のリーダーは、商用製品の場合はMarkLogic、オープンソースの場合はeXistです。他の人は他の見解を持っているかもしれません。新しいデータベース製品を理解することは、常に急な学習曲線です(そして、データベースの能力が高いほど、学習する必要があります)。しかし、eXistは確かにそれをハックすることができます。最初のハードルで諦めないでください。

于 2012-02-03T11:58:44.223 に答える
1

MichaleKayに同意します。オープンソースが必要な場合はeXist-dbを使用し、商用が必要な場合はMarkLogicを使用します。私は米国議会図書館のNDIIPPプログラムのプロジェクトを行い、広範囲にわたるATAM分析の結果、アクティブなユーザーコミュニティと広範な使用により、eXistを他のシステムよりも優れたものとして選択しました。疑問がある場合は、MarkMailで検索してください。eXistは他のどのシステムよりも活発な議論をしていることがわかると思います。

ここにオンラインで約350ページのレポートがあります:

http://www.mnhs.org/preserve/records/legislativerecords/pilot.htm

于 2012-02-04T14:15:09.233 に答える