Hadoop上配置Hbase数据库
已有环境:
1. Ubuntu:14.04.2
2.jdk: 1.8.0_45
3.hadoop:2.6.0
4.hBase:1.0.0
详细过程:
1.下载最新的Hbase,这里我下载的是hbase-1.0.0版本,然后打开终端,输入: tar zxvf hbase-1.0.0.tar.gz解压,然后将hbase放到合适的路径下(可以是用户目录,也可以是根目录,不太清楚是否必须要与hadoop放在用一个根目录下,本人是放在同一个目录下的)
2.修改2个配置文件(这里是伪分布式,单机版不再叙述)
- hbase-env.sh(在hbase的安装目录下的conf文件夹中)
export JAVA_HOME=/usr/lib/jvm/java
export HBASE_MANAGES_ZK=true
//打开注释,并配置java环境
- hbase-site.xml
//加入如下配置信息:
<property>
<name>hbase.rootdir</name>
<value>hdfs://localhost:8020/hbase</value>//这里的路径必须与hadoop的core-site.xml中的fs.default.name一致,还有一个需要注意的地方是端口号8020,默认是9000。我的设置9000时没能成功启动hbase,当换成8020时,成功启动
</property> <property>
<name>hbase.cluster.distributed</name>
<value>true</value>
</property> <property>
<name>dfs.replication</name>
<value></value>
</property> <property>
<name>hbase.zookeeper.property.dataDir</name>
<value>/home/server1/Documents/zookeeper</value>//设置让hbase存储zookeeper文件的地方
</property>
3.启动hadoop.
4.启动hbase。进入bin,输入命令:./start-hbase.sh
Jps
HQuorumPeer
HRegionServer
HMaster //出现HMster说明配置成功
SecondaryNameNode
DataNode
NameNode
5.在终端输入 bin/hbase shell进入shell模式。
6。在shell模式下进行建表等操作:
create 'test','cf' //建立一张名为‘test’,含有一个列族‘cf’的表
describe 'test' //列出表的详细信息
put 'test','row1','cf:a','value1' //在表中插入一行数据,
//row1为唯一标识,cf中含一列名为a,它的值为value1
7.关闭hbase和hadoop
8.可能出现的问题及解决方案:
- hbase无法启动的问题。
- 导致hbase无法启动的原因有多种,由于本人太过幸运,种种问题均遇到过O(∩_∩)O~
- 一,启动hbase后,没有HMaster。
- 二,启动hbase后,HMaster闪退。
- 三,建表时产生空指针错误。
- 四,hbase无法启动。
- 解决方案:
- 搜索了网络上各种解决方案,大致有以下几种方法:
- 修改hbase-site.xml,添加各种配置信息;
- 修改etc/hosts,将Ubuntu对应的IP那一项删除;
- 修改etc/profile,配置hbase的环境变量(类似JDK的配置);
- 将hadoop里的core-site.xml和hadoop-core-xxx.jar copy到hbase中的相应目录中(由于我安装的是hadoop-2.6.0版本,搜索了半天都没有找到hadoop-core jar文件,然后Google之,说是2.x以上的版本都没有这些jar文件,非要使用的话只能从官网下载);
- 自己的解决方案:
- 真正的原因是hadoop,hbase与jdk版本不兼容,导致以上各种问题的出现,包括闪退,无法启动等等。最后一个解决方案正是为了解决不兼容的问题。由于我自己起初用的是hadoop-2.6.0,jdk是1.8.x,hbase是0.8.27。本质原因就是hbase版本太低,而jdk版本太高。最简单的方案是删除低版本的hbase,然后安装最新的高版本hbase,问题即可轻易解决。
- 搜索了网络上各种解决方案,大致有以下几种方法:
总结:版本不一致会导致兼容问题,需要配置各种信息,所以以后要先查看课本或者别人的博客是用的那个版本的文件,然后在安装,站在巨人的肩上,才能走得更远!!
Hadoop上配置Hbase数据库的更多相关文章
- 在Hadoop集群上的HBase配置
之前,我们已经在hadoop集群上配置了Hive,今天我们来配置下Hbase. 一.准备工作 1.ZooKeeper下载地址:http://archive.apache.org/dist/zookee ...
- HBase数据库集群配置
0,HBase简介 HBase是Apache Hadoop中的一个子项目,是一个HBase是一个开源的.分布式的.多版本的.面向列的.非关系(NoSQL)的.可伸缩性分布式数据存储模型,Hbase依托 ...
- HBase数据库集群配置【转】
https://www.cnblogs.com/ejiyuan/p/5591613.html HBase简介 HBase是Apache Hadoop中的一个子项目,是一个HBase是一个开源的.分布式 ...
- [转载] 详细讲解Hadoop中的简单数据库HBase
转载自http://www.csdn.net/article/2010-11-28/282614 数据模型 HBase数据库使用了和Bigtable非常相似的数据模型.用户在表格里存储许多数据行.每个 ...
- HBase数据库配置中各配置项的释义及默认值
2018-11-26 16:09 2018-12-20 15:44 摘自HBASE官方网站 http://hbase.apache.org/book.html#_introduction 第7.2 ...
- (转)单机上配置hadoop
哈哈,几天连续收到百度两次电话,均是利好消息,于是乎不知不觉的自己的工作效率也提高了,几天折腾了好久终于在单机上配置好了hadoop,然后也成功的运行了一个用例,耶耶耶耶耶耶. 转自:http://w ...
- mac上eclipse上配置hadoop
在mac上安装了eclipse之后,配置hadoop其实跟在linux上配置差不多,只是mac上得eclipse和界面和linux上得有点不同. 一:安装eclipse eclipse得安装比较简单, ...
- 在MacOs上配置Hadoop和Spark环境
在MacOs上配置hadoop和spark环境 Setting up Hadoop with Spark on MacOs Instructions 准备环境 如果没有brew,先google怎样安装 ...
- 在Linux(Centos7)系统上对进行Hadoop分布式配置以及运行Hadoop伪分布式实例
在Linux(Centos7)系统上对进行Hadoop分布式配置以及运行Hadoop伪分布式实例 ...
随机推荐
- Linux中查看已安装内存与交换空间使用情况
目录 1. free查看内存使用量 2. 查看 /proc/meminfo 文件获取物理内存信息 3. top命令获取内存用量 1. free查看内存用量命令 该命令是专门用于查看内存用量 ...
- Struts2拦截器说明
有关于Struts2的拦截器的原理 在此共设置了两个拦截器,firstInterception.SecondInterception package struts2_inteception; publ ...
- Apache Maven(三):POM
什么是 POM? POM (Project Object Model) 项目对象模型.它是一个XML文件,其中包含有关Maven用于构建项目的项目和配置细节的信息.它包含大多数项目的默认值.例如,构建 ...
- tomcat+nginx+keepalived的配置
tomcat+nginx+keepalived的配置 1.在官网上下载Tomcat 2.将压缩包解压,并且移动到/opt/data/的目录下. .tar.gz /opt/data/ 3.进入到Tomc ...
- zabbix使用iostat命令参数监控磁盘性能
iostat命令 先说一个坑把,在开始监控的时候使用命令iostat -dtkx,得到的结果看上去没问题,但是在web监控窗口数据就说不变动,为啥呢,因为iostat这个命令得到的第一个数据始终是磁盘 ...
- Linux编程之Epoll高并发
网络上所有资料都说epoll是高并发.单线程.IO重叠服用的首选架构,比select和poll性能都要好,特别是在有大量不活跃连接的情况下.具体原理就不阐述了,下面说说使用. 具有有三个函数: #in ...
- mysql 5.8 查询最新一条数据
SELECT * FROM ( ,) FROM (SELECT * FROM or_task_node ORDER BY created_date DESC) temp ) AS vars ) t g ...
- TopCoder SRM 489 Div1 Lev3:AppleTree
挺优秀的一道题,想出做法时有些惊艳. 题意: 数轴上有\(D\)个连续整数刻度,有\(N\)棵树要种在这些刻度上,其中第\(i\)棵与两旁(如果有的话)相邻的树至少要相距\(R_i\),问方法数. \ ...
- python2.7入门---模块(Module)
来,这次我们就看下Python 模块(Module).它是一个 Python 文件,以 .py 结尾,包含了 Python 对象定义和Python语句.模块让你能够有逻辑地组织你的 Pytho ...
- python2.7入门---Number(数字)
今天咱们来简单分享一下关于python中的一种数据类型和操作方法.费话不多说哈,咱们直接来进行实践加理论.首先,我们要知道,Python Number 数据类型用于存储数.数据类型是不允许改变 ...