繁体   English   中英

Java堆栈上的Cassandra与JavaScript堆栈上的Mongo Db

[英]Cassandra on Java stack vs Mongo Db on JavaScript stack

我正在尝试比较和对比MongoDB与Cassandra。 我们的项目基于Java。 我发现的一些差异是

Cassandra是高度可用的,并且分区支持与MongoDb的支持是一致且高度可用的(对分区不是很好)。

MongoDb是基于文档的.Cassandra在数据建模以及将类似JSON的结构直接存储到其中方面提供了更大的灵活性。

但是有人告诉我的另一个区别是,Cassandra是基于Java堆栈的,而MongoDB是基于Javascript的。

从第三方用户(开发人员)的角度来看,堆栈的重要性如何? 考虑到我从事Java项目,在Java堆栈上构建产品是否可以为我带来更多好处? 如果是这样,那是什么?

这实际上与Cassandra或MongoDB无关,而与系统所用语言的成熟度以及各种支持API的语言有关。

Cassandra本身是用Java编写的,而mongo是cpp的,在考虑其生态系统(或您称之为堆栈)时,您需要回想一下使特定编程语言具有优势的各种lang。 下面是我对此事的极简主义观点,因为有很多书籍和博客都涉及这个确切的主题。

  • 受欢迎程度和社区支持。 赶时髦的人的语言真的很酷,直到您不了解正在发生的事情并且没有人提供帮助。 c ++和java都是非常成熟的语言,拥有大量的用户基础。 两种系统都有以流行语言实现的各种API。
  • 效率-我不打算讨论哪个lang更快或更具有更多功能的参数,但是我们可以肯定地说两个数据库都再次使用了效率不断提高的高效语言。不能很好地完成工作,在进行优化时,lang的性能可能是他们最后关心的问题。

归根结底,Cassandra以其庞大的规模而闻名[1],并且Mongo被指出具有扩展问题 ,但这不是因为C ++有问题(查找Facebook用c ++和php带来的魔力)或因为Java是令人惊叹的大型语言之王。 这与系统的实施方式有关。

[1]来自https://cassandra.apache.org/ (苹果在2014年C *峰会上也做了演讲)

苹果公司最大的生产部署之一,有超过75,000个节点存储了超过10 PB的数据。 其他大型Cassandra安装包括Netflix(2,500个节点,420 TB,每天超过1万亿个请求),中国搜索引擎Easou(270个节点,300 TB,每天超过8亿个请求)和eBay(超过100个节点,250 TB) 。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM