我发现自己经常在将对象存储在更适合其性质(事件、文档、图表等)的数据存储中做出决定,还是坚持使用关系数据库并继续我的生活,我敢打赌你们中的一些人也这样做。
我想知道你用什么标准来做出这个决定,例如,什么时候使用数据很少的 NoSQL 是“过早的优化”,什么时候是“好的工程”......
那么,什么时候使用最好的数据存储,什么时候坚持关系型?
我看到很多关于nosql标签的问题,包括以下内容:
根据个人经验,我会在选择新数据库时考虑发现成本。
在关系存储和 NoSQL 之间移动数据绝非易事。在使用文档存储时,如何对数据进行建模肯定并不总是直观的。此外,其中一些数据库非常新,以至于它们的查询优化远不及关系系统。
当您进行概念验证或处理少量数据时,我上面提到的事情似乎不是问题。
我的建议是在选择解决方案时不要让炒作影响到你。
(我使用过 Mongo、Couchbase、CouchDB 和 Redis 的生产实现。)
我正在使用 Oracle 和 Couchbase(nosql 面向文档的数据库)。我认为在大多数情况下使用 NoSql 更容易且更便宜。每个 NoSql DB 都是一种用于解决相当小范围任务的机制,如果您的任务适合其中一个,使用 NoSql 解决方案将比使用巨大的 Oracle 或 MSSql Server 更优化。通常我们使用的这些强大数据库的功能不超过 10%,但这并不是因为我们对它们的了解不高,而是因为我们不需要它们提供的所有余地