kernelDensityJobs


URI

<spatialanalystJobs_uri>/kernelDensity[.<format>]

支持的方法

GETPOSTHEAD

父资源

spatialanalystJobs

子资源

kernelDensityJob

介绍

核密度分析作业资源根目录。通过对 kernelDensityJobs 执行GET 请求,可获取当前系统的核密度分析作业列表。通过 POST 请求可创建一个分析任务。

支持的方法:

支持的表述格式:RJSON、JSON、HTML、XML。

资源层次

HTTP 请求方法

对如下 URI 执行 HTTP 请求,以 rjson 输出格式为例加以说明,其中,supermapiserver 是服务器名。

http://supermapiserver:8090/iserver/services/processing/rest/v1/jobs/spatialanalyst/kernelDensity.rjson

GET 请求

获取核密度分析作业资源。

响应结构

对 kernelDensityJobs 资源执行 GET 请求,在响应消息的实体主体里是一个地图缓存作用资源描述集,其中单个资源描述的结构如下:  

字段 类型 说明
id String 应用ID。
state String 该任务的状态。包括执行状态、起止时间、耗时等。
setting String setting中包含了任务配置信息。

响应示例

对 kernelDensityJobs 资源执行 GET 请求,返回 rjson 格式的资源描述如下:

[{

  "id": "app-20170110062656-0000",

  "setting": {

    "DEFAULT_MASTER_ADRESS": "local[*] ",

    "analyst": {

      "geoidx": 10,

      "multi": false,

      "part": 0,

      "query": "-74.150,40.550,-73.750,40.950",

      "radius": "0.004",

      "resolution": "0.004",

      "separator": ","

    },

    "appName": "kernelDensity",

    "args": [

      "--input",

      "hdfs://192.168.112.158:9000/data/newyork_taxi_2013-01_14k.csv",

      "--query",

      "-74.150,40.550,-73.750,40.950",

      "--resolution",

      "0.004",

      "--radius",

      "0.004",

      "--separator",

      ",",

      "--geoidx",

      "10",

      "--output",

      "/home/iserver/Desktop/tomcat/apache-tomcat-8.5.5/webapps/iserver/processingResultData/KernelDensity/grids/b6521ad5-8edc-480f-a82d-81ab2f318025"

    ],

    "contextSetting": {

      "DEFAULT_DRIVER_MEMORY": "1g",

      "DEFAULT_EXECUTOR_CORES": 1,

      "DEFAULT_EXECUTOR_MEMORY": "1g",

      "driver_memory": "1g",

      "executor_cores": 1,

      "executor_memory": "1g"

    },

    "input": {"filePath": "hdfs://192.168.112.158:9000/data/newyork_taxi_2013-01_14k.csv"},

    "mainClass": "com.supermap.spark.main.KernelDensity",

    "output": {

      "cacheName": null,

      "cacheType": null,

      "outputPath": "/home/iserver/Desktop/tomcat/apache-tomcat-8.5.5/webapps/iserver/processingResultData/KernelDensity/grids/b6521ad5-8edc-480f-a82d-81ab2f318025"

    },

    "serviceInfo": null,

    "serviceRoot": "http://192.168.112.156:8090/iserver/services/"

  },

  "state": {

    "elapsedTime": 7011,

    "endTime": 1484058421300,

    "errorMsg": null,

    "errorStackTrace": null,

    "publisherelapsedTime": 0,

    "runState": "FINISHED",

    "startTime": 1484058414289

  }

}]

POST 请求

创建一个核密度分析任务。

请求参数

对 kernelDensityJobs 资源执行 POST 请求,创建一个 地图缓存作业任务,请求体需包含参数如下:

名称 类型 含义
input String 【必填参数】源数据路径(filePath)。目前支持 csv 数据。支持 iServer 本地数据,和 HDFS 分布式文件系统中的数据。
analyst String 【必填参数】分析配置。传入时,需指定:
  • 分析范围(query)
  • 分辨率 (resolution)
  • 分隔符 (separator)
  • 分析的影响半径 (radius)
  • 坐标索引(geoidx)

示例

对示例 kernelDensityJobs 资源:http://supermapiserver:8090/iserver/services/processing/rest/v1/jobs/mapping/ kernelDensity.rjson 执行 POST 请求,创建一个核密度分析任务。请求体中的参数如下:

{

"input":{

      "filePath":"/home/supermap/software/supermap/iobjects_for_spark/sample/data/tripdata/newyork_taxi_2013-01_14k.csv"

             },

"analyst":  {

                 "query": "-74.150,40.550,-73.750,40.950",

                 "resolution":"0.001",

                 "separator":",",

                 "radius":"0.001",

                 "geoidx":"10"

                  }

}

返回 rjson 格式的操作结果表述如下:

{

  "newResourceID": "app-20170110082711-0005",

  "newResourceLocation": "http://supermapiserver:8090/iserver/services/processing/rest/v1/jobs/spatialanalyst/kernelDensity/app-20170110082711-0005",

  "postResultType": "CreateChild",

  "succeed": true

}

HEAD 请求

返回跟 GET 请求一样的 HTTP 响应头,但是没有响应实体。可以在不必传输整个响应内容的情况下,获取包含在响应消息头中的元数据信息。元数据信息包括媒体类型,字符编码,压缩编码,实体内容长度等。

HEAD 请求可以用来判断 kernelDensityJobs 资源是否存在,或者客户端是否有权限访问 kernelDensityJobs 资源。通过对加.<format>的 URI 执行 HEAD 请求,还可以快速判断 kernelDensityJobs 资源是否支持<format>格式的表述。

请参见