복붙노트

[HADOOP] Java 사용 HBase를 N 번째로 규정 가져

HADOOP

Java 사용 HBase를 N 번째로 규정 가져

이 질문은 상당히 상자를 벗어하지만 난 그것을 필요합니다.

리스트 (수집)에서는 list.get (I)에 의해리스트 내의 n 번째 요소를 검색 할 수있다;

마찬가지로 어떤 방법은 내가 행 ID와 ColumnFamily 이름 주어진 n 번째 한정자를 얻을 수있는 자바 API를 사용하여, HBase를에있다.

참고 : 나는 하나의 columnFamily에서 단일 행 백만 규정이있다.

해결법

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

    1.응답하지 않는 것에 대해 죄송합니다. 중요한 뭔가 바쁜. 지금이 시도 :

    응답하지 않는 것에 대해 죄송합니다. 중요한 뭔가 바쁜. 지금이 시도 :

    package org.myorg.hbasedemo;
    
    import java.io.IOException;
    import java.util.Scanner;
    
    import org.apache.hadoop.conf.Configuration;
    import org.apache.hadoop.hbase.HBaseConfiguration;
    import org.apache.hadoop.hbase.KeyValue;
    import org.apache.hadoop.hbase.client.Get;
    import org.apache.hadoop.hbase.client.HTable;
    import org.apache.hadoop.hbase.client.Result;
    import org.apache.hadoop.hbase.util.Bytes;
    
    public class GetNthColunm {
    
        public static void main(String[] args) throws IOException {
            Configuration conf = HBaseConfiguration.create();
            HTable table = new HTable(conf, "TEST");
            Get g = new Get(Bytes.toBytes("4"));
            Result r = table.get(g);
            System.out.println("Enter column index :");
            Scanner reader = new Scanner(System.in);
            int index = reader.nextInt();
            System.out.println("index : " + index);
            int count = 0;      
            for (KeyValue kv : r.raw()) {
                if(++count!=index)
                    continue;
                System.out.println("Qualifier : "
                        + Bytes.toString(kv.getQualifier()));
                System.out.println("Value : " + Bytes.toString(kv.getValue()));
            }       
            table.close();
            System.out.println("Done.");
        }
    }
    

    나는이 작업을 수행 할 수있는 더 좋은 방법을 얻을 경우 알려드립니다.

  2. from https://stackoverflow.com/questions/23647908/retrieving-nth-qualifier-in-hbase-using-java by cc-by-sa and MIT license