Amazon EMRでハイブスクリプトを使用してデータを分析しています。ハイブの結果セットにカラムヘッダーを追加する
そして出力をAmazon S3バケットに転送しています。ハイブスクリプトの結果には列見出しが含まれていません。
また、私は、この使用して試してみました:
set hive.cli.print.header=true;
をしかし、それは助けにはなりません。あなたは私を助けることができます?
Amazon EMRでハイブスクリプトを使用してデータを分析しています。ハイブの結果セットにカラムヘッダーを追加する
そして出力をAmazon S3バケットに転送しています。ハイブスクリプトの結果には列見出しが含まれていません。
また、私は、この使用して試してみました:
set hive.cli.print.header=true;
をしかし、それは助けにはなりません。あなたは私を助けることができます?
直接的な方法はまだ不可能だと思います(HIve: writing column headers to local file?)。 いくつかのソリューションは、ファイルへDESCRIBE table_name
の輸出結果、次のようになります。
$ hive -e 'DESCRIBE table_name' > file
そして、あなたのデータファイルに列名を追加し、いくつかのスクリプトを作成します。 GL!
今日、この問題が発生し、元のクエリとヘッダー行を作成する新しいダミークエリの間にUNION ALLを実行することで、必要なものを得ることができました。各セクションに並べ替えの列を追加し、ヘッダーを0に、データを1に設定して、そのフィールドで並べ替えてヘッダーの行が上に来るようにしました。
create table new_table as
select
field1,
field2,
field3
from
(
select
0 as sort_col, --header row gets lowest number
'field1_name' as field1,
'field2_name' as field2,
'field3_name' as field3
from
some_small_table --table needs at least 1 row
limit 1 --only need 1 header row
union all
select
1 as sort_col, --original query goes here
field1,
field2,
field3
from
main_table
) a
order by
sort_col --make sure header row is first
少し嵩張りますが、少なくとも1つのクエリで必要なものを得ることができます。
希望すると便利です。
ハイブスクリプトはどのようなものですか?
ハイブスクリプトの出力にヘッダーデータが含まれていますか?出力をs3バケットにコピーすると失われますか?
あなたが何をしているかについてもっと詳しく説明できれば助かります。
これらの詳細を知らなくても、ここで試すことができるものがあります。
次のようにあなたのハイブのスクリプトを作成します。
USE dbase_name:
SET hive.cli.print.header=true;
SELECT some_columns FROM some_table WHERE some_condition;
を次に、あなたのスクリプトを実行します。
$ hive -f hive_script.hql > hive_output
は、それはちょうどかもしれない
$ aws s3 cp ./hive_output s3://some_bucket_name/foo/hive_output
こんにちは、 sqoopはOracleからデータを取得しますが、スキーマ/ヘッダーは取得しません。私はヘッダーとしてスキーマを取得したい。たとえば、 名前、年齢、場所 venu、31、Banlgaore srinu、32、ハイデラバード ..... llike this。ヘッダーの形式でスキーマを取得する方法。この形式とは異なります。 OracleからS3へ(sqoopで)、..上記のようなs3へのローカル..ではありません。 –
あなたのS3バケットへのあなたの出力をコピータイプミス(またはバージョンに応じた変更)がありますが、私にとっては以下のように動作します:
set hive.cli.print.headers=true;
代わりに「ヘッダ」
の「ヘッダは、」あなたは列のヘッダーがちょうどコマンドラインインタフェースでそれらを参照してくださいいくつかの出力ファイルに含まれますかの? – www
@Wawrzniec出力ファイルに出力します。 – Sam