这次记录下学习hbase遇到的一些问题,有了新问题也会追加。
背景:使用vmware创建3台桥接模式虚拟机进行集群,熟练之后大概会使用7台。
宿主机操作系统:mac osx 10.11.3 16G 256G SSD。
软件版本:hadoop 2.7.2、zookeeper 3.4.8、hbase 1.2.2
1、瞎捣鼓,通过hdfs将/hbase目录删除了,此时执行在hbase shell中执行list命令是看不到表了的,但是再创建与之前相同名称的表便发生了Table Already Exists异常。
因为hbase的所有数据是在hdfs上进行存储的,所以当时以为删除hdfs上的hbase信息就可以了,但是,zookeeper中也对我们的目录结构进行了保存。所以,还需要将zookeeper中的hbase信息删除。
进入zookeeper,然后执行rmr /hbase/table便能清空所有表信息(慎用),当然也可以只删除指定表的信息。
2、wifi环境,dhcp协议,java客户端连接zookeeper服务器速度异常缓慢,当使用网线时却没有这个问题。
解决方式:1、使用网线 2、配置静态ip与dns
Ps:该问题仅在mac上发生过。
3、集群的zookeeper服务列表如下:
dataDir=/usr/local/project/hadoop/tmp/zookeeper/data dataLogDir=/usr/local/project/hadoop/tmp/zookeeper/log clientPort=2181 server.1=Master:2888:3888 server.2=Slave1:2888:3888 server.3=Slave2:2888:3888
结果启动hbase服务之后,dataDir下的myid遭到了覆写,变成了0、1、2,而且关闭时也会报错
no zookeeper to stop because no pid file /tmp/hbase-root-zookeeper.pid
关于这个问题,是因为hbase/conf目录下的配置不正确导致的,为hbase/conf/hbase-env.sh添加export HBASE_MANAGES_ZK=false即可。
4、PleaseHoldException:Master is initializing
其实我虚拟机有6台,家里环境一套,公司一套,然后某次突然发生了这个错误。该错误在是通过shell执行list命令时出现的,查资料后发现是几台虚拟机时间不同步导致的,所以我们需要统一配置时间。
[root@Master ~]# date 2016年 08月 04日 星期四 19:14:28 CST [root@Master ~]# yum install -y ntpdate ......... [root@Master ~]# ntpdate 0.cn.pool.ntp.org ......... [root@Slave2 ~]# date 2016年 08月 04日 星期四 11:42:03 CST
这样便能使集群机器的时间同步了。
这之后还可能会继续报错,原因还是时间问题,因为如果之前有table的话,创建时间与现在的时间有差异。
解决时是按照上面第1点中的方式将table表进行了删除,之后便能保证不会发生这样的错误了。
相关推荐
java 利用 sping-data-hadoop HbaseTemplate 操作hbase find get execute 等方法 可以直接运行
搭建pinpoint需要的hbase初始化脚本hbase-create.hbase
HBase相对于关系数据库能解决的问题是什么? 2 HBase与关系数据的区别? 2 HBase与RDBMS的区别? 2 3. HBase的数据模式是怎么样的?即有哪些元素?如何存储?等 3 1). 数据模式 3 2). HBase的基本元素: 4 3) ...
HBase常见热点问题及几种解决方案.docx
HBase(hbase-2.4.9-bin.tar.gz)是一个分布式的、面向列的开源数据库,该技术来源于 Fay Chang 所撰写的Google论文“Bigtable:一个结构化数据的分布式存储系统”。就像Bigtable利用了Google文件系统(File System...
HBase开发实战,HBase学习利器:HBase实战
hadoop-2.52-hbase-0.14-hadoop2 ha高可用安装,hbase动态添加删除节点,hbase集群正常状态及启动,hbase 问题汇总
对HBase的API做了一层抽象,统一了HBase1.x和HBase2.x的实现,并提供了读写HBase的ORM的支持,同时,sdk还对HBase thrift 的客户端API进行了池化封装,(类似JedisPool),消除了直接使用原生API的各种问题,使之...
HBase 官方文档.pdf HBase的操作和编程.pdf HBase Cpressr优化与实验 郭磊涛.pdf null【HBase】Data Migratin frm Gri t Clu Cmputing - Natural Sienes .pdf 分布式数据库HBase快照的设计与实现.pdf 【HBase】...
HBASE
HBase开启审计日志
python3 使用 thrift 操作hbase 安装hbase-thirft后有一个Hbase报错 使用这个修改完成的Hbase类替换掉原来的Hbase类问题全部解决 主要是因为python版本兼容性带来的问题
HBase shell的基本用法
HBase3.0参考指南 This is the official reference guide for the HBase version it ships with. Herein you will find either the definitive documentation on an HBase topic as of its standing when the ...
hbase和hive常用命令总结
作为google bigtable架构的开源实现,hbase能够支持数以十亿计的记录数和数以百万计的字段,与此同时它还能够保证常量级的读写性能。很多it管理层正在质疑hbase。而这本书提供了很多有意义的答案,无论你是否正在...
1. 请用java集合的代码描述HBase的表结构 2. 请简述HBase中数据写入最后导致Region分裂的全过程 3. 如果设计一个笔记的表,表中要求有笔记的属性和笔记的内容,怎么做 4. HBase部署时如何指定多个zookeeper 5. HBase...
注意:zookeeper3.4.13和hbase2.3.5都是采用docker-compose方式部署 原文链接:https://blog.csdn.net/m0_37814112/article/details/120915194 说明:使用外部zookeeper3.4.13之hbase2.3.5一键部署工具,支持部署、...
Hbase shell 、Hbase api、Hbase 配置