2017-11-22 6 views
0

列が動的な場所にファイルがあります。 はFile1はダイナミック列でハイブに挿入

column1 column2 column3 column4 column5 column6 column7 

File2のは

column1 column2 column9 column10 column11 column12 column13 

FILE3が

column1 column2 column3 column10 column11 

どのように私は、ファイルを受信することがあります列としてハイブテーブルを変更することができますすることができことができますすることができます。

答えて

0

ハイブは、インラインするRDBMSと、構造が固定されることを期待します。

1つのオプションは、あなたが(明らかに先行知られている場合)、すべてのファイルに予想される列のフルセットが含まれ、データのみが受信されたカラムを投入し、空他人を残したいことがありますか?

1

それは本当に厄介になりますが、明示的な区切り文字なしに、あなたができる最善のはRegexSerDeを定義し、可能なすべての列を捉えるだろう。

あなたの不足している列は、基本的にあなたができるだけ早く1

を持っている場合()?

あなたの他のオプションは、スキーマやヘッダー行に基づいて、不足している列を推測するためにスパークを得ることであろうオプションのキャプチャグループになります生データの上にテキスト・テーブルがある場合は、適切な円柱データ・フォーマットに変換する必要があります。

関連する問題