2

私はメーリングリストのアーカイブを使用しており、基本的な検索、ブール検索、そして最終的にはよりインテリジェントなタグベースの検索の設定を担当しています。

商用製品といくつかのオープンソースプロジェクト(Lucene.NETなど)の両方が表示されます

他の誰かが同様の種類の仕事をしましたか?

私は現在Win2k3サーバーで作業しているので、すぐに考えたのはASPClassicまたはASP.NETを使用することでした。ただし、その目的のために桁違いに優れた別のプラットフォームがある場合は、それも検討します。私はそれのために何かを捨てるつもりはありません;)

4

2 に答える 2

2

メール検索を設定しているので、検索エンジンとデータベースの2つが必要になります。あなたが必要とするものを提供する多くの検索エンジンがあります。

  • スフィンクス
  • Solr(LuceneとSolrは現在マージされています)
  • PostgreSQL(組み込み検索)

キーワード、フィールド制限検索、ブールクエリ、フレーズ検索などの高度な検索ツールを提供します。さまざまなテキスト検索エンジンを調べている別のSO投稿があります:全文検索エンジンの比較-Lucene、Sphinx、Postgresql、MySQL?

SphinxとSolrは検索がかなり高速です。Sphinxは完全なデータベース検索を行い、部分的なインデックス作成も行います。Solrはインデックスベースの検索を使用し、ほぼ線形のパフォーマンスでスケーラブルです。

2番目に重要な選択は、メールを保存するデータベースです。メールは、テーブルのフィールドのように、何らかの形式(スキーマ)になります。フォーマットを使用しないのは明らかにクレイジーです。ファイル検索じゃないですよね?一部の検索エンジンでは、特定のDBが機能する必要があります。SphinxはSQLデータベースのみを使用し、SolrはnoSQLデータベースと統合できます。

スケーリングの問題(数千のユーザーがいて、GBのデータがあり、リアルタイムのパフォーマンスが必要)を心配していない場合は、SQLデータベースで問題ありません。それ以外の場合は、SolrでnoSQLデータベースを使用する必要があります。

SQLデータベース(PostgreSQLなど)は、操作が最も簡単で、必要なことを実行し、最小限のセットアップ/労力で済みます。コネクタを使用すると、ブラウザからデータベースにクエリ(メール検索)を送信できます。

また、Win2k3を使用しているとのことですが、これらの検索エンジンを利用するには、Linuxディストリビューションに切り替える必要があります。Win2k3は低速であり、Linuxディストリビューションに匹敵するパフォーマンスを提供しません。

于 2013-02-23T13:50:48.940 に答える
2

まず、何が必要かを考える必要があります。

  • メール アーカイブで何を検索しますか? メールのプレーンデータを全文検索するだけ?たとえば、base64 でエンコードされたメールでは一致が得られません。「フィールド化された」検索が必要ですか? 例: 「件名」、「差出人」、「宛先」、「本文」、「添付ファイル」のみを検索しますか?
  • メール内の検索へのアクセスをどのように提供しますか? ウェブページ経由ですか?コマンドラインで?いくつかのWindowsプログラムで?

まだ行っていない場合は、データがどのように見えるかを調べる必要があります。'mbox' 形式 (メールのプレーン テキストが連結された 1 つのファイル) 'maildir' (それぞれに 1 つのメールが含まれる多数のファイルを含むディレクトリ) か、それとも別の形式でしょうか?

検索エンジンを設定するということは、データをどのように準備する必要があるかを考えるということです。

  • 電子メールには、さまざまなデータが含まれている場合があります。base64 でエンコードされたデータ、UTF-8 としての文字エンコード、および添付ファイルを処理する必要があります。
  • Usegroup メールは、複数の電子メール メッセージに分割されることさえあります。
  • 異なる「フィールド」(「件名」、「日付」、「本文」) を検索する場合は、それらを抽出する必要があります。
  • データは言語的な手段で準備する必要があります。メールがどの言語で書かれているかを調べ (複数ある場合)、データを処理する必要があります。mouseandの概念に一致するものを検索するにはmice、おそらくrats; またはcursorpointing deviceメーリング リストのトピックによって異なります。

次のことも考えてください。

  • 今後、データの更新はありますか?
  • 削除はありますか (後で再ラベル付けされるメッセージを含む)?

次に、あなたが気に入っている製品 (商用またはオープン ソース) を比較してください。検索エクスペリエンスを提供することは、検索エンジンをダウンロードして大量のデータをドロップするだけではないことに注意してください。

于 2013-02-18T15:04:08.283 に答える