`
tangay
  • 浏览: 94670 次
  • 性别: Icon_minigender_1
  • 来自: 南京
社区版块
存档分类
最新评论

如何在windows平台上用Eclipse调试运行HBase

阅读更多

1. 下载和安装cygwin(http://www.cygwin.com/)

2. 下载新的Zookeeper包和HBase包,我这里ZooKeeper版本为3.3.1,HBase版本为0.20.4

3. 把利用它们的源码包在Eclipse下生成2个独立的Project,注意:zookeeper工程,你要把那个conf目录加入到工程的src中去

4. 修改zookeeper工程下的conf目录中的zoo.cfg文件,例子如下:

# The number of milliseconds of each tick
tickTime=5000
# the directory where the snapshot is stored.
dataDir=D:/zookeeper-3.3.1/data
# the port at which the clients will connect
clientPort=2181

 就是给zookeeper指定文件存放的地方以及端口

 

5.启动zookeeper

在Eclipse中新建一个Run config, main class为:org.apache.zookeeper.server.quorum.QuorumPeerMain

 

启动的程序参数为:D:/workspace/zookeeper3.3.1/conf/zoo.cfg(这个上面我们改动的东东啦,当然你可能不是这个路径)

 

启动的虚拟机参数为:

-Dzookeeper.log.dir=D:/workspace/zookeeper3.3.1/log
-Dzookeeper.root.logger=INFO,CONSOLE

 

如图所示:


 

好了,这样就可以在Eclipse中把ZooKeeper启动起来了。

 

 

6 修改HBase project中的一个类

 

org.apache.hadoop.hbase.LocalHBaseCluster

 

找到它的main函数,把main函数改成下

public static void main(String[] args) throws IOException {

HBaseConfiguration conf = new HBaseConfiguration();
conf.set("hbase.zookeeper.quorum", "localhost");
conf.set("hbase.zookeeper.property.clientPort", "2181");
LocalHBaseCluster cluster = new LocalHBaseCluster(conf,1);
cluster.startup();
}

 

注意红色那行: LocalHBaseCluster cluster = new LocalHBaseCluster(conf,1); 构造函数中的1是代表Region server的个数,在这里我只想起一个region server.

 

7 修改HBase的配置文件

   在HBase project下的src中你可以看到hbase-default.xml和hbase-site.xml两个文件,你改哪个都可以。我是直接在

hbase-default.xml改的,重要的是下面3个属性hbase.rootdir,hbase.cluster.distributed,hbase.tmp.dir,

我把hbase.rootdir,hbase.tmp.dir都指向了本地的目录,你当然可以根据自己的需要调整,当然你格式一定像我一样写哦。

<property>
<name>hbase.rootdir</name>
<value>file:///D:/hbase-0.20.3/data </value>
<description>The directory shared by region servers.
Should be fully-qualified to include the filesystem to use.
E.g: hdfs://NAMENODE_SERVER:PORT/HBASE_ROOTDIR
</description>
</property>
<property>
<name>hbase.cluster.distributed</name>
<value>false </value>
<description>The mode the cluster will be in. Possible values are
false: standalone and pseudo-distributed setups with managed Zookeeper
true: fully-distributed with unmanaged Zookeeper Quorum (see hbase-env.sh)
</description>
</property>
<property>
<name>hbase.tmp.dir</name>
<value>D:/hbase-0.20.3/tmp </value>
<description>Temporary directory on the local filesystem.</description>
</property>
<property>
 

 

8 启动HBase,简单,直接run org.apache.hadoop.hbase.LocalHBaseCluster就可以了,run config不需要 没有什么别的配置。当然就也可以debug了。

 

 

9 比较重要的说明: 如果你不修改Hbase工程源码中的hbase-default.xml或者hbase-site.xml的话,你在调试的过程中会经常碰到诸如:频繁的扫描-META-表,HBase Client端超时等等,非常不利于你调试的,所以你要修改hbase-default.xml或者hbase-site.xml,将一些参数调整下。我这里比较懒,我是直接修改了hbase-default.xml了,你改hbase-site.xml也可以,你改hbase-site.xml其实是相当于"override" hbase-default.xml中的默认配置。好吧,我把我自己修改好的hbase-default.xml直接发上来,我这样改过后,在调试中没有出现什么不爽的情况。

 

 

 

 

 

 

 

 

 

  • 大小: 63.5 KB
分享到:
评论
3 楼 Detox 2013-11-25  
stephansun 写道
赞~

对于用Eclipse调试Zookeeper补充一点:
虚拟机参数
-Dzookeeper.log.dir=xxx
-Dzookeeper.root.logger=INFO,CONSOLE
需要log4j的配合,而log4j默认会在classpath下找log4j.properties文件,Zookeeper的这个文件放在conf目录下,因此在Eclipse中通过运行QuorumPeerMain类来启动需要将conf目录变为classpath的一部分
Java Build Path --> Add Class Folder --> 选择conf

如果不这样做,Eclipse的console会出现
No appenders could be found for logger (org.apache.zookeeper.server.quorum.QuorumPeerConfig).
的红色输出,虽然Zookeeper已经启动了,但日志就没显示了。


这个具体怎么去调试呢,比如我要建表 怎么操作. 求详细步骤 谢谢!
2 楼 stephansun 2013-10-13  
赞~

对于用Eclipse调试Zookeeper补充一点:
虚拟机参数
-Dzookeeper.log.dir=xxx
-Dzookeeper.root.logger=INFO,CONSOLE
需要log4j的配合,而log4j默认会在classpath下找log4j.properties文件,Zookeeper的这个文件放在conf目录下,因此在Eclipse中通过运行QuorumPeerMain类来启动需要将conf目录变为classpath的一部分
Java Build Path --> Add Class Folder --> 选择conf

如果不这样做,Eclipse的console会出现
No appenders could be found for logger (org.apache.zookeeper.server.quorum.QuorumPeerConfig).
的红色输出,虽然Zookeeper已经启动了,但日志就没显示了。
1 楼 run_xiao 2010-09-15  
LZ是以本地方式启动hbase。也可以在一台机器上同时启动一个master(HMaster)和regionserver(HRegionServer),这样做一个伪分布式的调试环境。

相关推荐

    Windows7下eclipse调试Fedora虚拟机的hadoop+hbase伪分布式

    在深入探讨Windows7下使用Eclipse调试Fedora虚拟机上的Hadoop+hBase伪分布式之前,我们首先需要理解这个环境配置的核心要素。本文将详细介绍如何在有限的资源条件下,利用Windows7作为主机,通过VMware虚拟化技术...

    Hadoop与HBase自学笔记

    9. **在Eclipse下开发HBase**:学习如何在Eclipse集成开发环境中编写和调试HBase应用程序。 10. **集群下开发HBase**:当对单机环境熟悉后,可以进一步学习如何在多节点集群上配置和使用HBase,包括数据分布、容错...

    hadoop和hbase分布式配置及整合eclipse开发.pdf

    本文档旨在详细介绍如何在Windows环境下配置Hadoop与HBase,并通过Eclipse进行开发的相关知识点。此外,文档还涉及了如何在Linux环境下进行相应的调整,以便更好地满足不同用户的需求。 #### 二、软件下载与安装 #...

    eclipse集成hadoop+spark+hive开发源码实例

    在Windows操作系统中,Eclipse是一款广泛使用的Java集成开发环境(IDE),它对于开发分布式计算框架如Hadoop、Spark以及数据仓库工具Hive来说,是非常有用的。本教程将深入讲解如何在Eclipse中集成这些组件,以创建...

    Hadoop_2.X,eclipse开发插件

    在Windows 7操作系统上,使用Eclipse开发Hadoop应用时,需要特定的插件来实现与远程Hadoop集群的连接。 Hadoop是一个开源框架,主要用于存储和处理大规模数据。Hadoop 2.x的核心组件包括HDFS(Hadoop Distributed ...

    Hadoop开发者第一期入门专刊

    ### 在Windowseclipse上单步调试Hive教程 Hive是基于Hadoop的数据仓库工具,可以帮助用户轻松地进行数据提取、转换和加载(ETL)。在Eclipse中调试Hive SQL查询可以让开发者更方便地定位和解决问题。主要步骤包括...

    山东大学非关系数据库实验报告

    在Windows 10环境下,可以通过安装HBase的本地模式或者配置Hadoop集群来运行HBase。Eclipse作为Java开发工具,可以用来编写HBase相关的Java应用程序。在实验中,学生可能会学习到如何创建表、插入数据、查询数据以及...

    win10下hadoop2.6.4 bin(含winutils.exe和hadoop.dll).zip

    不过,通过特定的工具和配置,我们可以在Windows上运行Hadoop。这个压缩包“win10下hadoop2.6.4 bin(含winutils.exe和hadoop.dll).zip”提供了适用于Windows 10的Hadoop二进制文件,尤其是`winutils.exe`和`hadoop....

    零基础学习hadoop编程篇 (3).docx

    6. **Hadoop集群连接**:使用Hadoop-Eclipse-Plugin可以方便地在Eclipse中远程调试和运行MapReduce程序。 7. **源码编译**:如果你需要修改或扩展Hadoop源码,你需要了解如何使用Maven来编译Hadoop。这包括下载源码...

    Hadoop开发

    - **在Windows上使用Eclipse编写Hadoop应用程序**:通过Eclipse提供的插件,可以方便地在Windows环境下编写和测试Hadoop应用程序。具体步骤包括创建Hadoop项目、编写MapReduce程序等。 #### Hadoop生态系统中的其他...

    零基础学习hadoop编程篇.doc

    此外,掌握Eclipse的高级使用技巧,例如项目管理、调试、优化代码等,将大大提高开发效率。在Hadoop开发过程中,你可能还会遇到诸如数据处理、错误排查、性能调优等问题,这些都是需要逐步学习和实践的。 总之,零...

    Hadoop开发者入门专刊.pdf

    - **在Windows上安装Hadoop**:由于Hadoop原生是为Linux设计的,因此在Windows上的安装可能会遇到一些额外的步骤。主要包括安装JDK、配置环境变量、设置Hadoop配置文件等。 - **在Linux上安装Hadoop**:相对简单,...

    hadoop大数据培训零基础学习hadoop-北京尚学堂.pdf

    - 使用Hadoop-Eclipse-Plugin插件,可以方便地在Eclipse中远程调试Hadoop程序,这对于在本地开发并在集群上运行程序很有帮助。 - 理解MapReduce编程模型,包括Mapper和Reducer的职责,以及它们如何协同工作以处理...

    Nutch 安装ppt

    Cygwin 可以提供类似于 Linux 的环境,使得 Nutch 能够在 Windows 下正常运行。 **Cygwin 安装地址**:[http://www.cygwin.com/](http://www.cygwin.com/) **导入步骤**: 1. **下载 Nutch 源码**:首先需要从...

Global site tag (gtag.js) - Google Analytics