Hbase相关面试题

他人真实面试问题

版权声明:本文为博主原创文章,转载请注明出处,欢迎交流。QQ911283415

1.HBase的架构和基本原理

Hbase以表的方式组织数据, 
表由行(Row)以及列(Column)组成,行由row key和一个或多个列及其值组成(存储是按照row key的字典顺序排序,row key的设计非常重要!!), 
列必须属于某一列族(Column family),一个列族可以有一各或多个列(一列由列簇和列修饰符组成,他们通常由冒号(:) 分隔),其在存储架构中就是一个Hfile。 
Hbase中的列可以达到百万级,列中的数据可以是稀疏的,空值并不占用存储空间。 
数据按主键排序,同时表按主键划分为多个Region。底层是LSM树(Long-Structed Merge Tree)。

对于以上叙述,表的简略结构:(逻辑模型)

这里写图片描述

Hbase简略架构图如下:

这里写图片描述

接下来对Zookeeper、HMaster、HRegionServer、HRegion、Store、MemStore、StoreFile、HFile、HLog等做个简单叙述:

Zookeeper

HMaster 
(主要负责table和region的管理工作)


HRegionServer 
(主要负责响应用户对其上region的I/O请求,向HDFS读写数据,HbasHBase核心模块)

Region 
(图中为Hregion,也就是指一个Table的分区)


StoreFile 
(底层存储格式是HFile,HBase中最小的存储单元)

HFile[1] 
(HFile基于Hadoop的TFile类实现,模仿Google的BIgTable论文中的SSTable格式。)


  • 这里写图片描述

HLog(WAL log) 
(HLog是WAL的核心实现类)

2.HBase与传统关系型数据库(如MySQL)的区别

3.读写性能对比(读快还是写快)

4.Hbase的设计有什么心得?

5.Hbase的操作是用的什么API还是什么工具?

6.你们hbase里面是存一些什么数据

7.知道spark怎么读hbase吗?

8.做过hbase的二级索引吗?

9.Hbase的PUT的一个过程



以下是我自己想的问题

1.描述一下Region切分的过程?

HBase原理–所有Region切分的细节都在这里了

2.Hbase读取数据的流程?

HBase读写流程

3.HBase的缺点?(优点已经在4中体现)

4.什么时候适合使用HBase(应用场景)








2018/3/12增

5.Client会缓存.META.的数据,该数据更新了怎么办?

(参考自[5])

注1:对应上文的表结构的多维度Map映射表形式理解

  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
  • 11
  • 12
  • 13
  • 14
  • 15
  • 16
  • 17
  • 18
  • 19
  • 20
  • 21
  • 22
  • 23

参考

[1]对于HFile和Hlog更为细致的讲解见:深入学习HBase架构原理 
[2]文章可能会有点旧:HBase高性能复杂条件查询引擎 
[3]Hbase与传统关系型数据库对比 
[4]《Hbase企业应用开发实战》第270页 
[5]简书-飞鸿无痕:Hbase技术详细学习笔记


转载地址:https://blog.csdn.net/HaixWang/article/details/79514886

  • 0
    点赞
  • 6
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值