我想使用PIG加入3個表,然後加載到Hive表中。在存儲數據之前,我可以使用轉儲在屏幕上顯示數據。我使用下面的命令來存儲數據,它失敗了。使用PIG加載Hive表的問題
store jnr_mas_ins INTO 'table_name' USING org.apache.hive.hcatalog.pig.HCatStorer();
的錯誤是:
2017-01-25 10:58:48,487 [main] ERROR org.apache.pig.tools.grunt.Grunt - ERROR 1002: Unable to store alias jnr_mas_ins
Details at logfile: /export/home/pig_1485359450881.log
我搜索這個網站,有人建議使用下面的命令:
store jnr_mas_ins INTO 'hdfs://fullpath' USING org.apache.hive.hcatalog.pig.HCatStorer();
001 : Error setting output information. Cause : NoSuchObjectException(message:default.hdfs://fullpath table not found)
Details at logfile: /export/home/pig_1485359450881.log
請你幫忙解決這個問題,在此先感謝 下面是我用來填充表格的腳本。
account_master_ALL = LOAD 'ACCT' USING org.apache.hive.hcatalog.pig.HCatLoader(); account_master_fil =通過croft_source_sys_cd過濾account_master_ALL ==''ABC''; account_master =的foreach account_master_fil生成acct_master_key,(TRANS_DATE爲空 '-999'?:TRANS_DATE)作爲TRANS_DATE,(acct_data_1爲空 '-999'?:acct_data_1)作爲acct_data_1,(acct_data_2爲空 '-999'?:acct_data_2)如acct_data_2,(acct_data_3爲空 '-999'?:acct_data_3)作爲acct_data_3,(acct_data_4爲空 '-999'?:acct_data_4)作爲acct_data_4,(acct_data_5爲空 '-999'?:acct_data_5)作爲acct_data_5,acct_m_ref_key, croft_source_sys_cd; acct_detail_all = LOAD'acct_detail_tb'USING org.apache.hive.hcatalog.pig.HCatLoader(); acct_detail =的foreach acct_detail_all生成c_number,b_number,a_number,c_coded,a_type,c_digit,s_number,R_TYPE,r_cd,s_qty,s_b_cost,trade_qty,t_cost,p_date,load_date; jnr_all =加入由(a_number,b_number,c_coded,a_type,c_number,c_digit),account_master由(acct_data_1,TRANS_DATE,acct_data_2,acct_data_3,acct_data_4,acct_data_5)acct_detail; ins_master_all = LOAD'ins_acct'USING org.apache.hive.hcatalog.pig.HCatLoader(); jnr_mas_ins_all =通過(acct_detail :: s_number)加入jnr_all,通過(acct_data_1)加入ins_master_all; jnr_mas_ins =的foreach jnr_mas_ins_all生成acct_master_key如acct_master_key,ins_master_key如ins_master_key, 'ABC' 作爲code_dev,c_number如c_number,b_number如b_number,a_number如src_a_number,c_coded如c_coded,a_type如a_type,c_digit如c_digit,s_number如s_number,R_TYPE如R_TYPE,r_cd如r_cd,s_qty如s_qty,s_b_cost如s_b_cost,trade_qty如trade_qty,t_cost如t_cost,p_date如p_date,CURRENTTIME()作爲load_date, 'PIG_USER' 作爲create_userid,CURRENTTIME()作爲CREATE_DATE,CURRENTTIME()作爲f_date; store jnr_mas_ins INTO'tartet_table'USING org.apache.hive.hcatalog.pig.HCatStorer();
發佈您的整個PIG腳本 –
感謝inquisitive_mind,我只是通過添加我的腳本更新第一個流。請看一下。謝謝。 –