首页 理论教育 云计算文档数据库-云计算

云计算文档数据库-云计算

时间:2023-11-26 理论教育 版权反馈
【摘要】:图7-7文档数据库数据存储示例从关系数据库存储方式的角度来看,每一个事物都应该存储一次,并且通过外键连接,而文档型数据库则按照灵活性的标准设计。文档数据库更普遍的应用场合是根据文档的某个属性字段来获取整个文档。需要注意的是,对于单个文档的读写,文档数据库可以保证原子操作,但批量写入的事物原子性目前还不能由系统保证,需要开发者在应用程序中显式处理。

云计算文档数据库-云计算

文档数据库是NoSQL数据库类型中出现的最自然的类型,因为它们是按照日常文档的存储来设计的,并且允许对这些数据进行复杂的查询和计算(图7-7)。它支持读写一些标准格式的文档数据(典型如XML,YAML和JSON,甚至支持二进制的BSON格式)。

图7-7 文档数据库数据存储示例

从关系数据库存储方式的角度来看,每一个事物都应该存储一次,并且通过外键连接,而文档型数据库则按照灵活性的标准设计。如果一个应用程序需要存储不同的属性以及大量的数据,那么文档数据库会是一个很好的选择。例如,如果要将报纸或杂志中的文章存储到关系型数据库中,首先要对存储的信息进行分类,文章放在一个表中,作者和相关信息放在一个表中,文章评论放在一个表中,读者信息放在一个表中,然后将这四个表连接起来进行查询;但是文档存储可以将文章存储为单个实体,这样就降低了用户对文章数据的认知负担。

在最简单的应用中,文档数据可以通过其ID进行读写操作,因此文档数据库可以看作键值数据库的升级版,允许之间嵌套键值,而且文档数据库比键值数据库的查询效率更高。

文档数据库更普遍的应用场合是根据文档的某个属性字段来获取整个文档。根据属性快速获取包含该属性的所有文档的操作是通过索引来实现的,即文档数据在写入时,系统会对某些文档属性建立索引,从而支持高效地反查操作。而维护索引是有代价的,因此,文档数据库适用于读多写少的场合。(www.xing528.com)

需要注意的是,对于单个文档的读写,文档数据库可以保证原子操作,但批量写入的事物原子性目前还不能由系统保证,需要开发者在应用程序中显式处理。

目前,文档数据库适用的情况主要包括:①用于后台具有大量读写操作的网站;②管理数据类型和变量属性,比如产品;③跟踪元数据的变量类型;④使用JSON数据结构的应用;⑤使用类似结构套结构等非规范化数据的应用程序。

优点:性能好,灵活性高,复杂性低,数据结构灵活。

缺点:查询性能不高,而且缺乏统一的查询语言

相关产品:MongoDB,Apache CouchDB。

免责声明:以上内容源自网络,版权归原作者所有,如有侵犯您的原创版权请告知,我们将尽快删除相关内容。

我要反馈