![](/img/trans.png)
[英]java.lang.VerifyError: Bad type on operand stack error when connecting to a Mongo Db database
[英]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。 下面是我对此事的极简主义观点,因为有很多书籍和博客都涉及这个确切的主题。
归根结底,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.