使用天蓝色数据工厂自定义活动进行天蓝色分析服务处理,无需天蓝色批次

时间:2017-08-02 17:58:51

标签: azure-data-factory

我有.Net dll用于处理Azure Analysis Service。它在.Net中运行良好。 现在我想使用没有Azure Batch的Azure Data Factory自定义活动来运行相同的dll。

我可以使用哪种方法?

使用Hdinsight我收到错误

FAILED 错误:java.lang.RuntimeException:PipeMapRed.waitOutputThreads():子进程失败,代码为2     在org.apache.hadoop.streaming.PipeMapRed.waitOutputThreads(PipeMapRed.java:322)     在org.apache.hadoop.streaming.PipeMapRed.mapRedFinished(PipeMapRed.java:535)     在org.apache.hadoop.streaming.PipeMapper.close(PipeMapper.java:130)     在org.apache.hadoop.mapred.MapRunner.run(MapRunner.java:61)     在org.apache.hadoop.streaming.PipeMapRunner.run(PipeMapRunner.java:34)     在org.apache.hadoop.mapred.MapTask.runOldMapper(MapTask.java:453)     在org.apache.hadoop.mapred.MapTask.run(MapTask.java:343)     在org.apache.hadoop.mapred.YarnChild $ 2.run(YarnChild.java:170)     at java.security.AccessController.doPrivileged(Native Method)     在javax.security.auth.Subject.doAs(Subject.java:422)     at org.apache.hadoop.security.UserGroupInformation.doAs(UserGroupInformation.java:1866)     在org.apache.hadoop.mapred.YarnChild.main(YarnChild.java:164)

17/08/05 11:31:07 INFO mapreduce.Job:任务ID:attempt_1501755343944_0172_m_000000_3,状态:未通过 错误:java.lang.RuntimeException:PipeMapRed.waitOutputThreads():子进程失败,代码为2     在org.apache.hadoop.streaming.PipeMapRed.waitOutputThreads(PipeMapRed.java:322)     在org.apache.hadoop.streaming.PipeMapRed.mapRedFinished(PipeMapRed.java:535)     在org.apache.hadoop.streaming.PipeMapper.close(PipeMapper.java:130)     在org.apache.hadoop.mapred.MapRunner.run(MapRunner.java:61)     在org.apache.hadoop.streaming.PipeMapRunner.run(PipeMapRunner.java:34)     在org.apache.hadoop.mapred.MapTask.runOldMapper(MapTask.java:453)     在org.apache.hadoop.mapred.MapTask.run(MapTask.java:343)     在org.apache.hadoop.mapred.YarnChild $ 2.run(YarnChild.java:170)     at java.security.AccessController.doPrivileged(Native Method)     在javax.security.auth.Subject.doAs(Subject.java:422)     at org.apache.hadoop.security.UserGroupInformation.doAs(UserGroupInformation.java:1866)     在org.apache.hadoop.mapred.YarnChild.main(YarnChild.java:164)

17/08/05 11:31:12 INFO mapreduce.Job:任务ID:attempt_1501755343944_0172_m_000000_4,状态:未通过 错误:java.lang.RuntimeException:PipeMapRed.waitOutputThreads():子进程失败,代码为2     在org.apache.hadoop.streaming.PipeMapRed.waitOutputThreads(PipeMapRed.java:322)     在org.apache.hadoop.streaming.PipeMapRed.mapRedFinished(PipeMapRed.java:535)     在org.apache.hadoop.streaming.PipeMapper.close(PipeMapper.java:130)     在org.apache.hadoop.mapred.MapRunner.run(MapRunner.java:61)     在org.apache.hadoop.streaming.PipeMapRunner.run(PipeMapRunner.java:34)     在org.apache.hadoop.mapred.MapTask.runOldMapper(MapTask.java:453)     在org.apache.hadoop.mapred.MapTask.run(MapTask.java:343)     在org.apache.hadoop.mapred.YarnChild $ 2.run(YarnChild.java:170)     at java.security.AccessController.doPrivileged(Native Method)     在javax.security.auth.Subject.doAs(Subject.java:422)     at org.apache.hadoop.security.UserGroupInformation.doAs(UserGroupInformation.java:1866)     在org.apache.hadoop.mapred.YarnChild.main(YarnChild.java:164)

17/08/05 11:31:17 INFO mapreduce.Job:任务ID:attempt_1501755343944_0172_m_000000_5,状态:未通过 错误:java.lang.RuntimeException:PipeMapRed.waitOutputThreads():子进程失败,代码为2     在org.apache.hadoop.streaming.PipeMapRed.waitOutputThreads(PipeMapRed.java:322)     在org.apache.hadoop.streaming.PipeMapRed.mapRedFinished(PipeMapRed.java:535)     在org.apache.hadoop.streaming.PipeMapper.close(PipeMapper.java:130)     在org.apache.hadoop.mapred.MapRunner.run(MapRunner.java:61)     在org.apache.hadoop.streaming.PipeMapRunner.run(PipeMapRunner.java:34)     在org.apache.hadoop.mapred.MapTask.runOldMapper(MapTask.java:453)     在org.apache.hadoop.mapred.MapTask.run(MapTask.java:343)     在org.apache.hadoop.mapred.YarnChild

1 个答案:

答案 0 :(得分:0)

目前,自定义.Net活动只能在Azure Batch和Azure HDInsight上执行。由于您不想使用第一个选项,HDInsight是唯一的方法。

基本上,您需要创建HDInsight服务并将其描述为自定义.Net活动管道的链接服务。

请参阅Use Custom .Net activity with HDInsight