hadoop - Hadoop,Hive->获取针对集群运行的SQL列表

标签 hadoop hive mapr

因此,我们有一群人打入我们的集群,并希望监视通过hive / odbc运行的每个SQL语句。作业历史记录服务器网页将为我提供部分SQL,但不是全部。有没有办法检索正在运行的命令的完整SQL?可以通过Web GUI或命令行。我想监视效率低下的查询,并向开发人员发送警告。

群集是在 yarn 模式下运行Mapr 5.0的10节点MapR群集

最佳答案

我找到了解决方案。 SSH进入运行hiveserver2的计算机,并执行以下命令。用您感兴趣的用户替换(如果需要,则用*替换),并用您正在使用的hive版本替换hive-0.13。cat /opt/mapr/hive/hive-0.13/logs/<user>/hive.log | grep "Starting command"编辑:自从我写这篇文章的那一年以来,它似乎已更改为:cat /opt/mapr/hive/hive-2.1/logs/<user>/hive.log | grep "Executing command"编辑采取2。上面不处理多行sql,仅显示第一行。对于许多查询,它仅显示“SELECT”,仅此而已。下面解决了这个问题。我有一个很好的sed解决方案,但是由于某种原因它不能与tail -f一起使用,所以Perl可以。对于Perl而言并不常见,但实际上它比sed解决方案更具可读性。cat /opt/mapr/hive/hive-2.3/logs/<user>/hive.log | perl -ne 's/\r\n/ /g; print;' | grep "Executing command"

关于hadoop - Hadoop,Hive->获取针对集群运行的SQL列表,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/41730831/

相关文章:

hadoop - 将日期函数设置为变量并在直线和 hql 文件(配置单元)中使用

python - 在Hive中以不同的结构导入多个文件

hadoop - 如何将 Hadoop 目录压缩为单个 gzip 文件?

java - 在 flink yarn 集群上通过 maven 运行包含配置的 Java Jar

json - hive 中的原始json字段类型

hadoop - Hive - 删除重复项,保留最新记录 - 所有这些

Java 版本与 Protobuf 冲突

unix - 使用 SCP 将文件从 Windows 桌面移动到 vmware 上的 hadoop 沙箱

hadoop - 配置 hadoop 0.23.8 时出现以下错误 "Datanode denied communication with namenode"

hadoop - 寻找hadoop使用的端口及其使用的所有端口