MAPREDUCE服务 MRS-Spark REST API接口介绍:REST API增强
REST API增强
- SQL相关的命令:获取所有SQL语句和执行时间最长的SQL语句
- SparkUI命令:
curl https://192.168.195.232:26001/proxy/application_1476947670799_0053/api/v1/applications/Spark-JD BCS erverapplication_1476947670799_0053/SQL?mode=monitoring --insecure
其中192.168.195.232为ResourceManager主节点的业务IP,26001为ResourceManager的端口号,application_1476947670799_0053为在YARN中的应用ID,Spark-JDB CS erver是Spark应用的name。
- JobHistory命令:
curl https://192.168.227.16:22500/api/v1/applications/application_1478570725074_0004-part1/SQL?mode=monitoring --insecure
其中192.168.227.16为JobHistory节点的业务IP,22500为JobHistory的端口号,application_1478570725074_0004-part1为应用ID。
- 结果:
SparkUI命令和JobHistory命令的查询结果均为:
{ "longestDurationOfCompletedSQL" : [ { "id" : 0, "status" : "COMPLETED", "description" : "getCallSite at SQLExecution.scala:48", "submissionTime" : "2016/11/08 15:39:00", "duration" : "2 s", "runningJobs" : [ ], "successedJobs" : [ 0 ], "failedJobs" : [ ] } ], "sqls" : [ { "id" : 0, "status" : "COMPLETED", "description" : "getCallSite at SQLExecution.scala:48", "submissionTime" : "2016/11/08 15:39:00", "duration" : "2 s", "runningJobs" : [ ], "successedJobs" : [ 0 ], "failedJobs" : [ ] }] }
- 结果分析:
通过这个命令,可以查询当前应用的所有SQL语句的信息(即结果中“sqls”的部分),执行时间最长的SQL语句的信息(即结果中“longestDurationOfCompletedSQL”的部分)。每个SQL语句的信息如下表3。
表3 SQL的常用信息 参数
描述
id
SQL语句的ID
status
SQL语句的执行状态,有RUNNING、COMPLETED、FAILED三种
runningJobs
SQL语句产生的job中,正在执行的job列表
successedJobs
SQL语句产生的job中,执行成功的job列表
failedJobs
SQL语句产生的job中,执行失败的job列表
- SparkUI命令: