HBaseHivePig习题与答案(知识点索引)
(2019-09-12 22:06:18)
标签:
it教育健康旅游财经 |
第五讲 HBase Hive Pig习题与答案
1.HBase 如何给WEB前端提供接口来访问?
答:使用JavaAPI来编写WEB应用;使用HBase提供的RESTful接口
2.简述HBase简单读写流程。
答: HBase简单读写流程
读:
找到要读取数据的region所在的RegionServer,然后按照以下顺序进行读取:先去BlockCache读取,若BlockCache没有,则到Memstore读取,若MemStore中没有,则到HFile中读取。
写:
找到要写入数据的region所在的RegionServer,然后将数据先写到WAL中,然后再将数据写到MemStore等待刷新,回复客户端写入完成。
3.HBase和Hived 的区别有哪些?
答:HBase和Hive的对比:
|
HBase |
Hive |
类型 |
列式数据库 |
数据仓库 |
内部机制 |
数据库引擎 |
MapReduce |
增删改查 |
都支持 |
只支持导入和查询 |
Schema |
只需要预先定义列族,不需要具体到列列可以动态修改 |
需要预先定义表格 |
应用场景 |
实时 |
离线处理 |
4. hbase的特点是什么?
答:1)hbase是一个分布式的,基于列式存储的数据库,基于hadoop的hdfs存储,zookeeper进行管理。
2)hbase 适合存储半结构化或非结构化的数据,对于数据结构字段不够确定或者杂乱无章很难按照一个概念去抽取的数据。
3)hbase为null的数据不会被存储
4)基于的表包含rowKey,时间戳和列族,新写入数据时,时间戳更新,同时可以查询到以前的版本
5)hbase是主从结构,hmaster作为主节点,hregionServer作为从节点。
5. hbase 的存储结构?
答: Hbase 中的每张表都通过行键(rowkey)按照一定的范围被分割成多个子表(HRegion),默认一个 HRegion 超过 256M 就要被分割成两个,由 HRegionServer 管理,管理哪些 HRegion由 Hmaster 分配。 HRegion 存取一个子表时,会创建一个 HRegion 对象,然后对表的每个列族(Column Family)创建一个 store 实例,每个 store 都会有 0 个或多个 StoreFile 与之对应,每个 StoreFile 都会对应一个 HFile, HFile 就是实际的存储文件,因此,一个 HRegion 还拥有一个 MemStore 实例。
6.下面与Zookeeper类似的框架是?D
7.HFile数据格式中的Data字段用于()。A
B 存储数据的起点
C 指定字段的长度
D 存储数据块的起点
8.HFile数据格式中的Magic字段用于()。A
B 存储数据的起点
C 存储数据块的起点
D 指定字段的长度
9.HBase中的批量加载底层使用()实现。A
10.HFile数据格式中的MetaIndex字段用于()。D
B Meta块的结束点
C Meta块数据内容
D Meta块的起始点