この Hive クエリを使用して、テーブルを CSV ファイルにエクスポートしました。
INSERT OVERWRITE DIRECTORY '/user/data/output/test' select column1, column2 from table1;
生成されたファイル '000000_0' にはコンマ区切りがありません
これは CSV ファイルを生成する正しい方法でしょうか? 正しくない場合は、CSV ファイルを生成する方法を教えてください。
ベストアンサー1
またはこれを使う
hive -e 'select * from your_Table' | sed 's/[\t]/,/g' > /home/yourfile.csv
ヘッダーとデータが確実に作成され、ファイルにコピーされるように、set hive.cli.print.header=true
の前にプロパティを指定することもできます。例:SELECT
hive -e 'set hive.cli.print.header=true; select * from your_Table' | sed 's/[\t]/,/g' > /home/yourfile.csv
ローカル ファイル システムに書き込みたくない場合は、sed
コマンドの出力をコマンドHDFS
を使用してパイプで戻しますhadoop fs -put
。
次のようなものを使用してファイルにSFTPで接続するのも便利です。サイバーダックscp
または、ターミナル/コマンドプロンプト経由で接続することもできます。