【发布时间】:2012-07-15 10:19:43
【问题描述】:
对不起,如果已经有答案,我搜索了它,但没有找到完全适合我的方案。
又是一个类似“什么是最快/最佳性能的数据库?”之类的问题。但由于答案取决于场景,我的场景是这样的:我想将许多日志写入数据库,每秒数千。但我不会经常阅读它们。事实上,其中 99,99% 将永远不会再被阅读,但有时我需要阅读。模式并不复杂,只是键/值。偶尔我会按价值阅读,如果阅读需要几分钟,我根本不在乎。读取的正确性很重要,但性能却不是。
到目前为止,最好的解决方案似乎是 MongoDB、Cassandra……也许是最好的 DynamoDB?
【问题讨论】:
-
真的没有“最好”;如果有,你就不需要问了,这只是常识。你的候选人都是有价值的,而且更多的是品味问题而不是任何事实。就目前而言,这个问题不适合我们的问答形式。我们希望答案得到事实、参考资料或特定专业知识的支持,但这个问题可能会引发辩论、争论、民意调查或扩展讨论。
-
你打算写结构化的日志吗?您希望它们在很长一段时间内的延迟有多大?
-
好吧,我认为如果我说对于非常具体的场景(如所描述的那样)来说什么是最好的,那将是一个很好的问题。即使答案是一组产品,而不是最重要的一个。
-
非结构化。这是你能想象到的最简单的数据结构:key:value。一个有 2 列的表。而且很大。事实上,考虑到我们可能发现的限制,它将尽可能大。您可以想象:每秒数千次插入。我们从不更新。我们很少会做阅读。对我们来说,重要的是不要删除任何东西,除非真的很旧。我们只需要知道以后,如果我们需要通过键读回其中一个值,即使读取需要很长时间,也是可以做到的。我们可能会每月阅读一次,但它会为我们节省很多钱,所以值得。
标签: database performance insert scalable