分析 Apache Hive CLI
Profiling Apache Hive CLI
此 link Profling Hive CLI 提供了有关如何使用 Java 任务控制分析 Hive CLI 的说明。而步骤是
创建一个目录来保存探查器输出:mkdir $HOME/profiles
创建别名以便更容易重复:
alias debug='HADOOP_CLIENT_OPTS="-XX:+UnlockCommercialFeatures -XX:+FlightRecorder -XX:FlightRecorderOptions=defaultrecording=true,dumponexit=true,dumponexitpath=$HOME/profiles/"'
运行 一些 hadoop 客户端命令来分析
例如,要分析 Hive CLI 启动(以便使用 -e 'exit;')以及 TRACE 输出:
debug hive --hiveconf hive.root.logger=TRACE,console -e 'exit;' 2&>&1 | tee $HOME/profiles/hive_trace.out
归档并收集步骤1中使用的目录
tar czvf profile_data.tgz $HOME/profiles
我的问题是
a) 在步骤 4 之后,如何使用 java 任务控制来使用收集的指标
b) 当我使用 2 和 3 中的配置设置启动 hive 时。为什么 Hive 在 java 任务控制台中不可见?
c) 是否有更好的方法来分析 Hive 的组件,如 hive-exec、hive-metastore?
a) 您现在应该在 $HOME/profiles 中有一个 *.jfr 文件的编号,这些文件可以在 JMC 中打开和分析。这是关于如何执行此操作的官方文档的link:https://docs.oracle.com/javase/8/docs/technotes/guides/troubleshoot/tooldescr005.html(如果您在线搜索,有更多关于此的信息和视频)
b) 您如何启动 Hive,它与您 运行 JMC 的用户相同吗?你能看到系统上的其他 JVM 吗?如果你 运行 jps 或 jcmd,你能看到那里列出的 Hive 进程吗?
此 link Profling Hive CLI 提供了有关如何使用 Java 任务控制分析 Hive CLI 的说明。而步骤是
创建一个目录来保存探查器输出:
mkdir $HOME/profiles
创建别名以便更容易重复:
alias debug='HADOOP_CLIENT_OPTS="-XX:+UnlockCommercialFeatures -XX:+FlightRecorder -XX:FlightRecorderOptions=defaultrecording=true,dumponexit=true,dumponexitpath=$HOME/profiles/"'
运行 一些 hadoop 客户端命令来分析 例如,要分析 Hive CLI 启动(以便使用 -e 'exit;')以及 TRACE 输出:
debug hive --hiveconf hive.root.logger=TRACE,console -e 'exit;' 2&>&1 | tee $HOME/profiles/hive_trace.out
归档并收集步骤1中使用的目录
tar czvf profile_data.tgz $HOME/profiles
我的问题是
a) 在步骤 4 之后,如何使用 java 任务控制来使用收集的指标
b) 当我使用 2 和 3 中的配置设置启动 hive 时。为什么 Hive 在 java 任务控制台中不可见?
c) 是否有更好的方法来分析 Hive 的组件,如 hive-exec、hive-metastore?
a) 您现在应该在 $HOME/profiles 中有一个 *.jfr 文件的编号,这些文件可以在 JMC 中打开和分析。这是关于如何执行此操作的官方文档的link:https://docs.oracle.com/javase/8/docs/technotes/guides/troubleshoot/tooldescr005.html(如果您在线搜索,有更多关于此的信息和视频)
b) 您如何启动 Hive,它与您 运行 JMC 的用户相同吗?你能看到系统上的其他 JVM 吗?如果你 运行 jps 或 jcmd,你能看到那里列出的 Hive 进程吗?