您当前的位置: 首页 > 数据库教程 > Oracle教程 > NoSQL常见存储方式

NoSQL常见存储方式

作者:不详 来源:网络 发布时间: 2014-08-25 22:48 点击:
一、 键值存储 它的数据是以键值的形式存储的,虽然它的速度非常快,但基本上只能通过键的完全一致查询获取数据,根据数据的保存方式可以分为临时性、永久性和两者兼具三种。 (1)临时性(memcached) 所谓临时性就是数据有可能丢失,memcached把所有数据都保存在内存中,

NoSQL常见存储方式

  一、 键值存储

  它的数据是以键值的形式存储的,虽然它的速度非常快,但基本上只能通过键的完全一致查询获取数据,根据数据的保存方式可以分为临时性、永久性和两者兼具三种。

  (1)临时性(memcached)

  所谓临时性就是数据有可能丢失,memcached把所有数据都保存在内存中,这样保存和读取的速度非常快,但是当memcached停止时,数据就不存在了。由于数据保存在内存中,所以无法操作超出内存容量的数据,旧数据会丢失。

  总结来说:

  1、在内存中保存数据

  2、可以进行非常快速的保存和读取处理

  3、数据有可能丢失

  (2)永久性(ROMA、Tokyo Tyrant、Flare)

  所谓永久性就是数据不会丢失,这里的键值存储是把数据保存在硬盘上,与临时性比起来,由于必然要发生对硬盘的IO操作,所以性能上还是有差距的,但数据不会丢失是它最大的优势。

  总结来说:

  1、在硬盘上保存数据

  2、可以进行非常快速的保存和读取处理(但无法与memcached相比)

  3、数据不会丢失

  (3)两者兼备(Redis)

  Redis有些特殊,临时性和永久性兼具。Redis首先把数据保存在内存中,在满足特定条件(默认是 15分钟一次以上,5分钟内10个以上,1分钟内10000个以上的键发生变更)的时候将数据写入到硬盘中,这样既确保了内存中数据的处理速度,又可以通过写入硬盘来保证数据的永久性,这种类型的数据库特别适合处理数组类型的数据。

  总结来说:

  同时在内存和硬盘上保存数据

  1、可以进行非常快速的保存和读取处理

  2、保存在硬盘上的数据不会消失(可以恢复)

  3、适合于处理数组类型的数据

  二、面向文档的数据库(MongoDB、CouchDB)

  (1)不定义表结构

  即使不定义表结构,也可以像定义了表结构一样使用,还省去了变更表结构的麻烦。

  (2)可以使用复杂的查询条件

  跟键值存储不同的是,面向文档的数据库可以通过复杂的查询条件来获取数据,虽然不具备事务处理和Join这些关系型数据库所具有的处理能力,但初次以外的其他处理基本上都能实现。

  三、 面向列的数据库(Cassandra、HBase、HyperTabl)

  由于近年来数据量出现爆发性增长,这种类型的NoSQL数据库尤其引入注目。

  普通的关系型数据库都是以行为单位来存储数据的,擅长以行为单位的读入处理,比如特定条件数据的获龋因此,关系型数据库也被成为面向行的数据库。相反,面向列的数据库是以列为单位来存储数据的,擅长以列为单位读入数据。
分享到:
本文"NoSQL常见存储方式"由远航站长收集整理而来,仅供大家学习与参考使用。更多网站制作教程尽在远航站长站。
顶一下
(0)
0%
踩一下
(0)
0%
[点击 次] [返回上一页] [打印]
发表评论
请自觉遵守互联网相关的政策法规,严禁发布色情、暴力、反动的言论。
评价:
表情:
用户名: 密码: 验证码:
关于本站 - 联系我们 - 广告合作 - 网站声明 - 友情连接- 网站地图 - 站点地图 - 返回顶部
Copyright © 2007-2013 www.yhzhan.com(远航站长). All Rights Reserved .
远航站长:为中小站长提供最佳的学习与交流平台,提供网页制作与网站编程等各类网站制作教程.
官方QQ:445490277 网站群:26680406 网站备案号:豫ICP备07500620号-4