咱们为什么要运用NOSQL非联系数据库?dongfang - 千亿集团

咱们为什么要运用NOSQL非联系数据库?dongfang

2019-02-10 08:32:15 | 作者: 涵阳 | 标签: 数据库,联系,数据 | 浏览: 620

跟着互联网web2.0网站的鼓起,非联系型的数据库现在成了一个极端抢手的新领域,非联系数据库产品的开展十分敏捷。而传统的联系数据库在敷衍web2.0网站,特别是超大规模和高并发的SNS类型的web2.0纯动态网站现已显得无能为力,暴露了许多难以克服的问题,例如:

1、High performance - 对数据库高并发读写的需求

web2.0网站要根据用户个性化信息来实时生成动态页面和供给动态信息,所以基本上无法运用动态页面静态化技能,因而数据库并发负载十分高,往往要到达每秒上万次读写恳求。联系数据库敷衍上万次SQL查询还牵强顶得住,可是敷衍上万次SQL写数据恳求,硬盘IO就现已无法承受了。其实关于一般的BBS网站,往往也存在对高并发写恳求的需求。

2、Huge Storage - 对海量数据的高功率存储和拜访的需求

关于大型的SNS网站,每天用户发生海量的用户动态,以国外的Friendfeed为例,一个月就到达了2.5亿条用户动态,关于联系数据库来说,在一张2.5亿条记载的表里边进行SQL查询,功率是极端低下甚至不行忍耐的。再例如大型web网站的用户登录系统,例如腾讯,隆重,动辄数以亿计的帐号,联系数据库也很难敷衍。

3、High Scalability High Availability- 对数据库的高可扩展性和高可用性的需求

在根据web的架构傍边,数据库是最难进行横向扩展的,当一个使用系统的用户量和拜访量日积月累的时分,你的数据库却没有方法像web server和app server那样简略的经过增加更多的硬件和效劳节点来扩展功用和负载才能。关于许多需求供给24小时不间断效劳的网站来说,对数据库系统进行晋级和扩展是十分苦楚的工作,往往需求停机保护和数据搬迁,为什么数据库不能经过不断的增加效劳器节点来完成扩展呢?

在上面说到的“三高”需求面前,联系数据库遇到了难以克服的妨碍,而关于web2.0网站来说,联系数据库的许多首要特性却往往无用武之地,例如:

1、数据库业务共同性需求

许多web实时系统并不要求严厉的数据库业务,对读共同性的要求很低,有些场合对写共同性要求也不高。因而数据库业务管理成了数据库高负载下一个沉重的担负。

2、数据库的写实时性和读实时性需求

对联系数据库来说,刺进一条数据之后马上查询,是必定可以读出来这条数据的,可是关于许多web使用来说,并不要求这么高的实时性。

3、对杂乱的SQL查询,特别是多表相关查询的需求

任何大数据量的web系统,都十分忌讳多个大表的相关查询,以及杂乱的数据剖析类型的杂乱SQL报表查询,特别是SNS类型的网站,从需求以及产品设计视点,就避免了这种状况的发生。往往更多的仅仅单表的主键查询,以及单表的简略条件分页查询,SQL的功用被极大的弱化了。

因而,联系数据库在这些越来越多的使用场景下显得不那么适宜了,为了处理这类问题的非联系数据库应运而生。

NoSQL 对错联系型数据存储的广义界说。它打破了长久以来联系型数据库与ACID理论大一统的局势。NoSQL 数据存储不需求固定的表结构,一般也不存在衔接操作。在大数据存取上具有联系型数据库无法比拟的功用优势。该术语在 2009 年头得到了广泛认同。

当今的使用系统结构需求数据存储在横向伸缩性上可以满意需求。而 NoSQL 存储就是为了完成这个需求。Google 的BigTable与Amazon的Dynamo是十分成功的商业 NoSQL 完成。一些开源的 NoSQL 系统,如Facebook 的Cassandra, Apache 的HBase,也得到了广泛认同。从这些NoSQL项目的姓名上看不出什么相同之处:Hadoop、Voldemort、Dynomite,还有其它许多。

版权声明
本文来源于网络,版权归原作者所有,其内容与观点不代表千亿集团立场。转载文章仅为传播更有价值的信息,如采编人员采编有误或者版权原因,请与我们联系,我们核实后立即修改或删除。

猜您喜欢的文章

阅读排行

  • 1

    按要求写sql句子itjob

    句子,学员,课程
  • 2

    检查数据库的SQL快报

    检查,数据库,检查表
  • 3

    DB2 备份和康复huabian

    康复,备份,数据库
  • 4

    运用MySQL头条

    运用,问题,效劳
  • 5
  • 6

    DATA PUMPfenghuang

    简略,指令,数据
  • 7

    Oracle Dimension 下alibaba

    邮编,区域,月度
  • 8

    Oracle失望锁和达观锁ITeyecsdn

    数据,时分,数据库
  • 9

    start with 用法ITeyeitjob

    子句,末梢,树形
  • 10

    mysql 根本指令ITeye头条

    用户,权限,体系