大数据技术原理与应用【第五讲】NoSQL数据库:5.3 NoSQL的四大类型

 

 

5.3 NoSQL的四大类型

 

概念
nosql数据库

分为四类数据库:键值,列族,文档,图
(代表)

举例:


键值数据库:
用的多:redis
云数据库:SimpleDB
应用:涉及频繁读写,如:会话,配置文件,参数,购物车等存储配置和用户数据信息等移动应用
优点:扩展性好,灵活,大量写操作性能高
缺点:无法存储结构化信息;条件查询效率低
不适用:键值数据没有用值来查找;不反映关系;不支持事务

理想的缓冲层解决方案,用的比较多Redis(比Mecmcached性能高),提高响应web速度

列族数据库:
HBase:管家
Cssandra:p2p
应用:分布式数据存储与管理;数量分布于多个数据中心的应用程序;拥有动态字段的应用程序
优点:
查找速度快,
缺点:功能少不支持强事务一致性
不适用:    

 

文档数据库和键值数据库的区别?
文档数据库:JSON数据格式
可以完整包含在一个文档里,锁定一个文档即可,比关系数据库有更好的并发性。

MongoDB,
应用:存储、索引并管理面向文档的数据或者类似的半结构化数据。
优点:
不适用:不支持文档间的事物
云数据库:百度云


图数据库:
应用:Neo4j
数据模型:图结构
不是只存放图,是图结构
典型应用:
不适应:
只适用以上情况

redis:模型相对简单,数据库伸缩性好

5.4 NoSQL的三大基石

 

简答
cap,Base,

cap理论(帽子理论):
consistency:一致性
availability:可用性
partition tolerance:分区容忍性

牺牲一致性换取可用性的实例:

面对Cap问题有以下选择:
CA(传统数据库:mysql)
CP
AP

 

 课6:

BASE:Nosql基石之一
ACID是关系数据库重要特性

基本可用(Basically Available):

软状态(Soft-State):
数据在一定时间上滞后

最终一致性(Eventual consistency):弱一致性的特例
  可分为:
因果一致性
读己之所写一致性:
单调读一致性:
会话一致性:
单调写一致性:

实现各种类型的一致性:
NWR
N
W
R

W+R大于N:强一致性
 最小设定:

W+R小于等于N:弱一致性
N2,W1,R1

一般保证强一致性:N大于等于3

HDFS:强一致性

 

5.5 从NoSQL到NewSQL数据库

   课7:5.5

OldSql:一种架构支持多种应用场景
NewSql:

应用场景:
分析:NewSql
事务:OldSql
互联网

NewSql同时具备两者优点:
水平可扩展性,强一致性,事务一致性,支持查询,支持海量数据存储

产品分类图:

 

5.6 文档数据库MongoDB

 

 课8: 5.6 文档数据库MongoDB

文档数据库介于关系数据库和NoSql之间
热门

MongoDB简介:
C++写的,开源系统
在高负载的,

文档类型BSON,结构类似JSON

特点:
操作比较简单容易
可以针对任何属性的索引实现更快的排序
水平可扩展性
丰富的查询表达式,
替换已完成文档指定的字段
批量处理,聚合

术语:


每一行记录都是一个文档
文档集合就是表

实例:
关系数据库需要多表连接查询
文档数据库散布在多个表的数据用一个文档即可锁定

数据库:
文档是一个键值

服务端:
客户端

集合:
集合就是文档组,类似于RDMS中表格
没有固定结构,可以对集合插入不同格式和类型的数据
数据类型很多

安装:



shell访问:
连接服务器
登陆
创建数据库:(不用创建)

创建集合(编程时需要单独创建)
插入文档

JAVA访问:



默认端口号:27017

插入文档      

相关文章

文章浏览阅读752次。关系型数据库关系型数据库是一个结构化的...
文章浏览阅读687次,点赞2次,收藏5次。商城系统中,抢购和秒...
文章浏览阅读1.4k次。MongoTemplate开发spring-data-mongodb...
文章浏览阅读887次,点赞10次,收藏19次。1.背景介绍1. 背景...
文章浏览阅读819次。MongoDB连接失败记录_edentialmechanisn...
文章浏览阅读470次。mongodb抽取数据到ES,使用ELK内部插件无...