我目前正在devise一个MMO浏览器游戏的阶段,游戏将包括一些实时位置的瓷砖地图(所以每个单元格的瓷砖数据)和一般的世界地图。 游戏引擎我更喜欢使用MongoDB作为持久数据的世界。 我也将实现一个航运模拟(我将在下面进行更多解释),它基本上是一个Dijkstra模块,我决定使用一个graphics数据库,希望它能使事情变得更简单,发现Neo4j是相当受欢迎的。 我对MongoDB + Neo4J的设置感到满意,但是后来发现OrientDB显然是MongoDB和Neo4J(两者都是好的),甚至还有MongoDB和Neo4J的VS页面。 关键是,我听说MongoDB丢失数据的一些恐怖故事(尽pipe还不确定),我没有那么奢侈。 而对于Neo4J,我并不是每年12K€“启动友好”成本的大粉丝,尽pipe我可能没有数百万顶点的数据库。 OrientDB似乎是一个可行的select,因为使用一个数据库解决scheme也可能有一些机会。 在这种情况下,一个合理的举动可能会跳到OrientDB,但它有一个小社区,并没有发现太多的评论,MongoDB和Neo4J是广泛使用的stream行工具,我担心,如果OrientDB是一个冒险。 我的第一个问题是,如果你有任何有关这些数据库的经验/意见。 第二个问题是图表数据库对于航运模拟更好。 使用的数据库有望计算从任何顶点到任何顶点的最便宜的路线并遍历它(经典Dijkstra)。 而且还要根据情况来改变权重,例如“国家B对A国实行禁运,所以任何来自A国的项目都不能通过B,在XYZ国家有洪水,所以没有陆路运输”等等。有望caching结果。 我期望不超过1000个顶点,但边缘很多。 如果问题有点模棱两可,请提前致谢,并提前道歉 PS:我在标题中join了ArangoDB,但是没有太多的机会看一下。 编辑截至2016年4月18日:评估对我的问题和发展战略的回应后,我决定使用ArangoDB,因为他们的路线图对我来说更有希望,因为他们显然不想增加大量炒作function。