【问题标题】:Streaming through .NET application in Azure通过 Azure 中的 .NET 应用程序进行流式传输
【发布时间】:2015-01-24 00:57:54
【问题描述】:

我有一个 .NET 可执行文件,我想通过它在我的 Azure HDInsight 群集上的 Pig 中流式传输数据。我已将它上传到我的容器中,但是当我尝试通过它流式传输数据时,我收到以下错误:

<line 1, column 393> Failed to generate logical plan. Nested exception: java.io.IOException: Invalid ship specification: '/util/myStreamApp.exe' does not exist!

我定义和使用我的动作如下:

DEFINE myApp `myStreamApp.exe` SHIP('/util/myStreamApp.exe');
outputData = STREAM inputData THROUGH myApp;

我尝试使用和不使用前导 /,尝试将其限定为 wasb:///util/myStreamApp.exe,并尝试将其完全限定为 wasb://myContainer@myAccount.blob.core.windows.net/util/myStreamApp.exe,但在每种情况下,我都会收到我的文件不存在的消息。

This page on uploading to HDInsight 表示您可以将 HDInsight 中 wasb:///example/data/davinci.txt 的 Azure Blob 存储路径用作 /example/data/davinci.txt,这表明路径应该没有问题。

【问题讨论】:

    标签: azure hadoop apache-pig azure-storage azure-hdinsight


    【解决方案1】:

    事实证明,问题在于我没有声明对调用方的依赖。我有一个创建 Pig 作业的控制台应用程序:

    var job = new PigJobCreateParameters()
    {
        Query = myPigQuery,
        StatusFolder = myStatusFolder
    };
    

    但我需要向 job.Files 集合添加对我的文件的依赖:

    job.Files.Add("wasbs://myContainer@myAccount.blob.core.windows.net/util/myStreamApp.exe");
    

    【讨论】:

      猜你喜欢
      • 2017-10-27
      • 1970-01-01
      • 1970-01-01
      • 2016-04-27
      • 2017-05-17
      • 2014-08-04
      • 1970-01-01
      • 2011-01-15
      • 1970-01-01
      相关资源
      最近更新 更多