【发布时间】:2016-01-23 06:51:38
【问题描述】:
我目前正在尝试在看起来像的表上运行请求
Key Desc1 Desc2 Val
1 Hello World 37
2 Alpha Beta 27
2 Gamma Kappa 28
1 Bjr Mde 42
我的目标是按“键”分组并询问 Val=min(Vals) 的行(在组中)。对于上面的虚拟表,我期望类似
Key Desc1 Desc2 Val
1 Hello World 37
2 Alpha Beta 27
为此,我使用以下请求:
select Key
min(struct(Val,Desc1)).col2 as Desc1,
min(struct(Val,Desc2)).col2 as Desc2,
min(Val) as Val
from mytable;
当我尝试执行查询时,在语法检查期间我没有任何错误,但 hive 只是挂起而没有创建任何作业。然后它失败并出现以下错误:
FAILED: SemanticException org.apache.thrift.transport.TTransportException: java.net.SocketTimeoutException: Read timed out
我不知道失败的确切原因。您在我的查询中看到明显的错误吗? (如果是这样,它应该在语法检查期间失败;请注意,如果我在查询中引入错误,例如“col2”->“col3”,它会“正常”失败)
你知道我们是否可以强制 hive 显示有关错误的更多信息吗?我没有看到“详细”模式,但我可能错过了......
非常感谢您的帮助。
【问题讨论】: