Eclipse连接hbase并实现简单表的建立

来源:互联网 发布:mac picasa照片查看器 编辑:程序博客网 时间:2024/04/30 15:19

 

Eclipse连接hbase并实现简单表的建立

在安装启动环境之前要做的准备.

1.JDK以及Eclipse软

2.Eclpse的Hadoop插件一份  点击下载

3.hadoop压缩包一份,

4.确保集群正在启动状态正常,node节点工作正常,宿主机可以ping通master主机,并可以连接SSH(测试防火墙是否关闭)

5.复制hadoop集群中的hosts文件到windows的c:/windows/system32/drivers/etc/hosts或在c:/windows/system32/drivers/etc目录下新建无后缀的hosts文件,并输入虚拟机的IP和主机名

安装

1.首先安装JDK和Eclipse软件.能够正常启动

2.打开Hadoop插件.把压缩包中的release文件夹下的所有JAR文件.复制到eclipse\plugins文件夹下

3.解压hadoop-2.6.4(对应版本),本例为d:盘

4.设置WINDOWS环境变量 (右击我的电脑--->属性--->高级系统设置--->高级里的环境变量)

   系统变量  1新建 变量:HADOOP_HOME值:D:\hadoop-2.6.4

 2Path里添加路径D:\hadoop-2.6.4\bin\

5.打开eclipse,选中WindowPreferences


6.将下列图示的路径,设置为hadoop的根目录


7.设置插件显示和站点添加





 

未报错则连接成功:

 

xshell  master内:#hadoop fs -mkdir /user

(问题解决:1.若提示中出现name node is safe mode,则输入 hadoop dfsadmin -safemode leave,退出安全模式

2.若出现权限问题,在xshell master里:#hadoop fs -chmod 777 /)

8.

 




9.创建类


 

10.运行简单的建表代码

 

 

import java.io.IOException;

 

import org.apache.hadoop.conf.Configuration;

import org.apache.hadoop.hbase.HBaseConfiguration;

import org.apache.hadoop.hbase.HColumnDescriptor;

import org.apache.hadoop.hbase.HTableDescriptor;

import org.apache.hadoop.hbase.MasterNotRunningException;

import org.apache.hadoop.hbase.TableName;

import org.apache.hadoop.hbase.ZooKeeperConnectionException;

import org.apache.hadoop.hbase.client.Get;

import org.apache.hadoop.hbase.client.HBaseAdmin;

import org.apache.hadoop.hbase.client.HTable;

import org.apache.hadoop.hbase.client.HTablePool;

import org.apache.hadoop.hbase.client.Put;

import org.apache.hadoop.hbase.client.Result;

import org.apache.hadoop.hbase.util.Bytes;

import java.awt.image.BufferedImage;  

import java.io.ByteArrayInputStream;  

import java.io.ByteArrayOutputStream;  

import java.io.File;  

import java.io.IOException;  

  

import javax.imageio.ImageIO;  

  

import sun.misc.BASE64Decoder;  

import sun.misc.BASE64Encoder;

 

public class OperationTable {

 static BASE64Encoderencoder = new sun.misc.BASE64Encoder();  

    static BASE64Decoderdecoder = new sun.misc.BASE64Decoder();  

        private static Configurationconf = null;

        static {

                conf = HBaseConfiguration.create();

                conf.set("hbase.zookeeper.quorum","master");// 使用eclipse时必须添加这个,否则无法定位master需要配置hosts

                conf.set("hbase.zookeeper.property.clientPort","2181");

        }

 

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

//        

               createTable("blog1");

               

                

        }

        //在Hasee里建立表

        private static void createTable(StringTableName) throws MasterNotRunningException,

                        ZooKeeperConnectionException, IOException {

 

                HBaseAdmin admin = new HBaseAdmin(conf);// 新建一个数据库管理员//新api

                if (admin.tableExists(TableName.valueOf("LogTable"))) {

                        System.out.println("table is not exist!");

                        System.exit(0);

                } else {

 

                        HTableDescriptor desc =new HTableDescriptor(TableName.valueOf(TableName));

                        desc.addFamily(new HColumnDescriptor("info"));

                        admin.createTable(desc);

                        admin.close();

                        System.out.println("create table Success!");

                }

        }

 

       

      

}

 

 

11.导入相应的jar包

 


 

点击add External JARs... 添加hbase/lib目录下的所有jar包,应用,问题解决

 

 

src目录下创建一个文件,文件名为
log4j.properties 
内容如下

# Root Logger

log4j.rootLogger=DEBUG,console,file

log4j.appender.console=org.apache.log4j.ConsoleAppender

log4j.appender.console.layout=org.apache.log4j.PatternLayout

log4j.appender.console.layout.ConversionPattern=%5p [%t] - %m%n

log4j.appender.file=org.apache.log4j.DailyRollingFileAppender

log4j.appender.file.File=log.html

log4j.appender.file.layout=org.apache.log4j.HTMLLayout

 

11.9. 验收结果

运行前

 

运行后

 

建表完成


原创粉丝点击