停🤚
不要往下滑了,
默默想5min,
看看这5道面试题你都会吗?
面试题 01、表的Region的划分规则及数据写入分区的规则是什么? 面试题02、Region的内部存储结构是什么? 面试题 03、什么是热点问题? 面试题04、怎么解决热点问题? 面试题05、Rowkey如何设计,设计规则是什么?
以下答案仅供参考:
面试题 01、表的Region的划分规则及数据写入分区的规则是什么?
•Region划分规则:范围划分,一张表可以在Rowkey行的方向上划分多个Region,每个Region构成一段连续的区间
•数据划分规则:根据Rowkey属于哪个Region的范围,就将这条数据写入哪个Region分区中
面试题02、Region的内部存储结构是什么?
•每个RegionServer中管理多个Region
•每个Region中根据列族划分多个Store
•每个Store中有1个memstore和多个StoreFile文件
•数据写入memstore中,如果达到内存阈值,memstore中的数据将写入StoreFile
面试题 03、什么是热点问题?
•现象:在某个时间段内,大量的读写请求全部集中在某个Region中,导致这台RegionServer的负载比较高,其他的Region和RegionServer比较空闲
•问题:这台RegionServer故障的概率就会增加,整体性能降低,效率比较差
•原因:本质上的原因,数据分配不均衡
•情况
–一张表只有一个Region
–一张表有多个Region,但是Rowkey是连续产生的
面试题04、怎么解决热点问题?
•合理的设计Rowkey,构建不连续的Rowkey
•根据Rowkey的前缀,为表划分多个Region
面试题05、Rowkey如何设计,设计规则是什么?
•业务原则:贴合业务,保证前缀是最常用的查询字段
•唯一原则:每条rowkey唯一表示一条数据
•组合原则:常用的查询条件组合作为Rowkey
•散列原则:rowkey构建不能连续
•长度原则:满足业务需求越短越好
总结
今天我们复习了面试中常考的Hbase相关的五个问题,你做到心中有数了么?
其实做这个专栏我也有私心,就是希望借助每天写一篇面试题,督促自己学习,以免在吹水群甚至都没有谈资!
对了,如果你的朋友也在准备面试
,请将这个系列扔给他,
好了,今天就到这里,学废了的同学,记得在评论区留言:打卡
。给同学们以激励。