我在由 Microsoft Azure HDInsight 服务托管的 hadoop 集群上运行 C# 作业。我必须直接在我的 hdinsight 服务器中使用 hadoop 命令行才能使用我的自定义 Java 输入格式:
调用 bin\hadoop jar lib\hadoop-streaming.jar -D "mapred.max.split.size=33554432" -libjars "../mycustom-hadoop-streaming.jar" -inputformat "mycustom.hadoop.CombinedInputFormat" .. .(我切断了命令的其余部分)
现在我正在尝试通过 powershell 命令行提交作业(从另一台 azure 机器远程提交作业):
$jobDefinition = New-AzureHDInsightStreamingMapReduceJobDefinition -Defines @{ "mapred.max.split.size"="33554432", "mapred.input.format.class"="mycustom.hadoop.CombinedInputFormat" } ...(剩下的我删了命令)
但是用 powershell 命令行定义 -libjars 的方法在哪里?微软似乎没有考虑过这种能力:http: //msdn.microsoft.com/en-us/library/windowsazure/dn527638.aspx
是否有人尝试执行此操作或有解决方法来定义具有 HDInsight 流作业提交的 libjar?