`
aric_chen
  • 浏览: 8994 次
文章分类
社区版块
存档分类
最新评论

NoSQL

阅读更多

NoSQL全名 Not Only SQL,而非No SQL


NoSQL是伴随着WEB2.0的兴起而迅速发展,它的出现就是为了解决大规模的非结构化数据的存储,所以目前市面上的NoSQL都天生支持【集群】和【数据分片】


这里的天生支持是指使用内部机制实现,而非类似MySql的集群和分片,需要使用插件MySQL Proxy来实现,所以在配置和使用上更加灵活以及稳定。


NoSQL的分类

1. 键值 Key/value (Redis,Membase)


键值数据库为了达到读取的最大效率,所有的数据都是放在内存的,目键值数据库多用于分布式缓存的搭建。

这里请注意:键值数据库中的value不仅仅可以存储基本数据类型,也可以存储Collection,二进制文件等。


2. 文档数据库 (Mongodb)

Mongodb可算是文档数据库中的佼佼者,许多不了解的同学认为NoSQL都很粗糙,其实不然。Mongodb支持对文档的内部属性进行索引,筛选,也支持分页,全文搜索,基本上关系数据库支持的Mongodb都支持,除了关联查询。


Mongodb支持地理位置的记录和筛选,即记录位置数据,可通过位置信息搜索附近的人.....类似微信的摇一摇搜索


3. 列数据库(HBase)

列数据库和传统的关系数据库存储结构很接近,基于行和列可以定位单元格数据。相对于传统数据库的单元格数据,HBase是划分列组,并且每个单元格数据支持历史版本。

不仅仅如此,基于HBase还有Hadoop,MapReduce,Spark等一系列的成熟的大数据解决方案!


4. 图数据库 (Neo4J)

图数据库其实是记录“关系数据”的。类似社交软件的关系图,例如用户A 和 B 是[朋友][亲人]关系,B和C是[恋人][同性]关系,通过Tag方式的关系,图数据库可以绘制出一张关系网,并且可以通过条件进行筛选。



NoSQL和关系数据库(RDBMS)的关系

很多人认为NoSQL和关系数据库是此消彼长的关系,这是错误的概念。关系数据库在存储结构化数据和事务方面是不可替代的。而且关系数据库历史悠久,在很多行业都是稳定可靠的解决方案。


NoSQL处在一个爆发期,稳定性上远远不及RDBMS,而且由于缺乏较好的事务支持,很多行业(比如财务)并不能适用。


NoSQL完全摒弃了数据之间的关系,不支持关联查询,这在一些企业应用中,也是不能忍受的。


目前NoSQL的地位

国内大多数的互联网公司,也只是小范围的试用NoSQL,或者使用NoSQL作为辅助,并没有成为主流。比如,淘宝使用MySQL集群来实现其主业务,只是搭配Memcache作为分布式缓存。


虽然NoSQL一定会成为互联网的主流,但是一定会有一个较长的过渡期。


企业应用和NoSQL

传统的企业应用都有规范的数据结构,更要求有完善的事务支持,而且数据量都不会太大,所以使用NoSQL反而得不偿失。


我上面特别强调“传统的企业应用”,是因为针对企业的数据都不会太大,对性能要求是最低的。但是如果你开发类似于“物联网”这类的企业平台,使用NoSQL是势在必行。



即使你的定位不是物联网级别的平台,也可以搭配键值数据库作为缓存服务器使用,NoSQL天生的集群特性,一旦搭建起来,就不单单是“缓存服务器”了,而是“分布式缓存”!!让你的平台分分钟变得“高大上”!













版权声明:本文为博主原创文章,未经博主允许不得转载。

分享到:
评论

相关推荐

    《NoSQL数据库原理与应用案例教程》PPT课件(共9单元)第4章 HBase原理实现.pdf

    《NoSQL数据库原理与应用案例教程》PPT课件(共9单元)第4章 HBase原理实现.pdf《NoSQL数据库原理与应用案例教程》PPT课件(共9单元)第4章 HBase原理实现.pdf《NoSQL数据库原理与应用案例教程》PPT课件(共9单元)第4章 ...

    Making Sense of NoSQL 【解读NoSQL 英文版】

    本书从NoSQL的相关理论开始,深入浅出地探讨了NoSQL最核心的架构模式、解决方案和一些高级主题,内容循序渐进,从理论回归于实践。 全书分为4个部分。第一部分介绍NoSQL的相关理论,如CAP理论、BASE理论、一致性...

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

    A.4实验四:NoSQL和关系数据库的操作比较 本实验对应第6章的内容。 A.4.1实验目的 (1)理解4种数据库(MySQL、HBase,Redis和 MongoDB)的概念及不同点。(2)熟练使用4种数据库操作常用的 Shell命令。 (3)熟悉4种...

    nosqlbooster4.5.4 和注册机

    nosqlbooster4mongo-4.5.4 NoSQL Manager for MongoDB Pro

    NoSQL数据库技术实战

    本书由浅入深,全面系统地介绍了NoSQL系统。本书既对NoSQL系统的理论进行了深入浅出的分析,又介绍了每一种NoSQL数据库在业界广泛应用的一个具体系统,理论与实战并重。 本书共分5篇,12章。涵盖的内容有:NoSQL与...

    NoSQL数据库PPT.pptx

    NoSQL数据库 14信管一班2组23殷月园 NoSQL数据库PPT全文共20页,当前为第1页。 内容大纲 定义 产生 共同特征 分类 适用场景 发展现状 7 挑战 NoSQL数据库PPT全文共20页,当前为第2页。 一.什么是NoSQL数据库? NoSQL...

    NoSQL(中文版)

    NoSQL(中文版)

    NoSQL_.pdf

    日前国内没有一套比较完整的NoSQL数据库资料,有很多先驱整理发表了很多,但不是很系统。不材 尝试着将各家的资料整合一下,并书写了一些自己的见解。 本书写了一些目前的NoSql的一些主要技术,算法和思想。同时列举...

    NoSQLBooster for MongoDB

    NoSQLBooster 管理MongoDB的工具。这个工具还有个曾用名--mongobooster

    NoSQL For Dummies(Wiley,2015)

    This easy to read guide to NoSQL databases provides the type of no-nonsense overview and analysis that you need to learn, including what NoSQL is and which database is right for you. Featuring ...

    nosql研发之路

    nosql的发展历史到现在的特殊领域的应用

    论文研究 - 键值NoSQL数据库的冲浪并发事务处理模型

    随着越来越多的与大数据相关的应用程序系统的开发,NoSQL(不仅SQL)数据库系统变得越来越流行。 为了为某些NoSQL数据库系统添加事务功能,许多学者尝试了不同的技术。 不幸的是,在现有文献中缺乏对Redis交易的研究...

    大数据与NOSql概述.pptx

    主要内容 Nosql概述 什么是NoSQL NoSQL的优势和不足 NoSQL的CAP理论实现 NoSQL数据模型及分类 大数据与NOSql概述全文共23页,当前为第3页。 大数据的定义 大数据(big data),指无法在一定时间范围内用常规软件...

    NoSQL介绍PPT

    NoSQL是什么? 为什么使用NoSQL? 为什么使用NoSQL? NoSQL的分类 NoSQL有什么特点? NoSQL有什么特点? NoSQL是否完美? NoSQL的一些概念——CAP NoSQL的一些概念——ACID NoSQL的一些概念——BASE NoSQL的一些概念...

    Oracle NoSQL数据库:实时大数据管理

    《Oracle NoSQL数据库:实时大数据管理》讲述如何全面运用Oracle NoSQL数据库这个经济实惠的解决方案来存储、检索和更新海量的非结构化数据。本书在紧贴实用的示例的引导下,介绍Oracle NoSQL数据库的安装、配置、...

    大数据-大数据挑战与NoSQL数据库技术

    《大数据挑战与NoSQL数据库技术》共分为三部分。理论篇重点介绍大数据时代下数据处理的基本理论及相关处理技术,并引入NoSQL数据库;系统篇主要介绍了各种类型NoSQL数据库的基本知识;应用篇对国内外几家知名公司在...

    NoSQLBooster for MongoDB v4.7.5-破解版.rar

    破解步骤: 1、hosts添加127.0.0.1 nosqlbooster.com、127.0.0.1 www.nosqlbooster.com 2、覆盖resources文件 3、输入License

    nosqlbooster 试用清理

    1.原本程序请从https://nosqlbooster.com/downloads下载; 2.此工具仅针对原始下载程序直接解压试用,非安装在默认路径下的,如安装在默认路径下,则会清理安装信息,请注意; 3.对于4.X及以下版本,可每30天清理...

    nosqlbooster4mongo-6.1.3.exe

    nosqlbooster4mongo-6.1.3.exe

Global site tag (gtag.js) - Google Analytics