NoSQL不是不用SQL,是Not only SQL,不仅仅是结构化的查询。

NoSQL兴起的原因

在Web2.0时代新浪一分钟可以发送两万条微博,苹果可以下载4.7万次应用。

数据的高并发性,同时有90万次的查询向百度的服务器提出了搜索要求。还有高扩展性,Web应用千变万化,可能对字段的需求在不断地增加。传统的数据库无法对字段进行简单的扩展。

关系型数据库作为一个统一的数据模型,既被用于数据分析,也被用于在线业务。数据分析强调的是高吞吐量,我要产生大量的计算结果。而在线业务需要低延时,意思是需要快速告诉用户答案用户等不了多长时间。不同的数据要求导致我们需要采用不同的数据管理模式。采用MongDB这样的非关系型数据库解决低延时的问题,采用Hadoop这样的平台和它的文件系统解决数据分析的问题。

关系数据的关键属性与2.0相比,web2.0网站通常不要求严格的数据库事务。而且Web2.0不要求严格的读写实时性。同时Web2.0不包含大量复杂的结构化查询。只需要把关键字放进搜索框里面就可以得到查询结果,不需要去指定是用户名呢,还是作者呢,还是时间呢?去掉了复杂的这样一种结构化的查询。

几届图灵奖的获得者都是关系数据库的领头人。

在Web2.0时代,实际上我们很少有复杂的关系查询。

采用关系数据库的时候都知道,当你的事务被中断的时候你要被滚回的,回复到事务执行之前的状态。而对于NoSQL数据库,我们没有这样的要求,只要最终一致就行了,也就是说经过某一个时间间隔之后你能够达到一致,并不要求实时性的一致。对于一致性的条件,非关系数据库是进行了放松的,同时也就增加了它的灵活性。

关系数据库已经标准化了,已经有了结构化的查询语言。

关系数据库的优劣性

混合架构

NoSQL的四大类型:键值数据库和列族数据库

文档数据库和图形数据库

相关产品

图形数据库

文档数据库

列族数据库

键值对数据库

列族数据库

文档数据库

谷歌的排序算法就是一个典型的图计算。

小结

第五章 大数据平台与技术 第13讲 NoSQL数据库的更多相关文章

  1. 互联网大规模数据分析技术(自主模式)第五章 大数据平台与技术 第10讲 大数据处理平台Hadoop

    大规模的数据计算对于数据挖掘领域当中的作用.两大主要挑战:第一.如何实现分布式的计算 第二.分布式并行编程.Hadoop平台以及Map-reduce的编程方式解决了上面的几个问题.这是谷歌的一个最基本 ...

  2. 第五章 大数据平台与技术 第12讲 大数据处理平台Spark

    Spark支持多种的编程语言 对比scala和Java编程上节课的计数程序.相比之下,scala简洁明了. Hadoop的IO开销大导致了延迟高,也就是说任务和任务之间涉及到I/O操作.前一个任务完成 ...

  3. 第五章 大数据平台与技术第11讲 MapReduce编程

    在大规模的数据当中,需要分发任务,需要进行分布式的并行编程.Hadoop这样一种开源的大数据分析平台. Map阶段 Reduce阶段:相同的键把它聚集到一起之后,然后通过Reduce方式把相同的键聚集 ...

  4. 品友互动大数据平台的技术演化 https://www.sohu.com/a/191202836_99982360

    品友互动大数据平台的技术演化

  5. 大数据平台的技术演化之路 诸葛io平台设计实例

    如今,数据分析能力正逐渐成为企业发展的标配,企业通过数据分析的过程将数据中的信息提取出来,进行处理.识别.加工.呈现,最后成为指导企业业务发展的知识和智慧.而处理.识别.加工.呈现的过程从本质上来讲, ...

  6. 大数据笔记(十三)——常见的NoSQL数据库之HBase数据库(A)

    一.HBase的表结构和体系结构 1.HBase的表结构 把所有的数据存到一张表中.通过牺牲表空间,换取良好的性能. HBase的列以列族的形式存在.每一个列族包括若干列 2.HBase的体系结构 主 ...

  7. Spark大型项目实战:电商用户行为分析大数据平台

    本项目主要讲解了一套应用于互联网电商企业中,使用Java.Spark等技术开发的大数据统计分析平台,对电商网站的各种用户行为(访问行为.页面跳转行为.购物行为.广告点击行为等)进行复杂的分析.用统计分 ...

  8. 案例分析:大数据平台技术方案及案例(ppt)

    大数据平台是为了计算,现今社会所产生的越来越大的数据量,以存储.运算.展现作为目的的平台.大数据技术是指从各种各样类型的数据中,快速获得有价值信息的能力.适用于大数据的技术,包括大规模并行处理(MPP ...

  9. AI加持的阿里云飞天大数据平台技术揭秘

    摘要:2019云栖大会大数据&AI专场,阿里云智能计算平台事业部研究员关涛.资深专家徐晟来为我们分享<AI加持的阿里云飞天大数据平台技术揭秘>.本文主要讲了三大部分,一是原创技术优 ...

随机推荐

  1. 使用ILMerge将源DLL合并到目标EXE(.NET4.6.2)

    本文为原创文章,如转载,请在网页明显位置标明原文名称.作者及网址,谢谢! 本文主要是使用微软的ILMerge工具将源DLL合并到目标EXE,因此,需要下载以下工具: https://www.micro ...

  2. Oracle11g的服务

    成功安装Oracle 11g数据库后,你会发现自己电脑运行速度会变慢,配置较低的电脑甚至出现非常卡的状况,通过禁止非必须开启的Oracle服务可以提升电脑的运行速度.那么,具体该怎么做呢.按照win7 ...

  3. bzoj 1101 [POI2007]Zap——反演

    题目:https://www.lydsy.com/JudgeOnline/problem.php?id=1101 #include<cstdio> #include<cstring& ...

  4. Ubuntu sudo: add-apt-repository: command not found

    安装缺少的指令即可 $ sudo apt-get install software-properties-common python-software-properties

  5. error: device not found

    C:\Users\Administrator>adb shell error: device not found    出现上面情况,首先检查设备管理器中,安卓的驱动是否安装OK?   如果驱动 ...

  6. 题目1413:神秘元素 ——lis的元素是否唯一

    求序列的最长子序列中不可分割元素的数目.不可分割元素,肯定属于某一个最长子序列,首先做的就是把属于最长子序列的数提取出来,减小查找范围.怎么提取?可以用LIS(最长递增子序列)和LDS(最长递减子序列 ...

  7. Spring链接汇总

    Spring Boot专题 基础入门内容 SpringBoot快速入门 Why Spring Boot 使用Intellij中的Spring Initializr来快速构建Spring Boot/Cl ...

  8. ehcache介绍

    EHCache是来自sourceforge(http://ehcache.sourceforge.net/) 的开源项目,也是纯Java实现的简单.快速的Cache组件.EHCache支持内存和磁盘的 ...

  9. 非常漂亮js动态球型云标签特效代码

    <%@ page contentType="text/html;charset=UTF-8" language="java" import="j ...

  10. Mybatis动态构建Sql(无实体类)

    MyBatis的动态SQL是基于OGNL表达式的,它可以帮助我们方便的在SQL语句中实现某些逻辑. 例如,sql语句where条件中,需要一些安全判断,例如按某一条件查询时如果传入的参数是空,此时查询 ...