对于NoSQL运动,我是一个完整的菜鸟。我听说过很多关于MongoDB和CouchDB的内容。我知道两者之间存在差异。你建议学习哪些作为进入NoSQL世界的第一步?
答案 0 :(得分:146)
请参阅以下链接
更新:我找到了很棒的comparison of NoSQL数据库。
MongoDB(3.2)
最佳使用:如果您需要动态查询。如果您更喜欢定义索引,而不是map / reduce函数。如果你需要在大数据库上有良好的性能。如果您想要CouchDB,但是您的数据变化太大,请填满磁盘。
例如:对于大多数使用MySQL或PostgreSQL的事情,但是使用预定义的列确实会阻碍你。
CouchDB(1.2)
最佳使用:用于累积,偶尔更改数据,以及要在其上运行预定义查询的数据。版本控制很重要的地方。
例如:CRM,CMS系统。主 - 主复制是一项特别有趣的功能,可以轻松实现多站点部署。
答案 1 :(得分:120)
如果您来自MySQL世界,MongoDB将会“感觉”更加自然,因为它具有类似查询的语言支持。
我认为这就是让很多人如此友好的原因。
如果你想利用多节点设置(可能在不同的数据中心或类似的设备中)使用真正优秀的主 - 主复制支持,那么CouchDB非常棒。
MongoDB的复制(副本集)是主 - 从 - 从 - 奴 - *设置,您只能在副本集中写入主服务器并从其中任何一个读取。
对于标准站点配置,这很好。它很好地映射到MySQL的使用。
但是,如果您正在尝试创建像CDN这样的全局服务,即使对所有节点进行读/写操作也需要保持所有全局节点同步,那么像CouchDB中的复制这样的事情对您来说将是一个巨大的好处。
虽然MongoDB具有类似查询的语言,您可以使用并且感觉非常直观,但CouchDB采用了“map-reduce”方法和视图概念。一开始感觉很奇怪,但是当你掌握它时,它真的开始变得直观了。
这是一个快速概述,所以它有一定道理:
所以这两个来源都使用JSON文档,但是CouchDB更多地遵循这个“每个服务器都是主服务器并且可以与世界同步”的方法,如果你需要它,这很棒,而MongoDB实际上是NoSQL世界的MySQL。
所以如果这听起来更像你需要/想要的东西,那就去吧。
Mongo的二进制协议与CouchDB的RESTful接口之间的细微差别都是细微的细节。
如果你想要原始速度和数据安全的地狱,你可以使Mongo运行得比CouchDB快,因为你可以告诉它操作内存不足并且不会将内容提交到磁盘,除了稀疏间隔
你可以对Couch做同样的事情,但它的基于HTTP的通信协议将比使用Mongo的原始二进制通信慢2-4倍,这是“速度超过一切!”场景。
请记住,如果服务器崩溃或磁盘故障破坏并将您的数据库遗忘,那么原始疯狂的疯狂速度是无用的,因此数据点并不像看起来那么惊人(除非您正在进行实时交易华尔街的系统,在这种情况下看Redis)。
希望一切都有所帮助!
答案 2 :(得分:5)
看看这些链接:
答案 3 :(得分:2)
现在市场上的NoSQL数据库比以往任何时候都多。如果您正在寻找一个基于支持,可扩展性,管理和成本的企业应用程序的数据库,我建议您甚至可以查看Gartner Magic Quadrant。
http://www.gartner.com/technology/reprints.do?id=1-23A415Q&ct=141020&st=sb
我想向尚未尝试过的人推荐Couchbase,但不是基于报告(2.5.1)中显示的版本,因为它在今天的CB服务器上落后了近2个版本,2015年下半年接近4.0的释放。
http://www.couchbase.com/coming-in-couchbase-server-4-0
关于Couchbase作为供应商/产品的另一部分是它是一种多用途类型的DB。它可以充当纯K / V存储,面向文档的数据库,具有多维扩展,Memcached,缓存和持久性,并支持ANSI 92兼容的SQL自动连接,只需按一下按钮即可复制到DR集群,以及甚至还有一个内置于生态系统中的移动组件。
如果不出意外,值得查看最新的基准测试:
http://info.couchbase.com/Benchmark_MongoDB_VS_CouchbaseServer_HPW_BM.html http://info.couchbase.com/NoSQL-Technical-Comparison-Report.html
答案 4 :(得分:1)
关于NoSQL的关于NoSQL的Edureka视频是一些最好的视频教程。我已经开始使用MongoDb&看完这些视频后,卡珊德拉。
https://www.youtube.com/watch?v=gJFG04Sy6NY
https://www.youtube.com/watch?v=KSq6tMMXZ8s
https://www.youtube.com/watch?v=3z1KFA2qcSo
slideshare.net提供了很好的演示文稿
http://www.slideshare.net/quipo/nosql-databases-why-what-and-when?qid=3bb9f7f6-a53d-41b1-8403-cd6f181d0ca7&v=qf1&b=&from_search=1
http://www.slideshare.net/EdurekaIN/no-sql-databases-35591065?qid=f1b9c095-6d70-4d0a-91da-1df664c4f389&v=qf1&b=&from_search=3
幻灯片中的Edureka演示文稿是youtube中视频的扩展。您可以将此演示文稿视为YouTube视频的摘要。