连接到spark thrift服务器的odbc配置

pw136qt2  于 2021-06-26  发布在  Hive
关注(0)|答案(1)|浏览(497)

这个问题可能看起来很重复,事实上,我见过几个与此相关的问题,但不是完全相同的错误,所以我想看看是否有人有线索。
我已经设置了一个运行默认设置的spark thrift服务器。spark版本是2.1,运行在yarn上(hadoop 2.7.3)
事实上,我既不能设置simba-hive-odbc驱动程序,也不能设置microsoft-odbc驱动程序,以便在odbc设置中测试成功。
这是我用于microsoft配置单元odbc驱动程序的配置:

当我按下测试按钮时,显示的错误消息如下:

在spark thrift服务器日志中可以看到以下内容:

17/09/15 17:31:36 INFO ThriftCLIService: Client protocol version: HIVE_CLI_SERVICE_PROTOCOL_V1
17/09/15 17:31:36 INFO SessionState: Created local directory: /tmp/00abf145-2928-4995-81f2-fea578280c42_resources
17/09/15 17:31:36 INFO SessionState: Created HDFS directory: /tmp/hive/test/00abf145-2928-4995-81f2-fea578280c42
17/09/15 17:31:36 INFO SessionState: Created local directory: /tmp/vagrant/00abf145-2928-4995-81f2-fea578280c42
17/09/15 17:31:36 INFO SessionState: Created HDFS directory: /tmp/hive/test/00abf145-2928-4995-81f2-fea578280c42/_tmp_space.db
17/09/15 17:31:36 INFO HiveSessionImpl: Operation log session directory is created: /tmp/vagrant/operation_logs/00abf145-2928-4995-81f2-fea578280c42
17/09/15 17:31:36 INFO SparkExecuteStatementOperation: Running query 'set -v' with 82d7f9a6-f2a6-4ebd-93bb-5c8da1611f84
17/09/15 17:31:36 INFO SparkSqlParser: Parsing command: set -v
17/09/15 17:31:36 INFO SparkExecuteStatementOperation: Result Schema: StructType(StructField(key,StringType,false), StructField(value,StringType,false), StructField(meaning,StringType,false))

如果我使用jdbc驱动程序通过beeline(正常工作)进行连接,则以下是日志:

17/09/15 17:04:24 INFO ThriftCLIService: Client protocol version: HIVE_CLI_SERVICE_PROTOCOL_V8
17/09/15 17:04:24 INFO SessionState: Created HDFS directory: /tmp/hive/test
17/09/15 17:04:24 INFO SessionState: Created local directory: /tmp/c0681d6f-cc0f-40ae-970d-e3ea366aa414_resources
17/09/15 17:04:24 INFO SessionState: Created HDFS directory: /tmp/hive/test/c0681d6f-cc0f-40ae-970d-e3ea366aa414
17/09/15 17:04:24 INFO SessionState: Created local directory: /tmp/vagrant/c0681d6f-cc0f-40ae-970d-e3ea366aa414
17/09/15 17:04:24 INFO SessionState: Created HDFS directory: /tmp/hive/test/c0681d6f-cc0f-40ae-970d-e3ea366aa414/_tmp_space.db
17/09/15 17:04:24 INFO HiveSessionImpl: Operation log session directory is created: /tmp/vagrant/operation_logs/c0681d6f-cc0f-40ae-970d-e3ea366aa414
17/09/15 17:04:24 INFO SparkSqlParser: Parsing command: use default
17/09/15 17:04:25 INFO HiveMetaStore: 1: get_database: default
17/09/15 17:04:25 INFO audit: ugi=vagrant   ip=unknown-ip-addr  cmd=get_database: default   
17/09/15 17:04:25 INFO HiveMetaStore: 1: Opening raw store with implemenation class:org.apache.hadoop.hive.metastore.ObjectStore
17/09/15 17:04:25 INFO ObjectStore: ObjectStore, initialize called
17/09/15 17:04:25 INFO Query: Reading in results for query "org.datanucleus.store.rdbms.query.SQLQuery@0" since the connection used is closing
17/09/15 17:04:25 INFO MetaStoreDirectSql: Using direct SQL, underlying DB is DERBY
17/09/15 17:04:25 INFO ObjectStore: Initialized ObjectStore
pgccezyw

pgccezyw1#

我成功地安装了microsoftsparkobc驱动程序而不是hive驱动程序。这个问题似乎与驱动程序拒绝连接spark thrift服务器有关,因为根据某些服务器属性发现它不是hive2服务器。我怀疑hive2和spark thrift server在wire级别上是否存在实际差异,因为后者是前者的一个端口,在协议级别(thrift)上没有更改,但在任何情况下,解决方案都是移动到此驱动程序并以与hive2相同的方式配置它:
微软® spark odbc驱动程序

相关问题