文章目录

5.1 HBase简介

  1. 什么是HBase
  2. BigTable
  3. 面向列的数据库
  4. 什么是非结构化数据存储
  5. HBase在Hadoop生态中的地位
  6. HBase与HDFS
  7. HBase使用场景

5.1 HBase简介

1 什么是HBase

  • HBase是一个分布式的、面向列的开源数据库
  • HBase是Google BigTable的开源实现
  • HBase不同于一般的关系数据库, 适合非结构化数据存储

2 BigTable

  • BigTable是Google设计的分布式数据存储系统,用来处理海量的数据的一种非关系型的数据库。
    • 适合大规模海量数据,PB级数据;
    • 分布式、并发数据处理,效率极高;
    • 易于扩展,支持动态伸缩
    • 适用于廉价设备;
    • 不适用于传统关系型数据的存储;

3 面向列的数据库

HBase 与 传统关系数据库的区别

 

 

 

 
  • 关系型数据库中数据示例

 

 

 

 
  • 同样数据保存到列式数据库中
 

 

 

 

 

  • 行数据库&列数据库存储方式比较

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-l5G1g6kh-1584200248088)(img/hbase4.png)]

4 什么是非结构化数据存储

  • 结构化数据
    • 适合用二维表来展示的数据
  • 非结构化数据
    • 非结构化数据是数据结构不规则或不完整
    • 没有预定义的数据模型
    • 不方便用数据库二维逻辑表来表现
    • 办公文档、文本、图片、XML, HTML、各类报表、图像和音频/视频信息等

5 HBase在Hadoop生态中的地位

  • HBase是Apache基金会顶级项目

  • HBase基于HDFS进行数据存储

  • HBase可以存储超大数据并适合用来进行大数据的实时查询

    [外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-r3P8Anms-1584200248089)(img/hbase&hive.png)]

6 HBase与HDFS

  • HBase建立在Hadoop文件系统上, 利用了HDFS的容错能力
  • HBase提供对数据的随机实时读/写访问功能
  • HBase内部使用哈希表, 并存储索引, 可以快速查找HDFS中数据

7 HBase使用场景

  • 瞬间写入量很大
  • 大量数据需要长期保存, 且数量会持续增长
  • HBase不适合有join, 多级索引, 表关系复杂的数据模型

 

转载于:https://blog.csdn.net/qq_35456045/article/details/104871076

END