哪个数据库最适合使用?

时间:2018-04-05 17:20:57

标签: android mongodb cassandra

实际上我正在使用mongodb设计一个社交媒体应用程序,它几乎准备发布了。但是今天我正在检查一些关于Cassandra和MongoDB的帖子,在这些帖子中提到,对于重写,应该使用Cassandra而不是MongoDB。

所以我很困惑,如果我从MongoDB迁移到Cassandra,或者我应该在MongoDB中发布我的应用程序。

请为我的案例建议什么是最好的数据库。我的应用程序中有消息,图片上传,视频上传(将来)。

1 个答案:

答案 0 :(得分:2)

虽然两者都是NoSQL数据库,但它们非常不同。查看几个关键特性,您可以确定哪个更适合您的应用程序(虽然我会说,如果您的应用程序如此接近发布,是否有意义延迟以重新设计数据库部分?只是问。)< / p>

  • 对象:您的数据模型需要灵活性吗? Mongo使用了 富有表现力的对象模型,包括索引属性 宾语。 Cassandra使用更传统的表格结构 和特定数据类型的列。
  • 二级索引:您是否需要二级索引并且更灵活 查询模型? MongoDB完全支持二级索引。卡桑德拉 有粗略支持二级索引,查询更多 传统的

  • 高可用性:您需要100%的正常运行时间吗?使用MongoDB的单曲 主模型如果主人关机时你会有停机时间 奴隶选出了一位新主人。 Cassandra支持多个主人 并且可以实现100%的写入正常运行时间。

  • 查询语言支持:您需要查询语言支持吗? MongoDB的 不支持查询语言,而Cassandra支持CQL 这与SQL非常相似。

  • 高写入吞吐量:如果您有大量并发 写入发生,然后Cassandra具有高写入吞吐量 优点