2017-02-22 5 views
1

私は簡単な質問があります。結果セルドです。KeyValueが廃止されましたHBASE CellUtilとKeyValue

for(KeyValue kv : result.list()){ 
      String family = new String(kv.getFamily()); 
      System.out.println(family); 
      String qualifier = new String(kv.getQualifier()); 
      System.out.println(qualifier); 
      System.out.println(new String(kv.getValue())); 

     } 

にアクセスするための

for (Cell cell : result.rawCells()) { 
      byte[] family = CellUtil.cloneFamily(cell); 
      byte[] column = CellUtil.cloneQualifier(cell); 
      byte[] value = CellUtil.cloneValue(cell); 
      System.out.println("\t" + Bytes.toString(family) + ":" + Bytes.toString(column) + " = " + Bytes.toString(value)); 
     } 

かです。KeyValueクラス:私はこのようなCellUtilクラスを使用する必要がありますか?

答えて

0

です。KeyValueは廃止されていないあなたの答えが、のgetValueなどgetFamilyを、getQualifier、のようなその方法について

おかげでたくさんです。 APIドキュメントでは、CellUtilクラスのメソッドが推奨されていることがわかります(クライアント側の場合)。 HBaseのドキュメントによれば、 KeyValueは基本的なHBaseタイプであり、HBaseのアプリケーションとユーザはCellインタフェースを使用し、Cellで定義されていないKeyValueとメン​​バ関数を直接使用しないでください。

関連する問題