2016-04-18 8 views
0

私はhbaseを初めて使用しており、単一のhbaseテーブルにロードしたいフラットファイル(区切られたファイルではない)を持っています。ここでHBaseにフラットファイル(区切られたファイルではない)をロードする方法は?

は、行のプレビューは、私のファイルにあります。

0107E07201512310015071C11100747012015123100

私はそれが日付だ位置1から7まで、それはIDだとし、位置7から15に例foが知っています....

問題は、私のファイルに対応するスキーマを構築する方法、またはInfosphere BigInsightsを使用しているため、区切られたファイルに変換する方法やjaqlを使用してファイルを読み込む方法があるかどうかです。

ご協力いただければ幸いです。

ありがとうございます。

答えて

0

あなたがここにHBaseの を指すハイブテーブルを作成することができますRegExSerDe

CREATE EXTERNAL TABLE testtable ((col1 STRING, col2 STRING, col3 STRING) 
ROW FORMAT SERDE ‘org.apache.hadoop.hive.contrib.serde2.RegexSerDe’ 
WITH SERDEPROPERTIES (“input.regex” = “(.{5})(.{6})(.{3}).*”) 
LOCATION ‘<hdfs-file-location>’; 

を使用してハイブテーブルを作成指示 http://hortonworks.com/blog/hbase-via-hive-part-1/

あなたはハイブテーブルからデータをロードするために 挿入、上書きテーブルを使用することができますHBase-テーブルへ https://cwiki.apache.org/confluence/display/Hive/GettingStarted#GettingStarted-SELECTSandFILTERS

+0

ご回答ありがとうございます。それは私の問題を解決しました – user3531429

0

SerDeを記述すると、Hiveにデシリアライズし、Hiveを使用してHBaseに書き出すことができます。

関連する問題