无法连接到 OBIEE 12 中的 HIVE 数据源

Unable to connect to HIVE datasourcs in OBIEE 12

大家好。

我目前遇到了从 Oracle Business Intelligence 创建到 HIVE 数据源的连接的问题。 当我输入我的数据库凭据时,出现此错误:

Failed to save connection.Cannot create a connection since some errors occured. Fix them and try again.

仅此而已。 同时在 Weblogic 控制台日志中:

|Unsupported property passed in properties: fixedString=true| 

|Unsupported property passed in properties: oracle.jdbc.J2EE13Compliant=true| 

|BEA-000000| |java.sql.SQLException java.io.IOException: execute query failed[nQSError: 43113] Message returned from OBIS.
[nQSError: 16001] ODBC error state: S1000 code: 1202 message: [Oracle DataDirect][ODBC Apache Hive Wire Protocol driver]Error switching to requested database (default)..
[nQSError: 16001] ODBC error state: S1000 code: 1 message: [Oracle DataDirect][ODBC Apache Hive Wire Protocol driver][Hive]Invalid method name: 'execute'.
oracle.bi.jdbc.AnaJdbcStatementImpl.executeQuery(AnaJdbcStatementImpl.java:387)
oracle.bi.jdbc.AnaJdbcStatementImpl.execute(AnaJdbcStatementImpl.java:268)
oracle.bi.jdbc.AnaJdbcPreparedStatementImpl.execute(AnaJdbcPreparedStatementImpl.java:507)
oracle.bi.jdbc.AnaJdbcPreparedStatementImpl.executeQuery(AnaJdbcPreparedStatementImpl.java:204)
oracle.bi.datasource.jdbc.connector.BIJDBCConnector.execute(BIJDBCConnector.java:173)
oracle.bi.datasource.jdbc.connector.BIJDBCConnector.execute(BIJDBCConnector.java:93)
oracle.bi.datasource.jdbc.connector.BIJDBCProvider.getObjectList(BIJDBCProvider.java:217)
oracle.bi.datasource.service.DatasourceServiceProcessor.getObjectsList(DatasourceServiceProcessor.java:1057)
sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)

|Error| |oracle.bi.datasource.trace| |BEA-000000| |SQL_EXCEPTION 0 : java.io.IOException: execute query failed[nQSError: 43113] Message returned from OBIS.
[nQSError: 16001] ODBC error state: S1000 code: 1202 message: [Oracle DataDirect][ODBC Apache Hive Wire Protocol driver]Error switching to requested database (default)..
[nQSError: 16001] ODBC error state: S1000 code: 1 message: [Oracle DataDirect][ODBC Apache Hive Wire Protocol driver][Hive]Invalid method name: 'execute'.
Cause - SQLException is thrown from the datasource
Action - Check the log
oracle.bi.datasource.jdbc.connector.SQLExceptionMapper.convert(SQLExceptionMapper.java:40)
oracle.bi.datasource.jdbc.connector.BIJDBCConnector.execute(BIJDBCConnector.java:215)
oracle.bi.datasource.jdbc.connector.BIJDBCConnector.execute(BIJDBCConnector.java:93)
oracle.bi.datasource.jdbc.connector.BIJDBCProvider.getObjectList(BIJDBCProvider.java:217)
oracle.bi.datasource.service.DatasourceServiceProcessor.getObjectsList(DatasourceServiceProcessor.java:1057)
sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
| 
 |Error| |oracle.bi.datasource.trace| |BEA-000000| |java.util.concurrent.ExecutionException oracle.bi.datasource.exceptions.DatasourceException: 0 : java.io.IOException: execute query failed[nQSError: 43113] Message returned from OBIS.
[nQSError: 16001] ODBC error state: S1000 code: 1202 message: [Oracle DataDirect][ODBC Apache Hive Wire Protocol driver]Error switching to requested database (default)..
[nQSError: 16001] ODBC error state: S1000 code: 1 message: [Oracle DataDirect][ODBC Apache Hive Wire Protocol driver][Hive]Invalid method name: 'execute'.
Cause - 0 : java.io.IOException: execute query failed[nQSError: 43113] Message returned from OBIS.
[nQSError: 16001] ODBC error state: S1000 code: 1202 message: [Oracle DataDirect][ODBC Apache Hive Wire Protocol driver]Error switching to requested database (default)..
[nQSError: 16001] ODBC error state: S1000 code: 1 message: [Oracle DataDirect][ODBC Apache Hive Wire Protocol driver][Hive]Invalid method name: 'execute'.
java.util.concurrent.FutureTask.report(FutureTask.java:122)
java.util.concurrent.FutureTask.get(FutureTask.java:206)
oracle.bi.datasource.service.adf.server.DatasourceServlet.doGet(DatasourceServlet.java:442)
javax.servlet.http.HttpServlet.service(HttpServlet.java:687)
| 

 |Error| |oracle.bi.web.datasetsvc| |BEA-000000| |getObjectList failed for 'weblogic'.'HiveDS'| 

 |Error| |oracle.bi.tech.services.dataset| |BEA-000000| |Failed to create connection. : Bad Request - {"code":400101,"message":"JDS - Invalid syntax","subMessage":"oracle.bi.datasource.exceptions.DatasourceException: 0 : java.io.IOException: execute query failed[nQSError: 43113] Message returned from OBIS.\n[nQSError: 16001] ODBC error state: S1000 code: 1202 message: [Oracle DataDirect][ODBC Apache Hive Wire Protocol driver]Error switching to requested database (default)..\n[nQSError: 16001] ODBC error state: S1000 code: 1 message: [Oracle DataDirect][ODBC Apache Hive Wire Protocol driver][Hive]Invalid method name: 'execute'.\nCause: SQLException is thrown from the datasource\nAction: Check the log"}| 

谁能指出我可能的解决方案?

似乎为数据库连接中的配置单元服务器指定了不正确的端口号。这是从同一连接器报告的类似错误,但标记为 IBM:http://www-01.ibm.com/support/docview.wss?uid=swg21671761

here是连接选项说明和默认值,供参考。