5

間もなくログ表示ユーティリティを実装する予定です。しかし、私はDBの選択に固執しました。私の要件は次のとおりです。

  • 毎日5GBのデータを保存する
  • 5TBデータの合計サイズ
  • このログデータを10秒以内に検索

テーブルをフラグメント化するとPostgreSQLが機能することを知っています。しかし、私はこのパフォーマンスを上に書くことができますか?私が理解したように、ログはあまり構造化されていないため、ログの保存にはNoSQLの方が適しています。以下のような例を見ましたが、hadoop-hbase-luceneを使用すると有望なようです:http: //blog.mgm-tp.com/2010/03/hadoop-log-management-part1/

しかし、決定する前に、誰かが以前にこのような選択をして、私にアイ​​デアを与えることができるかどうかを尋ねたかったのです。このタスクに最適なDBMSはどれですか?

4

2 に答える 2

5

私のログは非常に構造化されています:)

検索エンジンが必要なデータベースは必要ないと思います:

  • Solrは Lucene に基づいており、必要なものがすべてパッケージ化されています
  • ElasticSearch別の Lucene ベースの検索エンジン
  • Sphinxの優れた点は、検索インデックスごとに複数のソースを使用できることです。生のログを他のイベントで充実させます。
  • Scribe Facebook でログを検索して収集する方法

@JustBob の更新: 上記のソリューションのほとんどは、パフォーマンスに影響を与えることなくフラット ファイルで動作します。すべての場合、構築または維持するのが最も難しい部分である逆インデックスが必要です。インデックスはバッチ モードまたはオンラインで更新できます。インデックスは、RDBMS、NoSQL、またはカスタムの「フラット ファイル」ストレージ形式で保存できます (カスタム - 検索エンジン アプリケーションによって維持されます)。

于 2012-11-19T09:05:29.223 に答える
4

ここで多くの情報を見つけることができます:

http://kkovacs.eu/cassandra-vs-mongodb-vs-couchdb-vs-redis

ニーズに合ったものをご覧ください。

とにかく、そのようなタスクには NoSQL が正しい選択です。


また、Cassandra や Hadoop のようには機能しませんが、習得が容易な MongoDB / CouchDB の学習曲線も考慮する必要があります。

古いアーカイブを保存するために Craigslist が使用している MongoDB: http://www.10gen.com/presentations/mongodb-craigslist-one-year-later

于 2012-11-19T08:35:42.130 に答える