通过WebUI查看Structured Streaming作业统计信息

本文涉及的产品
EMR Serverless StarRocks,5000CU*H 48000GB*H
EMR Serverless Spark 免费试用,1000 CU*H 有效期3个月
简介: 前言 从EMR-3.18.1版本开始,EMR将提供Spark Streaming SQL预览版功能。本次作为新特性的一部分,EMR将扩展现有Spark WebUI,支持Structured Streaming Query的统计信息查看。

前言

从EMR-3.18.1版本开始,EMR将提供Spark Streaming SQL预览版功能。本次作为新特性的一部分,EMR将扩展现有Spark WebUI,支持Structured Streaming Query的统计信息查看。

功能介绍

Query列表

我们在现有Spark WebUI上新增了streamingsql Tab,用于展示当前作业中进行中以及完成的Streaming Query。

URL地址:http://${baseUrl}/streamingsql

image

Active Streaming Queries:当前正在运行的query
Completed Streaming Queries:已完成的query,包括结束的和失败的query

列名 说明
Query Name 查询Name,通过“SET streaming.query.name=${QUERY_NAME}”指定。
Status 当前运行状态,包括RUNNING,FAILED和FINISHED。
Id Query ID,保存到checkpoint中,多次运行同一个query, id保持不变。
Run ID Query Run ID,每次重新运行query,都会重新生成一个Run ID。
Submit Time 当前Query提交执行的时间。
Duration 当前Query运行时间。
Avg Input PerSec 最近"spark.sql.streaming.numRecentProgressUpdates"个批次的平均数据输入速率。默认最近100个批次统计信息。
Avg Process PerSec 最近"spark.sql.streaming.numRecentProgressUpdates"个批次的平均数据处理速率。默认最近100个批次统计信息。
Total Input Rows 最近"spark.sql.streaming.numRecentProgressUpdates"个批次的数据条数总和,注意不是Query运行期间的数据条数总和。默认最近100个批次统计信息。
Last Batch ID 最近一次完成的Batch ID。
Last Progress 最近一次批次的执行信息。
ERROR 如果Query失败,展示摘要错误信息。


支持在界面上kill某个query。​
image

kill之后状态变为“FINISHED”:
image

Query统计详情

通过点击Query的RunID,可以查看当前Query的运行统计信息,包括:Input Rate,Process Rate,Input Rows的时序变化,以及每个批次的Duration堆栈图,包括WalCommit,QueryPlanning,GetOffset,GetBatch以及AddBatch。

URL地址:http://${baseUrl}/streamingsql/statistics?id=9d7e9076-f96a-4d19-9f82-460b5af57daa

image

image

我们可以查看任意时间的Batch的各个执行阶段的时间消耗。

image

同样的,这里将只会展示“spark.sql.streaming.numRecentProgressUpdates”个Batch的统计信息。如果需要查看更长周期内的统计信息,可以设置“spark.sql.streaming.numRecentProgressUpdates”为更大值。需要注意的是,这会带来一定的内存开销。

小结

以上简单演示了Structured Streaming Query的管理和统计信息查看功能。当前Spark Streaming SQL处于预览阶段,我们将在UI上集成更多有用的信息,方便大家查看和监控作业的运行状态。

本文转载自:https://yq.aliyun.com/articles/691416

相关文章
DataGrip之一个赏心悦目的SQL格式化模板,快用起来吧
DataGrip之一个赏心悦目的SQL格式化模板,快用起来吧
DataGrip之一个赏心悦目的SQL格式化模板,快用起来吧
|
数据采集 人工智能 数据管理
12款开源数据资产(元数据)管理平台选型分析(二)
12款开源数据资产(元数据)管理平台选型分析(二)
2723 0
|
缓存
如何彻底卸载VSCode及其原来的插件配置缓存
如何彻底卸载VSCode及其原来的插件配置缓存
1371 0
|
SQL 存储 Apache
Paimon 实践 | 基于 Flink SQL 和 Paimon 构建流式湖仓新方案
Paimon 实践 | 基于 Flink SQL 和 Paimon 构建流式湖仓新方案
4513 59
|
人工智能
MidJourney以图生图的详细教程(含6种案例介绍)(上)
MidJourney以图生图的详细教程(含6种案例介绍)
|
关系型数据库 MySQL Java
Server returns invalid timezone. Go to 'Advanced' tab and set 'serverTimezone' property manually
Server returns invalid timezone. Go to 'Advanced' tab and set 'serverTimezone' property manually
4856 1
Server returns invalid timezone. Go to 'Advanced' tab and set 'serverTimezone' property manually
|
JSON Java DataX
DataX教程(04)- 配置完整解读
DataX教程(04)- 配置完整解读
3739 0
|
测试技术 Python
pytest--命令行常用参数
pytest--命令行常用参数
pytest--命令行常用参数
|
缓存 网络协议 Unix
【网络篇】第十八篇——ping的工作原理
【网络篇】第十八篇——ping的工作原理
【网络篇】第十八篇——ping的工作原理
|
网络安全 开发工具 git
git的基本操作,大文件上传(码云和GitHub)和出现error处理
git的基本操作,大文件上传(码云和GitHub)和出现error处理