20200404 NoSQL笔记(一)

第一章 NoSQL与大数据简介
一、 大数据的定义-4V特性

  1. Volume 数据量大:海量互联网数据浏览量
  2. Velocity 实时性强:高速的数据产生、处理、分析能力
  3. Variety 数据种类多:图片、视频、文档等类型数据处理
  4. Value 蕴含价值高:商品销售、广告投放、电影推荐等

二、 SQL数据库要点回顾

  1. SQL=Structured Query Language结构性查询语句
    SQL数据库是一种数据库语言
  2. 关系型数据库定义
    关系型数据库是指以行和列二维表格形式存储数据的数据库
  3. 关系型数据库优缺点
  4. 优点:
    a) 保持数据的一致性
    b) 由于以标准化为前提,数据更新的开销很小
    c) 可以进行JOIN等复杂查询
    d) 存在很多实际成果和专业技术信息
  5. 缺点:
    a) 表格包含行和列,占用较大空间,例如Excel表格
    b) 基于单机集中管理,数据存储量和横向扩展受到限制
    c) 难以对简单查询快速返回结果

三、 NoSQL数据库

  1. 定义:记录主体符合非关系型、分布式、开放源码和具有横向扩展能力的数据库
  2. 非关系型-键值式存储:数据存储、管理和读取具有灵活性
  3. 分布式是NoSQL数据库的核心
  4. 纵向扩展:
    从物理高配置扩充和基于固态硬盘、内存处理方面,解决数据处理速度问题
  5. 横向扩展
    采用多服务器,通过集群(Cluster)处理数据,主要解决数据存储量问题

四、 NoSQL数据库类型

  1. 键值存储数据库Key Value Database
    轻量级:存储数据结构特别简单,数据库系统本身规模也比较小
    以内存为主的运行处理,设计目的是为了更快地实现对大数据的处理
  1. 键值存储数据库的基本要素
    a) 键值对(Key-Value Pair)(无需预先定义数据类型)
    键:唯一索引值的作用,确保一个键值结构里数据记录的唯一性
    值:对应键相关的数据,通过键来获取,可以存放任何类型的数据
    由BLOB(Binary Large object,二进制大对象)进行存储
    b) 命名空间(Namespace):由键值对所构成的集合
  2. 键值存储数据库基本数据操作方式
    读(get),写(put),删除(delete)
  3. 键值存储数据库分类
    a) 临时性键值存储
    在内存中保存数据;可以进行快速的保存和读取处理;数据有可能丢失
    b) 永久性键值存储
    在硬盘上保存数据;可以进行快速的保存和读取处理;数据不会丢失
    c) 两者兼具型(Redis)
    同时在内存和硬盘上保存数据;可以进行非常快速的保存和读取处理;保存在硬盘上的数据不会消失
  1. 面向文档的数据库(MongoDB)(基于磁盘读写)
  1. 一条文档记录包含键值对和格式
  2. 面向文档的数据库基本要素
    a) 键值对:具体由数据和格式组成
    b) 文档(Document):由键值对所构成的有序集
    c) 集合(Collection):集合是由若干条文档构成的对象
    d) 数据库(Database):
    包含了若干个集合,在进行数据操作之前,必须指定数据库名
  3. 面向文档的数据库基本数据操作方式
    写(insert),读(find),改(update),删(remove)
  4. 文档存储的优缺点
    a) 优点:简单;相对高效;文档格式处理;查询功能强大;分布式处理
    b) 缺点:缺少约束;数据出现冗余;相对低效
  1. 列族数据库(HBase,Cassandra)
    在这里插入图片描述在这里插入图片描述
  1. 列族数据库基本要素
    a) 列(Column):用来存放单个数值的数据结构
    列的每个值(Value)都附带时间戳(Time Stamp),区分值的不同版本
    b) 列族(Column Family):由若干个列所构成的一个集合
    c) 行键(Row Key):用来唯一确定列族数据库中不同行数据区别的标识符
    d) 命名空间:列族数据库的顶级数据库结构
  2. 列族数据库基本操作方式:读、写、删除
  3. 列族数据库特点
    a) 对于命名空间、行键、列族需预先定义,列无须提早定义,随时可以增加
    b) 列族数据库存储模式相对键值存储数据库、面向文档的数据库要复杂
    c) 查询功能相对更加丰富
    d) 具有高密集写入处理能力
  1. 图数据库
  1. 图数据库基本要素
    a) 节点(Node)代表一个个事物实体
    b) 边(Edge)表明实体之间的关系
    c) 无向边(Undirected Edge)
    d) 有向边(Directed Edge)
    e) 节点和边都可以附加属性(Attribute)
  2. 图数据库基本操作方式
    a) 对于单个节点:建立(Create)、删除(Delete)、更新(Update)、移动(Remove)、合并(Merge)
    b) 对于图,提供图的交集、图的并集、图的遍历等
  1. 其他数据存储模式
  1. 多模式数据库(Multimodal Databases):MarkLogic、OrientDB
  2. 对象数据库(Object Databases):Db4o、Versant Object Database
  3. 网格和云数据库方案(Grid & Cloud Database Solutions):GridGain、Crate Data
  • 1
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值