首页 > 编程知识 正文

数据库dba面试题及答案,大数据挖掘面试题

时间:2023-05-05 12:02:21 阅读:10431 作者:760

hbase的特征是什么

)1) Hbase是分布式的基于列的存储数据库,由基于Hadoop的hdfs存储zookeeper管理。

) Hbase适合半结构化或非结构化数据的存储,是数据结构字段不充分确定或杂乱无章、难以用一个概念提取的数据。

)3) Hbase为空的记录不被存储。

基于(4)的表包括rowkey、时间戳和列族。 写入新数据时,时间戳更新,可以同时询问早期版本。

)5) hbase为主从结构。 hmaster为主节点,hregionserver为从节点。

Hbase和hive有什么区别

Hive和Hbase是两种基于Hadoop的不同技术。 Hive是一种SQL引擎,运行MapReduce任务。 Hbase是Hadoop之上的NoSQL的Key/vale数据库。 当然,这两个工具可以同时使用。 Hive可以用于统计查询,HBase可以用于实时查询,就像在谷歌上搜索或在脸书上社交一样。 数据也可以从Hive写入HBase,然后进行设置并从HBase写回Hive。

Hive是基于Hadoop构建的数据仓库。 Hive允许您用HQL语言查询存储在HDFS中的数据。

HQL是最终转换为Map/Reduce的SQL语言。 Hive提供了SQL查询功能,但Haoop只能批量运行Hadoop,因此Hive无法进行交互式查询。

Hive被分割成表,表进一步被分割成列簇。 列群集必须使用架构定义。 列集群总结某一类型的列。 列不需要架构定义。

限制:

Hive目前不支持更新操作。

此外,由于hive在hadoop中执行批量操作,因此检索查询结果通常需要几分钟到几个小时。

Hive适用于分析一段时间内的数据,例如计算趋势和网站日志。

请勿将Hive用于实时查询。 因为返回结果需要时间。

HBase查询是用特定语言创建的,需要重新学习。 类SQL的功能可以在Apache Phonenix上实现,但代价是必须提供架构。 此外,Hbase支持某些特性,但并不与所有ACID特性兼容。 最后,也不是最重要的。 为了运行Hbase,需要Zookeeper。 Zookeeper是用于分布式协调的服务,包括服务配置、元信息维护和命名空间服务。

Hbase非常适合大数据实时查询。 脸书通过Hbase进行消息和实时分析。 也可以用于计数Facebook的连接数。

HBase是Key/Value系统,在HDFS上运行。 与Hive不同,Hbase的是

不是在数据库上执行MapReduce任务,而是在数据库上实时执行。

参考URL:http://www.cn blogs.com/Justin zang/p/4273470.html

说明Hbase的rowKey的设计原则。

Rowkey长度原则

Rowkey是二进制码流,许多开发人员建议Rowkey的长度设计为10到100字节

但是,建议越短越好,不要超过16字节。

理由如下。

)1)数据的永久化文件HFile中按照KeyValue进行存储,但如果Rowkey过长,例如100个

字节、1000万列的数据仅Rowkey就消耗100*1000万=10亿字节、约1G的数据。 这是极其

对HFile的存储效率有很大影响

)2) MemStore将部分数据缓存在内存中,Rowkey字段过长会降低内存的有效利用率

否则,系统将无法缓存更多的数据,从而降低搜索效率。 因此,Rowkey的字节长度越短越好。

)3)目前操作系统均为64位系统,内存按8字节对齐。 16字节、8字节的

整数倍利用操作系统的最佳特性。

Rowkey散列原则

如果Rowkey以时间戳递增,并且不在二进制代码之前放置时间,则建议使用Rowkey

的高位作为散列字段,在程序周期中生成,低位放在时间字段中,从而提高数据的均衡分布

Regionserver实现负载平衡的概率。 如果没有散列字段,则第一个字段直接生成时间信息

由于新数据堆积在区域服务器上的热点现象,在数据检索时负荷集中

在单个RegionServer上降低查询效率。

Rowkey的唯一原则

在设计方面必须保证其唯一性。

对Hbase的sc进行说明

an和get的功能以及实现的异同.

 

HBase的查询实现只提供两种方式:

1、按指定RowKey 获取唯一一条记录,get方法(org.apache.hadoop.hbase.client.Get)

Get 的方法处理分两种 : 设置了ClosestRowBefore 和没有设置的rowlock .主要是用来保证行的事务性,即每个get 是以一个row 来标记的.一个row中可以有很多family 和column.

2、按指定的条件获取一批记录,scan方法(org.apache.Hadoop.hbase.client.Scan)实现条件查询功能使用的就是scan 方式.

1)scan 可以通过setCaching 与setBatch 方法提高速度(以空间换时间);

2)scan 可以通过setStartRow 与setEndRow 来限定范围([start,end)start 是闭区间,

end 是开区间)。范围越小,性能越高。

3)、scan 可以通过setFilter 方法添加过滤器,这也是分页、多条件查询的基础。

 

请描述Hbase中scan对象的setCache和setBatch 方法的使用.

为设置获取记录的列个数,默认无限制,也就是返回所有的列.每次从服务器端读取的行数,默认为配置文件中设置的值.

23 请详细描述Hbase中一个Cell 的结构

HBase 中通过row 和columns 确定的为一个存贮单元称为cell。

Cell:由{row key, column(=<family> + <label>), version}唯一确定的单元。cell 中的数

据是没有类型的,全部是字节码形式存贮。

 

 

请描述如何解决Hbase中region太小和region太大带来的冲突.

Region过大会发生多次compaction,将数据读一遍并重写一遍到hdfs 上,占用io,region过小会造成多次split,region 会下线,影响访问服务,调整hbase.hregion.max.filesize 为256m.


以 start-hbase.sh 为起点,Hbase 启动的流程是什么?

 

start-hbase.sh 的流程如下:

1.运行 hbase-config.sh

hbase-config.sh的作用:

1>.装载相关配置,如HBASE_HOME目录,conf目录,regionserver机器列表,JAVA_HOME 目录等,它会调用$HBASE_HOME/conf/hbase-env.sh .

2>.解析参数(0.96 版本及以后才可以带唯一参数 autorestart,作用就是重启)

3>.调用 hbase-daemon.sh 来启动 master.

4>.调用 hbase-daemons.sh 来启动 regionserver zookeeper master-backup.

2.hbase-env.sh 的作用:

主要是配置 JVM 及其 GC 参数,还可以配置 log 目录及参数,配置是否需要 hbase 管

理 ZK,配置进程 id 目录等.

3.hbase-daemons.sh 的作用:根据需要启动的进程,

如 zookeeper,则调用 zookeepers.sh

如 regionserver,则调用 regionservers.sh

如 master-backup,则调用 master-backup.sh

4.zookeepers.sh 的作用:

如果 hbase-env.sh 中的 HBASE_MANAGES_ZK"="true",那么通过ZKServerTool这个类解析xml配置文件,获取 ZK 节点列表,然后通过 SSH 向这些节点发送远程命令执行。

5.regionservers.sh 的作用:

与 zookeepers.sh 类似,通过配置文件,获取 regionserver 机器列表,然后 SSH 向这些机器发送远程命令:

6.master-backup.sh 的作用:

通过 backup-masters 这个配置文件,获取 backup-masters 机器列表,然后 SSH 向这些机器发送远程命令。

 

 

简述 HBASE中compact用途是什么,什么时候触发,分为哪两种,有什么区别,有哪些相关配置参数?

 

 

在hbase中每当有memstore数据flush到磁盘之后,就形成一个storefile,当storeFile的数量达到一定程度后,就需要将 storefile 文件来进行 compaction 操作。

Compact 的作用:

1>.合并文件

2>.清除过期,多余版本的数据

3>.提高读写数据的效率

HBase 中实现了两种 compaction 的方式:minor and major. 这两种 compaction 方式的区别是:

1、Minor 操作只用来做部分文件的合并操作以及包括 minVersion=0 并且设置 ttl 的过

期版本清理,不做任何删除数据、多版本数据的清理工作。

2、Major 操作是对 Region 下的HStore下的所有StoreFile执行合并操作,最终的结果是整理合并出一个文件。

 

相关配置举例:

 


 

 

 

版权声明:该文观点仅代表作者本人。处理文章:请发送邮件至 三1五14八八95#扣扣.com 举报,一经查实,本站将立刻删除。