
1)解释什么是Hbase?
Hbase是一个面向列的数据库管理系统,它运行在HDFS(Hadoop Distribute File System)之上。Hbase不是关系数据存储,它不支持像SQL这样的结构化查询语言。
在Hbase中,主节点调节集群和区域服务器以存储表的部分并操作数据上的工作。
2)解释为什么要用Hbase?
3)提到Hbase的关键组件是什么?
4)解释Hbase是由什么组成的?
5)提到Hbase中有多少操作命令?
Hbases中的操作命令大约有五种类型
6)解释Hbase中的WAL和Hlog是什么?
WAL(Write Ahead Log)相似于MySQL BIN日志; 它记录了数据中发生的所有变化。它是Hadoop的标准序列文件,它存储HLogkey。这些密钥由序列号和实际数据组成,使用于在服务器崩溃后重放尚未保留的数据。因而,在服务器故障的现金中,WAL作为生命线工作并检索丢失的数据。
7)什么时候应该用Hbase?
8)在Hbase中什么是列族?
列族包括Hbase中的基本物理存储单元,其中应使用了压缩等功可以。
9)解释什么是行键?
行键由应使用程序定义。因为组合键由rowkey预先固定,因而它使应使用程序可以够定义所需的排序顺序。它还允许对单元进行逻辑分组,并确保具备相同rowkey的所有单元共同位于同一服务器上。
10)解释Hbase中的删除?提到Hbase中三种类型的墓碑标记是什么?
当您删除Hbase中的单元格时,实际上不会删除数据,但会设置逻辑删除标记,使删除的单元格不可见。删除Hbase实际上是在压缩过程中删除的。
有三种类型的墓碑标记:
11)解释Hbase如何实际删除一行?
在Hbase中,无论你写什么都将从RAM存储到磁盘,这些磁盘写入是不可改变的禁止压缩。在Hbase中的删除过程中,主要的压缩过程删除标记,而次要压缩则不会。在正常删除中,它会导致删除逻辑删除标记 - 它们表示的这些删除数据在压缩过程中被删除。
此外,假如删除数据并增加更多数据,但时间戳早于逻辑删除时间戳,则删除/逻辑删除标记可可以会掩盖进一步的获取,因而在主要压缩之前您将不会收到插入的值。
12)解释假如在已占使用的数据库上更改列族的块大小会发生什么?
更改列族的块大小时,新数据占使用新块大小,而旧数据保留在旧块大小内。在数据压缩期间,旧数据将采使用新的块大小。刷新的新文件具备新的块大小,而现有数据将继续正确读取。在下一次主要压缩之后,所有数据都应转换为新的块大小。
13)提到Hbase和关系数据库之间的区别?