1

数え切れないほどのSyslogメッセージのインデックスを作成して保存するシステムを検討しています。これらはテキストメッセージであり、いくつかの属性(システム名、日付/時刻、メッセージタイプ、メッセージ本文)があり、通常はそれぞれ100〜1500バイトです。

これらのメッセージは1日あたり2〜10 GB生成され、少なくとも30日間保持する必要があります。

Splunkシステムには、非常に優れたインデックス作成およびドキュメント圧縮システムがあります。

何を使う?

mongodbのことを考えましたが、この小さなサイズのドキュメントには不適切なようです。

SQL Serverは可能性がありますが、おそらくこの目的にはあまり効率的ではないようです。

luceneを含むテキストファイル?--Windowsファイルシステムは、数え切れないほどのファイルを含むdirsを常に好むとは限りません

提案?

ありがとう!

4

5 に答える 5

2

mongodbのことを考えましたが、この小さなサイズのドキュメントには不適切なようです

Boxed Iceという会社があり、実際にMongoDBを使用してサーバー監視システムを構築しています。私はそれが間違いなく適切であると主張します。

これらはテキストメッセージであり、いくつかの属性(システム名、日付/時刻、メッセージタイプ、メッセージ本文)があり、通常はそれぞれ100〜1500バイトです。

MongoDBの観点からは、いくつかの属性を持つ小さなドキュメントをたくさん保存していると言えます。このような場合、MongoDBにはいくつかの利点があります。

  1. 属性の変更をシームレスに処理できます。
  2. さまざまなタイプに柔軟に対応します。

これらのメッセージは1日あたり2〜10 GB生成され、少なくとも30日間保持する必要があります。

これは、MongoDBが処理できるデータ範囲のタイプの範囲内です。30日間の保存期間を処理するには、いくつかの異なる方法があります。これらは、レポートのニーズによって異なります。私はここでアイデアを求めてグループをいじくり回しました。

私が一緒に働いた人々に基づくと、このタイプの挿入が多いロギングは、Mongoが非常に適している傾向がある場所の1つです。

于 2011-02-24T18:49:57.613 に答える
1

Graylog2は、MongoDB上に構築されたオープンソースのログ管理ツールです。Loggy-as-a-ServiceプロバイダーであるLoggyも、バックエンドストアとしてMongoDBを使用していると思います。そのため、ロギングにMongoDBを使用している製品がいくつかあります。

より良いテキスト検索のために、Luceneアナライザーによって返されたngramを保存できるはずです。大量の文書を考えると、実現可能性についてはよくわかりません。主なレポートのユースケースとは何ですか?

于 2011-02-25T02:58:57.907 に答える
1

パフォーマンスを損なうことなくさまざまな属性を検索できるmongodb全文検索サーバーのようなものが必要なようです。MongoLanternを試すことができます:http ://sourceforge.net/projects/mongolantern/ 。アルファ段階ですが、500万レコードで最高の結果が得られます。

これがあなたの目的に役立つかどうか教えてください。

于 2011-12-15T13:12:36.147 に答える
0

LuceneまたはSolrを使用することを強く検討します。

Luceneは、全文検索用に特別に構築されており、アプリケーションで役立つ可能性のある多くの追加の便利な機能を提供します。ボーナスとして、Solrはセットアップと構成が非常に簡単です。(そして検索のためのその超高速)

エントリごとにファイルを保持するわけではないので、何百万ものファイルについて心配する必要はありません。

無料のデータベースオプションはどれも全文検索に特化していません-あなたが望むことを彼らに強制しようとしないでください。

于 2011-02-24T21:01:58.947 に答える
0

Grafana、Logstash + ElasticSearchの独自の(イントラネット全体の)スタックをデプロイする必要があると思います

flexibelスキーマ、保持、およびGrafanaを使用したデータの優れたUIを取得したら、セットアップします。

于 2016-11-28T19:03:59.203 に答える