Apache spark 使用简单查询时,如何修复HiveSpark中的“org.apache.hadoop.hive.ql.metadata.HiveException”?
我正在尝试对Hive-Spark引擎执行一个简单的查询:Apache spark 使用简单查询时,如何修复HiveSpark中的“org.apache.hadoop.hive.ql.metadata.HiveException”?,apache-spark,hadoop,hive,hive-query,Apache Spark,Hadoop,Hive,Hive Query,我正在尝试对Hive-Spark引擎执行一个简单的查询: SELECT count(*) FROM classification_output GROUP BY model_id; 我一直收到以下错误: Error: Error while compiling statement: FAILED: SemanticException Failed to get a spark session: org.apache.hadoop.hive.ql.metadata.HiveException:
SELECT count(*) FROM classification_output GROUP BY model_id;
我一直收到以下错误:
Error: Error while compiling statement: FAILED: SemanticException Failed to get a spark session: org.apache.hadoop.hive.ql.metadata.HiveException: Failed to create spark client. (state=42000,code=40000)
只有12分钟后它才起作用
表上的记录数约为7K,我怀疑是配置问题,但我不确定是哪个参数
我试图:
重新启动配置单元服务器
增加了配置单元服务器的超时时间
注:
使用:
SELECT count(*) FROM classification_output;
没有组员。。。。工作正常,返回以下内容:
+-------+
| _c0 |
+-------+
| 7164 |
+-------+
1 row selected (0.092 seconds)
在围绕这个问题花了一段时间后,我终于找到了解决办法。它与查询无关。另一个SparkClient进程正在运行,一旦我停止它并执行查询,它就会正常工作。查询在逻辑上不正确,如果需要总计数,为什么要使用group by。如果在select中包含groupped字段,则所有字段都必须正常工作,smth。比如:选择model_id,按model_id从classification_output GROUP中计算*,这正是我想要的?按型号\u id分组,不获取计数。但是,如果我删除了该组,则效果很好。