0
ハイブクエリ結果をCSV形式のローカルファイルパスにダウンロードする必要があります。さらに、列の値は引用符で囲み、フィールドはカンマで区切り、ファイルには最初の行に列ヘッダーを入れる必要があります。ビーラインコマンドを使用してcsv形式にハイブクエリをダウンロード
これを達成するための最良の方法を教えてもらえますか?注 - クエリは通常、5M以上の行を返します。
ハイブクエリ結果をCSV形式のローカルファイルパスにダウンロードする必要があります。さらに、列の値は引用符で囲み、フィールドはカンマで区切り、ファイルには最初の行に列ヘッダーを入れる必要があります。ビーラインコマンドを使用してcsv形式にハイブクエリをダウンロード
これを達成するための最良の方法を教えてもらえますか?注 - クエリは通常、5M以上の行を返します。
最良の方法は、以下のように選択したデータでハイブテーブルを作成することです。
CREATE EXTERNAL TABLE ramesh_csv (col1 INT, col2 STRING)
ROW FORMAT SERDE 'org.apache.hadoop.hive.serde2.OpenCSVSerde'
WITH SERDEPROPERTIES (
"separatorChar" = ",",
"quoteChar" = "\""
)
STORED AS TEXTFILE
LOCATION 'mylocation';
INSERT OVERWRITE TABLE ramesh_csv VALUES (1, 'TEST'), (2, 'TEST AGAIN');
あなたの場合、選択したレコードをテーブルに挿入します。
ここでHDFSファイルを作成します。カンマで区切り、二重引用符で囲みます。
"1","TEST"
"2","TEST AGAIN"
以下の私の出力を参照してください。そして、あなたは、単一のローカルファイル
にHDFSパーツファイルをダウンロードするためにhdfs -getmerge hdfs://mylocation data.csv
を使用することができます