这可能会在此处(或其他地方)得到解答,但我一直在互联网上看到混合/没有观点。
除了像数据库之类的SQL之外,我从未使用过任何其他东西,然后我遇到了NoSQL DB(特别是mongoDB)。我试了一下手。我这样做只是为了好玩,但到处谈论的是,当你在分布式服务器上使用它时它真的很棒。 所以我想知道,如果对于小型项目和事情主要仅在个人计算机上有任何帮助(以非平凡的方式)?当只有一台服务器时,是否有一些真正的优势?
虽然使用MapReduce会很酷(并且将它与同行讨论:d)当用于在单个服务器上运行的小项目时,它不会是一种过度杀伤吗?或者还有其他优点吗?我需要一些明确的想法。对不起,如果我在这里听起来很天真。
可选:您使用过的一些示例很好。
感谢。
答案 0 :(得分:5)
恕我直言,MongoDB完全适用于单个服务器/小型项目,并不是您只应将其用于“大数据”或多服务器项目的先决条件。
如果MongoDB解决了特定的要求,那么在项目规模上并不重要,所以不要让这个方面影响你。使用MapReduce可能有点过度/不是最好的方法,如果你真的有低数据量并且只是想做一些基本的聚合 - 这些可以使用组操作员来完成(目前在它有多少数据方面有一些限制)返回)。
所以我想我一般说的是,使用正确的工具来完成工作。在小型项目/单个PC上使用MongoDB没有任何问题。如果像SQL Server这样的RDBMS更适合您的项目,那么就使用它。如果像MongoDB这样的NoSQL技术适合,那就使用它。
答案 1 :(得分:4)