在C#中连接hadoop

时间:2014-05-05 17:12:59

标签: c# azure hadoop hdinsight

我想使用HDInsight在c#中连接hadoop。我在AZURE中创建了一个集群,并且已成功创建。我也启用了远程桌面连接。 当我在C#中输入凭据并执行作业时,我收到连接错误。我很困惑提供参数。请帮助我。

var hadoop = Hadoop.Connect(new Uri("https://clustername.azurehdinsight.net"), "admin", "");
//I have set remote desktop password

var config = new HadoopJobConfiguration();



                config.InputPath = "input/CodeFiles";
                config.OutputFolder = "output/CodeFiles";
                var result = hadoop.MapReduceJob.ExecuteJob<NamespaceCounterJob>();

最后一行给出了例外。 异常消息是:

  

发生了一个或多个错误

这是内在的例外:

  

无法连接到远程服务器

1 个答案:

答案 0 :(得分:0)

Uri应该是您的群集名称,而不是用户名,例如:

var hadoop = Hadoop.Connect(new Uri("https://clustername.azurehdinsight.net"), "username", "password");
var config = new HadoopJobConfiguration();

            config.InputPath = "input/CodeFiles";
            config.OutputFolder = "output/CodeFiles";
            var result = hadoop.MapReduceJob.ExecuteJob<NamespaceCounterJob>();

群集名称显示在群集的Azure门户的详细信息页面顶部。此外,您不需要启用RDP来使用此方法,它实际上是为&#34; Hadoop服务&#34;设置的用户名。在群集的配置选项卡中。以这种方式启动工作会使用WebHCat / Templeton端点,因此不需要RDP。