第五章 大数据平台与技术 第13讲 NoSQL数据库

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数据库的更多相关文章
- 互联网大规模数据分析技术(自主模式)第五章 大数据平台与技术 第10讲 大数据处理平台Hadoop
大规模的数据计算对于数据挖掘领域当中的作用.两大主要挑战:第一.如何实现分布式的计算 第二.分布式并行编程.Hadoop平台以及Map-reduce的编程方式解决了上面的几个问题.这是谷歌的一个最基本 ...
- 第五章 大数据平台与技术 第12讲 大数据处理平台Spark
Spark支持多种的编程语言 对比scala和Java编程上节课的计数程序.相比之下,scala简洁明了. Hadoop的IO开销大导致了延迟高,也就是说任务和任务之间涉及到I/O操作.前一个任务完成 ...
- 第五章 大数据平台与技术第11讲 MapReduce编程
在大规模的数据当中,需要分发任务,需要进行分布式的并行编程.Hadoop这样一种开源的大数据分析平台. Map阶段 Reduce阶段:相同的键把它聚集到一起之后,然后通过Reduce方式把相同的键聚集 ...
- 品友互动大数据平台的技术演化 https://www.sohu.com/a/191202836_99982360
品友互动大数据平台的技术演化
- 大数据平台的技术演化之路 诸葛io平台设计实例
如今,数据分析能力正逐渐成为企业发展的标配,企业通过数据分析的过程将数据中的信息提取出来,进行处理.识别.加工.呈现,最后成为指导企业业务发展的知识和智慧.而处理.识别.加工.呈现的过程从本质上来讲, ...
- 大数据笔记(十三)——常见的NoSQL数据库之HBase数据库(A)
一.HBase的表结构和体系结构 1.HBase的表结构 把所有的数据存到一张表中.通过牺牲表空间,换取良好的性能. HBase的列以列族的形式存在.每一个列族包括若干列 2.HBase的体系结构 主 ...
- Spark大型项目实战:电商用户行为分析大数据平台
本项目主要讲解了一套应用于互联网电商企业中,使用Java.Spark等技术开发的大数据统计分析平台,对电商网站的各种用户行为(访问行为.页面跳转行为.购物行为.广告点击行为等)进行复杂的分析.用统计分 ...
- 案例分析:大数据平台技术方案及案例(ppt)
大数据平台是为了计算,现今社会所产生的越来越大的数据量,以存储.运算.展现作为目的的平台.大数据技术是指从各种各样类型的数据中,快速获得有价值信息的能力.适用于大数据的技术,包括大规模并行处理(MPP ...
- AI加持的阿里云飞天大数据平台技术揭秘
摘要:2019云栖大会大数据&AI专场,阿里云智能计算平台事业部研究员关涛.资深专家徐晟来为我们分享<AI加持的阿里云飞天大数据平台技术揭秘>.本文主要讲了三大部分,一是原创技术优 ...
随机推荐
- Oracle数据库安装图文操作步骤1
Oracle数据库安装图文操作步骤 一.Oracle 下载 注意Oracle分成两个文件,下载完后,将两个文件解压到同一目录下即可. 路径名称中,最好不要出现中文,也不要出现空格等不规则字符. 官 ...
- idea创建文件类型失败(xml之类的失效
https://blog.csdn.net/sutongxuevip/article/details/72832754
- ngnix+uwsgi+django 部署mezzanine
以下是我用ngnix+uwsgi+django 部署mezzanine全过程,其中ngnix+uwsgi这块是看了虫师大神的博客(http://www.cnblogs.com/fnng/p/52686 ...
- A Complete Web Video Solution
A Complete Web Video Solution FLASH . HTML5 . JAVASCRIPT API Support Embed videos from youtube, Vime ...
- Tomcat 8.5 架构分析
官方文档:Apache Tomcat 8 Architecture 以下分析的是 Version 8.5. Tomcat 组件关系图 根据 Architecture Overview 绘制: Serv ...
- ApacheOFBiz的相关介绍以及使用总结(二)
OFBiz的实体配置 实体定义文件一般存放位置是在对应模块的entity文件夹下面,在该模块对应的ofbiz-component.xml配置文件中加入一行,用来声明实体定义文件路径: < ...
- nginx web服务器应用
Nginx介绍 Nginx是一个开源的,支持高性能,高并发的www服务和代理服务软件,因具有高并发(特别是静态资源),占用系统资源少等特性,且功能丰富而逐渐流行起来.功能应用上,Nginx不但是一个优 ...
- Servlet文件上传和下载的复习
上传 使用Servlet完成上传和下载相较于使用Struts框架有点麻烦,毕竟更偏底层了 项目中主要使用的jar包: commons-io-2.2.jar commons-fileupload-1. ...
- 使用product_user_profile来实现用户权限的设定
我们有时候在以普通用户登录SQL*Plus的时候,会碰到下面的错误提示: Error accessing PRODUCT_USER_PROFILE Warning: Product user prof ...
- 在linux下使用debugfs恢复rm删除的文件
原理主要是删除的文件并没有实际上从硬盘上摸去,只是inode索引删除了相关的信息,因此只要找到刚删除文件的block上,就可以恢复已经删除的文件. 以下方法在ext3的文件系统上测试通过,ext2的没 ...