Hiveウェアハウスのクエリー結果をローカルファイルにエクスポートする方法

3205 ワード

私はhive倉庫に時計を持っていて、HQLを使って飛び出した結果、hiveに預けました.表のschemaは次のとおりです.
show create table test_xiaoxiannv.dw_clickadvert_daily;
CREATE EXTERNAL TABLE test_xiaoxiannv.dw_clickadvert_daily(
  id int, 
  ip string, 
  time string, 
  action string, 
  dm string, 
  pnum int, 
  a0 string, 
  a1 string, 
  a2 string, 
  a3 string, 
  a4 string, 
  a5 string, 
  a6 string, 
  a7 string, 
  a8 string, 
  a9 string, 
  a10 string, 
  a11 string, 
  a12 string, 
  a13 string, 
  a14 string, 
  a15 string)
PARTITIONED BY ( 
  dt date)
ROW FORMAT DELIMITED 
  FIELDS TERMINATED BY ',' 
STORED AS INPUTFORMAT 
  'org.apache.hadoop.mapred.TextInputFormat' 
OUTPUTFORMAT 
  'org.apache.hadoop.hive.ql.io.HiveIgnoreKeyTextOutputFormat'
LOCATION
  'hdfs://kingsoft-ha/apps/hive/warehouse/test_xiaoxiannv.db/dw_clickadvert_daily'
TBLPROPERTIES (
  'transient_lastDdlTime'='1533263442')

区切り文字がカンマの場合、CSVファイルにエクスポートすると便利です.操作手順は次のとおりです.
使用{HIVE_HOME}/bin/hive-e"HQL">>target_file_path.csv|または{HIVE_HOME}/bin/hive-f sqlを用いる.q >> target_file_path.csv
[hive@tony-client ~]$ hive -e "select * from test_xiaoxiannv.dw_clickadvert_daily" >> ~/test_xiaoxiannv.dw_clickadvert_daily.csv

Logging initialized using configuration in file:/etc/hive/2.5.0.0-1245/0/hive-log4j.properties
OK
Time taken: 3.09 seconds, Fetched: 322914 row(s)

[hive@tony-client ~]$ wc -l ~/test_xiaoxiannv.dw_clickadvert_daily.csv 322914/home/hive/test_xiaoxiannv.dw_clickadvert_daily.csv
最後にxshellでszを使用してローカル(Windows)にダウンロード[hive@tony-client ~]$ sz ~/test_xiaoxiannv.dw_clickadvert_daily.csv
また、区切り記号については、この兄弟たちのブログを参照してください.https://blog.csdn.net/azhao_dn/article/details/6921423