NoSQL综述及HBase基础

@[TOC](这里写目录标题

NoSQL

什么是NoSQL

  • NoSQL:not only SQL,非关系型数据库
  • NoSQL是一个通用术语
    • 指不遵循传统RDBMS模型的数据库
    • 数据是非关系的,且不使用SQL作为主要查询语言
    • 解决数据库的可伸缩性和可用性问题
    • 不针对原子性或一致性问题

为什么使用NoSQL

  • 互联网的发展,传统关系型数据库出现瓶颈
    • 高并发读写
    • 高存储量
    • 高可用性
    • 高扩展性
    • 低成本

NoSQL与关系型数据库对比

  • 主要区别如下
    在这里插入图片描述

NoSQL的特点

  • 最终一致性
  • 应用程序增加了维护一致性和处理事务等职责
  • 冗余数据存储
  • NoSQL != 大数据
    • NoSQL产品是为了帮助解决大数据存储问题
    • 大数据不仅仅包含数据存储的问题

NoSQL三大基石

  • 1、CAP

    • 数据库最多支持3个中的2个
      • Consistency(一致性)
      • Availability(可用性)
      • Partition Tolerance(分区容错性)
    • NoSQL不保证“ACID”(事务四特性)
    • 提供“最终一致性”
      在这里插入图片描述
  • 2、BASE

    • Basically Availble(基本可用)
      • 保证核心可用
    • Soft-state(软状态)
      • 状态可以有一段时间不同步
    • Eventual Consistency(最终一致性)
      • 系统经过一定时间后,数据最终能够达到一致的状态
  • 核心思想是即使无法做到强一致性,但应用可以选择适合的方式达到最终一致性

  • 3、最终一致性

    • 最终结果保持一致性,而不是时时一致
    • 如账户余额,库存量等数据需强一致性
    • 如catalog等信息不需要强一致性
      • Causal consistency(因果一致性)
      • Read-your-writes consistency(读写一致性)
      • Session consistency(会话一致性)

索引和查询

  • Indexing(索引)
    • 大多数NoSQL是按key进行索引
    • 部分NoSQL允许二级索引
    • HBase使用HDFS,append-only
      • 批处理写入Logged
      • 重新创建并排序文件
  • Query(查询)
    • 没有专门的查询语言,通常使用脚本语言查询
    • 有些开始支持SQL查询
    • 有些可以使用MapReduce代码查询

NoSQL分类

  • 主要有以下四种:
    在这里插入图片描述
  • 各种的区别:
    • 键值存储数据库(Key-Value)
      在这里插入图片描述
    • 列存储数据库(Wide Column Store)
      在这里插入图片描述
    • 文档型数据库(Document Store)在这里插入图片描述
    • 图数据库(Graph Databases)在这里插入图片描述

HBase

概述

  • HBase是一个领先的NoSQL数据库
    • 是一个面向列存储的数据库
    • 是一个分布式hash map
    • 基于Google Big Table论文
    • 使用HDFS作为存储并利用其可靠性
  • HBase特点
    • 数据访问速度快
    • 支持随机读写
    • 可扩展性

HBase发展历史

在这里插入图片描述

HBase应用场景

  • 增量数据-时间序列数据
    • 高容量,高速写入在这里插入图片描述
  • 信息交换-消息传递
    • 高容量,高速读写在这里插入图片描述
  • 内容服务-Web后端应用程序
    • 高容量,高速读写在这里插入图片描述

HBase物理架构

  • HBase采用Master/Slave架构在这里插入图片描述
    • HMaster
      • HMaster的作用
        • 是HBase集群的主节点,可以配置多个,用来实现HA
        • 管理和分配Region
        • 负责RegionServer的负载均衡
        • 发现失效的RegionServer并重新分配其上的Region
    • RegionServer
      • RegionServer负责管理维护Region在这里插入图片描述
    • Region和Table在这里插入图片描述

HBase逻辑架构

  • Row
    • Rowkey(行键)是唯一的并已排序
    • Schema可以定义何时插入记录
    • 每个Row都可以定义自己的列,即使其他Row不使用
      • 相关列定义为列族
    • 使用唯一时间戳维护多个Row版本
      • 在不同版本中值类型可以不同
    • HBase数据全部以字节存储

HBase数据管理

  • 数据管理目录
    • 系统目录表hbase:meta
      • 存储元数据等
    • HDFS目录中的文件
    • Servers上的region实例
  • HBase数据在HDFS上
    • 可以通过HDFS进行修复File
    • 修复路径
      • RegionServer->Table->Region->RowKey->列族
        在这里插入图片描述

HBase架构特点

  • 强一致性
  • 自动扩展
    • 当Region变大会自动分割
    • 使用HDFS扩展数据并管理空间
  • 写恢复
    • 使用WAL(Write Ahead Log)
  • 与Hadoop集成

HBase Shell

  • HBase Shell是一种操作HBase的交互模式

    • 支持完整的HBase命令集在这里插入图片描述
  • 通过hbase shell进入在这里插入图片描述

  • 基本操作在这里插入图片描述

  • 将文档数据导入HBase在这里插入图片描述

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
数据库发展史(毕业论文中英文翻译) 数据库发展史 数据库技术从诞生到现在,在不到半个世纪的时间里,形成了坚实的理论基础、成熟的商业产品和广泛的应用领域,吸引越来越多的研究者加入。数据库的诞生和发展给计算机信息管理带来了一场巨大的革命。三十多年来,国内外已经开发建设了成千上万个数据库,它已成为企业、部门乃至个人日常工作、生产和生活的基础设施。同时,随着应用的扩展与深入,数据库的数量和规模越来越大,数据库的研究领域也已经大大地拓广和深化了。30年间数据库领域获得了三次计算机图灵(C.W. Bachman,E.F.Codd, J.Gray),更加充分地说明了数据库是一个充满活力和创新精神的领域。就让我们沿着历史的轨迹,追溯一下数据库的发展历程。 Database history The data bank technology from the birth to the present, in half century's time, has formed the solid rationale, the mature commercial product and the widespread application domain, attraction more and more researchers joins. The database birth and the development have brought a huge revolution for the computer information management. More than 30 for years, domestic and foreign already developed have constructed tens of thousands of databases, it has become the enterprise, the department and even individual routine work, the production and the life infrastructure. At the same time, along with application expansion and thorough, database quantity and the scale are getting bigger and bigger, the database research area also already greatly developed broad and deepens. during 30 years the database domain has obtained three computer Turing (C.W. Bachman, E.F.Codd, J.Gray), explained fully the database is one vital and the innovative spirit domain. Lets us along the historical path, traces the database the devel

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值