Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/369.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java 在EMR上启动配置单元节约服务器时出错_Java_Hadoop_Amazon Web Services_Hive - Fatal编程技术网

Java 在EMR上启动配置单元节约服务器时出错

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

在以下代码中,我试图从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.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我已更新了答案。请查看更新部分。