복붙노트

[HADOOP] Java를 사용하여 hbase를 작성할 수 없음

HADOOP

Java를 사용하여 hbase를 작성할 수 없음

hbase에서 테이블을 만들기위한 간단한 Java 코드를 작성했지만 어떻게 든 작동하지 않습니다. HMaster, Regionserver 및 Zookeeper 등 모든 서비스가 작동하는지 확인했습니다. 아래는 내가 작성한 코드입니다

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 CreateSchema
{
public static void main(String[] args) throws IOException
{

try
{
   HBaseConfiguration conf = new HBaseConfiguration(new Configuration());
   HBaseAdmin hbase = new HBaseAdmin(conf);
   HTableDescriptor desc = new HTableDescriptor("sample");
   HColumnDescriptor meta = new HColumnDescriptor("samplecolumn1".getBytes());
   HColumnDescriptor prefix = new HColumnDescriptor("samplecolumn2".getBytes());
   desc.addFamily(meta);
   desc.addFamily(prefix);
   System.out.println("Creating table");
   hbase.createTable(desc);
   System.out.println("Done");
    }
    catch(Exception e)
    {
    System.out.println("Error Ocuured");
    }

     }
    }

여기 동물원 사육사 로그가 있습니다.

Hbase Java 프로그램을 실행 한 후 아무 일도 일어나지 않습니다.

java CreateSchema

Creating table

문제가 무엇인지 알려주세요.

해결법

  1. ==============================

    1.이것이 발생할 수있는 이유 중 하나는 hbase-site.xml을 클래스 경로에서 사용할 수 없기 때문입니다.

    이것이 발생할 수있는 이유 중 하나는 hbase-site.xml을 클래스 경로에서 사용할 수 없기 때문입니다.

    실행할 때 :

    HBaseConfiguration conf = new HBaseConfiguration(new Configuration());
    

    hbase-site.xml을 기반으로하는 HbaseConfiguration이 작성됩니다.

    추신 : 나는 일식과 같은 코드를 실행했으며 정상적으로 작동했습니다. 테이블 샘플이 오류없이 작성되었습니다.

  2. from https://stackoverflow.com/questions/27958899/not-able-to-create-hbase-using-java by cc-by-sa and MIT license