关闭

NoSQL简单介绍

标签: nosql大量数据写入数据分散
756人阅读 评论(0) 收藏 举报
分类:

近几年NoSQL,这个词极受关注,而且很多最初看到这个词的人很可能会误解为“No SQL”的缩写,这其实是错误的,实际上,它是“Not only SQL”的缩写。

引用本人刚刚看的一本书上的解释,它的意义是“适用关系型数据库的时候就使用关系型数据库,不适用的时候也没有必要非使用关系型数据库不可,可以考虑使用更加合适的数据存储”,可以理解为:为了弥补关系型数据的不足,NoSQL数据库应运而生。

为了更好的理解NoSQL,下面先介绍一下关系型数据库:

在关系型数据库还未出现之前,存在另外两种类型的数据库:

① 阶层型数据库,顾名思义,它是把数据通过阶层结构的方式表现出来的,这样虽然可以提高查询效率,但是不理解数据库结构就无法进行高效的查询,而且结构更改的时候维护量大。

② 网络型数据库,是在阶层型数据库的基础上发展而来的,它使子记录可以同时拥有多个父记录,从而解决了数据冗余的问题,但是结构间复杂的网络关系使得维护起来更加复杂。

为了弥补上述两种数据库的不足, E.F.Codd 于1970年发表了一篇题为“A Ralation Model of Data for Large Shared Data banks”,掀起了关系型数据库的热潮,现如今关系型数据库已经发展的相当成熟,常见的有Oracle,MSSQLServer,MySQL..

关系型数据库的优势:

① 保持数据一致性;

② 由于以标准化为前提,数据更新的开销很小;

③ 可以进行多表间的复杂查询(join);

④  技术成熟;

关系型数据库的不足:

① 大量数据的写入处理

② 为有数据更新的表做索引或表结构变更

③ 对于不固定字段的处理

④ 对简单查询(没有复杂条件的查询)快速返回结果,需解析

 

对于NoSQL数据库,因为它本身就不支持join,所以不必向关系型数据库一样把需要join的多个表保存在一个服务器上。相反,NoSQL的各个数据都是独立设计的,很容易分散到多个服务器,从而可以减少每个服务器的数据量,即使进行大量数据写入,处理起来也更加高效。

1
0

查看评论
* 以上用户言论只代表其个人观点,不代表CSDN网站的观点或立场
    个人资料
    • 访问:25525次
    • 积分:595
    • 等级:
    • 排名:千里之外
    • 原创:34篇
    • 转载:2篇
    • 译文:0篇
    • 评论:1条
    文章分类
    最新评论