当前位置:  开发笔记 > 后端 > 正文

在谈论MongoDB与Cassandra时,"面向文档"与键值的含义是什么意思?

如何解决《在谈论MongoDB与Cassandra时,"面向文档"与键值的含义是什么意思?》经验,为你挑选了2个好方法。

使用基于文档的NoSQL选项会让您在KV商店购买什么,反之亦然?



1> Pascal Thive..:

一个key-value存储提供了最简单的数据模型和正是顾名思义:它是存储由键索引值的存储系统.你受限于键查询,值是不透明的,商店不知道任何关于他们.这允许非常快速的读写操作(简单的磁盘访问),我将此模型视为一种非易失性缓存(即,如果需要通过密钥快速访问长期数据,则非常适合).

面向文档的数据库延伸先前模型和值被存储在一结构化的格式(文件,因此得名),该数据库可以理解.例如,文档可以是博客文章,评论标签以非规范化方式存储.由于数据是透明的,因此商店可以执行更多工作(例如索引文档的字段),并且您不仅限于按键查询.正如我所暗示的,这样的数据库允许通过单个查询获取整个页面的数据,并且非常适合面向内容的应用程序(这就是像Facebook或亚马逊这样的大型网站喜欢它们的原因).

其他类型的NoSQL数据库包括面向列的存储,图形数据库甚至对象数据库.但这超出了这个问题.

也可以看看

将文档数据库与键值存储进行比较

NoSQL景观分析

关于NoSQL数据库的思考(分类和用例)



2> 小智..:

好吧,我在过去一个月左右一直在调查NoSQL.我认为它通常可以说是类似的东西

KV商店不知道实际为密钥存储的价值内容

基于文档允许您在值内容中定义二级索引,因为数据库知道文档结构(例如博客文章的标签).

NoSQL解决方案每个都有特定的功能,应该加以考虑,例如

KV商店中的特殊数据类型(例如,使用redis中的左/右pop/push设置)

像riak所说的那样容易扩展/缩小集群(我还没试过......)

可插拔数据存储,如Voldemort

内置Web配置和Web应用程序支持,如CouchDB/couchapp

推荐阅读
乐韵答题
这个屌丝很懒,什么也没留下!
DevBox开发工具箱 | 专业的在线开发工具网站    京公网安备 11010802040832号  |  京ICP备19059560号-6
Copyright © 1998 - 2020 DevBox.CN. All Rights Reserved devBox.cn 开发工具箱 版权所有