windows环境下安装hbase(不需要cygwin,需要cygwin两种方法)
来源:互联网 发布:网络与信息安全事件 编辑:程序博客网 时间:2024/06/15 03:33
hbase0.96.0单机模式安装(win7 无需cygwin)
- 博客分类:
- Hadoop
1.1下载解压最新版本
选择一个 Apache 下载镜像:http://www.apache.org/dyn/closer.cgi/hbase/,下载 HBase Releases. 点击 stable目录,然后下载后缀为 .tar.gz 的文件; 例如 hbase-0.90.4.tar.gz.
后面需要安装集群,整合到hadoop,所以注意选择与hadoop对应的版本:
选择 Hadoop 版本对HBase部署很关键。下表显示不同HBase支持的Hadoop版本信息。基于HBase版本,应该选择合适的Hadoop版本。我们没有绑定 Hadoop 发行版选择。可以从Apache使用 Hadoop 发行版,或了解一下Hadoop发行商产品: http://wiki.apache.org/hadoop/Distributions%20and%20Commercial%20Support
Table 2.1. Hadoop version support matrix
由于 HBase 依赖 Hadoop,它配套发布了一个Hadoop jar 文件在它的 lib 下。该套装jar仅用于独立模式。在分布式模式下,Hadoop版本必须和HBase下的版本一致。用你运行的分布式Hadoop版本jar文件替换HBase lib目录下的Hadoop jar文件,以避免版本不匹配问题。确认替换了集群中所有HBase下的jar文件。Hadoop版本不匹配问题有不同表现,但看起来都像挂掉了。
安装:
1. 环境:
Win7 64bit
JDK1.6.0_43 64bit
hbase-0.96.0-hadoop1
没错,不需要cygwin。
比较新的hbase版本已经原生支持windows了,至少支持单机模式了。
2. 下载
hbase0.20.5之后的所有版本可以在这里找到。
0.20.5之前的版本是和在hadoop工程并在一起的,可以在这里找到。
我下载的是hbase-0.96.0-hadoop1-bin.tar.gz并解压
3.配置conf/hbase-site.xml
你可能需要先编辑 conf/hbase-site.xml 去配置hbase.rootdir,来选择Hbase将数据写到哪个目录 .
单机配置,只需要如下配置hbase-site.xml:
- <?xml version="1.0"?>
- <?xml-stylesheet type="text/xsl" href="configuration.xsl"?>
- <configuration>
- <property>
- <name>hbase.rootdir</name>
- <value>file:///DIRECTORY/hbase</value>
- </property>
- </configuration>
将 DIRECTORY 替换成你期望写文件的目录. 默认 hbase.rootdir 是指向 /tmp/hbase-${user.name} ,也就说你会在重启后丢失数据(重启的时候操作系统会清理/tmp目录)
- <configuration>
- <property>
- <name>hbase.rootdir</name>
- <value>file:///C:/cygwin64/tmp/hbase/root</value>
- </property>
- <property>
- <name>hbase.tmp.dir</name>
- <value>C:/cygwin64/tmp/hbase/tmp</value>
- </property>
- <property>
- <name>hbase.zookeeper.quorum</name>
- <value>127.0.0.1</value>
- </property>
- <property>
- <name>hbase.zookeeper.property.dataDir</name>
- <value>C:/cygwin64/tmp/hbase/zoo</value>
- </property>
- <property>
- <name>hbase.cluster.distributed</name>
- <value>false</value>
- </property>
- </configuration>
配置文件里提到的3个目录也无需手工创建,第一次会自动创建。
4. 直接到windows cmd命令行下就可以了,启动hbase单机模式
- start-hbase.cmd
5. 测试 hbase shell
D:\opensource\hadoop\hbase-0.96.0-hadoop1\bin>hbase shell
HBase Shell; enter 'help<RETURN>' for list of supported commands.
Type "exit<RETURN>" to leave the HBase Shell
Version 0.96.0-hadoop1, r1531434, Fri Oct 11 15:11:29 PDT 2013
hbase(main):001:0> create 'mytable', 'data'
0 row(s) in 1.1420 seconds
=> Hbase::Table - mytable
hbase(main):002:0> put 'mytable', 'row1', 'data:1', 'value1'
0 row(s) in 0.0580 seconds
hbase(main):003:0> put 'mytable', 'row2', 'data:2', 'value2'
0 row(s) in 0.0090 seconds
hbase(main):004:0> put 'mytable', 'row3', 'data:3', 'value3'
0 row(s) in 0.0080 seconds
hbase(main):005:0> list
TABLE
mytable
1 row(s) in 0.0200 seconds
=> ["mytable"]
hbase(main):006:0> scan 'mytable'
ROW COLUMN+CELL
row1 column=data:1, timestamp=1416554699558, value=value1
row2 column=data:2, timestamp=1416554715456, value=value2
row3 column=data:3, timestamp=1416554730255, value=value3
3 row(s) in 0.0520 seconds
hbase(main):009:0> exit
测试下来一切OK,非常完美。不需要cygwin。这也算hbase给我的一个惊喜吧。
6. 补充:另一种在cygwin下运行的办法
之后无意中又尝试了在cygwin下运行,忘了开启sshd,反而成功了。
My God!开了sshd反而出错??!
测试版本同样是hbase-0.96.0-hadoop1
OK,唯一的重点就是记得关闭sshd。
然后hbase-env.sh是肯定要改的
- export JAVA_HOME=/cygdrive/c/jdk1.7.0_67
- export HBASE_CLASSPATH=/cygdrive/d/opensource/hadoop/hbase-0.96.0-hadoop1/lib/zookeeper-3.4.5.jar
- export HBASE_MANAGES_ZK=true
然后启动hbase,启动之前为避免有干扰清空log和tmp目录。
启动时出现连不到22端口的错,而且运行很慢,但是不要慌张,请继续。
$ ./bin/start-hbase.sh
127.0.0.1: ssh: connect to host 127.0.0.1 port 22: Connection refused
starting master, logging to /cygdrive/d/opensource/hadoop/hbase-0.96.0-hadoop1/bin/../logs/hbase-pchen4-master-W-SHDC-PCHEN4.out
localhost: ssh: connect to host localhost port 22: Connection refused
下面测试shell
这里会出现没有提示符的问题,而且第一个命令输入后要等很长时间才有反应。是的,不要慌张,不要以为死了,我机器上等待了大概2,3分钟(见下面的红字)后,奇迹出现了。后面的命令都正常了。
$ ./bin/hbase shell
HBase Shell; enter 'help<RETURN>' for list of supported commands.
Type "exit<RETURN>" to leave the HBase Shell
Version 0.96.0-hadoop1, r1531434, Fri Oct 11 15:11:29 PDT 2013
list
list
TABLE
0 row(s) in 154.4250 seconds
[]
create 'mytable', 'data'
create 'mytable', 'data'
0 row(s) in 0.3510 seconds
Hbase::Table - mytable
list
list
TABLE
mytable
1 row(s) in 0.0150 seconds
["mytable"]
scan 'mytable'
scan 'mytable'
ROW COLUMN+CELL
0 row(s) in 0.0280 seconds
这种方法虽然侥幸成功,但是因为速度太慢了,所以我想也没人会这样用吧。
哎,好吧。这个hbase太折腾人了,不想找麻烦的话,还是用linux吧。就这样吧。。。
- windows环境下安装hbase(不需要cygwin,需要cygwin两种方法)
- 新版本NDK在Windows下的环境搭建(不需要安装Cygwin)
- windows下安装cygwin
- Windows下cygwin绿色安装方法
- windows下搭建Cygwin环境
- Windows环境下hadoop安装——cygwin的安装
- Windows下Cygwin环境的Hadoop安装(1)- Cygwin安装和配置
- Windows下Cygwin环境的Hadoop安装(1)- Cygwin安装和配置
- windows下安装cygwin+openssh
- 在Windows中使用Cygwin安装HBase
- 在Windows中使用Cygwin安装HBase
- Windows下的linux开发环境Cygwin的安装配置
- 配置Windows下Android的NDK环境:安装,更新cygwin...
- windows下部署cygwin,模拟linux环境安装nutch搜索引擎
- Windows下使用Cygwin模拟Linux环境安装配置过程
- HBase on Windows(windows下使用cygwin安装hbase问题记录)
- cocos2dx 3.0 windows8下开发环境搭建搭建 不需要cygwin
- Windows下编译VLC2.2.1 ---CygWin环境
- Unity中单例是可以引用GameObject类型
- 优酷星球头条-卡片式控件-自定义控件实现方式
- 安装 peak-linux-driver-8.1
- [ESP8266]--开启服务器模式和客户端模式
- C#发送邮件功能
- windows环境下安装hbase(不需要cygwin,需要cygwin两种方法)
- 几招教你最简单的网站站内优化
- Android 导出 ANR 文件
- c#面向对象的概念、类
- 【XML笔记】XML文档解析
- 使用spring cloud+dotnet core搭建微服务架构:服务治理
- itext 微软雅黑 西罗马 Times New Roman ttf下载
- jmeter对http get网站访问压力测试
- cvc-complex-type.2.3: Element 'servlet' cannot have character [children], because the type's content