我将很快实现日志查看工具。但我坚持使用数据库选择。我的要求如下:
我知道如果我对表格进行分段,PostgreSQL就可以工作了。但是我能否在上面写出这个性能。据我所知,NoSQL是日志存储的更好选择,因为日志结构不是很好。我看到了一个像下面这样的例子,看起来很有希望使用hadoop-hbase-lucene: http://blog.mgm-tp.com/2010/03/hadoop-log-management-part1/
但在决定之前我想询问是否有人之前做过这样的选择并且可以给我一个想法。哪个DBMS最适合这项任务?
答案 0 :(得分:5)
我的日志非常有条理:)
我会说你不需要数据库,你需要搜索引擎:
@JustBob更新: 大多数提到的解决方案都可以使用平面文件,而不会影响性能。所有这些都需要反向索引,这是构建或维护最难的部分。您可以批处理模式或联机更新索引。索引可以存储在RDBMS,NoSQL或自定义“平面文件”存储格式中(自定义 - 由搜索引擎应用程序维护)
答案 1 :(得分:4)
您可以在这里找到很多信息:
http://kkovacs.eu/cassandra-vs-mongodb-vs-couchdb-vs-redis
了解哪些适合您的需求。
无论如何,NoSQL是正确的选择。
您还应该考虑学习曲线MongoDB / CouchDB,即使它们没有像Cassandra或Hadoop那样执行,它们也更容易学习。
Craigslist使用MongoDB存储旧档案:http://www.10gen.com/presentations/mongodb-craigslist-one-year-later