大数据开发岗面试复习30天冲刺 - 日积月累,每日五题【Day11】——Hbase5(3)

大数据开发岗面试复习30天冲刺 - 日积月累,每日五题【Day10】——Hbase4

文章目录

停🤚

不要往下滑了,

默默想5min,

看看这5道面试题你都会吗?

面试题 01、什么是全局索引?
面试题02、什么是覆盖索引?
面试题 03、什么是本地索引?
面试题04、请简述Hbase写入数据的流程
面试题05、请简述Hbase读取数据的流程

在这里插入图片描述

在这里插入图片描述

以下答案仅供参考:

面试题 01、什么是全局索引?

•创建全局索引,会自动构建一张索引表
•索引表结构
–Rowkey:索引字段+原表的rowkey
–列:占位置x
•特点:如果查询字段或者查询条件不是索引字段,就不会走索引
•应用:适合于读多写少

面试题02、什么是覆盖索引?

•创建覆盖索引,会自动构建一张索引表
•索引表结构
–Rowkey:索引字段+原表的rowkey
–列:将include中的列放入索引表
•特点
–如果查询字段或者查询条件不是索引字段,就不会走索引
–如果查询的字段在索引表中,直接从索引表返回结果

面试题 03、什么是本地索引?

•创建覆盖索引,会自动基于原表构建一个列族来实现索引存储
•原表的数据中:多了一个索引列族
•特点
–不论查询字段是否是索引字段,都会走索引
–将索引与数据存储在同一台RegionServer,提高索引读写性能
•注意
–本地索引会修改原数据表,对于本地索引只能使用Phoenix来操作表的数据
–盐表不能使用本地索引

面试题04、请简述Hbase写入数据的流程

•step1:获取元数据
–客户端请求Zookeeper,获取meta表所在的regionserver的地址
–读取meta表的数据:获取所有表的元数据
•step2:找到对应的Region
–根据meta表中的元数据,找到表对应的所有的region
–根据region的范围和写入的Rowkey,判断需要写入具体哪一个Region
–根据region的Regionserver的地址,请求对应的RegionServer
•step3:写入数据
–请求RegionServer写入对应Region:根据Region的名称来指定写入哪个Region
–根据列族判断写入哪一个具体的Store
•先写入WAL:Hlog预写日志中
–写入对应Store的MemStore中
•MemStore

面试题05、请简述Hbase读取数据的流程

•step1:获取元数据
–客户端请求Zookeeper,获取meta表所在的regionserver的地址
–读取meta表的数据
–注意:客户端会缓存meta表的数据,只有第一次会连接ZK,读取meta表的数据,缓存会定期失效,要重新缓存
•避免每次请求都要先连接zk,再读取meta表
•step2:找到对应的Region
–根据meta表中的元数据,找到表对应的region
–根据region的范围和写入的Rowkey,判断需要写入具体哪一个Region
–根据region的Regionserver的地址,请求对应的RegionServer
•step3:读取数据
–先查询memstore
–如果查询的列族开启了缓存机制,就读取BlockCache

img
img

网上学习资料一大堆,但如果学到的知识不成体系,遇到问题时只是浅尝辄止,不再深入研究,那么很难做到真正的技术提升。

需要这份系统化资料的朋友,可以戳这里获取

一个人可以走的很快,但一群人才能走的更远!不论你是正从事IT行业的老鸟或是对IT行业感兴趣的新人,都欢迎加入我们的的圈子(技术交流、学习资源、职场吐槽、大厂内推、面试辅导),让我们一起学习成长!

opics/618545628)**

一个人可以走的很快,但一群人才能走的更远!不论你是正从事IT行业的老鸟或是对IT行业感兴趣的新人,都欢迎加入我们的的圈子(技术交流、学习资源、职场吐槽、大厂内推、面试辅导),让我们一起学习成长!

  • 22
    点赞
  • 10
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值