2017-03-10 10 views
1

HBaseテーブルには1列ファミリがあり、15億レコードあります。 HBaseの行数はハイブへのマッピングコマンドHBase to Hiveマッピングテーブルが完全なデータを表示していません

"count '<tablename>'", {CACHE => 1000000}. 

とHBaseのを使用して取得した

は、以下のコマンドを使用して行われました。

create external table stagingdata(
rowkey String, 
col1 String, 
col2 String 
) 
STORED BY 'org.apache.hadoop.hive.hbase.HBaseStorageHandler' 
WITH SERDEPROPERTIES (
'hbase.columns.mapping' = ':key, 
n:col1, 
n:col2, 
') 
TBLPROPERTIES('hbase.table.name' = 'hbase_staging_data'); 

しかし、我々はハイブ行は、以下のコマンドを使用してカウント取得しますが、

select count(*) from stagingdata; 

それが唯一のハイブマップされた表140万行を示しています。

私たちは、1億個のレコードを持つSmaller HBaseに対して同様のアプローチを試み、完全なレコードがハイブマップテーブルに表示されました。

私の質問は、15億レコードがハイブに表示されない理由です。

ここには何もありませんか?

あなたの即時回答は高く評価されます。 ありがとう、 Madhu。

答えて

0

あなたはハイブに参照すると、キーごとに最新のバージョンであり、キー

のないすべてのバージョンがHBaseのタイムスタンプ属性にアクセスする方法は現在のところ存在しない、と クエリは、常に最新のデータにアクセスしますタイムスタンプ。

Hive HBase Integration

+0

こんにちは、迅速な応答をありがとう。しかし、私たちの場合、Hbase KeyはName + Timestampの組み合わせです。 hbaseでは効果的ですので、hbaseテーブルにはバージョンが1つしかなく、キーの繰り返しがない独自のキーがあります。 –

関連する問題