Hadoop 面试题之九

16.Hbase 的rowkey 怎么创建比较好?列族怎么创建比较好?

答:

19.Hbase 内部是什么机制?

答:

73.hbase 写数据的原理是什么?

答:

75.hbase宕机如何处理?

答:

144. 如果让你设计,你觉得一个分布式文件系统应该如何设计,考虑哪方面内容;

每天百亿数据入hbase,如何保证数据的存储正确和在规定的时间里全部录入完毕,

不残留数据。

答:

149.hbase过滤器实现原则。

答:

164.介绍一下hbase过滤器。

答:

167.hbase集群安装注意事项。

答:

319.Hbase 在进行模型设计时重点在什么地方?一张表中定义多少个Column Family

最合适?为什么?

答:

320.如何提高HBase客户端的读写性能?请举例说明。

答:

353.我们的hbase 大概在公司业务中(主要是网上商城)大概都有几个表,几个表族,大概都存什么样的数据?

答:

354.hbase的并发问题? storm 问题

答:

394.你们用HBASE 存储什么数据?

答:

407.Hbase的体系结构和搭建步骤、shell命令与JavaApi、hbase作为Mapreduce

的输入输出源、高级Javaapi、工作原理(重点是combine和split原理)、行健设计原则、性能优化?

答:

414.现在我们要对oracle 和hbase中的某些表进行更新,你是怎么操作?

提示:disable ‘表名’

alter ’表名’,name=>列名’,versions =>3

enable ‘表名’

答:

415.hbase 接受数据,如果短时间导入数量过多的话就会被锁,该怎么办?集群数16台,高可用性的环境。

参考:

通过调用Htable.setAutoFlush(false)方法可以将htable写客户端的自动flush关闭,这样可以批量写入到数据到hbase。而不是有一条put 就执行一次更新,只有当put填满客户端写缓存时,才实际向Hbase 服务端发起请求。默认情况下auto flush 是开启的。

答:

419.怎样将mysql的数据导入到hbase中?不能使用sqoop,速度太慢了

提示:

A、一种可以加快批量写入速度的方法是通过预先创建一些空的regions,这样当数据写入hbase时,会按照region分区情况,在集群内做数据的负载均衡。

B、hbase 里面有这样一个hfileoutputformat类,他的实现可以将数据转换成hfile格式,通过new一个这个类,进行相关配置,这样会在Hdfs下面产生一个文件,这个时候利用hbase提供的jruby的loadtable.rb脚本就可以进行批量导入。

433.介绍一下Hbase过滤器

参考::http://blog.sina.com.cn/s/blog_ae33b83901017km4.html

435.谈谈Hbase集群安装注意事项?

提示:需要注意的地方是zookeeper的配置,这与hbase-env.sh 文件相关,文集中hbase_managers_zk环境变量用来设置是使用hbase 默认自带的zookeeper 还是使用队里的zookeeper。HBASE_MANGES_ZK=false 时,使用独立的。true是使用默认自带的。

某个节点的hregionserver启动失败,这是由于这3个节点的系统时间不一致相差超过集群的检查时间30s。

477.简述HBase的瓶颈

提示:HBase的瓶颈就是硬传输速度,Hbase 的操作,它可以往数据里面 insert,也可以update一些数据,但update 的实际上也是insert,只是插入一个新的时间戳的一行,delete数据,也是insert,只是insert一行带有delete标记的一行。hbase的所有操作都是追加插入操作。hbase是一种日志集数据库。它的存储方式,像是日志文件一样。它是批量大量的往硬盘中写,通常都是以文件形式的读写。这个读写速度,就取决于硬盘与机器之间的传输有多快。而oracle的瓶颈是硬盘寻到时间。它经常的操作时随机读写。要update一个数据,先要在硬盘中找到这个block,然后把它读入内存,在内存中的缓存中修改,过段时间再回写回去。由于你寻找的block不通,这就存在一个随机的读。硬盘的寻道时间主要由转速来决定。而寻道时间,技术基本没有改变,这就形成了寻道时间瓶颈。

491.HBase如果只向一个RegionServer写入数据,有什么优点?

答:

494.HBase一行数据如何存储?

501.hbase的存储原理

545.hbase协处理器?

421.怎么知道hbase表里哪些做索引?哪些没有做索引?

提示:

有且仅有一个:rowkey,所以hbase得快速查找建立在rowkey的基础的,而不能像一般的关系型数据库那样建立多个索引来达到多条件查找的效果。

24.Hbase过滤器实现原则

----------------------------------------------------------------have done-------------------------------------------------------------

60.描述Hbase搭建过程

1.首先需要hadoop运行环境

2.其次需要zookeeper

3.复制Hadoop的core-site.xml,hdfs-site.xml

4.配置

351.hbase 怎么给web前台提供接口来访问(Htable 可以提供对htable的访问,但是怎么查询同一条记录的多个版本数据?)

答:用javaapi 搞定,查询  多个版本需要指定timestamp

Hadoop 面试题之Hbase的更多相关文章

  1. Hadoop 面试题redis

    Hadoop 面试题之十 548.redis有什么特别之处,为什么用redis,用hbase 不行么? 答:redis 是基于内存的数据库,速度快 551.redis用什么版本? 3.0以上才支持集群 ...

  2. hadoop面试题答案

    Hadoop 面试题,看看书找答案,看看你能答对多少(2) 1. 下面哪个程序负责 HDFS 数据存储.a)NameNode  b)Jobtracker  c)Datanode d)secondary ...

  3. 大数据hadoop面试题2018年最新版(美团)

    还在用着以前的大数据Hadoop面试题去美团面试吗?互联网发展迅速的今天,如果不及时更新自己的技术库那如何才能在众多的竞争者中脱颖而出呢? 奉行着"吃喝玩乐全都有"和"美 ...

  4. Hadoop学习笔记—15.HBase框架学习(基础知识篇)

    HBase是Apache Hadoop的数据库,能够对大型数据提供随机.实时的读写访问.HBase的目标是存储并处理大型的数据.HBase是一个开源的,分布式的,多版本的,面向列的存储模型,它存储的是 ...

  5. Hadoop学习笔记—15.HBase框架学习(基础实践篇)

    一.HBase的安装配置 1.1 伪分布模式安装 伪分布模式安装即在一台计算机上部署HBase的各个角色,HMaster.HRegionServer以及ZooKeeper都在一台计算机上来模拟. 首先 ...

  6. Hadoop 面试题之storm 3个

    Hadoop 面试题之八 355.metaq 消息队列 zookeeper 集群 storm集群(包括 zeromq,jzmq,和 storm 本身)就可以完成对商城推荐系统功能吗?还有其他的中间件? ...

  7. Hadoop集群中Hbase的介绍、安装、使用

    导读 HBase – Hadoop Database,是一个高可靠性.高性能.面向列.可伸缩的分布式存储系统,利用HBase技术可在廉价PC Server上搭建起大规模结构化存储集群. 一.Hbase ...

  8. Hadoop集群的hbase介绍、搭建、环境、安装

    1.hbase的介绍(自行百度hbase,比我总结的全面具体) HBase – Hadoop Database,是一个高可靠性.高性能.面向列.可伸缩的分布式存储系统,利用HBase技术可在廉价PC ...

  9. maven工程之pom模板(hadoop、hive、hbase)

    以下配置文件涵盖了hadoop.hive.hbase开发支持库的配置. 仅需针对maven工程pom.xml文件做相应更改就可以自动生成hadoop开发支持库. <properties>  ...

随机推荐

  1. CentOs安装Scrapy出现error: Setup script exited with error: command ‘gcc’ failed with exit status 1错误解决方案

    按照 http://www.1207.me/archives/209.html 的教程安装Scrapy出现了上述错误,但是本身机器已经有了gcc,所以应该是安装包的问题 百度又看到了同博客里的解决方案 ...

  2. python数据类型和字符串(三)

    一.变量 变量声明变量 #!/usr/bin/env python age= gender1='male' gender2='female' 变量作用:保存状态(程序的运行本质是一系列状态的变化,变量 ...

  3. Foundation框架—— 数组 (NSArray NSMutableArray )

    基础知识回顾 1.在给可变数组添加元素时,要保证该数组已被初始化 2.在遍历可变数组时,不能对其进行增删改 3.NSMutableArray继承自NSArray,几乎拥有NSArray的一切方法. 4 ...

  4. js随机从数组中取出几个元素

    JS如何从一个数组中随机取出一个元素或者几个元素. 假如数组为 var items = ['1','2','4','5','6','7','8','9','10']; 1.从数组items中随机取出一 ...

  5. c++模板类

    c++模板类 理解编译器的编译模板过程 如何组织编写模板程序 前言常遇到询问使用模板到底是否容易的问题,我的回答是:“模板的使用是容易的,但组织编写却不容易”.看看我们几乎每天都能遇到的模板类吧,如S ...

  6. 百度编辑器修改,不让它自动替换html标签

    在ueditor.all.js中找到 UE.plugins['defaultfilter'] = function () 注释或删掉这块代码. 注:ueditor.all.min.js 中也一样,格式 ...

  7. 参数化查询为什么能够防止SQL注入

    原文地址: http://www.cnblogs.com/LoveJenny/archive/2013/01/15/2860553.html http://zhangxugg-163-com.itey ...

  8. 固定导航(Sticky nav)

    方法1: <div class="footer"></div> .footer{ position:fixed; bottom:0; left:0; wid ...

  9. Java多线程编程核心技术--Lock的使用(一)

    使用ReentrantLock类 在Java多线程中,可以使用synchronized关键字来实现线程之间的同步互斥,但在JDK1.5中新增加了ReentrantLock类也能达到同样的效果,并且在扩 ...

  10. Cucumber

    http://www.ibm.com/developerworks/library/a-automating-ria/ Cucumber is a testing framework that hel ...