JDBC查询结果中会返回本次查询统计信息,可根据这些指标查看当前SQL运行情况:
completedSplits -- 读取完成的hdfs分片数量
elapsedTimeMillis -- 执行耗时(ms)
nodes -- 执行worker节点数
peakMemoryBytes -- 峰值内存字节数
processedBytes -- 处理的字节数
processedRows -- 处理的行数
queued -- 当前是否在排队
queuedSplits -- 当前排队的读hdfs分片数量
queuedTimeMillis -- 排队耗时
scheduled -- 是否被调度
runningSplits --运行中的分片
state -- 查询状态
totalSplits -- 读hdfs文件分片数量
wallTimeMillis
rootStage -- 根执行阶段(最后执行)
|-- subStages -- 子执行计划阶段(stageId越大先执行)
|--completedSplits -- 读取完成的hdfs分片数量
|--nodes -- 执行worker节点数
|--processedBytes -- 处理的字节数
|--processedRows -- 处理的行数
|--queuedSplits -- 当前读取hdfs排队数量
|--queuedTimeMillis -- 排队耗时
|--runningSplits --运行中的分片
|--stageId -- 阶段id
|--state -- 查询状态
|--totalSplits -- 读hdfs文件分片数量
|--wallTimeMillis
|--subStages -- 子执行计划阶段(stageId越大先执行)
{
"completedSplits": 0,
"cpuTimeMillis": 1,
"elapsedTimeMillis": 1252,
"nodes": 115,
"peakMemoryBytes": 0,
"processedBytes": 0,
"processedRows": 0,
"progressPercentage": 0,
"queryId": "20230423_110617_94646_s3hm9",
"queued": false,
"queuedSplits": 1132,
"queuedTimeMillis": 0,
"rootStage": {
"completedSplits": 0,
"cpuTimeMillis": 0,
"done": false,
"nodes": 1,
"processedBytes": 0,
"processedRows": 0,
"queuedSplits": 16,
"runningSplits": 0,
"stageId": "0",
"state": "RUNNING",
"subStages": [
{
"completedSplits": 0,
"cpuTimeMillis": 1,
"done": false,
"nodes": 32,
"processedBytes": 0,
"processedRows": 0,
"queuedSplits": 992,
"runningSplits": 32,
"stageId": "1",
"state": "RUNNING",
"subStages": [
{
"completedSplits": 0,
"cpuTimeMillis": 0,
"done": false,
"nodes": 105,
"processedBytes": 0,
"processedRows": 0,
"queuedSplits": 124,
"runningSplits": 1,
"stageId": "2",
"state": "RUNNING",
"subStages": [],
"totalSplits": 125,
"wallTimeMillis": 0
}
],
"totalSplits": 1024,
"wallTimeMillis": 1
}
],
"totalSplits": 16,
"wallTimeMillis": 0
},
"runningSplits": 33,
"scheduled": true,
"state": "RUNNING",
"totalSplits": 1165,
"wallTimeMillis": 1
}