Hadoop 使用配置单元ODBC时出错
我一直在努力使用HiveODBC运行一个示例,但到目前为止没有成功 我正在使用Hortonworks的配置单元ODBC驱动程序从Win64运行java程序。我总是以下面的错误结束Hadoop 使用配置单元ODBC时出错,hadoop,odbc,hive,Hadoop,Odbc,Hive,我一直在努力使用HiveODBC运行一个示例,但到目前为止没有成功 我正在使用Hortonworks的配置单元ODBC驱动程序从Win64运行java程序。我总是以下面的错误结束 Exception in thread "main" java.sql.SQLException: [Microsoft][ODBC Driver Manager] Invalid string or buffer length at sun.jdbc.odbc.JdbcOdbc.createSQLException(
Exception in thread "main" java.sql.SQLException: [Microsoft][ODBC Driver Manager] Invalid string or buffer length
at sun.jdbc.odbc.JdbcOdbc.createSQLException(JdbcOdbc.java:6957)
at sun.jdbc.odbc.JdbcOdbc.standardError(JdbcOdbc.java:7114)
at sun.jdbc.odbc.JdbcOdbc.SQLGetDataString(JdbcOdbc.java:3907)
at sun.jdbc.odbc.JdbcOdbcResultSet.getDataString(JdbcOdbcResultSet.java:5698)
at sun.jdbc.odbc.JdbcOdbcResultSet.getString(JdbcOdbcResultSet.java:354)
at sun.jdbc.odbc.JdbcOdbcConnection.buildTypeInfo(JdbcOdbcConnection.java:1503)
at sun.jdbc.odbc.JdbcOdbcConnection.initialize(JdbcOdbcConnection.java:381)
at sun.jdbc.odbc.JdbcOdbcDriver.connect(JdbcOdbcDriver.java:174)
at java.sql.DriverManager.getConnection(DriverManager.java:582)
at java.sql.DriverManager.getConnection(DriverManager.java:207)
at inverika.training.hive.HiveODBCClient.main(HiveODBCClient.java:30)
我从搜索中得到的信息是,这与microsoft ODBC驱动程序问题有关,但没有找到任何合适的解决方案。有人知道这个问题吗?如果有人能提供指导,我将不胜感激
或者,我想直接从Linux虚拟机中尝试ODBC。对于thsi,我需要Linux Ubuntu的HiveODBC。我不擅长编译和生成所需的库。如果有人曾经这样做过,请分享
谢谢你的帮助。我不清楚你的问题。您包含的错误消息来自哪里?您使用的是JDBC驱动程序还是ODBC驱动程序 假设您使用的是HDP,Linux ODBC驱动程序在这里可用:
感谢您的回复。我正在使用Hartonworks提供的Windows 64位ODBC驱动程序,该驱动程序是从您提到的同一链接下载的。我使用的是直接在Linux虚拟机上运行的Apache配置单元发行版(hive-0.9.0)。我正在使用上面的驱动程序从windows执行java程序,结果出现了这个问题。我在windows中使用了JDBC和Thrift,它们工作正常,没有任何问题。您是否真的从Java程序调用ODBC驱动程序?是的。我正在使用HartonWorks提供的Win64 ODBC驱动程序。我也尝试了MapR提供的那个。但是有同样的问题。你能使用ODBC驱动程序吗,比如说从Windows应用程序?您的连接字符串是什么样子的?