Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/actionscript-3/7.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Hadoop -Dpig.additional.jars,包含HDFS和本地文件系统上的文件_Hadoop_Mapreduce_Apache Pig - Fatal编程技术网

Hadoop -Dpig.additional.jars,包含HDFS和本地文件系统上的文件

Hadoop -Dpig.additional.jars,包含HDFS和本地文件系统上的文件,hadoop,mapreduce,apache-pig,Hadoop,Mapreduce,Apache Pig,如何将JAR从本地文件系统和Hadoop分布式文件系统HDFS传递到-Dpig.additional.jars 假设我有两个罐子: /home/local/myjar1.jar hdfs:///user/notlocal/myjar2.jar 第一个jar在我的本地目录中。第二个jar在HDFS中 我想在Hadoop集群上运行test_script.pig1,并在-Dpig.additional.jars中包含上述两个jar pig-xmapreduce-f test_script.pig1-D

如何将JAR从本地文件系统和Hadoop分布式文件系统HDFS传递到-Dpig.additional.jars

假设我有两个罐子:

/home/local/myjar1.jar hdfs:///user/notlocal/myjar2.jar 第一个jar在我的本地目录中。第二个jar在HDFS中

我想在Hadoop集群上运行test_script.pig1,并在-Dpig.additional.jars中包含上述两个jar

pig-xmapreduce-f test_script.pig1-Dpig.additional.jars=/home/local/myjar1.jar:hdfs:///user/notlocal/myjar2.jar 不起作用,因为hdfs被视为文件,因为它后面有冒号


如何实现这一点?

我没有找到将Hadoop分布式文件系统HDFS上的JAR传递到本地文件系统的方法

我想出了一个解决办法:将HDFS JAR移动到本地文件系统

假设我有两个罐子:

/home/local/myjar1.jar hdfs:///user/notlocal/myjar2.jar 第一个jar在我的本地目录中。第二个jar在HDFS中

我将HDFS上的myjar2.jar复制到本地文件系统:

hadoop fs-copyToLocal/user/notlocal/myjar2.jar/home/local/

然后我做了:


pig-x mapreduce-f test_script.pig1-Dpig.additional.jars=/home/local/myjar1.jar:/home/local/myjar2.jar

找到答案了吗?