我目前正在开展一个项目,其中包括出于性能原因将内容推荐程序从MySQL迁移到NoSQL数据库。我们的团队一直在评估一些替代品,如MongoDB,CouchDB,HBase和Cassandra。我们的想法是选择能够在单个服务器或集群中运行的数据库。 到目前为止,我们已经放弃了Hbase的使用,因为它依赖于分布式环境。即使有横向扩展的想法,我们也需要在生产中的一个服务器上运行一段时间。 MongoDB也被丢弃,因为它不支持map / reduce功能。 我们还有两个选择,我们没有坚实的背景来决定。任何指导或帮助表示赞赏
注意:我并不假装用非基础论证来创建类似宗教的讨论。这是一个严格的技术问题,需要在问题的背景下进行讨论
答案 0 :(得分:3)
图形数据库通常被认为最适合推荐引擎,因为很多推荐算法实际上都是基于图形的。我建议查看Neo4J - 它可以在一台机器上处理数十亿个节点/边缘,它支持所谓的高可用性模式,这是一种具有自动主选择功能的主从设置。