`
daniel_tu
  • 浏览: 184424 次
  • 性别: Icon_minigender_1
  • 来自: 深圳
社区版块
存档分类
最新评论

NoSQL非关系数据库简介

 
阅读更多

在计算机科学中,非关系型数据库(NoSQL)是一个和之前的关系型数据库(RDBM)有很大不同的另一类数据结构化存储管理系统。非关系型数据库 通常没有固定的表结构,并且避免使用join操作。和关系型数据库相比,非关系型数据库特别适合以SNS为代表web 2.0应用,这些应用需要极高速的并发读写操作,而对数值一致性要求却不甚高。

关系型数据库的特点

关系型数据库最大特点就是事务的一致性 : 传统的关系型数据库读写操作都是事务的,具有ACID(原子性Atomicity、一致性Consistency、隔离性Isolation、持久性 Durability)的特点,C就是一致性(Consistency),这个特点是关系型数据库的灵魂(其他三个AID都是为其服务的),这个特性使得 关系型数据库可以用于几乎所有对一致性有要求的系统中,如典型的银行系统。

但是,在网页应用中,尤其是SNS应用中,一致性却不是显得 那么重要,用户A看到的内容和用户B看到同一用户C内容更新不一致是可以容忍的,或者说,两个人看到同一好友的数据更新的时间差那么几秒是可以容忍的,因 此,关系型数据库的最大特点在这里已经无用武之地,起码不是那么重要了。

相反的,关系型数据库为了维护一致性所付出的巨大代价就是其读 写性能比较差,而像微博,facebook这类SNS的应用,对并发读写能力要求极高,关系型数据库已经无法应付(在读方面,传统上为了克服关系型数据库 缺陷,提高性能,都是增加一级memcache来静态化网页,而在SNS中,变化太快,memcache已经无能为力),因此,必须用新的一种数据结构化 存储来来代替关系数据库。

关系数据库的另一个特点就是其具有固定的表结构,因此,其扩展性极差,而在SNS中,系统的升级,功能的增加,往往意味着数据结构巨大改动,这一点关系型数据库也难以应付,需要新的结构化数据存储。

于是,非关系数据库(NoSQL)应运而生,由于不可能用一种数据结构化存储方式应付所有的新的需求,因此,非关系型数据库严格上不是一种数据库,应该是一种数据结构化存储方法的集合。

必须强调的是,数据的持久存储,尤其是海量数据的持久存储,还是需要关系数据库这员老将。

非关系型数据库分类

由 于关系型数据库本身天然的多样性,以及出现的时间较短,因此,不像关系型数据库,有几种数据库能够一统江山,关系型数据库的非常多,并且大部分都是开源 的,这里列出一些:Redis,Tokyo Cabinet,Cassandra,Voldemort,MongoDB,Dynomite,HBase,CouchDB,Hypertable,Riak,Tin, Flare,Lightcloud,KiokuDB,Scalaris,Kai,ThruDB…

这些数据库中,其实实现大部分都比较简单,除了一些共性外,很大一部分都是针对某些特定的应用需求出现的,因此,对于该类应用,具有极高的性能。依据结构化方法以及应用场合的不同,主要分为以下几类:

  1. 面向高性能并发读写的Key-Value数据库 :Key-Value数据库的主要特点就是具有极高的并发读写性能,Redis,Tokyo Cabinet,Flare就是这类的代表。
  2. 面向海量数据访问的面向文档数据库(Document store) :这类数据库的特点是,可以在海量的数据中快速的查询数据。典型代表为MongoDB以及CouchDB。
  3. 面向可扩展性的分布式数据库(Object Store): 这类数据库想解决的问题就是传统数据库在可扩展性上的缺陷,这类数据库可以适应数据量的增加以及数据结构的变化,Google Appengine的Big Table就是这类的典型代表,并且,BigTable特别适用于Map Reduce 处理。

这里只对这几类数据库简要的介绍,需要详情可以看:http://en.wikipedia.org/wiki/NoSQL

有空的话,以后也扯扯各类的具体差别,另外,个人感觉RAM Database挺有前途的,果如此,memcache就几乎不用了。最后附上一张图:

database

分享到:
评论
1 楼 youyang 2011-10-19  
受教了,不得不顶。

相关推荐

    实验四:NoSQL和关系数据库的操作比较

    【实验四:NoSQL和关系数据库的操作比较】 本实验旨在对比分析四种不同的数据库管理系统:MySQL、HBase、Redis和MongoDB。这些数据库在处理大数据时各有特点,理解它们的概念及不同点是实验的关键。 1. **MySQL**...

    nosql 非关系数据库综述

    ### NoSQL非关系型数据库综述 #### 一、NoSQL产生背景 随着Web 2.0时代的到来,互联网的应用和服务迅速发展,这对数据管理和存储技术提出了新的挑战。传统的关系型数据库虽然在过去几十年中占据主导地位,但在面对...

    NoSQL非关系型数据库

    #### NoSQL与关系数据库的比较 NoSQL与关系型数据库的主要区别在于设计理念的不同。下面列出了一些主要的比较点: - **数据模型**:NoSQL支持多种数据模型,如键值对、文档、列族和图形等;而关系型数据库仅支持...

    数据存储实验4-NoSQL和关系数据库的操作比较.doc(实验报告)

    关系数据库和NoSQL数据库操作比较实验报告 实验目的:了解四种数据库(MySQL、HBase、Redis、MongoDB)的概念和不同点,熟悉使用四种数据库操作常用的Shell命令和Java API。 实验平台:Linux操作系统,Hadoop版本...

    10NoSQL非关系型数据库.zip

    NoSQL(Not Only SQL)非关系型数据库是近年来在大数据处理和分布式系统中广泛应用的数据存储技术。相较于传统的关系型数据库,NoSQL数据库更注重水平扩展和高性能读写,适合处理大规模数据并行计算和实时分析。 ...

    NoSQL数据库PPT.pptx

    二.NoSQL数据库的产生 关系数据库面临挑战 关系数据库面对超大规模和高并发的SNS类型的web2.0纯动态网站显得力不从心,暴露了很多难以克服的问题 A 大数据发展 大规模数据集合,多重数据带来了许多挑战,尤其是...

    Nosql非关系型数据库-NoSQL相关概念.pptx

    NoSQL,全称为Not Only SQL,它是一种非关系型数据库技术,主要针对大规模数据处理和多样化数据类型的应用场景。NoSQL数据库的出现是为了应对传统关系型数据库在处理大量非结构化和半结构化数据时面临的挑战,这些...

    NoSQL类型分布式数据库简介.pdf

    【NoSQL类型分布式数据库简介】 NoSQL(Not Only SQL)是一种非关系型的数据库系统,设计初衷是为了处理大规模数据和高并发访问需求。随着互联网和大数据时代的到来,传统的基于SQL的关系型数据库在处理海量数据时...

    NoSQL非关系型数据库技术和应用PPT课件.ppt

    NoSQL非关系型数据库技术和应用PPT课件.ppt

    大数据实验 实验四:NoSQL 和关系数据库的操作比较

    大数据实验 实验四:NoSQL 和关系数据库的操作比较

    nosql数据库简介.pptx

    NoSQL数据库,全称为"Not Only SQL",是一种非关系型的数据库系统,旨在解决传统关系型数据库在处理大规模数据和高并发场景下遇到的问题。在90年代,由于网站访问量较小,静态网页为主,单一数据库可以满足需求。但...

    Nosql非关系型数据库-常见的NoSQL分类.pptx

    NoSQL,全称为Not Only SQL,是非关系型数据库的简称,它是为了应对大数据时代的数据处理需求而出现的。相比于传统的关系型数据库,NoSQL数据库在灵活性、可扩展性和高性能方面有着显著的优势。以下是对四种常见...

    Nosql非关系型数据库-安装可视化工具Robo 3T连接MongoDB数据库.pptx

    非关系型数据库(NoSQL,Not Only SQL)是一种不同于传统的关系型数据库的数据存储方式,它在互联网大数据时代因其高扩展性、灵活性和高性能而受到广泛关注。NoSQL数据库的设计理念是为了解决大规模数据分布式存储的...

    NoSQL小型非关系数据库开发.zip

    在现代的互联网应用中,非关系型数据库(NoSQL)因其灵活性、可扩展性和高性能而逐渐受到关注。MongoDB作为一款流行的NoSQL数据库,尤其在处理大规模数据和高并发场景时展现出强大的优势。本篇文章将深入探讨MongoDB...

    NOsql数据库论文

    mongodb数据库是当前最流行的非关系型数据库,已经被广泛应用于实际项目中。 4. 分布式数据库的优点 分布式数据库的优点包括降低了数据传送代价,提高了系统的可靠性,便于系统的扩充等。 5. 分布式数据库的发展...

    非关系数据库NoSql介绍

    非关系数据库介绍,对于不了解非关系数据库NoSql的新手来说可以值得一看

    NoSQL数据库原理课件-侯宾.zip

    1. NoSQL的含义:NoSQL(Not Only SQL)并不是指完全不使用SQL,而是指非关系型、非结构化的数据库系统,它支持大规模数据存储和高并发访问。 2. NoSQL的四大类型:键值存储、列族存储、文档数据库和图形数据库。...

    大数据技术原理与应用-实验4NoSQL和关系数据库的操作比较(林子雨)

    ### 大数据技术原理与应用-实验4NoSQL和关系数据库的操作比较 #### 一、NoSQL的概念理解 NoSQL,意为“Not Only SQL”,指的是那些非关系型数据库管理系统的设计理念和技术。这类数据库通常不遵循传统的关系模型,...

    山东大学非关系数据库实验报告

    非关系型数据库(NoSQL,Not Only SQL)是近年来在大数据处理、分布式系统等领域广泛应用的一种数据库类型,它与传统的关系型数据库(RDBMS)相比,具有更高的可扩展性、灵活性和性能。本实验报告主要关注两个知名的...

    关系型数据库与NoSQL数据库_张华强.pdf

    * 海量数据的高效率存储和访问:关系数据库应付上万次 SQL 查询还勉强顶得住,但是应付上万次 SQL 写数据请求,硬盘 IO 就已经无法承受了。 NoSQL数据库是指非关系型数据库,包括键值存储数据库、文档数据库、图...

Global site tag (gtag.js) - Google Analytics