文章目录

  • 一:判断题
  • 二:单选题
  • 三:填空题
  • 四:主观题
  • 1:简述HBase写数据流程?
  • 2:HBase的数据模型有哪些?
  • 3:简述HBase的特点有哪些?
  • 4:HBase的rowkey设计原则有哪些?


一:判断题

1:HBase是一套高性能的分布式数据集群,必须在大型机或者高性能的服务器上进行搭建。

T

2:HBase是Apache的Hadoop项目的子项目,利用Hadoop HDFS作为其文件存储系统,适合于非结构化数据存储。

T

3:Hbase 采用是 Key-Value 形式的数据库,模拟于 Java 中的 Map 形式。

T

4:HBase 中的数据都是字节,且有各种类型。

F

二:单选题

1:HBase 存储底层数据依靠的是

A.HDFS

B.Hadoop

C.Memory

D.MapReduce

2:HBase依赖______提供强大的计算能力。

A.Zookeeper

B.Chubby

C.RPC

D.MapReduce

3:HBase依赖______提供消息通信机制

A.Zookeeper

B.Chubby

C.RPC

D.Socket

4:HBase来源于哪一项?

A.The Google File System

B.MapReduce

C.BigTable

D.Chubby

5:HFile 数据格式中的 MetaIndex 字段用于

A.Meta 块的长度

B.Meta 块的结束点

C.Meta 块数据内容

D.Meta 块的起始点

6:HFile 数据格式中的 KeyValue 数据格式中 Value 部分是

A.拥有复杂结构的字符串

B.字符串

C.二进制数据

D.压缩数据

7:HFile 数据格式中的 Magic 字段用于

A.存储随机数,防止数据损坏

B.存储数据的起点

C.存储数据块的起点

D.指定字段的长度

8:HFile 数据格式中的 Data 字段用于

A.存储实际的 KeyValue 数据

B.存储数据的起点

C.指定字段的长度

D.存储数据块的起点

9:HBase数据库的BlockCache缓存的数据块中,哪一项不一定能提高效率。

A.–ROOT-表

B…META.表

C.HFile index

D.普通的数据块

10:h0148. 关于MySQL分库分表的方案相关描述,错误的是:

A.当服务器性能出现瓶颈需要扩容时,常常采取“翻倍”分库增
加服务器的方案,导致资源的浪费。

B.一开始就对如何切分数据做好精心设计,一旦稍有不慎,设
计上出现了数据倾斜。

C.故障恢复需要不需要人工介入,运维简单。

11:h0149. 关于HBase的描述,错误的是:

A.HBase是一个开源的、分布式的、版本化的、非关系的数据库,它参考了Google的Bigtable。

B.HBase™是Hadoop数据库,是一个分布式、可伸缩、大数据存储区。

C.目标是在商用硬件集群之上托管非常大的表----数十亿行X百万列。

D.只能用来存储结构化的数据

三:填空题

1:HBase的分布式存储的最小单元是

Region

2:HBase的存储的最小单元是

Hfile

四:主观题

1:简述HBase写数据流程?

1:zookeeper中存储了meta表的region信息,从meta表中获取相应的region信息,然后找到meta表的数据。

2:根据namespace、表名和rowkey根据meta表的数据找到写入数据对应的region信息。

3:找到对应的regionserver。

4:把数据分别写到Hlog和MemStore上一份。

5:MemStore达到一个阀值后则把数据刷成一个StoreFile文件。若MemStore中的数据有丢失,则可以从HLog上恢复。

6:当多个StoreFile文件达到一定的大小后,会触发Compact合并操作,合并为一个StoreFile,这里同时进行版本的合并和数据删除。

7:当Compace后,逐步形成越来越大的StoreFile后,会触发Spilt操作,把当前的StoreFile分成两个,这里相当于把一个大的regio分割成两个region。

2:HBase的数据模型有哪些?

1:行健(rowkey)是字节数组,是表中每条记录的“主健“,方便快速查找。

2:行(row)由行健(rowkey)唯一标识。

3:列族(column family)行的数据按列族分组cf,创建表的时候定义,不轻易修改。

4:限定字符(column qualifier)列里面的数据定位通过列限定符每个CF可以有一个或多个列成员。

5:单元(cell)行健,列族和列限定符一起确定一个单元。

6:时间版本(version)单元值有时间版本,用时间戳来标识默认1个。

7:时间戳(timestamp)每个cell可能有多个版本,它们之间用时间戳区分。

3:简述HBase的特点有哪些?

1:基于hadoop的hdfs存储,zookeeper进行管理。

2:适合存储半结构化或非结构化的数据。

3:HBase为null的记录不会被存储。

4:HBase是主从架构,HMaster作为主节点,HRegionServer作为从节点

4:HBase的rowkey设计原则有哪些?

1:长度原则:建议越短越好,不要超过16个字节。

2:散列原则:建议将rowkey的高位作为散列字段,由程序循环生成,低位放时间字段,这一将提高数据均衡分布在每个Regionserver
实现负载均衡。

3:唯一原则:必须在设计上保证其唯一性。