请帮忙建议。
场景:使用pig将数据从hdfs存储到hive。
我有一个从mysql获取的文件,它有4个字段 Ord_Id, Cust_Id, Cust_name, Ord_date
. 我喜欢只存储2个字段ord\u id和cust\u id到hive。我怎么能做到?请告知。
以下代码无法执行:
pig -useHCatalog
orders = LOAD '<HDFS_file_path>' USAGE PigStorage(',') AS (Ord_Id:Int, Cust_Id:Int, Cust_name:chararray, Ord_date:chararray);
STORE orders INTO 'pig_demo.orders' USAGE org.apache.hive.hcatalog.pig.HCatStorer();
谢谢。
2条答案
按热度按时间busg9geu1#
如果目标是在配置单元中只有一个只有两列的表,那么您可以使用sqoop
--columns
把这两个问题具体化--hive-import
选项并避免同时使用额外的pig脚本执行。类似于-
1hdlvixo2#
首先,您的表应该已经存在于配置单元中,并且具有要从pig存储的相同列名。
另请参阅hcatalog loadstore