Java 在EMR上启动配置单元节约服务器时出错
在以下代码中,我试图从spark启动hive thrift服务器:Java 在EMR上启动配置单元节约服务器时出错,java,hadoop,amazon-web-services,hive,Java,Hadoop,Amazon Web Services,Hive,在以下代码中,我试图从spark启动hive thrift服务器: val conf = new SparkConf().setAppName("HiveDemo") val sc = new SparkContext(conf) val sql = new HiveContext(sc) sql.setConf("hive.server2.thrift.port", "10001") val df = sql.read.parquet("s3n://...") df.registerTe
val conf = new SparkConf().setAppName("HiveDemo")
val sc = new SparkContext(conf)
val sql = new HiveContext(sc)
sql.setConf("hive.server2.thrift.port", "10001")
val df = sql.read.parquet("s3n://...")
df.registerTempTable("test")
HiveThriftServer2.startWithContext(sql)
while (true) {
Thread.`yield`()
}
我在EMR集群上运行此代码,配置如下:
emr-4.6.0
spark 1.6.1
hive 1.0.0
我将连接到集群以测试表是否使用直线创建,使用:
!connect jdbc:hive2://localhost:10001
我得到错误:无法使用JDBC Uri打开客户端传输:JDBC:hive2://localhost:10001:java.net.ConnectException:连接被拒绝
EMR上是否有我遗漏的额外设置步骤?实际上,这个问题在Hive和中已修复。所以升级你的版本 出现此问题的原因是。所有(
错误复制、如何解决以及哪些版本包含修复程序)都包含在此链接中
希望它能帮助你
更新1:
您的配置单元服务器是否以HTTP模式运行?
在HTTP模式下运行HiveServer2时的连接URL:-
jdbc:hive2://<host>:<port>/<db>;transportMode=http;httpPath=<http_endpoint>
jdbc:hive2://:;transportMode=http;httpPath=
其中:-
是在hive site.xml
中配置的相应HTTP端点。默认值为cliservice
HTTP传输模式的默认端口为10001
资源链接:
亚马逊正在使用自己的Hive版本,最新版本是1.0.0。如何升级?@djWann您的配置单元服务器是否在HTTP模式下运行?@djWann我已更新了答案。请查看更新部分。