복붙노트

[HADOOP] 행 HBase의 특정 열 패밀리에서 열 가져 오기

HADOOP

행 HBase의 특정 열 패밀리에서 열 가져 오기

JSP로 HBase의 특정 테이블에 데이터를 표시하는 응용 프로그램을 작성하고 있습니다. 행에 대해 특정 열 패밀리의 모든 열을 가져 오려고합니다.

이것을 할 방법이 있습니까?

해결법

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

    1.

    public String[] getColumnsInColumnFamily(Result r, String ColumnFamily)
    {
    
          NavigableMap<byte[], byte[]> familyMap = r.getFamilyMap(Bytes.toBytes(ColumnFamily));
          String[] Quantifers = new String[familyMap.size()];
    
          int counter = 0;
          for(byte[] bQunitifer : familyMap.keySet())
          {
              Quantifers[counter++] = Bytes.toString(bQunitifer);
    
          }
    
          return Quantifers;
    }
    

    결과 r은 바람직한 행입니다.

  2. ==============================

    2.단일 패밀리에만 관심이 있다면 해당 패밀리 만 가져 오도록 스캐너를 설정할 수 있습니다

    단일 패밀리에만 관심이 있다면 해당 패밀리 만 가져 오도록 스캐너를 설정할 수 있습니다

        Scan scan = new Scan(Bytes.toBytes(startKey),Bytes.toBytes(endKey);
        scan.addFamily(Bytes.toBytes(familyName));
    
  3. from https://stackoverflow.com/questions/9749527/get-columns-in-a-specific-column-family-for-a-row-hbase by cc-by-sa and MIT license