This service is used to find spatial clusters in a data set.
post
/spatialviewer/api/v1/hadoop/clusteringJob
The service uses a distributed version of the K-means algorithm.
Request
Supported Media Types
- application/json
Query Parameters
-
asynchronous: boolean
if true the operation is runned asynchronously.Default Value:
false
Job details
Root Schema : ClusteringJobInfo
Type:
Show Source
object
-
dataPath(optional):
string
Path of the file or files in HDFS.Example:
/user/oracle/spatialviewer/tweetsJune.json
-
inputFormatClass(optional):
string
The input format class.Example:
oracle.spatial.hadoop.vector.geojson.mapred.GeoJsonInputFormat
-
jarWithNeededClasses(optional):
string
jar name with the user-defined classes like custom RecordInfoProvider or InputFormat. If the InputFormat class or the RecordInfoProvider class is not in the API, or in the hadoop API classes, then a jar with the user-defined classes must be provided. To be able to use this jar the user must add it in the /opt/oracle/oracle-spatial-graph/spatial/web-server/spatialviewer/WEB-INF/lib directory and restart the server. Optional property.Example:
myjar.jar
-
numberOfClusters(optional):
integer(int32)
Number of clusters to be found.Example:
4
-
outputPath(optional):
string
The Hadoop job output path.Example:
/user/oracle/spatialviewer/clusteringResult
-
recordInfoProviderClass(optional):
string
The class that provides the spatial information.Example:
oracle.spatial.hadoop.vector.geojson.GeoJsonRecordInfoProvider
-
resultName(optional):
string
The result name.Example:
Clustering Tweets June
-
srid(optional):
integer(int32)
SRID of the geometries.Example:
8307
-
tolerance(optional):
number(double)
Double value that represents the tolerance used when performing spatial operations.Example:
0.05
Response
Supported Media Types
- application/json
200 Response
Successful request.
The response contains the location of the results in HDFS.
When the job finish the results will be saved in the folder clustering_results contained in the SpatialViewer local working directory (see SpatialViewer configuration). The result can be used as data source of the Map API VectorLayer (OM.layer.VectorLayer) for display.
The response contains the location of the results in HDFS.
When the job finish the results will be saved in the folder clustering_results contained in the SpatialViewer local working directory (see SpatialViewer configuration). The result can be used as data source of the Map API VectorLayer (OM.layer.VectorLayer) for display.
Root Schema : ClusteringJobResponse
Type:
Show Source
object
-
o:successCode(optional):
string
The success code.Example:
SV-05005
-
response(optional):
string
The response contains the location of the results in HDFS.Example:
hdfs://<namenode>:8020/user/oracle/spatialviewer/clusteringResult
-
status(optional):
string
success or errorExample:
success
-
title(optional):
string
Service title.Example:
Create clustering job.
202 Response
accepted asynchronous request.
The response contains the resource manager web application URL to track the job.
Additionally When the job finishes the results will be saved in the folder clustering_results contained in the SpatialViewer local working directory (see SpatialViewer configuration). The result can be used as data source of the Map API VectorLayer (OM.layer.VectorLayer) for display.
The response contains the resource manager web application URL to track the job.
Additionally When the job finishes the results will be saved in the folder clustering_results contained in the SpatialViewer local working directory (see SpatialViewer configuration). The result can be used as data source of the Map API VectorLayer (OM.layer.VectorLayer) for display.
Root Schema : AsyncClusteringJobResponse
Type:
Show Source
object
-
o:successCode(optional):
string
The success code.Example:
SV-05005
-
response(optional):
string
The response contains the resource manager web application URL to track the job. See this value in the SpatialViewer Hadoop configuration (refer to user's guide chapter 1.8.4 Configuring the Oracle SpatialViewer on Oracle Big Data Appliance). The parameter is yarn.resourcemanager.webapp.address.Example:
http://resource.manager.webapp:8088
-
status(optional):
string
success or errorExample:
success
-
title(optional):
string
Service title.Example:
Create clustering job.
Examples
The following example shows how to perform a clustering analysis by submitting a POST request on the REST resource using cURL.
curl -v -X POST "http://localhost:8045/spatialviewer/api/v1/hadoop/clusteringJob" -H "accept: application/json" -H "content-type: application/json" -d "{ \"dataPath\": \"/user/oracle/tweets.json\", \"inputFormatClass\": \"oracle.spatial.hadoop.vector.geojson.mapred.GeoJsonInputFormat\", \"recordInfoProviderClass\": \"oracle.spatial.hadoop.vector.geojson.GeoJsonRecordInfoProvider\", \"srid\": 8307, \"tolerance\": 0.05, \"numberOfClusters\": 5, \"outputPath\": \"/user/oracle/clusteringResult\", \"resultName\": \"Clustering Tweets\"}"
Example of Response Header
The following shows an example of the response header.
HTTP/1.1 200 OK Date: Wed, 15 Nov 2017 17:50:38 GMT Access-Control-Allow-Origin: * Access-Control-Allow-Credentials: true Access-Control-Allow-Methods: GET, POST, DELETE, PUT Access-Control-Allow-Headers: Content-Type, Accept Transfer-Encoding: chunked Content-Type: application/json
Example of Response Body
The following example shows the contents of the response body in JSON format:
{"status" : "success", "title" : "Create clustering job.", "o:successCode" : "SV-05005", "response" : "hdfs://localhost:8020/user/oracle/clusteringResult"}