最近在学习一个项目,里面用到了Hbase,传说优点很多,用替代的方案不太好,同时也是开启大数据学习的一扇门,所以自己也尝试搭建一个本地的调试环境,奈何对Windows系统不太友好,同时又不太想开远程主机搭建,毕竟本地运行能让我对整体有个印象,网上多方摸索,终于实践成功,特写下过程和心得
环境
- Windows 64位
- JDK8
参考文章
- https://blog.csdn.net/tornadojava/article/details/56013420
- https://blog.csdn.net/tornadojava/article/details/56479651
-
https://www.bbsmax.com/A/kvJ3LyD5gM/
以下过程极大部分搬运自前两篇文章
过程
- 准备
1:安装JDK1.8。
2:环境变量中添加JAVA_HOME。
3:下载hadoop2.7.3。
4:解压到D盘,路径为D:\hadoop2.7.3。
5:环境变量中添加HADOOP_HOME=D:\hadoop2.7.3
6:将D:\hadoop2.7.3\bin和D:\hadoop2.7.3\sbin添加到path中。
7:下载一个重要的东西。
hadooponwindows
地址:https://github.com/sardetushar/hadooponwindows
8:删除hadoop下的etc和bin。
9:将hadooponwindows里的etc和bin拷贝到D:\hadoop2.7.1\下。
准备工作完成。
补充:如果Windows上面的解压软件解压以上下载的文件有问题的话,就下载
cywin
,然后再cywin当中使用tar -zxvf XXXX.tar.gz
命令进行解压就好
修改配置文件
- etc/hadoop/core-site.xml
<configuration>
<property>
<name>fs.defaultFS</name>
<value>hdfs://localhost:9000</value>
</property>
</configuration>
- etc/hadoop/mapred-site.xml
<configuration>
<property>
<name>mapreduce.framework.name</name>
<value>yarn</value>
</property>
</configuration>
- etc/hadoop/hdfs-site.xml
<configuration>
<property>
<name>dfs.replication</name>
<value>1</value>
</property>
<property>
<name>dfs.namenode.name.dir</name>
<value>file:/hadoop-2.7.3/data/namenode</value>
</property>
<property>
<name>dfs.datanode.data.dir</name>
<value>file:/hadoop-2.7.3/data/datanode</value>
</property>
</configuration>
- etc\hadoop\yarn-site.xml
<configuration>
<property>
<name>yarn.nodemanager.aux-services</name>
<value>mapreduce_shuffle</value>
</property>
<property>
<name>yarn.nodemanager.aux-services.mapreduce.shuffle.class</name>
<value>org.apache.hadoop.mapred.ShuffleHandler</value>
</property>
</configuration>
- etc/hadoop/hadoop-env.cmd
@rem set JAVA_HOME=%JAVA_HOME%
set JAVA_HOME=C:\PROGRA~1\Java\jdk1.8.0_111
这个视自己本机的JDK安装目录而定
执行命令
- 格式化namenode
hdfs namenode -format
- 启动Hadoop
sbin目录下执行
start-all
启动了4个窗口,namenode,datanode,yarn resourcemanager,yarn nodemanager.
- 停止Hadoop
sbin下执行
stop-all
Hadoop都停止了。
其他
Resourcemanager GUI address - http://localhost:8088
Namenode GUI address – http://localhost:50070
至此windows下Hadoop安装成功!
插曲
HBase现在可以在windows下安装,而且不需要cygwin。虽然是单节点,但是作为开发研究是够用的。
开始
-
下载HBase,由于我的Hadoop是2.7.3,所以我HBase选择1.3.0。
版本对照表:
图片.png
部署
修改配置
- conf/hbase-site.xml
<configuration>
<property>
<!-- hbase提供的服务地址-->
<name>hbase.master</name>
<value>localhost:6000</value>
</property>
<property>
<name>hbase.master.maxclockskew</name>
<value>180000</value>
</property>
<property>
<!-- hbase在hdfs里的目录 -->
<name>hbase.rootdir</name>
<value>hdfs://localhost:9000/hbase</value>
</property>
<property>
<name>hbase.cluster.distributed</name>
<value>false</value>
</property>
<property>
<!-- ZK的主机地址 -->
<name>hbase.zookeeper.quorum</name>
<value>localhost</value>
</property>
<property>
<!-- hbase在ZK上保存数据的目录 -->
<name>hbase.zookeeper.property.dataDir</name>
<value>/hbase</value>
</property>
<property>
<name>dfs.replication</name>
<value>1</value>
</property>
</configuration>
- 修改环境配置指令
修改 conf/hbase-env.cmd
设置JAVA_HOME,类似于部署hadoop。
set JAVA_HOME=C:\PROGRA~1\Java\jdk1.8.0_111
还是视自己的JDK安装目录而定
- 停止hadoop
sbin>stop-all.cmd
- 格式化Hadoop命名节点
bin>hdfs namenode -format
- 启动hadoop
sbin>start-all.cmd
- 启动hbase
bin>start-hbase.cmd
- 启动 HBase的rest服务
bin>hbase rest start -p 6000
- 启动HBase Shell
bin>hbase shell
通过shell操作hbase
创建表
创建一个名为 test 的表,这个表只有一个 列族 为 cf。可以列出所有的表来检查创建情况,然后插入些值。
create 'test','cf'
插入记录
put 'test','row1','cf:a','value1'
查询
scan 'test'
结果我就不演示了,因为,,我把命令窗口关闭了。。。。
网友评论