2
我有兩個輸入文件smt.txt和smo.txt。 jar文件讀取文本文件並根據java文件中描述的某些規則拆分數據。 pig文件將這些數據放入輸出文件中,並進行mapreduce。如何在豬文件中使用.jar
register 'maprfs:///user/username/fl.jar';
DEFINE FixedLoader fl();
mt = load 'maprfs:///user/username/smt.txt' using FixedLoader('-30','30-33',...........) AS (.........);
mo = load 'maprfs:///user/username/smo.txt*' using FixedLoader('-30','30-33',.....) AS (......);
store mt into 'maprfs:///user/username/mt_out' using JsonStorage();
store mo into 'maprfs:///user/username/mo_out' using JsonStorage();
和一部分java代碼,如下所示。 (方法的內容都沒有neccessary我相信):
package com.mapr.util;
import org.apache.hadoop.mapreduce.lib.input.*;
import org.apache.hadoop.mapreduce.*;
import org.apache.hadoop.io.*;
import org.apache.pig.*;
import org.apache.pig.data.*;
import org.apache.pig.backend.hadoop.executionengine.mapReduceLayer.*;
import java.util.*;
import java.io.*;
public class FixedLoader extends LoadFunc
{
............
}
當我用命令「豬-x MapReduce的sample.pig」一個端子短運行此程序的豬,我給了一個錯誤信息:
錯誤org.apache.pig.tools.grunt.Grunt - 錯誤1070:無法使用導入來解析com.mapr.util.FixedLoader:[,org.apache.pig.builtin。,org.apache.pig.impl .builtin。]
如何將這些項目導入到我的項目中或者是否存在對r的任何建議/解決方案聯合國這個計劃?
感謝您的建議,但我決定在豬腳本中做所有工作,所以我不再需要jar文件。然而,我試圖給出完整的包名稱相同的代碼,但我認爲我的計算機中仍然存在一些第三方依賴關係。 – erbileren