2016-09-28 61 views
0

我试图连接驻留在EMR集群上的presto协调器。我正在使用Terradata ODBC驱动程序。我已经通过ODBC连接对话框将相关详细信息放入DSN并测试了驱动程序,并编写了一个创建连接的简单C#应用程序(请参阅下面的代码)。Presto协调器在通过Terradata odbc驱动程序连接时返回404错误

问题是,当连接在DSN对话框中测试或在C#代码中打开时,我得到一个404错误返回。

我相信AWS中的安全组设置是好的,因为我肯定会接通配置为打开端口8080的主节点。

var connectionString = "Driver=Teradata Presto ODBC Driver;Host=xxx;Port=8080"; 
OdbcConnection cn = new OdbcConnection(connectionString); 
OdbcCommand cmd = new OdbcCommand(sql, cn); 
cn.Open(); 

该代码在运行时将抛出异常与 “ERROR [HY000] [Teradata的] [普雷斯托](1040)错误与HTTP请求,响应代码:404” 作为消息。

我的头撞在墙上与这一个。任何见解都非常感谢。

+0

呃,等等。您是否需要使用Terradata的Presto发行版来使用它们生成的ODBC驱动程序? – tetsuo

+0

我可以确认在通过Facebook JDBC驱动程序时返回404错误。所以不是Terradata ODBC特定的东西...... – tetsuo

+0

这听起来很愚蠢,但是你绝对肯定你连接的主机是presto协调器而不是presto worker吗?他们最近改变了工作人员不再回答请求,并且我们一直与工作人员错误地联系,所以我们也遇到了很多404错误... –

回答

0

问题是我连接到Presto的端口。我已经知道它是8080,但实际上它是8889.

相关问题