2017-12-12 8 views
0
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.client.HBaseAdmin; 

public class CreateTable { 

    public static void main(String[] args) throws IOException { 
     Configuration con = HBaseConfiguration.create(); 
     HBaseAdmin admin = new HBaseAdmin(con); 

     HTableDescriptor ht = new HTableDescriptor("emp"); 

     ht.addFamily(new HColumnDescriptor("add")); 
     ht.addFamily(new HColumnDescriptor("dept")); 

     admin.createTable(ht); 

     System.out.println("Table Created"); 
    } 
} 

私はHbaseテーブルを作成するために上記のコードを使用しました。私は必要なJARファイルをすべてダウンロードして、エラーが発生したときに追加しました。しかし、まだ飼い主に関係する多くのエラーが発生しています。 私の疑いは、テーブルを作成する前に、Java APIを使ってZookeeperに接続する必要があるということです。そして、JDK 1.8を使用しています JAVA APIを使用してHbaseでテーブルを作成する際の正確な手順を教えてください。 Zookeeperには以下のエラーがありますが、Zookeeper Jarを追加しました。 17/12/11 12:44:10 INFO zookeeper.ZooKeeper:クライアント環境:zookeeper.version = 3.3.1-942149、05/07/2010に構築17:14 GMT 17/12/11 12:44: 10 INFO zookeeper.ZooKeeper:クライアント環境:host.name = quickstart.cloudera 17/12/11 12:44:10 INFO zookeeper.ZooKeeper:クライアント環境:java.version = 1.8.0_144 17/12/11 12: 44:10 INFO zookeeper.ZooKeeper:クライアント環境:java.vendor = Oracle Corporation 17/12/11 12:44:10 INFO zookeeper.ZooKeeper:クライアント環境:java.home =/home/cloudera/jdk1.8.0_144/jre 17/12/11 12:44:10 INFO zookeeper.ZooKeeper:クライアント環境:java.class.path =/home/cloudera/workspace/HbaseTbl/bin:/ home/cloudera/Downloads/apache-logging-log4j。 jar:/home/cloudera/Downloads/hadoop-core-0.20.2-cdh3u0.jar:/home/cloudera/Downloads/hbase-0.94.0.jar:/ home/cloudera/Downloads/org-apache-commo ns-logging.jar:/home/cloudera/Downloads/zookeeper.jar 17/12/11 12:44:10 INFO zookeeper.ZooKeeper:クライアント環境:java.library.path =/usr/java/packages/lib/AMD64:は/ usr/lib64に:/ lib64に:/ libにします。/ usr/libにJava APIを使用したHbaseでのテーブルの作成

+0

入手しているエラーメッセージを追加できますか?また、飼い猫の状態も、その稼働している? –

+0

実際、このコードをVirtual Machineで実行しているので、私はzookeeperに関する多くのエラーを受けています。 – Karthik

+0

そしてテスト目的で仮想マシンにHbaseテーブルを作成しているので、必要なJarsを追加しています。プロジェクトのjarファイルを使わないで、間違っていると私を修正してください。 – Karthik

答えて

0

ここでは私のためにうまく働いたコードです:

 conf = HBaseConfiguration.create(); 
     admin = new HBaseAdmin(conf); 

     TableName tableName = TableName.valueOf("test"); 
     HTableDescriptor htd = new HTableDescriptor(tableName); 
     HColumnDescriptor hcd = new HColumnDescriptor("data"); 

     htd.addFamily(hcd); 
     admin.createTable(htd); 

もbash_profile

で、次のenv変数を追加
export HADOOP_HOME=/Users/karan.verma/Documents/backups/h/hadoop-2.6.4 
export PATH=$PATH:$HADOOP_HOME/bin 
export PATH=$PATH:$HADOOP_HOME/sbin 
export HADOOP_PREFIX=/Users/karan.verma/Documents/backups/h/hadoop-2.6.4 
export HADOOP_CONF_DIR=$HADOOP_HOME/etc/hadoop 
export HADOOP_MAPRED_HOME=$HADOOP_HOME 
export HADOOP_COMMON_HOME=$HADOOP_HOME 
export HADOOP_HDFS_HOME=$HADOOP_HOME 
export YARN_HOME=$HADOOP_HOME 

export HADOOP_COMMON_LIB_NATIVE_DIR=$HADOOP_HOME/lib/native 
export HADOOP_OPTS="-Djava.library.path=$HADOOP_HOME/lib" 
export HADOOP_CLASSPATH=${JAVA_HOME}/lib/tools.jar 
+0

あなたは – Karthik

+0

org.apache.hbase HBaseのクライアント 1.3.1 org.apache.hbase hbase-を使用していたJarファイルを提供していただけますサーバー 0.95.0 KayV

+0

私のコードはexeではありませんHBaseAdminの後にカットするadmin =新しいHBaseAdmin(hconfig);私が質問したように、それは飼い犬飼いに関する多くの情報を投げている。これで私を助けてください。 – Karthik

関連する問題