You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@sedona.apache.org by ji...@apache.org on 2020/09/07 08:39:58 UTC
[incubator-sedona-website] branch asf-site updated: Initial website
This is an automated email from the ASF dual-hosted git repository.
jiayu pushed a commit to branch asf-site
in repository https://gitbox.apache.org/repos/asf/incubator-sedona-website.git
The following commit(s) were added to refs/heads/asf-site by this push:
new 1e8dd26 Initial website
1e8dd26 is described below
commit 1e8dd26ad832dcca24ffe19858ffdacda30b5237
Author: Jia Yu <ji...@gmail.com>
AuthorDate: Mon Sep 7 01:39:42 2020 -0700
Initial website
---
.asf.yaml | 2 +
404.html | 931 +
api/GeoSpark-Python-API/index.html | 986 +
api/GeoSpark-Scala-and-Java-API/index.html | 1049 +
api/sql/GeoSparkSQL-AggregateFunction/index.html | 1097 +
api/sql/GeoSparkSQL-Constructor/index.html | 1317 +
api/sql/GeoSparkSQL-Function/index.html | 1869 +
api/sql/GeoSparkSQL-Optimizer/index.html | 1155 +
api/sql/GeoSparkSQL-Overview/index.html | 1105 +
api/sql/GeoSparkSQL-Parameter/index.html | 1113 +
api/sql/GeoSparkSQL-Predicate/index.html | 1192 +
api/sql/GeoSparkSQL-javadoc/index.html | 1049 +
api/viz/Babylon-Scala-and-Java-API/index.html | 1048 +
api/viz/sql/index.html | 1288 +
assets/images/favicon.png | Bin 0 -> 521 bytes
assets/images/icons/bitbucket.4ebea66e.svg | 20 +
assets/images/icons/github.a4034fb1.svg | 18 +
assets/images/icons/gitlab.348cdb3a.svg | 38 +
assets/javascripts/application.8eb9be28.js | 1 +
assets/javascripts/lunr/lunr.da.js | 1 +
assets/javascripts/lunr/lunr.de.js | 1 +
assets/javascripts/lunr/lunr.du.js | 1 +
assets/javascripts/lunr/lunr.es.js | 1 +
assets/javascripts/lunr/lunr.fi.js | 1 +
assets/javascripts/lunr/lunr.fr.js | 1 +
assets/javascripts/lunr/lunr.hu.js | 1 +
assets/javascripts/lunr/lunr.it.js | 1 +
assets/javascripts/lunr/lunr.jp.js | 1 +
assets/javascripts/lunr/lunr.multi.js | 1 +
assets/javascripts/lunr/lunr.no.js | 1 +
assets/javascripts/lunr/lunr.pt.js | 1 +
assets/javascripts/lunr/lunr.ro.js | 1 +
assets/javascripts/lunr/lunr.ru.js | 1 +
assets/javascripts/lunr/lunr.stemmer.support.js | 1 +
assets/javascripts/lunr/lunr.sv.js | 1 +
assets/javascripts/lunr/lunr.tr.js | 1 +
assets/javascripts/lunr/tinyseg.js | 1 +
assets/javascripts/modernizr.1aa3b519.js | 1 +
.../stylesheets/application-palette.6079476c.css | 2 +
assets/stylesheets/application.78aab2dc.css | 2 +
contact/index.html | 1092 +
contribute/contributor/index.html | 1163 +
contribute/rule/index.html | 1159 +
.../index.html | 1409 +
.../GeoSpark-All-Modules-Release-notes/index.html | 1576 +
download/cluster/index.html | 1086 +
download/compile/index.html | 1090 +
download/overview/index.html | 1069 +
download/project/index.html | 1212 +
download/scalashell/index.html | 1115 +
download/zeppelin/index.html | 1195 +
image/add-geospark-interpreter.gif | Bin 0 -> 616356 bytes
image/arealm.csv | 121960 ++++++++++++++++++
image/enable-helium.gif | Bin 0 -> 275014 bytes
image/geopandas_plot.PNG | Bin 0 -> 55662 bytes
image/geospark-stat.png | Bin 0 -> 120455 bytes
image/geospark-zeppelin-demo.json | 1 +
image/icon.png | Bin 0 -> 17096 bytes
image/sql-zeppelin.gif | Bin 0 -> 1293192 bytes
image/sql-zeppelin.png | Bin 0 -> 577147 bytes
image/viz-zeppelin.gif | Bin 0 -> 2506165 bytes
image/viz-zeppelin.png | Bin 0 -> 433678 bytes
index.html | 1126 +
publication/index.html | 1105 +
search/search_index.json | 1784 +
sitemap.xml | 198 +
.../index.html | 1135 +
tutorial/GeoSpark-Runnable-DEMO/index.html | 985 +
tutorial/benchmark/index.html | 1050 +
tutorial/faq/index.html | 985 +
tutorial/geospark-core-python/index.html | 2377 +
tutorial/geospark-sql-python/index.html | 1890 +
tutorial/rdd/index.html | 2121 +
tutorial/sql/index.html | 1504 +
tutorial/viz/index.html | 1437 +
tutorial/zeppelin/index.html | 1116 +
76 files changed, 169241 insertions(+)
diff --git a/.asf.yaml b/.asf.yaml
new file mode 100644
index 0000000..0ba12c6
--- /dev/null
+++ b/.asf.yaml
@@ -0,0 +1,2 @@
+publish:
+ whoami: asf-site
\ No newline at end of file
diff --git a/404.html b/404.html
new file mode 100644
index 0000000..cbf1ed2
--- /dev/null
+++ b/404.html
@@ -0,0 +1,931 @@
+
+
+
+
+<!DOCTYPE html>
+<html lang="en" class="no-js">
+ <head>
+
+ <meta charset="utf-8">
+ <meta name="viewport" content="width=device-width,initial-scale=1">
+ <meta http-equiv="x-ua-compatible" content="ie=edge">
+
+
+
+
+ <meta name="lang:clipboard.copy" content="Copy to clipboard">
+
+ <meta name="lang:clipboard.copied" content="Copied to clipboard">
+
+ <meta name="lang:search.language" content="en">
+
+ <meta name="lang:search.pipeline.stopwords" content="True">
+
+ <meta name="lang:search.pipeline.trimmer" content="True">
+
+ <meta name="lang:search.result.none" content="No matching documents">
+
+ <meta name="lang:search.result.one" content="1 matching document">
+
+ <meta name="lang:search.result.other" content="# matching documents">
+
+ <meta name="lang:search.tokenizer" content="[\s\-]+">
+
+ <link rel="shortcut icon" href="/assets/images/favicon.png">
+ <meta name="generator" content="mkdocs-0.17.2, mkdocs-material-2.7.1">
+
+
+
+ <title>GeoSpark</title>
+
+
+
+ <link rel="stylesheet" href="/assets/stylesheets/application.78aab2dc.css">
+
+ <link rel="stylesheet" href="/assets/stylesheets/application-palette.6079476c.css">
+
+
+
+ <script src="/assets/javascripts/modernizr.1aa3b519.js"></script>
+
+
+ <link href="https://fonts.gstatic.com" rel="preconnect" crossorigin>
+
+ <link rel="stylesheet" href="https://fonts.googleapis.com/css?family=Roboto:300,400,400i,700|Roboto+Mono">
+ <style>body,input{font-family:"Roboto","Helvetica Neue",Helvetica,Arial,sans-serif}code,kbd,pre{font-family:"Roboto Mono","Courier New",Courier,monospace}</style>
+
+ <link rel="stylesheet" href="https://fonts.googleapis.com/icon?family=Material+Icons">
+
+
+
+ </head>
+
+
+
+ <body dir="ltr" data-md-color-primary="cyan" data-md-color-accent="pink">
+
+ <svg class="md-svg">
+ <defs>
+
+
+ <svg xmlns="http://www.w3.org/2000/svg" width="416" height="448"
+ viewBox="0 0 416 448" id="github">
+ <path fill="currentColor" d="M160 304q0 10-3.125 20.5t-10.75 19-18.125
+ 8.5-18.125-8.5-10.75-19-3.125-20.5 3.125-20.5 10.75-19 18.125-8.5
+ 18.125 8.5 10.75 19 3.125 20.5zM320 304q0 10-3.125 20.5t-10.75
+ 19-18.125 8.5-18.125-8.5-10.75-19-3.125-20.5 3.125-20.5 10.75-19
+ 18.125-8.5 18.125 8.5 10.75 19 3.125 20.5zM360
+ 304q0-30-17.25-51t-46.75-21q-10.25 0-48.75 5.25-17.75 2.75-39.25
+ 2.75t-39.25-2.75q-38-5.25-48.75-5.25-29.5 0-46.75 21t-17.25 51q0 22 8
+ 38.375t20.25 25.75 30.5 15 35 7.375 37.25 1.75h42q20.5 0
+ 37.25-1.75t35-7.375 30.5-15 20.25-25.75 8-38.375zM416 260q0 51.75-15.25
+ 82.75-9.5 19.25-26.375 33.25t-35.25 21.5-42.5 11.875-42.875 5.5-41.75
+ 1.125q-19.5 0-35.5-0.75t-36.875-3.125-38.125-7.5-34.25-12.875-30.25-20.25-21.5-28.75q-15.5-30.75-15.5-82.75
+ 0-59.25 34-99-6.75-20.5-6.75-42.5 0-29 12.75-54.5 27 0 47.5 9.875t47.25
+ 30.875q36.75-8.75 77.25-8.75 37 0 70 8 26.25-20.5
+ 46.75-30.25t47.25-9.75q12.75 25.5 12.75 54.5 0 21.75-6.75 42 34 40 34
+ 99.5z" />
+</svg>
+
+ </defs>
+ </svg>
+ <input class="md-toggle" data-md-toggle="drawer" type="checkbox" id="drawer" autocomplete="off">
+ <input class="md-toggle" data-md-toggle="search" type="checkbox" id="search" autocomplete="off">
+ <label class="md-overlay" data-md-component="overlay" for="drawer"></label>
+
+
+ <header class="md-header" data-md-component="header">
+ <nav class="md-header-nav md-grid">
+ <div class="md-flex">
+ <div class="md-flex__cell md-flex__cell--shrink">
+ <a href="/" title="GeoSpark" class="md-header-nav__button md-logo">
+
+ <i class="md-icon"></i>
+
+ </a>
+ </div>
+ <div class="md-flex__cell md-flex__cell--shrink">
+ <label class="md-icon md-icon--menu md-header-nav__button" for="drawer"></label>
+ </div>
+ <div class="md-flex__cell md-flex__cell--stretch">
+ <div class="md-flex__ellipsis md-header-nav__title" data-md-component="title">
+
+
+ <span class="md-header-nav__topic">
+ GeoSpark
+ </span>
+ <span class="md-header-nav__topic">
+
+ </span>
+
+
+ </div>
+ </div>
+ <div class="md-flex__cell md-flex__cell--shrink">
+
+
+ <label class="md-icon md-icon--search md-header-nav__button" for="search"></label>
+
+<div class="md-search" data-md-component="search" role="dialog">
+ <label class="md-search__overlay" for="search"></label>
+ <div class="md-search__inner" role="search">
+ <form class="md-search__form" name="search">
+ <input type="text" class="md-search__input" name="query" placeholder="Search" autocapitalize="off" autocorrect="off" autocomplete="off" spellcheck="false" data-md-component="query" data-md-state="active">
+ <label class="md-icon md-search__icon" for="search"></label>
+ <button type="reset" class="md-icon md-search__icon" data-md-component="reset" tabindex="-1">
+ 
+ </button>
+ </form>
+ <div class="md-search__output">
+ <div class="md-search__scrollwrap" data-md-scrollfix>
+ <div class="md-search-result" data-md-component="result">
+ <div class="md-search-result__meta">
+ Type to start searching
+ </div>
+ <ol class="md-search-result__list"></ol>
+ </div>
+ </div>
+ </div>
+ </div>
+</div>
+
+
+ </div>
+
+ <div class="md-flex__cell md-flex__cell--shrink">
+ <div class="md-header-nav__source">
+
+
+
+
+
+
+ <a href="https://github.com/DataSystemsLab/GeoSpark/" title="Go to repository" class="md-source" data-md-source="github">
+
+ <div class="md-source__icon">
+ <svg viewBox="0 0 24 24" width="24" height="24">
+ <use xlink:href="#github" width="24" height="24"></use>
+ </svg>
+ </div>
+
+ <div class="md-source__repository">
+ GitHub
+ </div>
+ </a>
+
+ </div>
+ </div>
+
+ </div>
+ </nav>
+</header>
+
+ <div class="md-container">
+
+
+
+
+ <main class="md-main">
+ <div class="md-main__inner md-grid" data-md-component="container">
+
+
+ <div class="md-sidebar md-sidebar--primary" data-md-component="navigation">
+ <div class="md-sidebar__scrollwrap">
+ <div class="md-sidebar__inner">
+ <nav class="md-nav md-nav--primary" data-md-level="0">
+ <label class="md-nav__title md-nav__title--site" for="drawer">
+ <span class="md-nav__button md-logo">
+
+ <i class="md-icon"></i>
+
+ </span>
+ GeoSpark
+ </label>
+
+ <div class="md-nav__source">
+
+
+
+
+
+
+ <a href="https://github.com/DataSystemsLab/GeoSpark/" title="Go to repository" class="md-source" data-md-source="github">
+
+ <div class="md-source__icon">
+ <svg viewBox="0 0 24 24" width="24" height="24">
+ <use xlink:href="#github" width="24" height="24"></use>
+ </svg>
+ </div>
+
+ <div class="md-source__repository">
+ GitHub
+ </div>
+ </a>
+
+ </div>
+
+ <ul class="md-nav__list" data-md-scrollfix>
+
+
+
+
+
+
+ <li class="md-nav__item">
+ <a href="/" title="Home" class="md-nav__link">
+ Home
+ </a>
+ </li>
+
+
+
+
+
+
+
+ <li class="md-nav__item md-nav__item--nested">
+
+ <input class="md-toggle md-nav__toggle" data-md-toggle="nav-2" type="checkbox" id="nav-2">
+
+ <label class="md-nav__link" for="nav-2">
+ Download
+ </label>
+ <nav class="md-nav" data-md-component="collapsible" data-md-level="1">
+ <label class="md-nav__title" for="nav-2">
+ Download
+ </label>
+ <ul class="md-nav__list" data-md-scrollfix>
+
+
+
+
+
+
+
+ <li class="md-nav__item">
+ <a href="/download/overview/" title="Quick start" class="md-nav__link">
+ Quick start
+ </a>
+ </li>
+
+
+
+
+
+
+
+ <li class="md-nav__item">
+ <a href="/download/GeoSpark-All-Modules-Release-notes/" title="Release notes" class="md-nav__link">
+ Release notes
+ </a>
+ </li>
+
+
+
+
+
+
+
+ <li class="md-nav__item">
+ <a href="/download/GeoSpark-All-Modules-Maven-Central-Coordinates/" title="Maven Central coordinate" class="md-nav__link">
+ Maven Central coordinate
+ </a>
+ </li>
+
+
+
+
+
+
+
+ <li class="md-nav__item">
+ <a href="/download/cluster/" title="Set up Spark cluser" class="md-nav__link">
+ Set up Spark cluser
+ </a>
+ </li>
+
+
+
+
+
+
+
+ <li class="md-nav__item">
+ <a href="/download/scalashell/" title="Spark Scala shell" class="md-nav__link">
+ Spark Scala shell
+ </a>
+ </li>
+
+
+
+
+
+
+
+ <li class="md-nav__item">
+ <a href="/download/project/" title="Self-contained project" class="md-nav__link">
+ Self-contained project
+ </a>
+ </li>
+
+
+
+
+
+
+
+ <li class="md-nav__item">
+ <a href="/download/zeppelin/" title="Install GeoSpark-Zeppelin" class="md-nav__link">
+ Install GeoSpark-Zeppelin
+ </a>
+ </li>
+
+
+
+
+
+
+
+ <li class="md-nav__item">
+ <a href="/download/compile/" title="Compile the source code" class="md-nav__link">
+ Compile the source code
+ </a>
+ </li>
+
+
+ </ul>
+ </nav>
+ </li>
+
+
+
+
+
+
+
+ <li class="md-nav__item md-nav__item--nested">
+
+ <input class="md-toggle md-nav__toggle" data-md-toggle="nav-3" type="checkbox" id="nav-3">
+
+ <label class="md-nav__link" for="nav-3">
+ Tutorial
+ </label>
+ <nav class="md-nav" data-md-component="collapsible" data-md-level="1">
+ <label class="md-nav__title" for="nav-3">
+ Tutorial
+ </label>
+ <ul class="md-nav__list" data-md-scrollfix>
+
+
+
+
+
+
+
+ <li class="md-nav__item">
+ <a href="/tutorial/rdd/" title="Spatial RDD application" class="md-nav__link">
+ Spatial RDD application
+ </a>
+ </li>
+
+
+
+
+
+
+
+ <li class="md-nav__item">
+ <a href="/tutorial/sql/" title="Spatial SQL application" class="md-nav__link">
+ Spatial SQL application
+ </a>
+ </li>
+
+
+
+
+
+
+
+ <li class="md-nav__item">
+ <a href="/tutorial/viz/" title="Visualize Spatial DataFrame" class="md-nav__link">
+ Visualize Spatial DataFrame
+ </a>
+ </li>
+
+
+
+
+
+
+
+ <li class="md-nav__item">
+ <a href="/tutorial/zeppelin/" title="Run GeoSpark via Zeppelin" class="md-nav__link">
+ Run GeoSpark via Zeppelin
+ </a>
+ </li>
+
+
+
+
+
+
+
+ <li class="md-nav__item">
+ <a href="/tutorial/geospark-core-python/" title="Spatial RDD in Python" class="md-nav__link">
+ Spatial RDD in Python
+ </a>
+ </li>
+
+
+
+
+
+
+
+ <li class="md-nav__item">
+ <a href="/tutorial/geospark-sql-python/" title="Spatial SQL in Python" class="md-nav__link">
+ Spatial SQL in Python
+ </a>
+ </li>
+
+
+
+
+
+
+
+ <li class="md-nav__item">
+ <a href="/tutorial/GeoSpark-Runnable-DEMO/" title="GeoSpark template project" class="md-nav__link">
+ GeoSpark template project
+ </a>
+ </li>
+
+
+
+
+
+
+
+ <li class="md-nav__item">
+ <a href="/tutorial/faq/" title="Frequently Asked Questions" class="md-nav__link">
+ Frequently Asked Questions
+ </a>
+ </li>
+
+
+
+
+
+
+
+ <li class="md-nav__item">
+ <a href="/tutorial/Advanced-Tutorial-Tune-your-GeoSpark-Application/" title="Tune GeoSpark RDD application" class="md-nav__link">
+ Tune GeoSpark RDD application
+ </a>
+ </li>
+
+
+
+
+
+
+
+ <li class="md-nav__item">
+ <a href="/tutorial/benchmark/" title="Benchmark" class="md-nav__link">
+ Benchmark
+ </a>
+ </li>
+
+
+ </ul>
+ </nav>
+ </li>
+
+
+
+
+
+
+
+ <li class="md-nav__item md-nav__item--nested">
+
+ <input class="md-toggle md-nav__toggle" data-md-toggle="nav-4" type="checkbox" id="nav-4">
+
+ <label class="md-nav__link" for="nav-4">
+ API
+ </label>
+ <nav class="md-nav" data-md-component="collapsible" data-md-level="1">
+ <label class="md-nav__title" for="nav-4">
+ API
+ </label>
+ <ul class="md-nav__list" data-md-scrollfix>
+
+
+
+
+
+
+
+ <li class="md-nav__item md-nav__item--nested">
+
+ <input class="md-toggle md-nav__toggle" data-md-toggle="nav-4-1" type="checkbox" id="nav-4-1">
+
+ <label class="md-nav__link" for="nav-4-1">
+ GeoSpark core (RDD)
+ </label>
+ <nav class="md-nav" data-md-component="collapsible" data-md-level="2">
+ <label class="md-nav__title" for="nav-4-1">
+ GeoSpark core (RDD)
+ </label>
+ <ul class="md-nav__list" data-md-scrollfix>
+
+
+
+
+
+
+
+ <li class="md-nav__item">
+ <a href="/api/GeoSpark-Scala-and-Java-API/" title="Scala/Java doc" class="md-nav__link">
+ Scala/Java doc
+ </a>
+ </li>
+
+
+
+
+
+
+
+ <li class="md-nav__item">
+ <a href="/api/GeoSpark-Python-API/" title="Python doc" class="md-nav__link">
+ Python doc
+ </a>
+ </li>
+
+
+ </ul>
+ </nav>
+ </li>
+
+
+
+
+
+
+
+ <li class="md-nav__item md-nav__item--nested">
+
+ <input class="md-toggle md-nav__toggle" data-md-toggle="nav-4-2" type="checkbox" id="nav-4-2">
+
+ <label class="md-nav__link" for="nav-4-2">
+ GeoSpark SQL
+ </label>
+ <nav class="md-nav" data-md-component="collapsible" data-md-level="2">
+ <label class="md-nav__title" for="nav-4-2">
+ GeoSpark SQL
+ </label>
+ <ul class="md-nav__list" data-md-scrollfix>
+
+
+
+
+
+
+
+ <li class="md-nav__item">
+ <a href="/api/sql/GeoSparkSQL-javadoc/" title="JavaDoc" class="md-nav__link">
+ JavaDoc
+ </a>
+ </li>
+
+
+
+
+
+
+
+ <li class="md-nav__item">
+ <a href="/api/sql/GeoSparkSQL-Overview/" title="Quick start" class="md-nav__link">
+ Quick start
+ </a>
+ </li>
+
+
+
+
+
+
+
+ <li class="md-nav__item">
+ <a href="/api/sql/GeoSparkSQL-Constructor/" title="Constructor" class="md-nav__link">
+ Constructor
+ </a>
+ </li>
+
+
+
+
+
+
+
+ <li class="md-nav__item">
+ <a href="/api/sql/GeoSparkSQL-Function/" title="Function" class="md-nav__link">
+ Function
+ </a>
+ </li>
+
+
+
+
+
+
+
+ <li class="md-nav__item">
+ <a href="/api/sql/GeoSparkSQL-Predicate/" title="Predicate" class="md-nav__link">
+ Predicate
+ </a>
+ </li>
+
+
+
+
+
+
+
+ <li class="md-nav__item">
+ <a href="/api/sql/GeoSparkSQL-AggregateFunction/" title="Aggregate function" class="md-nav__link">
+ Aggregate function
+ </a>
+ </li>
+
+
+
+
+
+
+
+ <li class="md-nav__item">
+ <a href="/api/sql/GeoSparkSQL-Optimizer/" title="Join query (optimizer)" class="md-nav__link">
+ Join query (optimizer)
+ </a>
+ </li>
+
+
+
+
+
+
+
+ <li class="md-nav__item">
+ <a href="/api/sql/GeoSparkSQL-Parameter/" title="Parameter" class="md-nav__link">
+ Parameter
+ </a>
+ </li>
+
+
+ </ul>
+ </nav>
+ </li>
+
+
+
+
+
+
+
+ <li class="md-nav__item md-nav__item--nested">
+
+ <input class="md-toggle md-nav__toggle" data-md-toggle="nav-4-3" type="checkbox" id="nav-4-3">
+
+ <label class="md-nav__link" for="nav-4-3">
+ GeoSpark Viz
+ </label>
+ <nav class="md-nav" data-md-component="collapsible" data-md-level="2">
+ <label class="md-nav__title" for="nav-4-3">
+ GeoSpark Viz
+ </label>
+ <ul class="md-nav__list" data-md-scrollfix>
+
+
+
+
+
+
+
+ <li class="md-nav__item">
+ <a href="/api/viz/sql/" title="DataFrame/SQL" class="md-nav__link">
+ DataFrame/SQL
+ </a>
+ </li>
+
+
+
+
+
+
+
+ <li class="md-nav__item">
+ <a href="/api/viz/Babylon-Scala-and-Java-API/" title="RDD" class="md-nav__link">
+ RDD
+ </a>
+ </li>
+
+
+ </ul>
+ </nav>
+ </li>
+
+
+ </ul>
+ </nav>
+ </li>
+
+
+
+
+
+
+
+ <li class="md-nav__item md-nav__item--nested">
+
+ <input class="md-toggle md-nav__toggle" data-md-toggle="nav-5" type="checkbox" id="nav-5">
+
+ <label class="md-nav__link" for="nav-5">
+ Contributing
+ </label>
+ <nav class="md-nav" data-md-component="collapsible" data-md-level="1">
+ <label class="md-nav__title" for="nav-5">
+ Contributing
+ </label>
+ <ul class="md-nav__list" data-md-scrollfix>
+
+
+
+
+
+
+
+ <li class="md-nav__item">
+ <a href="/contribute/rule/" title="Contributing rule" class="md-nav__link">
+ Contributing rule
+ </a>
+ </li>
+
+
+
+
+
+
+
+ <li class="md-nav__item">
+ <a href="/contribute/contributor/" title="Contributors and committers" class="md-nav__link">
+ Contributors and committers
+ </a>
+ </li>
+
+
+ </ul>
+ </nav>
+ </li>
+
+
+
+
+
+
+
+ <li class="md-nav__item">
+ <a href="/contact/" title="Contact" class="md-nav__link">
+ Contact
+ </a>
+ </li>
+
+
+
+
+
+
+
+ <li class="md-nav__item">
+ <a href="/publication/" title="Publications" class="md-nav__link">
+ Publications
+ </a>
+ </li>
+
+
+
+
+
+
+
+ <li class="md-nav__item md-nav__item--nested">
+
+ <input class="md-toggle md-nav__toggle" data-md-toggle="nav-8" type="checkbox" id="nav-8">
+
+ <label class="md-nav__link" for="nav-8">
+ License
+ </label>
+ <nav class="md-nav" data-md-component="collapsible" data-md-level="1">
+ <label class="md-nav__title" for="nav-8">
+ License
+ </label>
+ <ul class="md-nav__list" data-md-scrollfix>
+
+
+
+
+
+
+
+ <li class="md-nav__item">
+ <a href="/license/License-before-1-2-0/" title="License-before-1.2.0" class="md-nav__link">
+ License-before-1.2.0
+ </a>
+ </li>
+
+
+
+
+
+
+
+ <li class="md-nav__item">
+ <a href="/license/License/" title="License" class="md-nav__link">
+ License
+ </a>
+ </li>
+
+
+ </ul>
+ </nav>
+ </li>
+
+
+ </ul>
+</nav>
+ </div>
+ </div>
+ </div>
+
+
+
+ <div class="md-content">
+ <article class="md-content__inner md-typeset">
+
+ <h1>404 - Not found</h1>
+
+
+
+
+
+
+ </article>
+ </div>
+ </div>
+ </main>
+
+
+<footer class="md-footer">
+
+ <div class="md-footer-meta md-typeset">
+ <div class="md-footer-meta__inner md-grid">
+ <div class="md-footer-copyright">
+
+ powered by
+ <a href="http://www.mkdocs.org">MkDocs</a>
+ and
+ <a href="https://squidfunk.github.io/mkdocs-material/">
+ Material for MkDocs</a>
+ </div>
+
+
+ <div class="md-footer-social">
+
+ <link rel="stylesheet" href="https://cdnjs.cloudflare.com/ajax/libs/font-awesome/4.7.0/css/font-awesome.min.css">
+
+ <a href="https://github.com/DataSystemsLab/GeoSpark" class="md-footer-social__link fa fa-github"></a>
+
+ <a href="https://twitter.com/GeoSpark_ASU" class="md-footer-social__link fa fa-twitter"></a>
+
+ </div>
+
+
+ </div>
+ </div>
+</footer>
+
+ </div>
+
+ <script src="/assets/javascripts/application.8eb9be28.js"></script>
+
+ <script>app.initialize({version:"0.17.2",url:{base:""}})</script>
+
+
+
+
+ <script>!function(e,a,t,n,o,c,i){e.GoogleAnalyticsObject=o,e.ga=e.ga||function(){(e.ga.q=e.ga.q||[]).push(arguments)},e.ga.l=1*new Date,c=a.createElement(t),i=a.getElementsByTagName(t)[0],c.async=1,c.src="https://www.google-analytics.com/analytics.js",i.parentNode.insertBefore(c,i)}(window,document,"script",0,"ga"),ga("create","UA-64886725-1","www.public.asu.edu/~jiayu2/geospark/index.html"),ga("set","anonymizeIp",!0),ga("send","pageview");var links=document.getElementsByTagName( [...]
+
+
+ </body>
+</html>
\ No newline at end of file
diff --git a/api/GeoSpark-Python-API/index.html b/api/GeoSpark-Python-API/index.html
new file mode 100644
index 0000000..8799153
--- /dev/null
+++ b/api/GeoSpark-Python-API/index.html
@@ -0,0 +1,986 @@
+
+
+
+
+<!DOCTYPE html>
+<html lang="en" class="no-js">
+ <head>
+
+ <meta charset="utf-8">
+ <meta name="viewport" content="width=device-width,initial-scale=1">
+ <meta http-equiv="x-ua-compatible" content="ie=edge">
+
+
+
+
+ <meta name="lang:clipboard.copy" content="Copy to clipboard">
+
+ <meta name="lang:clipboard.copied" content="Copied to clipboard">
+
+ <meta name="lang:search.language" content="en">
+
+ <meta name="lang:search.pipeline.stopwords" content="True">
+
+ <meta name="lang:search.pipeline.trimmer" content="True">
+
+ <meta name="lang:search.result.none" content="No matching documents">
+
+ <meta name="lang:search.result.one" content="1 matching document">
+
+ <meta name="lang:search.result.other" content="# matching documents">
+
+ <meta name="lang:search.tokenizer" content="[\s\-]+">
+
+ <link rel="shortcut icon" href="../../assets/images/favicon.png">
+ <meta name="generator" content="mkdocs-0.17.2, mkdocs-material-2.7.1">
+
+
+
+ <title>Python doc - GeoSpark</title>
+
+
+
+ <link rel="stylesheet" href="../../assets/stylesheets/application.78aab2dc.css">
+
+ <link rel="stylesheet" href="../../assets/stylesheets/application-palette.6079476c.css">
+
+
+
+ <script src="../../assets/javascripts/modernizr.1aa3b519.js"></script>
+
+
+ <link href="https://fonts.gstatic.com" rel="preconnect" crossorigin>
+
+ <link rel="stylesheet" href="https://fonts.googleapis.com/css?family=Roboto:300,400,400i,700|Roboto+Mono">
+ <style>body,input{font-family:"Roboto","Helvetica Neue",Helvetica,Arial,sans-serif}code,kbd,pre{font-family:"Roboto Mono","Courier New",Courier,monospace}</style>
+
+ <link rel="stylesheet" href="https://fonts.googleapis.com/icon?family=Material+Icons">
+
+
+
+ </head>
+
+
+
+ <body dir="ltr" data-md-color-primary="cyan" data-md-color-accent="pink">
+
+ <svg class="md-svg">
+ <defs>
+
+
+ <svg xmlns="http://www.w3.org/2000/svg" width="416" height="448"
+ viewBox="0 0 416 448" id="github">
+ <path fill="currentColor" d="M160 304q0 10-3.125 20.5t-10.75 19-18.125
+ 8.5-18.125-8.5-10.75-19-3.125-20.5 3.125-20.5 10.75-19 18.125-8.5
+ 18.125 8.5 10.75 19 3.125 20.5zM320 304q0 10-3.125 20.5t-10.75
+ 19-18.125 8.5-18.125-8.5-10.75-19-3.125-20.5 3.125-20.5 10.75-19
+ 18.125-8.5 18.125 8.5 10.75 19 3.125 20.5zM360
+ 304q0-30-17.25-51t-46.75-21q-10.25 0-48.75 5.25-17.75 2.75-39.25
+ 2.75t-39.25-2.75q-38-5.25-48.75-5.25-29.5 0-46.75 21t-17.25 51q0 22 8
+ 38.375t20.25 25.75 30.5 15 35 7.375 37.25 1.75h42q20.5 0
+ 37.25-1.75t35-7.375 30.5-15 20.25-25.75 8-38.375zM416 260q0 51.75-15.25
+ 82.75-9.5 19.25-26.375 33.25t-35.25 21.5-42.5 11.875-42.875 5.5-41.75
+ 1.125q-19.5 0-35.5-0.75t-36.875-3.125-38.125-7.5-34.25-12.875-30.25-20.25-21.5-28.75q-15.5-30.75-15.5-82.75
+ 0-59.25 34-99-6.75-20.5-6.75-42.5 0-29 12.75-54.5 27 0 47.5 9.875t47.25
+ 30.875q36.75-8.75 77.25-8.75 37 0 70 8 26.25-20.5
+ 46.75-30.25t47.25-9.75q12.75 25.5 12.75 54.5 0 21.75-6.75 42 34 40 34
+ 99.5z" />
+</svg>
+
+ </defs>
+ </svg>
+ <input class="md-toggle" data-md-toggle="drawer" type="checkbox" id="drawer" autocomplete="off">
+ <input class="md-toggle" data-md-toggle="search" type="checkbox" id="search" autocomplete="off">
+ <label class="md-overlay" data-md-component="overlay" for="drawer"></label>
+
+
+ <header class="md-header" data-md-component="header">
+ <nav class="md-header-nav md-grid">
+ <div class="md-flex">
+ <div class="md-flex__cell md-flex__cell--shrink">
+ <a href="../.." title="GeoSpark" class="md-header-nav__button md-logo">
+
+ <i class="md-icon"></i>
+
+ </a>
+ </div>
+ <div class="md-flex__cell md-flex__cell--shrink">
+ <label class="md-icon md-icon--menu md-header-nav__button" for="drawer"></label>
+ </div>
+ <div class="md-flex__cell md-flex__cell--stretch">
+ <div class="md-flex__ellipsis md-header-nav__title" data-md-component="title">
+
+
+ <span class="md-header-nav__topic">
+ GeoSpark
+ </span>
+ <span class="md-header-nav__topic">
+ Python doc
+ </span>
+
+
+ </div>
+ </div>
+ <div class="md-flex__cell md-flex__cell--shrink">
+
+
+ <label class="md-icon md-icon--search md-header-nav__button" for="search"></label>
+
+<div class="md-search" data-md-component="search" role="dialog">
+ <label class="md-search__overlay" for="search"></label>
+ <div class="md-search__inner" role="search">
+ <form class="md-search__form" name="search">
+ <input type="text" class="md-search__input" name="query" placeholder="Search" autocapitalize="off" autocorrect="off" autocomplete="off" spellcheck="false" data-md-component="query" data-md-state="active">
+ <label class="md-icon md-search__icon" for="search"></label>
+ <button type="reset" class="md-icon md-search__icon" data-md-component="reset" tabindex="-1">
+ 
+ </button>
+ </form>
+ <div class="md-search__output">
+ <div class="md-search__scrollwrap" data-md-scrollfix>
+ <div class="md-search-result" data-md-component="result">
+ <div class="md-search-result__meta">
+ Type to start searching
+ </div>
+ <ol class="md-search-result__list"></ol>
+ </div>
+ </div>
+ </div>
+ </div>
+</div>
+
+
+ </div>
+
+ <div class="md-flex__cell md-flex__cell--shrink">
+ <div class="md-header-nav__source">
+
+
+
+
+
+
+ <a href="https://github.com/DataSystemsLab/GeoSpark/" title="Go to repository" class="md-source" data-md-source="github">
+
+ <div class="md-source__icon">
+ <svg viewBox="0 0 24 24" width="24" height="24">
+ <use xlink:href="#github" width="24" height="24"></use>
+ </svg>
+ </div>
+
+ <div class="md-source__repository">
+ GitHub
+ </div>
+ </a>
+
+ </div>
+ </div>
+
+ </div>
+ </nav>
+</header>
+
+ <div class="md-container">
+
+
+
+
+ <main class="md-main">
+ <div class="md-main__inner md-grid" data-md-component="container">
+
+
+ <div class="md-sidebar md-sidebar--primary" data-md-component="navigation">
+ <div class="md-sidebar__scrollwrap">
+ <div class="md-sidebar__inner">
+ <nav class="md-nav md-nav--primary" data-md-level="0">
+ <label class="md-nav__title md-nav__title--site" for="drawer">
+ <span class="md-nav__button md-logo">
+
+ <i class="md-icon"></i>
+
+ </span>
+ GeoSpark
+ </label>
+
+ <div class="md-nav__source">
+
+
+
+
+
+
+ <a href="https://github.com/DataSystemsLab/GeoSpark/" title="Go to repository" class="md-source" data-md-source="github">
+
+ <div class="md-source__icon">
+ <svg viewBox="0 0 24 24" width="24" height="24">
+ <use xlink:href="#github" width="24" height="24"></use>
+ </svg>
+ </div>
+
+ <div class="md-source__repository">
+ GitHub
+ </div>
+ </a>
+
+ </div>
+
+ <ul class="md-nav__list" data-md-scrollfix>
+
+
+
+
+
+
+ <li class="md-nav__item">
+ <a href="../.." title="Home" class="md-nav__link">
+ Home
+ </a>
+ </li>
+
+
+
+
+
+
+
+ <li class="md-nav__item md-nav__item--nested">
+
+ <input class="md-toggle md-nav__toggle" data-md-toggle="nav-2" type="checkbox" id="nav-2">
+
+ <label class="md-nav__link" for="nav-2">
+ Download
+ </label>
+ <nav class="md-nav" data-md-component="collapsible" data-md-level="1">
+ <label class="md-nav__title" for="nav-2">
+ Download
+ </label>
+ <ul class="md-nav__list" data-md-scrollfix>
+
+
+
+
+
+
+
+ <li class="md-nav__item">
+ <a href="../../download/overview/" title="Quick start" class="md-nav__link">
+ Quick start
+ </a>
+ </li>
+
+
+
+
+
+
+
+ <li class="md-nav__item">
+ <a href="../../download/GeoSpark-All-Modules-Release-notes/" title="Release notes" class="md-nav__link">
+ Release notes
+ </a>
+ </li>
+
+
+
+
+
+
+
+ <li class="md-nav__item">
+ <a href="../../download/GeoSpark-All-Modules-Maven-Central-Coordinates/" title="Maven Central coordinate" class="md-nav__link">
+ Maven Central coordinate
+ </a>
+ </li>
+
+
+
+
+
+
+
+ <li class="md-nav__item">
+ <a href="../../download/cluster/" title="Set up Spark cluser" class="md-nav__link">
+ Set up Spark cluser
+ </a>
+ </li>
+
+
+
+
+
+
+
+ <li class="md-nav__item">
+ <a href="../../download/scalashell/" title="Spark Scala shell" class="md-nav__link">
+ Spark Scala shell
+ </a>
+ </li>
+
+
+
+
+
+
+
+ <li class="md-nav__item">
+ <a href="../../download/project/" title="Self-contained project" class="md-nav__link">
+ Self-contained project
+ </a>
+ </li>
+
+
+
+
+
+
+
+ <li class="md-nav__item">
+ <a href="../../download/zeppelin/" title="Install GeoSpark-Zeppelin" class="md-nav__link">
+ Install GeoSpark-Zeppelin
+ </a>
+ </li>
+
+
+
+
+
+
+
+ <li class="md-nav__item">
+ <a href="../../download/compile/" title="Compile the source code" class="md-nav__link">
+ Compile the source code
+ </a>
+ </li>
+
+
+ </ul>
+ </nav>
+ </li>
+
+
+
+
+
+
+
+ <li class="md-nav__item md-nav__item--nested">
+
+ <input class="md-toggle md-nav__toggle" data-md-toggle="nav-3" type="checkbox" id="nav-3">
+
+ <label class="md-nav__link" for="nav-3">
+ Tutorial
+ </label>
+ <nav class="md-nav" data-md-component="collapsible" data-md-level="1">
+ <label class="md-nav__title" for="nav-3">
+ Tutorial
+ </label>
+ <ul class="md-nav__list" data-md-scrollfix>
+
+
+
+
+
+
+
+ <li class="md-nav__item">
+ <a href="../../tutorial/rdd/" title="Spatial RDD application" class="md-nav__link">
+ Spatial RDD application
+ </a>
+ </li>
+
+
+
+
+
+
+
+ <li class="md-nav__item">
+ <a href="../../tutorial/sql/" title="Spatial SQL application" class="md-nav__link">
+ Spatial SQL application
+ </a>
+ </li>
+
+
+
+
+
+
+
+ <li class="md-nav__item">
+ <a href="../../tutorial/viz/" title="Visualize Spatial DataFrame" class="md-nav__link">
+ Visualize Spatial DataFrame
+ </a>
+ </li>
+
+
+
+
+
+
+
+ <li class="md-nav__item">
+ <a href="../../tutorial/zeppelin/" title="Run GeoSpark via Zeppelin" class="md-nav__link">
+ Run GeoSpark via Zeppelin
+ </a>
+ </li>
+
+
+
+
+
+
+
+ <li class="md-nav__item">
+ <a href="../../tutorial/geospark-core-python/" title="Spatial RDD in Python" class="md-nav__link">
+ Spatial RDD in Python
+ </a>
+ </li>
+
+
+
+
+
+
+
+ <li class="md-nav__item">
+ <a href="../../tutorial/geospark-sql-python/" title="Spatial SQL in Python" class="md-nav__link">
+ Spatial SQL in Python
+ </a>
+ </li>
+
+
+
+
+
+
+
+ <li class="md-nav__item">
+ <a href="../../tutorial/GeoSpark-Runnable-DEMO/" title="GeoSpark template project" class="md-nav__link">
+ GeoSpark template project
+ </a>
+ </li>
+
+
+
+
+
+
+
+ <li class="md-nav__item">
+ <a href="../../tutorial/faq/" title="Frequently Asked Questions" class="md-nav__link">
+ Frequently Asked Questions
+ </a>
+ </li>
+
+
+
+
+
+
+
+ <li class="md-nav__item">
+ <a href="../../tutorial/Advanced-Tutorial-Tune-your-GeoSpark-Application/" title="Tune GeoSpark RDD application" class="md-nav__link">
+ Tune GeoSpark RDD application
+ </a>
+ </li>
+
+
+
+
+
+
+
+ <li class="md-nav__item">
+ <a href="../../tutorial/benchmark/" title="Benchmark" class="md-nav__link">
+ Benchmark
+ </a>
+ </li>
+
+
+ </ul>
+ </nav>
+ </li>
+
+
+
+
+
+
+
+
+
+ <li class="md-nav__item md-nav__item--active md-nav__item--nested">
+
+ <input class="md-toggle md-nav__toggle" data-md-toggle="nav-4" type="checkbox" id="nav-4" checked>
+
+ <label class="md-nav__link" for="nav-4">
+ API
+ </label>
+ <nav class="md-nav" data-md-component="collapsible" data-md-level="1">
+ <label class="md-nav__title" for="nav-4">
+ API
+ </label>
+ <ul class="md-nav__list" data-md-scrollfix>
+
+
+
+
+
+
+
+
+
+ <li class="md-nav__item md-nav__item--active md-nav__item--nested">
+
+ <input class="md-toggle md-nav__toggle" data-md-toggle="nav-4-1" type="checkbox" id="nav-4-1" checked>
+
+ <label class="md-nav__link" for="nav-4-1">
+ GeoSpark core (RDD)
+ </label>
+ <nav class="md-nav" data-md-component="collapsible" data-md-level="2">
+ <label class="md-nav__title" for="nav-4-1">
+ GeoSpark core (RDD)
+ </label>
+ <ul class="md-nav__list" data-md-scrollfix>
+
+
+
+
+
+
+
+ <li class="md-nav__item">
+ <a href="../GeoSpark-Scala-and-Java-API/" title="Scala/Java doc" class="md-nav__link">
+ Scala/Java doc
+ </a>
+ </li>
+
+
+
+
+
+
+
+
+
+ <li class="md-nav__item md-nav__item--active">
+
+ <input class="md-toggle md-nav__toggle" data-md-toggle="toc" type="checkbox" id="toc">
+
+
+ <a href="./" title="Python doc" class="md-nav__link md-nav__link--active">
+ Python doc
+ </a>
+
+ </li>
+
+
+ </ul>
+ </nav>
+ </li>
+
+
+
+
+
+
+
+ <li class="md-nav__item md-nav__item--nested">
+
+ <input class="md-toggle md-nav__toggle" data-md-toggle="nav-4-2" type="checkbox" id="nav-4-2">
+
+ <label class="md-nav__link" for="nav-4-2">
+ GeoSpark SQL
+ </label>
+ <nav class="md-nav" data-md-component="collapsible" data-md-level="2">
+ <label class="md-nav__title" for="nav-4-2">
+ GeoSpark SQL
+ </label>
+ <ul class="md-nav__list" data-md-scrollfix>
+
+
+
+
+
+
+
+ <li class="md-nav__item">
+ <a href="../sql/GeoSparkSQL-javadoc/" title="JavaDoc" class="md-nav__link">
+ JavaDoc
+ </a>
+ </li>
+
+
+
+
+
+
+
+ <li class="md-nav__item">
+ <a href="../sql/GeoSparkSQL-Overview/" title="Quick start" class="md-nav__link">
+ Quick start
+ </a>
+ </li>
+
+
+
+
+
+
+
+ <li class="md-nav__item">
+ <a href="../sql/GeoSparkSQL-Constructor/" title="Constructor" class="md-nav__link">
+ Constructor
+ </a>
+ </li>
+
+
+
+
+
+
+
+ <li class="md-nav__item">
+ <a href="../sql/GeoSparkSQL-Function/" title="Function" class="md-nav__link">
+ Function
+ </a>
+ </li>
+
+
+
+
+
+
+
+ <li class="md-nav__item">
+ <a href="../sql/GeoSparkSQL-Predicate/" title="Predicate" class="md-nav__link">
+ Predicate
+ </a>
+ </li>
+
+
+
+
+
+
+
+ <li class="md-nav__item">
+ <a href="../sql/GeoSparkSQL-AggregateFunction/" title="Aggregate function" class="md-nav__link">
+ Aggregate function
+ </a>
+ </li>
+
+
+
+
+
+
+
+ <li class="md-nav__item">
+ <a href="../sql/GeoSparkSQL-Optimizer/" title="Join query (optimizer)" class="md-nav__link">
+ Join query (optimizer)
+ </a>
+ </li>
+
+
+
+
+
+
+
+ <li class="md-nav__item">
+ <a href="../sql/GeoSparkSQL-Parameter/" title="Parameter" class="md-nav__link">
+ Parameter
+ </a>
+ </li>
+
+
+ </ul>
+ </nav>
+ </li>
+
+
+
+
+
+
+
+ <li class="md-nav__item md-nav__item--nested">
+
+ <input class="md-toggle md-nav__toggle" data-md-toggle="nav-4-3" type="checkbox" id="nav-4-3">
+
+ <label class="md-nav__link" for="nav-4-3">
+ GeoSpark Viz
+ </label>
+ <nav class="md-nav" data-md-component="collapsible" data-md-level="2">
+ <label class="md-nav__title" for="nav-4-3">
+ GeoSpark Viz
+ </label>
+ <ul class="md-nav__list" data-md-scrollfix>
+
+
+
+
+
+
+
+ <li class="md-nav__item">
+ <a href="../viz/sql/" title="DataFrame/SQL" class="md-nav__link">
+ DataFrame/SQL
+ </a>
+ </li>
+
+
+
+
+
+
+
+ <li class="md-nav__item">
+ <a href="../viz/Babylon-Scala-and-Java-API/" title="RDD" class="md-nav__link">
+ RDD
+ </a>
+ </li>
+
+
+ </ul>
+ </nav>
+ </li>
+
+
+ </ul>
+ </nav>
+ </li>
+
+
+
+
+
+
+
+ <li class="md-nav__item md-nav__item--nested">
+
+ <input class="md-toggle md-nav__toggle" data-md-toggle="nav-5" type="checkbox" id="nav-5">
+
+ <label class="md-nav__link" for="nav-5">
+ Contributing
+ </label>
+ <nav class="md-nav" data-md-component="collapsible" data-md-level="1">
+ <label class="md-nav__title" for="nav-5">
+ Contributing
+ </label>
+ <ul class="md-nav__list" data-md-scrollfix>
+
+
+
+
+
+
+
+ <li class="md-nav__item">
+ <a href="../../contribute/rule/" title="Contributing rule" class="md-nav__link">
+ Contributing rule
+ </a>
+ </li>
+
+
+
+
+
+
+
+ <li class="md-nav__item">
+ <a href="../../contribute/contributor/" title="Contributors and committers" class="md-nav__link">
+ Contributors and committers
+ </a>
+ </li>
+
+
+ </ul>
+ </nav>
+ </li>
+
+
+
+
+
+
+
+ <li class="md-nav__item">
+ <a href="../../contact/" title="Contact" class="md-nav__link">
+ Contact
+ </a>
+ </li>
+
+
+
+
+
+
+
+ <li class="md-nav__item">
+ <a href="../../publication/" title="Publications" class="md-nav__link">
+ Publications
+ </a>
+ </li>
+
+
+
+
+
+
+
+ <li class="md-nav__item md-nav__item--nested">
+
+ <input class="md-toggle md-nav__toggle" data-md-toggle="nav-8" type="checkbox" id="nav-8">
+
+ <label class="md-nav__link" for="nav-8">
+ License
+ </label>
+ <nav class="md-nav" data-md-component="collapsible" data-md-level="1">
+ <label class="md-nav__title" for="nav-8">
+ License
+ </label>
+ <ul class="md-nav__list" data-md-scrollfix>
+
+
+
+
+
+
+
+ <li class="md-nav__item">
+ <a href="../../license/License-before-1-2-0/" title="License-before-1.2.0" class="md-nav__link">
+ License-before-1.2.0
+ </a>
+ </li>
+
+
+
+
+
+
+
+ <li class="md-nav__item">
+ <a href="../../license/License/" title="License" class="md-nav__link">
+ License
+ </a>
+ </li>
+
+
+ </ul>
+ </nav>
+ </li>
+
+
+ </ul>
+</nav>
+ </div>
+ </div>
+ </div>
+
+
+
+ <div class="md-content">
+ <article class="md-content__inner md-typeset">
+
+
+ <a href="https://github.com/DataSystemsLab/GeoSpark/edit/master/docs/api/GeoSpark-Python-API.md" title="Edit this page" class="md-icon md-content__icon"></a>
+
+
+ <h1>Python doc</h1>
+
+ <p>Will be available soon.</p>
+
+
+
+
+
+
+
+
+
+ </article>
+ </div>
+ </div>
+ </main>
+
+
+<footer class="md-footer">
+
+ <div class="md-footer-nav">
+ <nav class="md-footer-nav__inner md-grid">
+
+ <a href="../GeoSpark-Scala-and-Java-API/" title="Scala/Java doc" class="md-flex md-footer-nav__link md-footer-nav__link--prev" rel="prev">
+ <div class="md-flex__cell md-flex__cell--shrink">
+ <i class="md-icon md-icon--arrow-back md-footer-nav__button"></i>
+ </div>
+ <div class="md-flex__cell md-flex__cell--stretch md-footer-nav__title">
+ <span class="md-flex__ellipsis">
+ <span class="md-footer-nav__direction">
+ Previous
+ </span>
+ Scala/Java doc
+ </span>
+ </div>
+ </a>
+
+
+ <a href="../sql/GeoSparkSQL-javadoc/" title="JavaDoc" class="md-flex md-footer-nav__link md-footer-nav__link--next" rel="next">
+ <div class="md-flex__cell md-flex__cell--stretch md-footer-nav__title">
+ <span class="md-flex__ellipsis">
+ <span class="md-footer-nav__direction">
+ Next
+ </span>
+ JavaDoc
+ </span>
+ </div>
+ <div class="md-flex__cell md-flex__cell--shrink">
+ <i class="md-icon md-icon--arrow-forward md-footer-nav__button"></i>
+ </div>
+ </a>
+
+ </nav>
+ </div>
+
+ <div class="md-footer-meta md-typeset">
+ <div class="md-footer-meta__inner md-grid">
+ <div class="md-footer-copyright">
+
+ powered by
+ <a href="http://www.mkdocs.org">MkDocs</a>
+ and
+ <a href="https://squidfunk.github.io/mkdocs-material/">
+ Material for MkDocs</a>
+ </div>
+
+
+ <div class="md-footer-social">
+
+ <link rel="stylesheet" href="https://cdnjs.cloudflare.com/ajax/libs/font-awesome/4.7.0/css/font-awesome.min.css">
+
+ <a href="https://github.com/DataSystemsLab/GeoSpark" class="md-footer-social__link fa fa-github"></a>
+
+ <a href="https://twitter.com/GeoSpark_ASU" class="md-footer-social__link fa fa-twitter"></a>
+
+ </div>
+
+
+ </div>
+ </div>
+</footer>
+
+ </div>
+
+ <script src="../../assets/javascripts/application.8eb9be28.js"></script>
+
+ <script>app.initialize({version:"0.17.2",url:{base:"../.."}})</script>
+
+
+
+
+ <script>!function(e,a,t,n,o,c,i){e.GoogleAnalyticsObject=o,e.ga=e.ga||function(){(e.ga.q=e.ga.q||[]).push(arguments)},e.ga.l=1*new Date,c=a.createElement(t),i=a.getElementsByTagName(t)[0],c.async=1,c.src="https://www.google-analytics.com/analytics.js",i.parentNode.insertBefore(c,i)}(window,document,"script",0,"ga"),ga("create","UA-64886725-1","www.public.asu.edu/~jiayu2/geospark/index.html"),ga("set","anonymizeIp",!0),ga("send","pageview");var links=document.getElementsByTagName( [...]
+
+
+ </body>
+</html>
\ No newline at end of file
diff --git a/api/GeoSpark-Scala-and-Java-API/index.html b/api/GeoSpark-Scala-and-Java-API/index.html
new file mode 100644
index 0000000..3bb797f
--- /dev/null
+++ b/api/GeoSpark-Scala-and-Java-API/index.html
@@ -0,0 +1,1049 @@
+
+
+
+
+<!DOCTYPE html>
+<html lang="en" class="no-js">
+ <head>
+
+ <meta charset="utf-8">
+ <meta name="viewport" content="width=device-width,initial-scale=1">
+ <meta http-equiv="x-ua-compatible" content="ie=edge">
+
+
+
+
+ <meta name="lang:clipboard.copy" content="Copy to clipboard">
+
+ <meta name="lang:clipboard.copied" content="Copied to clipboard">
+
+ <meta name="lang:search.language" content="en">
+
+ <meta name="lang:search.pipeline.stopwords" content="True">
+
+ <meta name="lang:search.pipeline.trimmer" content="True">
+
+ <meta name="lang:search.result.none" content="No matching documents">
+
+ <meta name="lang:search.result.one" content="1 matching document">
+
+ <meta name="lang:search.result.other" content="# matching documents">
+
+ <meta name="lang:search.tokenizer" content="[\s\-]+">
+
+ <link rel="shortcut icon" href="../../assets/images/favicon.png">
+ <meta name="generator" content="mkdocs-0.17.2, mkdocs-material-2.7.1">
+
+
+
+ <title>Scala/Java doc - GeoSpark</title>
+
+
+
+ <link rel="stylesheet" href="../../assets/stylesheets/application.78aab2dc.css">
+
+ <link rel="stylesheet" href="../../assets/stylesheets/application-palette.6079476c.css">
+
+
+
+ <script src="../../assets/javascripts/modernizr.1aa3b519.js"></script>
+
+
+ <link href="https://fonts.gstatic.com" rel="preconnect" crossorigin>
+
+ <link rel="stylesheet" href="https://fonts.googleapis.com/css?family=Roboto:300,400,400i,700|Roboto+Mono">
+ <style>body,input{font-family:"Roboto","Helvetica Neue",Helvetica,Arial,sans-serif}code,kbd,pre{font-family:"Roboto Mono","Courier New",Courier,monospace}</style>
+
+ <link rel="stylesheet" href="https://fonts.googleapis.com/icon?family=Material+Icons">
+
+
+
+ </head>
+
+
+
+ <body dir="ltr" data-md-color-primary="cyan" data-md-color-accent="pink">
+
+ <svg class="md-svg">
+ <defs>
+
+
+ <svg xmlns="http://www.w3.org/2000/svg" width="416" height="448"
+ viewBox="0 0 416 448" id="github">
+ <path fill="currentColor" d="M160 304q0 10-3.125 20.5t-10.75 19-18.125
+ 8.5-18.125-8.5-10.75-19-3.125-20.5 3.125-20.5 10.75-19 18.125-8.5
+ 18.125 8.5 10.75 19 3.125 20.5zM320 304q0 10-3.125 20.5t-10.75
+ 19-18.125 8.5-18.125-8.5-10.75-19-3.125-20.5 3.125-20.5 10.75-19
+ 18.125-8.5 18.125 8.5 10.75 19 3.125 20.5zM360
+ 304q0-30-17.25-51t-46.75-21q-10.25 0-48.75 5.25-17.75 2.75-39.25
+ 2.75t-39.25-2.75q-38-5.25-48.75-5.25-29.5 0-46.75 21t-17.25 51q0 22 8
+ 38.375t20.25 25.75 30.5 15 35 7.375 37.25 1.75h42q20.5 0
+ 37.25-1.75t35-7.375 30.5-15 20.25-25.75 8-38.375zM416 260q0 51.75-15.25
+ 82.75-9.5 19.25-26.375 33.25t-35.25 21.5-42.5 11.875-42.875 5.5-41.75
+ 1.125q-19.5 0-35.5-0.75t-36.875-3.125-38.125-7.5-34.25-12.875-30.25-20.25-21.5-28.75q-15.5-30.75-15.5-82.75
+ 0-59.25 34-99-6.75-20.5-6.75-42.5 0-29 12.75-54.5 27 0 47.5 9.875t47.25
+ 30.875q36.75-8.75 77.25-8.75 37 0 70 8 26.25-20.5
+ 46.75-30.25t47.25-9.75q12.75 25.5 12.75 54.5 0 21.75-6.75 42 34 40 34
+ 99.5z" />
+</svg>
+
+ </defs>
+ </svg>
+ <input class="md-toggle" data-md-toggle="drawer" type="checkbox" id="drawer" autocomplete="off">
+ <input class="md-toggle" data-md-toggle="search" type="checkbox" id="search" autocomplete="off">
+ <label class="md-overlay" data-md-component="overlay" for="drawer"></label>
+
+ <a href="#scala-and-java-api" tabindex="1" class="md-skip">
+ Skip to content
+ </a>
+
+
+ <header class="md-header" data-md-component="header">
+ <nav class="md-header-nav md-grid">
+ <div class="md-flex">
+ <div class="md-flex__cell md-flex__cell--shrink">
+ <a href="../.." title="GeoSpark" class="md-header-nav__button md-logo">
+
+ <i class="md-icon"></i>
+
+ </a>
+ </div>
+ <div class="md-flex__cell md-flex__cell--shrink">
+ <label class="md-icon md-icon--menu md-header-nav__button" for="drawer"></label>
+ </div>
+ <div class="md-flex__cell md-flex__cell--stretch">
+ <div class="md-flex__ellipsis md-header-nav__title" data-md-component="title">
+
+
+ <span class="md-header-nav__topic">
+ GeoSpark
+ </span>
+ <span class="md-header-nav__topic">
+ Scala/Java doc
+ </span>
+
+
+ </div>
+ </div>
+ <div class="md-flex__cell md-flex__cell--shrink">
+
+
+ <label class="md-icon md-icon--search md-header-nav__button" for="search"></label>
+
+<div class="md-search" data-md-component="search" role="dialog">
+ <label class="md-search__overlay" for="search"></label>
+ <div class="md-search__inner" role="search">
+ <form class="md-search__form" name="search">
+ <input type="text" class="md-search__input" name="query" placeholder="Search" autocapitalize="off" autocorrect="off" autocomplete="off" spellcheck="false" data-md-component="query" data-md-state="active">
+ <label class="md-icon md-search__icon" for="search"></label>
+ <button type="reset" class="md-icon md-search__icon" data-md-component="reset" tabindex="-1">
+ 
+ </button>
+ </form>
+ <div class="md-search__output">
+ <div class="md-search__scrollwrap" data-md-scrollfix>
+ <div class="md-search-result" data-md-component="result">
+ <div class="md-search-result__meta">
+ Type to start searching
+ </div>
+ <ol class="md-search-result__list"></ol>
+ </div>
+ </div>
+ </div>
+ </div>
+</div>
+
+
+ </div>
+
+ <div class="md-flex__cell md-flex__cell--shrink">
+ <div class="md-header-nav__source">
+
+
+
+
+
+
+ <a href="https://github.com/DataSystemsLab/GeoSpark/" title="Go to repository" class="md-source" data-md-source="github">
+
+ <div class="md-source__icon">
+ <svg viewBox="0 0 24 24" width="24" height="24">
+ <use xlink:href="#github" width="24" height="24"></use>
+ </svg>
+ </div>
+
+ <div class="md-source__repository">
+ GitHub
+ </div>
+ </a>
+
+ </div>
+ </div>
+
+ </div>
+ </nav>
+</header>
+
+ <div class="md-container">
+
+
+
+
+ <main class="md-main">
+ <div class="md-main__inner md-grid" data-md-component="container">
+
+
+ <div class="md-sidebar md-sidebar--primary" data-md-component="navigation">
+ <div class="md-sidebar__scrollwrap">
+ <div class="md-sidebar__inner">
+ <nav class="md-nav md-nav--primary" data-md-level="0">
+ <label class="md-nav__title md-nav__title--site" for="drawer">
+ <span class="md-nav__button md-logo">
+
+ <i class="md-icon"></i>
+
+ </span>
+ GeoSpark
+ </label>
+
+ <div class="md-nav__source">
+
+
+
+
+
+
+ <a href="https://github.com/DataSystemsLab/GeoSpark/" title="Go to repository" class="md-source" data-md-source="github">
+
+ <div class="md-source__icon">
+ <svg viewBox="0 0 24 24" width="24" height="24">
+ <use xlink:href="#github" width="24" height="24"></use>
+ </svg>
+ </div>
+
+ <div class="md-source__repository">
+ GitHub
+ </div>
+ </a>
+
+ </div>
+
+ <ul class="md-nav__list" data-md-scrollfix>
+
+
+
+
+
+
+ <li class="md-nav__item">
+ <a href="../.." title="Home" class="md-nav__link">
+ Home
+ </a>
+ </li>
+
+
+
+
+
+
+
+ <li class="md-nav__item md-nav__item--nested">
+
+ <input class="md-toggle md-nav__toggle" data-md-toggle="nav-2" type="checkbox" id="nav-2">
+
+ <label class="md-nav__link" for="nav-2">
+ Download
+ </label>
+ <nav class="md-nav" data-md-component="collapsible" data-md-level="1">
+ <label class="md-nav__title" for="nav-2">
+ Download
+ </label>
+ <ul class="md-nav__list" data-md-scrollfix>
+
+
+
+
+
+
+
+ <li class="md-nav__item">
+ <a href="../../download/overview/" title="Quick start" class="md-nav__link">
+ Quick start
+ </a>
+ </li>
+
+
+
+
+
+
+
+ <li class="md-nav__item">
+ <a href="../../download/GeoSpark-All-Modules-Release-notes/" title="Release notes" class="md-nav__link">
+ Release notes
+ </a>
+ </li>
+
+
+
+
+
+
+
+ <li class="md-nav__item">
+ <a href="../../download/GeoSpark-All-Modules-Maven-Central-Coordinates/" title="Maven Central coordinate" class="md-nav__link">
+ Maven Central coordinate
+ </a>
+ </li>
+
+
+
+
+
+
+
+ <li class="md-nav__item">
+ <a href="../../download/cluster/" title="Set up Spark cluser" class="md-nav__link">
+ Set up Spark cluser
+ </a>
+ </li>
+
+
+
+
+
+
+
+ <li class="md-nav__item">
+ <a href="../../download/scalashell/" title="Spark Scala shell" class="md-nav__link">
+ Spark Scala shell
+ </a>
+ </li>
+
+
+
+
+
+
+
+ <li class="md-nav__item">
+ <a href="../../download/project/" title="Self-contained project" class="md-nav__link">
+ Self-contained project
+ </a>
+ </li>
+
+
+
+
+
+
+
+ <li class="md-nav__item">
+ <a href="../../download/zeppelin/" title="Install GeoSpark-Zeppelin" class="md-nav__link">
+ Install GeoSpark-Zeppelin
+ </a>
+ </li>
+
+
+
+
+
+
+
+ <li class="md-nav__item">
+ <a href="../../download/compile/" title="Compile the source code" class="md-nav__link">
+ Compile the source code
+ </a>
+ </li>
+
+
+ </ul>
+ </nav>
+ </li>
+
+
+
+
+
+
+
+ <li class="md-nav__item md-nav__item--nested">
+
+ <input class="md-toggle md-nav__toggle" data-md-toggle="nav-3" type="checkbox" id="nav-3">
+
+ <label class="md-nav__link" for="nav-3">
+ Tutorial
+ </label>
+ <nav class="md-nav" data-md-component="collapsible" data-md-level="1">
+ <label class="md-nav__title" for="nav-3">
+ Tutorial
+ </label>
+ <ul class="md-nav__list" data-md-scrollfix>
+
+
+
+
+
+
+
+ <li class="md-nav__item">
+ <a href="../../tutorial/rdd/" title="Spatial RDD application" class="md-nav__link">
+ Spatial RDD application
+ </a>
+ </li>
+
+
+
+
+
+
+
+ <li class="md-nav__item">
+ <a href="../../tutorial/sql/" title="Spatial SQL application" class="md-nav__link">
+ Spatial SQL application
+ </a>
+ </li>
+
+
+
+
+
+
+
+ <li class="md-nav__item">
+ <a href="../../tutorial/viz/" title="Visualize Spatial DataFrame" class="md-nav__link">
+ Visualize Spatial DataFrame
+ </a>
+ </li>
+
+
+
+
+
+
+
+ <li class="md-nav__item">
+ <a href="../../tutorial/zeppelin/" title="Run GeoSpark via Zeppelin" class="md-nav__link">
+ Run GeoSpark via Zeppelin
+ </a>
+ </li>
+
+
+
+
+
+
+
+ <li class="md-nav__item">
+ <a href="../../tutorial/geospark-core-python/" title="Spatial RDD in Python" class="md-nav__link">
+ Spatial RDD in Python
+ </a>
+ </li>
+
+
+
+
+
+
+
+ <li class="md-nav__item">
+ <a href="../../tutorial/geospark-sql-python/" title="Spatial SQL in Python" class="md-nav__link">
+ Spatial SQL in Python
+ </a>
+ </li>
+
+
+
+
+
+
+
+ <li class="md-nav__item">
+ <a href="../../tutorial/GeoSpark-Runnable-DEMO/" title="GeoSpark template project" class="md-nav__link">
+ GeoSpark template project
+ </a>
+ </li>
+
+
+
+
+
+
+
+ <li class="md-nav__item">
+ <a href="../../tutorial/faq/" title="Frequently Asked Questions" class="md-nav__link">
+ Frequently Asked Questions
+ </a>
+ </li>
+
+
+
+
+
+
+
+ <li class="md-nav__item">
+ <a href="../../tutorial/Advanced-Tutorial-Tune-your-GeoSpark-Application/" title="Tune GeoSpark RDD application" class="md-nav__link">
+ Tune GeoSpark RDD application
+ </a>
+ </li>
+
+
+
+
+
+
+
+ <li class="md-nav__item">
+ <a href="../../tutorial/benchmark/" title="Benchmark" class="md-nav__link">
+ Benchmark
+ </a>
+ </li>
+
+
+ </ul>
+ </nav>
+ </li>
+
+
+
+
+
+
+
+
+
+ <li class="md-nav__item md-nav__item--active md-nav__item--nested">
+
+ <input class="md-toggle md-nav__toggle" data-md-toggle="nav-4" type="checkbox" id="nav-4" checked>
+
+ <label class="md-nav__link" for="nav-4">
+ API
+ </label>
+ <nav class="md-nav" data-md-component="collapsible" data-md-level="1">
+ <label class="md-nav__title" for="nav-4">
+ API
+ </label>
+ <ul class="md-nav__list" data-md-scrollfix>
+
+
+
+
+
+
+
+
+
+ <li class="md-nav__item md-nav__item--active md-nav__item--nested">
+
+ <input class="md-toggle md-nav__toggle" data-md-toggle="nav-4-1" type="checkbox" id="nav-4-1" checked>
+
+ <label class="md-nav__link" for="nav-4-1">
+ GeoSpark core (RDD)
+ </label>
+ <nav class="md-nav" data-md-component="collapsible" data-md-level="2">
+ <label class="md-nav__title" for="nav-4-1">
+ GeoSpark core (RDD)
+ </label>
+ <ul class="md-nav__list" data-md-scrollfix>
+
+
+
+
+
+
+
+
+
+ <li class="md-nav__item md-nav__item--active">
+
+ <input class="md-toggle md-nav__toggle" data-md-toggle="toc" type="checkbox" id="toc">
+
+
+ <label class="md-nav__link md-nav__link--active" for="toc">
+ Scala/Java doc
+ </label>
+
+ <a href="./" title="Scala/Java doc" class="md-nav__link md-nav__link--active">
+ Scala/Java doc
+ </a>
+
+
+<nav class="md-nav md-nav--secondary">
+
+
+
+ <label class="md-nav__title" for="toc">Table of contents</label>
+ <ul class="md-nav__list" data-md-scrollfix>
+
+ <li class="md-nav__item">
+ <a href="#scala-and-java-api" title="Scala and Java API" class="md-nav__link">
+ Scala and Java API
+ </a>
+
+</li>
+
+
+
+
+
+ </ul>
+
+</nav>
+
+ </li>
+
+
+
+
+
+
+
+ <li class="md-nav__item">
+ <a href="../GeoSpark-Python-API/" title="Python doc" class="md-nav__link">
+ Python doc
+ </a>
+ </li>
+
+
+ </ul>
+ </nav>
+ </li>
+
+
+
+
+
+
+
+ <li class="md-nav__item md-nav__item--nested">
+
+ <input class="md-toggle md-nav__toggle" data-md-toggle="nav-4-2" type="checkbox" id="nav-4-2">
+
+ <label class="md-nav__link" for="nav-4-2">
+ GeoSpark SQL
+ </label>
+ <nav class="md-nav" data-md-component="collapsible" data-md-level="2">
+ <label class="md-nav__title" for="nav-4-2">
+ GeoSpark SQL
+ </label>
+ <ul class="md-nav__list" data-md-scrollfix>
+
+
+
+
+
+
+
+ <li class="md-nav__item">
+ <a href="../sql/GeoSparkSQL-javadoc/" title="JavaDoc" class="md-nav__link">
+ JavaDoc
+ </a>
+ </li>
+
+
+
+
+
+
+
+ <li class="md-nav__item">
+ <a href="../sql/GeoSparkSQL-Overview/" title="Quick start" class="md-nav__link">
+ Quick start
+ </a>
+ </li>
+
+
+
+
+
+
+
+ <li class="md-nav__item">
+ <a href="../sql/GeoSparkSQL-Constructor/" title="Constructor" class="md-nav__link">
+ Constructor
+ </a>
+ </li>
+
+
+
+
+
+
+
+ <li class="md-nav__item">
+ <a href="../sql/GeoSparkSQL-Function/" title="Function" class="md-nav__link">
+ Function
+ </a>
+ </li>
+
+
+
+
+
+
+
+ <li class="md-nav__item">
+ <a href="../sql/GeoSparkSQL-Predicate/" title="Predicate" class="md-nav__link">
+ Predicate
+ </a>
+ </li>
+
+
+
+
+
+
+
+ <li class="md-nav__item">
+ <a href="../sql/GeoSparkSQL-AggregateFunction/" title="Aggregate function" class="md-nav__link">
+ Aggregate function
+ </a>
+ </li>
+
+
+
+
+
+
+
+ <li class="md-nav__item">
+ <a href="../sql/GeoSparkSQL-Optimizer/" title="Join query (optimizer)" class="md-nav__link">
+ Join query (optimizer)
+ </a>
+ </li>
+
+
+
+
+
+
+
+ <li class="md-nav__item">
+ <a href="../sql/GeoSparkSQL-Parameter/" title="Parameter" class="md-nav__link">
+ Parameter
+ </a>
+ </li>
+
+
+ </ul>
+ </nav>
+ </li>
+
+
+
+
+
+
+
+ <li class="md-nav__item md-nav__item--nested">
+
+ <input class="md-toggle md-nav__toggle" data-md-toggle="nav-4-3" type="checkbox" id="nav-4-3">
+
+ <label class="md-nav__link" for="nav-4-3">
+ GeoSpark Viz
+ </label>
+ <nav class="md-nav" data-md-component="collapsible" data-md-level="2">
+ <label class="md-nav__title" for="nav-4-3">
+ GeoSpark Viz
+ </label>
+ <ul class="md-nav__list" data-md-scrollfix>
+
+
+
+
+
+
+
+ <li class="md-nav__item">
+ <a href="../viz/sql/" title="DataFrame/SQL" class="md-nav__link">
+ DataFrame/SQL
+ </a>
+ </li>
+
+
+
+
+
+
+
+ <li class="md-nav__item">
+ <a href="../viz/Babylon-Scala-and-Java-API/" title="RDD" class="md-nav__link">
+ RDD
+ </a>
+ </li>
+
+
+ </ul>
+ </nav>
+ </li>
+
+
+ </ul>
+ </nav>
+ </li>
+
+
+
+
+
+
+
+ <li class="md-nav__item md-nav__item--nested">
+
+ <input class="md-toggle md-nav__toggle" data-md-toggle="nav-5" type="checkbox" id="nav-5">
+
+ <label class="md-nav__link" for="nav-5">
+ Contributing
+ </label>
+ <nav class="md-nav" data-md-component="collapsible" data-md-level="1">
+ <label class="md-nav__title" for="nav-5">
+ Contributing
+ </label>
+ <ul class="md-nav__list" data-md-scrollfix>
+
+
+
+
+
+
+
+ <li class="md-nav__item">
+ <a href="../../contribute/rule/" title="Contributing rule" class="md-nav__link">
+ Contributing rule
+ </a>
+ </li>
+
+
+
+
+
+
+
+ <li class="md-nav__item">
+ <a href="../../contribute/contributor/" title="Contributors and committers" class="md-nav__link">
+ Contributors and committers
+ </a>
+ </li>
+
+
+ </ul>
+ </nav>
+ </li>
+
+
+
+
+
+
+
+ <li class="md-nav__item">
+ <a href="../../contact/" title="Contact" class="md-nav__link">
+ Contact
+ </a>
+ </li>
+
+
+
+
+
+
+
+ <li class="md-nav__item">
+ <a href="../../publication/" title="Publications" class="md-nav__link">
+ Publications
+ </a>
+ </li>
+
+
+
+
+
+
+
+ <li class="md-nav__item md-nav__item--nested">
+
+ <input class="md-toggle md-nav__toggle" data-md-toggle="nav-8" type="checkbox" id="nav-8">
+
+ <label class="md-nav__link" for="nav-8">
+ License
+ </label>
+ <nav class="md-nav" data-md-component="collapsible" data-md-level="1">
+ <label class="md-nav__title" for="nav-8">
+ License
+ </label>
+ <ul class="md-nav__list" data-md-scrollfix>
+
+
+
+
+
+
+
+ <li class="md-nav__item">
+ <a href="../../license/License-before-1-2-0/" title="License-before-1.2.0" class="md-nav__link">
+ License-before-1.2.0
+ </a>
+ </li>
+
+
+
+
+
+
+
+ <li class="md-nav__item">
+ <a href="../../license/License/" title="License" class="md-nav__link">
+ License
+ </a>
+ </li>
+
+
+ </ul>
+ </nav>
+ </li>
+
+
+ </ul>
+</nav>
+ </div>
+ </div>
+ </div>
+
+
+ <div class="md-sidebar md-sidebar--secondary" data-md-component="toc">
+ <div class="md-sidebar__scrollwrap">
+ <div class="md-sidebar__inner">
+
+<nav class="md-nav md-nav--secondary">
+
+
+
+ <label class="md-nav__title" for="toc">Table of contents</label>
+ <ul class="md-nav__list" data-md-scrollfix>
+
+ <li class="md-nav__item">
+ <a href="#scala-and-java-api" title="Scala and Java API" class="md-nav__link">
+ Scala and Java API
+ </a>
+
+</li>
+
+
+
+
+
+ </ul>
+
+</nav>
+ </div>
+ </div>
+ </div>
+
+
+ <div class="md-content">
+ <article class="md-content__inner md-typeset">
+
+
+ <a href="https://github.com/DataSystemsLab/GeoSpark/edit/master/docs/api/GeoSpark-Scala-and-Java-API.md" title="Edit this page" class="md-icon md-content__icon"></a>
+
+
+ <h1>Scala/Java doc</h1>
+
+ <h2 id="scala-and-java-api">Scala and Java API<a class="headerlink" href="#scala-and-java-api" title="Permanent link">¶</a></h2>
+<p>GeoSpark Scala and Java API: <a href="http://www.public.asu.edu/~jiayu2/geospark/javadoc/">http://www.public.asu.edu/~jiayu2/geospark/javadoc/</a></p>
+<p>The "SNAPSHOT" folder has the API for the latest GeoSpark SNAPSHOT version.</p>
+<p>Note: Scala can call Java APIs seamlessly. That means GeoSpark Scala users use the same APIs with GeoSpark Java users.</p>
+
+
+
+
+
+
+
+
+
+ </article>
+ </div>
+ </div>
+ </main>
+
+
+<footer class="md-footer">
+
+ <div class="md-footer-nav">
+ <nav class="md-footer-nav__inner md-grid">
+
+ <a href="../../tutorial/benchmark/" title="Benchmark" class="md-flex md-footer-nav__link md-footer-nav__link--prev" rel="prev">
+ <div class="md-flex__cell md-flex__cell--shrink">
+ <i class="md-icon md-icon--arrow-back md-footer-nav__button"></i>
+ </div>
+ <div class="md-flex__cell md-flex__cell--stretch md-footer-nav__title">
+ <span class="md-flex__ellipsis">
+ <span class="md-footer-nav__direction">
+ Previous
+ </span>
+ Benchmark
+ </span>
+ </div>
+ </a>
+
+
+ <a href="../GeoSpark-Python-API/" title="Python doc" class="md-flex md-footer-nav__link md-footer-nav__link--next" rel="next">
+ <div class="md-flex__cell md-flex__cell--stretch md-footer-nav__title">
+ <span class="md-flex__ellipsis">
+ <span class="md-footer-nav__direction">
+ Next
+ </span>
+ Python doc
+ </span>
+ </div>
+ <div class="md-flex__cell md-flex__cell--shrink">
+ <i class="md-icon md-icon--arrow-forward md-footer-nav__button"></i>
+ </div>
+ </a>
+
+ </nav>
+ </div>
+
+ <div class="md-footer-meta md-typeset">
+ <div class="md-footer-meta__inner md-grid">
+ <div class="md-footer-copyright">
+
+ powered by
+ <a href="http://www.mkdocs.org">MkDocs</a>
+ and
+ <a href="https://squidfunk.github.io/mkdocs-material/">
+ Material for MkDocs</a>
+ </div>
+
+
+ <div class="md-footer-social">
+
+ <link rel="stylesheet" href="https://cdnjs.cloudflare.com/ajax/libs/font-awesome/4.7.0/css/font-awesome.min.css">
+
+ <a href="https://github.com/DataSystemsLab/GeoSpark" class="md-footer-social__link fa fa-github"></a>
+
+ <a href="https://twitter.com/GeoSpark_ASU" class="md-footer-social__link fa fa-twitter"></a>
+
+ </div>
+
+
+ </div>
+ </div>
+</footer>
+
+ </div>
+
+ <script src="../../assets/javascripts/application.8eb9be28.js"></script>
+
+ <script>app.initialize({version:"0.17.2",url:{base:"../.."}})</script>
+
+
+
+
+ <script>!function(e,a,t,n,o,c,i){e.GoogleAnalyticsObject=o,e.ga=e.ga||function(){(e.ga.q=e.ga.q||[]).push(arguments)},e.ga.l=1*new Date,c=a.createElement(t),i=a.getElementsByTagName(t)[0],c.async=1,c.src="https://www.google-analytics.com/analytics.js",i.parentNode.insertBefore(c,i)}(window,document,"script",0,"ga"),ga("create","UA-64886725-1","www.public.asu.edu/~jiayu2/geospark/index.html"),ga("set","anonymizeIp",!0),ga("send","pageview");var links=document.getElementsByTagName( [...]
+
+
+ </body>
+</html>
\ No newline at end of file
diff --git a/api/sql/GeoSparkSQL-AggregateFunction/index.html b/api/sql/GeoSparkSQL-AggregateFunction/index.html
new file mode 100644
index 0000000..2521d7d
--- /dev/null
+++ b/api/sql/GeoSparkSQL-AggregateFunction/index.html
@@ -0,0 +1,1097 @@
+
+
+
+
+<!DOCTYPE html>
+<html lang="en" class="no-js">
+ <head>
+
+ <meta charset="utf-8">
+ <meta name="viewport" content="width=device-width,initial-scale=1">
+ <meta http-equiv="x-ua-compatible" content="ie=edge">
+
+
+
+
+ <meta name="lang:clipboard.copy" content="Copy to clipboard">
+
+ <meta name="lang:clipboard.copied" content="Copied to clipboard">
+
+ <meta name="lang:search.language" content="en">
+
+ <meta name="lang:search.pipeline.stopwords" content="True">
+
+ <meta name="lang:search.pipeline.trimmer" content="True">
+
+ <meta name="lang:search.result.none" content="No matching documents">
+
+ <meta name="lang:search.result.one" content="1 matching document">
+
+ <meta name="lang:search.result.other" content="# matching documents">
+
+ <meta name="lang:search.tokenizer" content="[\s\-]+">
+
+ <link rel="shortcut icon" href="../../../assets/images/favicon.png">
+ <meta name="generator" content="mkdocs-0.17.2, mkdocs-material-2.7.1">
+
+
+
+ <title>Aggregate function - GeoSpark</title>
+
+
+
+ <link rel="stylesheet" href="../../../assets/stylesheets/application.78aab2dc.css">
+
+ <link rel="stylesheet" href="../../../assets/stylesheets/application-palette.6079476c.css">
+
+
+
+ <script src="../../../assets/javascripts/modernizr.1aa3b519.js"></script>
+
+
+ <link href="https://fonts.gstatic.com" rel="preconnect" crossorigin>
+
+ <link rel="stylesheet" href="https://fonts.googleapis.com/css?family=Roboto:300,400,400i,700|Roboto+Mono">
+ <style>body,input{font-family:"Roboto","Helvetica Neue",Helvetica,Arial,sans-serif}code,kbd,pre{font-family:"Roboto Mono","Courier New",Courier,monospace}</style>
+
+ <link rel="stylesheet" href="https://fonts.googleapis.com/icon?family=Material+Icons">
+
+
+
+ </head>
+
+
+
+ <body dir="ltr" data-md-color-primary="cyan" data-md-color-accent="pink">
+
+ <svg class="md-svg">
+ <defs>
+
+
+ <svg xmlns="http://www.w3.org/2000/svg" width="416" height="448"
+ viewBox="0 0 416 448" id="github">
+ <path fill="currentColor" d="M160 304q0 10-3.125 20.5t-10.75 19-18.125
+ 8.5-18.125-8.5-10.75-19-3.125-20.5 3.125-20.5 10.75-19 18.125-8.5
+ 18.125 8.5 10.75 19 3.125 20.5zM320 304q0 10-3.125 20.5t-10.75
+ 19-18.125 8.5-18.125-8.5-10.75-19-3.125-20.5 3.125-20.5 10.75-19
+ 18.125-8.5 18.125 8.5 10.75 19 3.125 20.5zM360
+ 304q0-30-17.25-51t-46.75-21q-10.25 0-48.75 5.25-17.75 2.75-39.25
+ 2.75t-39.25-2.75q-38-5.25-48.75-5.25-29.5 0-46.75 21t-17.25 51q0 22 8
+ 38.375t20.25 25.75 30.5 15 35 7.375 37.25 1.75h42q20.5 0
+ 37.25-1.75t35-7.375 30.5-15 20.25-25.75 8-38.375zM416 260q0 51.75-15.25
+ 82.75-9.5 19.25-26.375 33.25t-35.25 21.5-42.5 11.875-42.875 5.5-41.75
+ 1.125q-19.5 0-35.5-0.75t-36.875-3.125-38.125-7.5-34.25-12.875-30.25-20.25-21.5-28.75q-15.5-30.75-15.5-82.75
+ 0-59.25 34-99-6.75-20.5-6.75-42.5 0-29 12.75-54.5 27 0 47.5 9.875t47.25
+ 30.875q36.75-8.75 77.25-8.75 37 0 70 8 26.25-20.5
+ 46.75-30.25t47.25-9.75q12.75 25.5 12.75 54.5 0 21.75-6.75 42 34 40 34
+ 99.5z" />
+</svg>
+
+ </defs>
+ </svg>
+ <input class="md-toggle" data-md-toggle="drawer" type="checkbox" id="drawer" autocomplete="off">
+ <input class="md-toggle" data-md-toggle="search" type="checkbox" id="search" autocomplete="off">
+ <label class="md-overlay" data-md-component="overlay" for="drawer"></label>
+
+ <a href="#st_envelope_aggr" tabindex="1" class="md-skip">
+ Skip to content
+ </a>
+
+
+ <header class="md-header" data-md-component="header">
+ <nav class="md-header-nav md-grid">
+ <div class="md-flex">
+ <div class="md-flex__cell md-flex__cell--shrink">
+ <a href="../../.." title="GeoSpark" class="md-header-nav__button md-logo">
+
+ <i class="md-icon"></i>
+
+ </a>
+ </div>
+ <div class="md-flex__cell md-flex__cell--shrink">
+ <label class="md-icon md-icon--menu md-header-nav__button" for="drawer"></label>
+ </div>
+ <div class="md-flex__cell md-flex__cell--stretch">
+ <div class="md-flex__ellipsis md-header-nav__title" data-md-component="title">
+
+
+ <span class="md-header-nav__topic">
+ GeoSpark
+ </span>
+ <span class="md-header-nav__topic">
+ Aggregate function
+ </span>
+
+
+ </div>
+ </div>
+ <div class="md-flex__cell md-flex__cell--shrink">
+
+
+ <label class="md-icon md-icon--search md-header-nav__button" for="search"></label>
+
+<div class="md-search" data-md-component="search" role="dialog">
+ <label class="md-search__overlay" for="search"></label>
+ <div class="md-search__inner" role="search">
+ <form class="md-search__form" name="search">
+ <input type="text" class="md-search__input" name="query" placeholder="Search" autocapitalize="off" autocorrect="off" autocomplete="off" spellcheck="false" data-md-component="query" data-md-state="active">
+ <label class="md-icon md-search__icon" for="search"></label>
+ <button type="reset" class="md-icon md-search__icon" data-md-component="reset" tabindex="-1">
+ 
+ </button>
+ </form>
+ <div class="md-search__output">
+ <div class="md-search__scrollwrap" data-md-scrollfix>
+ <div class="md-search-result" data-md-component="result">
+ <div class="md-search-result__meta">
+ Type to start searching
+ </div>
+ <ol class="md-search-result__list"></ol>
+ </div>
+ </div>
+ </div>
+ </div>
+</div>
+
+
+ </div>
+
+ <div class="md-flex__cell md-flex__cell--shrink">
+ <div class="md-header-nav__source">
+
+
+
+
+
+
+ <a href="https://github.com/DataSystemsLab/GeoSpark/" title="Go to repository" class="md-source" data-md-source="github">
+
+ <div class="md-source__icon">
+ <svg viewBox="0 0 24 24" width="24" height="24">
+ <use xlink:href="#github" width="24" height="24"></use>
+ </svg>
+ </div>
+
+ <div class="md-source__repository">
+ GitHub
+ </div>
+ </a>
+
+ </div>
+ </div>
+
+ </div>
+ </nav>
+</header>
+
+ <div class="md-container">
+
+
+
+
+ <main class="md-main">
+ <div class="md-main__inner md-grid" data-md-component="container">
+
+
+ <div class="md-sidebar md-sidebar--primary" data-md-component="navigation">
+ <div class="md-sidebar__scrollwrap">
+ <div class="md-sidebar__inner">
+ <nav class="md-nav md-nav--primary" data-md-level="0">
+ <label class="md-nav__title md-nav__title--site" for="drawer">
+ <span class="md-nav__button md-logo">
+
+ <i class="md-icon"></i>
+
+ </span>
+ GeoSpark
+ </label>
+
+ <div class="md-nav__source">
+
+
+
+
+
+
+ <a href="https://github.com/DataSystemsLab/GeoSpark/" title="Go to repository" class="md-source" data-md-source="github">
+
+ <div class="md-source__icon">
+ <svg viewBox="0 0 24 24" width="24" height="24">
+ <use xlink:href="#github" width="24" height="24"></use>
+ </svg>
+ </div>
+
+ <div class="md-source__repository">
+ GitHub
+ </div>
+ </a>
+
+ </div>
+
+ <ul class="md-nav__list" data-md-scrollfix>
+
+
+
+
+
+
+ <li class="md-nav__item">
+ <a href="../../.." title="Home" class="md-nav__link">
+ Home
+ </a>
+ </li>
+
+
+
+
+
+
+
+ <li class="md-nav__item md-nav__item--nested">
+
+ <input class="md-toggle md-nav__toggle" data-md-toggle="nav-2" type="checkbox" id="nav-2">
+
+ <label class="md-nav__link" for="nav-2">
+ Download
+ </label>
+ <nav class="md-nav" data-md-component="collapsible" data-md-level="1">
+ <label class="md-nav__title" for="nav-2">
+ Download
+ </label>
+ <ul class="md-nav__list" data-md-scrollfix>
+
+
+
+
+
+
+
+ <li class="md-nav__item">
+ <a href="../../../download/overview/" title="Quick start" class="md-nav__link">
+ Quick start
+ </a>
+ </li>
+
+
+
+
+
+
+
+ <li class="md-nav__item">
+ <a href="../../../download/GeoSpark-All-Modules-Release-notes/" title="Release notes" class="md-nav__link">
+ Release notes
+ </a>
+ </li>
+
+
+
+
+
+
+
+ <li class="md-nav__item">
+ <a href="../../../download/GeoSpark-All-Modules-Maven-Central-Coordinates/" title="Maven Central coordinate" class="md-nav__link">
+ Maven Central coordinate
+ </a>
+ </li>
+
+
+
+
+
+
+
+ <li class="md-nav__item">
+ <a href="../../../download/cluster/" title="Set up Spark cluser" class="md-nav__link">
+ Set up Spark cluser
+ </a>
+ </li>
+
+
+
+
+
+
+
+ <li class="md-nav__item">
+ <a href="../../../download/scalashell/" title="Spark Scala shell" class="md-nav__link">
+ Spark Scala shell
+ </a>
+ </li>
+
+
+
+
+
+
+
+ <li class="md-nav__item">
+ <a href="../../../download/project/" title="Self-contained project" class="md-nav__link">
+ Self-contained project
+ </a>
+ </li>
+
+
+
+
+
+
+
+ <li class="md-nav__item">
+ <a href="../../../download/zeppelin/" title="Install GeoSpark-Zeppelin" class="md-nav__link">
+ Install GeoSpark-Zeppelin
+ </a>
+ </li>
+
+
+
+
+
+
+
+ <li class="md-nav__item">
+ <a href="../../../download/compile/" title="Compile the source code" class="md-nav__link">
+ Compile the source code
+ </a>
+ </li>
+
+
+ </ul>
+ </nav>
+ </li>
+
+
+
+
+
+
+
+ <li class="md-nav__item md-nav__item--nested">
+
+ <input class="md-toggle md-nav__toggle" data-md-toggle="nav-3" type="checkbox" id="nav-3">
+
+ <label class="md-nav__link" for="nav-3">
+ Tutorial
+ </label>
+ <nav class="md-nav" data-md-component="collapsible" data-md-level="1">
+ <label class="md-nav__title" for="nav-3">
+ Tutorial
+ </label>
+ <ul class="md-nav__list" data-md-scrollfix>
+
+
+
+
+
+
+
+ <li class="md-nav__item">
+ <a href="../../../tutorial/rdd/" title="Spatial RDD application" class="md-nav__link">
+ Spatial RDD application
+ </a>
+ </li>
+
+
+
+
+
+
+
+ <li class="md-nav__item">
+ <a href="../../../tutorial/sql/" title="Spatial SQL application" class="md-nav__link">
+ Spatial SQL application
+ </a>
+ </li>
+
+
+
+
+
+
+
+ <li class="md-nav__item">
+ <a href="../../../tutorial/viz/" title="Visualize Spatial DataFrame" class="md-nav__link">
+ Visualize Spatial DataFrame
+ </a>
+ </li>
+
+
+
+
+
+
+
+ <li class="md-nav__item">
+ <a href="../../../tutorial/zeppelin/" title="Run GeoSpark via Zeppelin" class="md-nav__link">
+ Run GeoSpark via Zeppelin
+ </a>
+ </li>
+
+
+
+
+
+
+
+ <li class="md-nav__item">
+ <a href="../../../tutorial/geospark-core-python/" title="Spatial RDD in Python" class="md-nav__link">
+ Spatial RDD in Python
+ </a>
+ </li>
+
+
+
+
+
+
+
+ <li class="md-nav__item">
+ <a href="../../../tutorial/geospark-sql-python/" title="Spatial SQL in Python" class="md-nav__link">
+ Spatial SQL in Python
+ </a>
+ </li>
+
+
+
+
+
+
+
+ <li class="md-nav__item">
+ <a href="../../../tutorial/GeoSpark-Runnable-DEMO/" title="GeoSpark template project" class="md-nav__link">
+ GeoSpark template project
+ </a>
+ </li>
+
+
+
+
+
+
+
+ <li class="md-nav__item">
+ <a href="../../../tutorial/faq/" title="Frequently Asked Questions" class="md-nav__link">
+ Frequently Asked Questions
+ </a>
+ </li>
+
+
+
+
+
+
+
+ <li class="md-nav__item">
+ <a href="../../../tutorial/Advanced-Tutorial-Tune-your-GeoSpark-Application/" title="Tune GeoSpark RDD application" class="md-nav__link">
+ Tune GeoSpark RDD application
+ </a>
+ </li>
+
+
+
+
+
+
+
+ <li class="md-nav__item">
+ <a href="../../../tutorial/benchmark/" title="Benchmark" class="md-nav__link">
+ Benchmark
+ </a>
+ </li>
+
+
+ </ul>
+ </nav>
+ </li>
+
+
+
+
+
+
+
+
+
+ <li class="md-nav__item md-nav__item--active md-nav__item--nested">
+
+ <input class="md-toggle md-nav__toggle" data-md-toggle="nav-4" type="checkbox" id="nav-4" checked>
+
+ <label class="md-nav__link" for="nav-4">
+ API
+ </label>
+ <nav class="md-nav" data-md-component="collapsible" data-md-level="1">
+ <label class="md-nav__title" for="nav-4">
+ API
+ </label>
+ <ul class="md-nav__list" data-md-scrollfix>
+
+
+
+
+
+
+
+ <li class="md-nav__item md-nav__item--nested">
+
+ <input class="md-toggle md-nav__toggle" data-md-toggle="nav-4-1" type="checkbox" id="nav-4-1">
+
+ <label class="md-nav__link" for="nav-4-1">
+ GeoSpark core (RDD)
+ </label>
+ <nav class="md-nav" data-md-component="collapsible" data-md-level="2">
+ <label class="md-nav__title" for="nav-4-1">
+ GeoSpark core (RDD)
+ </label>
+ <ul class="md-nav__list" data-md-scrollfix>
+
+
+
+
+
+
+
+ <li class="md-nav__item">
+ <a href="../../GeoSpark-Scala-and-Java-API/" title="Scala/Java doc" class="md-nav__link">
+ Scala/Java doc
+ </a>
+ </li>
+
+
+
+
+
+
+
+ <li class="md-nav__item">
+ <a href="../../GeoSpark-Python-API/" title="Python doc" class="md-nav__link">
+ Python doc
+ </a>
+ </li>
+
+
+ </ul>
+ </nav>
+ </li>
+
+
+
+
+
+
+
+
+
+ <li class="md-nav__item md-nav__item--active md-nav__item--nested">
+
+ <input class="md-toggle md-nav__toggle" data-md-toggle="nav-4-2" type="checkbox" id="nav-4-2" checked>
+
+ <label class="md-nav__link" for="nav-4-2">
+ GeoSpark SQL
+ </label>
+ <nav class="md-nav" data-md-component="collapsible" data-md-level="2">
+ <label class="md-nav__title" for="nav-4-2">
+ GeoSpark SQL
+ </label>
+ <ul class="md-nav__list" data-md-scrollfix>
+
+
+
+
+
+
+
+ <li class="md-nav__item">
+ <a href="../GeoSparkSQL-javadoc/" title="JavaDoc" class="md-nav__link">
+ JavaDoc
+ </a>
+ </li>
+
+
+
+
+
+
+
+ <li class="md-nav__item">
+ <a href="../GeoSparkSQL-Overview/" title="Quick start" class="md-nav__link">
+ Quick start
+ </a>
+ </li>
+
+
+
+
+
+
+
+ <li class="md-nav__item">
+ <a href="../GeoSparkSQL-Constructor/" title="Constructor" class="md-nav__link">
+ Constructor
+ </a>
+ </li>
+
+
+
+
+
+
+
+ <li class="md-nav__item">
+ <a href="../GeoSparkSQL-Function/" title="Function" class="md-nav__link">
+ Function
+ </a>
+ </li>
+
+
+
+
+
+
+
+ <li class="md-nav__item">
+ <a href="../GeoSparkSQL-Predicate/" title="Predicate" class="md-nav__link">
+ Predicate
+ </a>
+ </li>
+
+
+
+
+
+
+
+
+
+ <li class="md-nav__item md-nav__item--active">
+
+ <input class="md-toggle md-nav__toggle" data-md-toggle="toc" type="checkbox" id="toc">
+
+
+ <label class="md-nav__link md-nav__link--active" for="toc">
+ Aggregate function
+ </label>
+
+ <a href="./" title="Aggregate function" class="md-nav__link md-nav__link--active">
+ Aggregate function
+ </a>
+
+
+<nav class="md-nav md-nav--secondary">
+
+
+
+ <label class="md-nav__title" for="toc">Table of contents</label>
+ <ul class="md-nav__list" data-md-scrollfix>
+
+ <li class="md-nav__item">
+ <a href="#st_envelope_aggr" title="ST_Envelope_Aggr" class="md-nav__link">
+ ST_Envelope_Aggr
+ </a>
+
+</li>
+
+ <li class="md-nav__item">
+ <a href="#st_union_aggr" title="ST_Union_Aggr" class="md-nav__link">
+ ST_Union_Aggr
+ </a>
+
+</li>
+
+ <li class="md-nav__item">
+ <a href="#st_intersection_aggr" title="ST_Intersection_Aggr" class="md-nav__link">
+ ST_Intersection_Aggr
+ </a>
+
+</li>
+
+
+
+
+
+ </ul>
+
+</nav>
+
+ </li>
+
+
+
+
+
+
+
+ <li class="md-nav__item">
+ <a href="../GeoSparkSQL-Optimizer/" title="Join query (optimizer)" class="md-nav__link">
+ Join query (optimizer)
+ </a>
+ </li>
+
+
+
+
+
+
+
+ <li class="md-nav__item">
+ <a href="../GeoSparkSQL-Parameter/" title="Parameter" class="md-nav__link">
+ Parameter
+ </a>
+ </li>
+
+
+ </ul>
+ </nav>
+ </li>
+
+
+
+
+
+
+
+ <li class="md-nav__item md-nav__item--nested">
+
+ <input class="md-toggle md-nav__toggle" data-md-toggle="nav-4-3" type="checkbox" id="nav-4-3">
+
+ <label class="md-nav__link" for="nav-4-3">
+ GeoSpark Viz
+ </label>
+ <nav class="md-nav" data-md-component="collapsible" data-md-level="2">
+ <label class="md-nav__title" for="nav-4-3">
+ GeoSpark Viz
+ </label>
+ <ul class="md-nav__list" data-md-scrollfix>
+
+
+
+
+
+
+
+ <li class="md-nav__item">
+ <a href="../../viz/sql/" title="DataFrame/SQL" class="md-nav__link">
+ DataFrame/SQL
+ </a>
+ </li>
+
+
+
+
+
+
+
+ <li class="md-nav__item">
+ <a href="../../viz/Babylon-Scala-and-Java-API/" title="RDD" class="md-nav__link">
+ RDD
+ </a>
+ </li>
+
+
+ </ul>
+ </nav>
+ </li>
+
+
+ </ul>
+ </nav>
+ </li>
+
+
+
+
+
+
+
+ <li class="md-nav__item md-nav__item--nested">
+
+ <input class="md-toggle md-nav__toggle" data-md-toggle="nav-5" type="checkbox" id="nav-5">
+
+ <label class="md-nav__link" for="nav-5">
+ Contributing
+ </label>
+ <nav class="md-nav" data-md-component="collapsible" data-md-level="1">
+ <label class="md-nav__title" for="nav-5">
+ Contributing
+ </label>
+ <ul class="md-nav__list" data-md-scrollfix>
+
+
+
+
+
+
+
+ <li class="md-nav__item">
+ <a href="../../../contribute/rule/" title="Contributing rule" class="md-nav__link">
+ Contributing rule
+ </a>
+ </li>
+
+
+
+
+
+
+
+ <li class="md-nav__item">
+ <a href="../../../contribute/contributor/" title="Contributors and committers" class="md-nav__link">
+ Contributors and committers
+ </a>
+ </li>
+
+
+ </ul>
+ </nav>
+ </li>
+
+
+
+
+
+
+
+ <li class="md-nav__item">
+ <a href="../../../contact/" title="Contact" class="md-nav__link">
+ Contact
+ </a>
+ </li>
+
+
+
+
+
+
+
+ <li class="md-nav__item">
+ <a href="../../../publication/" title="Publications" class="md-nav__link">
+ Publications
+ </a>
+ </li>
+
+
+
+
+
+
+
+ <li class="md-nav__item md-nav__item--nested">
+
+ <input class="md-toggle md-nav__toggle" data-md-toggle="nav-8" type="checkbox" id="nav-8">
+
+ <label class="md-nav__link" for="nav-8">
+ License
+ </label>
+ <nav class="md-nav" data-md-component="collapsible" data-md-level="1">
+ <label class="md-nav__title" for="nav-8">
+ License
+ </label>
+ <ul class="md-nav__list" data-md-scrollfix>
+
+
+
+
+
+
+
+ <li class="md-nav__item">
+ <a href="../../../license/License-before-1-2-0/" title="License-before-1.2.0" class="md-nav__link">
+ License-before-1.2.0
+ </a>
+ </li>
+
+
+
+
+
+
+
+ <li class="md-nav__item">
+ <a href="../../../license/License/" title="License" class="md-nav__link">
+ License
+ </a>
+ </li>
+
+
+ </ul>
+ </nav>
+ </li>
+
+
+ </ul>
+</nav>
+ </div>
+ </div>
+ </div>
+
+
+ <div class="md-sidebar md-sidebar--secondary" data-md-component="toc">
+ <div class="md-sidebar__scrollwrap">
+ <div class="md-sidebar__inner">
+
+<nav class="md-nav md-nav--secondary">
+
+
+
+ <label class="md-nav__title" for="toc">Table of contents</label>
+ <ul class="md-nav__list" data-md-scrollfix>
+
+ <li class="md-nav__item">
+ <a href="#st_envelope_aggr" title="ST_Envelope_Aggr" class="md-nav__link">
+ ST_Envelope_Aggr
+ </a>
+
+</li>
+
+ <li class="md-nav__item">
+ <a href="#st_union_aggr" title="ST_Union_Aggr" class="md-nav__link">
+ ST_Union_Aggr
+ </a>
+
+</li>
+
+ <li class="md-nav__item">
+ <a href="#st_intersection_aggr" title="ST_Intersection_Aggr" class="md-nav__link">
+ ST_Intersection_Aggr
+ </a>
+
+</li>
+
+
+
+
+
+ </ul>
+
+</nav>
+ </div>
+ </div>
+ </div>
+
+
+ <div class="md-content">
+ <article class="md-content__inner md-typeset">
+
+
+ <a href="https://github.com/DataSystemsLab/GeoSpark/edit/master/docs/api/sql/GeoSparkSQL-AggregateFunction.md" title="Edit this page" class="md-icon md-content__icon"></a>
+
+
+ <h1>Aggregate function</h1>
+
+ <h2 id="st_envelope_aggr">ST_Envelope_Aggr<a class="headerlink" href="#st_envelope_aggr" title="Permanent link">¶</a></h2>
+<p>Introduction: Return the entire envelope boundary of all geometries in A</p>
+<p>Format: <code class="codehilite">ST_Envelope_Aggr (A:geometryColumn)</code></p>
+<p>Since: <code class="codehilite">v1.0.0</code></p>
+<p>Spark SQL example:
+<div class="codehilite"><pre><span></span><span class="k">SELECT</span> <span class="n">ST_Envelope_Aggr</span><span class="p">(</span><span class="n">pointdf</span><span class="p">.</span><span class="n">arealandmark</span><span class="p">)</span>
+<span class="k">FROM</span> <span class="n">pointdf</span>
+</pre></div></p>
+<h2 id="st_union_aggr">ST_Union_Aggr<a class="headerlink" href="#st_union_aggr" title="Permanent link">¶</a></h2>
+<p>Introduction: Return the polygon union of all polygons in A</p>
+<p>Format: <code class="codehilite">ST_Union_Aggr (A:geometryColumn)</code></p>
+<p>Since: <code class="codehilite">v1.0.0</code></p>
+<p>Spark SQL example:
+<div class="codehilite"><pre><span></span><span class="k">SELECT</span> <span class="n">ST_Union_Aggr</span><span class="p">(</span><span class="n">polygondf</span><span class="p">.</span><span class="n">polygonshape</span><span class="p">)</span>
+<span class="k">FROM</span> <span class="n">polygondf</span>
+</pre></div></p>
+<h2 id="st_intersection_aggr">ST_Intersection_Aggr<a class="headerlink" href="#st_intersection_aggr" title="Permanent link">¶</a></h2>
+<p>Introduction: Return the polygon intersection of all polygons in A</p>
+<p>Format: <code class="codehilite">ST_Intersection_Aggr (A:geometryColumn)</code></p>
+<p>Since: <code class="codehilite">v1.2.1</code></p>
+<p>Spark SQL example:
+<div class="codehilite"><pre><span></span><span class="k">SELECT</span> <span class="n">ST_Intersection_Aggr</span><span class="p">(</span><span class="n">polygondf</span><span class="p">.</span><span class="n">polygonshape</span><span class="p">)</span>
+<span class="k">FROM</span> <span class="n">polygondf</span>
+</pre></div></p>
+
+
+
+
+
+
+
+
+
+ </article>
+ </div>
+ </div>
+ </main>
+
+
+<footer class="md-footer">
+
+ <div class="md-footer-nav">
+ <nav class="md-footer-nav__inner md-grid">
+
+ <a href="../GeoSparkSQL-Predicate/" title="Predicate" class="md-flex md-footer-nav__link md-footer-nav__link--prev" rel="prev">
+ <div class="md-flex__cell md-flex__cell--shrink">
+ <i class="md-icon md-icon--arrow-back md-footer-nav__button"></i>
+ </div>
+ <div class="md-flex__cell md-flex__cell--stretch md-footer-nav__title">
+ <span class="md-flex__ellipsis">
+ <span class="md-footer-nav__direction">
+ Previous
+ </span>
+ Predicate
+ </span>
+ </div>
+ </a>
+
+
+ <a href="../GeoSparkSQL-Optimizer/" title="Join query (optimizer)" class="md-flex md-footer-nav__link md-footer-nav__link--next" rel="next">
+ <div class="md-flex__cell md-flex__cell--stretch md-footer-nav__title">
+ <span class="md-flex__ellipsis">
+ <span class="md-footer-nav__direction">
+ Next
+ </span>
+ Join query (optimizer)
+ </span>
+ </div>
+ <div class="md-flex__cell md-flex__cell--shrink">
+ <i class="md-icon md-icon--arrow-forward md-footer-nav__button"></i>
+ </div>
+ </a>
+
+ </nav>
+ </div>
+
+ <div class="md-footer-meta md-typeset">
+ <div class="md-footer-meta__inner md-grid">
+ <div class="md-footer-copyright">
+
+ powered by
+ <a href="http://www.mkdocs.org">MkDocs</a>
+ and
+ <a href="https://squidfunk.github.io/mkdocs-material/">
+ Material for MkDocs</a>
+ </div>
+
+
+ <div class="md-footer-social">
+
+ <link rel="stylesheet" href="https://cdnjs.cloudflare.com/ajax/libs/font-awesome/4.7.0/css/font-awesome.min.css">
+
+ <a href="https://github.com/DataSystemsLab/GeoSpark" class="md-footer-social__link fa fa-github"></a>
+
+ <a href="https://twitter.com/GeoSpark_ASU" class="md-footer-social__link fa fa-twitter"></a>
+
+ </div>
+
+
+ </div>
+ </div>
+</footer>
+
+ </div>
+
+ <script src="../../../assets/javascripts/application.8eb9be28.js"></script>
+
+ <script>app.initialize({version:"0.17.2",url:{base:"../../.."}})</script>
+
+
+
+
+ <script>!function(e,a,t,n,o,c,i){e.GoogleAnalyticsObject=o,e.ga=e.ga||function(){(e.ga.q=e.ga.q||[]).push(arguments)},e.ga.l=1*new Date,c=a.createElement(t),i=a.getElementsByTagName(t)[0],c.async=1,c.src="https://www.google-analytics.com/analytics.js",i.parentNode.insertBefore(c,i)}(window,document,"script",0,"ga"),ga("create","UA-64886725-1","www.public.asu.edu/~jiayu2/geospark/index.html"),ga("set","anonymizeIp",!0),ga("send","pageview");var links=document.getElementsByTagName( [...]
+
+
+ </body>
+</html>
\ No newline at end of file
diff --git a/api/sql/GeoSparkSQL-Constructor/index.html b/api/sql/GeoSparkSQL-Constructor/index.html
new file mode 100644
index 0000000..79c71c5
--- /dev/null
+++ b/api/sql/GeoSparkSQL-Constructor/index.html
@@ -0,0 +1,1317 @@
+
+
+
+
+<!DOCTYPE html>
+<html lang="en" class="no-js">
+ <head>
+
+ <meta charset="utf-8">
+ <meta name="viewport" content="width=device-width,initial-scale=1">
+ <meta http-equiv="x-ua-compatible" content="ie=edge">
+
+
+
+
+ <meta name="lang:clipboard.copy" content="Copy to clipboard">
+
+ <meta name="lang:clipboard.copied" content="Copied to clipboard">
+
+ <meta name="lang:search.language" content="en">
+
+ <meta name="lang:search.pipeline.stopwords" content="True">
+
+ <meta name="lang:search.pipeline.trimmer" content="True">
+
+ <meta name="lang:search.result.none" content="No matching documents">
+
+ <meta name="lang:search.result.one" content="1 matching document">
+
+ <meta name="lang:search.result.other" content="# matching documents">
+
+ <meta name="lang:search.tokenizer" content="[\s\-]+">
+
+ <link rel="shortcut icon" href="../../../assets/images/favicon.png">
+ <meta name="generator" content="mkdocs-0.17.2, mkdocs-material-2.7.1">
+
+
+
+ <title>Constructor - GeoSpark</title>
+
+
+
+ <link rel="stylesheet" href="../../../assets/stylesheets/application.78aab2dc.css">
+
+ <link rel="stylesheet" href="../../../assets/stylesheets/application-palette.6079476c.css">
+
+
+
+ <script src="../../../assets/javascripts/modernizr.1aa3b519.js"></script>
+
+
+ <link href="https://fonts.gstatic.com" rel="preconnect" crossorigin>
+
+ <link rel="stylesheet" href="https://fonts.googleapis.com/css?family=Roboto:300,400,400i,700|Roboto+Mono">
+ <style>body,input{font-family:"Roboto","Helvetica Neue",Helvetica,Arial,sans-serif}code,kbd,pre{font-family:"Roboto Mono","Courier New",Courier,monospace}</style>
+
+ <link rel="stylesheet" href="https://fonts.googleapis.com/icon?family=Material+Icons">
+
+
+
+ </head>
+
+
+
+ <body dir="ltr" data-md-color-primary="cyan" data-md-color-accent="pink">
+
+ <svg class="md-svg">
+ <defs>
+
+
+ <svg xmlns="http://www.w3.org/2000/svg" width="416" height="448"
+ viewBox="0 0 416 448" id="github">
+ <path fill="currentColor" d="M160 304q0 10-3.125 20.5t-10.75 19-18.125
+ 8.5-18.125-8.5-10.75-19-3.125-20.5 3.125-20.5 10.75-19 18.125-8.5
+ 18.125 8.5 10.75 19 3.125 20.5zM320 304q0 10-3.125 20.5t-10.75
+ 19-18.125 8.5-18.125-8.5-10.75-19-3.125-20.5 3.125-20.5 10.75-19
+ 18.125-8.5 18.125 8.5 10.75 19 3.125 20.5zM360
+ 304q0-30-17.25-51t-46.75-21q-10.25 0-48.75 5.25-17.75 2.75-39.25
+ 2.75t-39.25-2.75q-38-5.25-48.75-5.25-29.5 0-46.75 21t-17.25 51q0 22 8
+ 38.375t20.25 25.75 30.5 15 35 7.375 37.25 1.75h42q20.5 0
+ 37.25-1.75t35-7.375 30.5-15 20.25-25.75 8-38.375zM416 260q0 51.75-15.25
+ 82.75-9.5 19.25-26.375 33.25t-35.25 21.5-42.5 11.875-42.875 5.5-41.75
+ 1.125q-19.5 0-35.5-0.75t-36.875-3.125-38.125-7.5-34.25-12.875-30.25-20.25-21.5-28.75q-15.5-30.75-15.5-82.75
+ 0-59.25 34-99-6.75-20.5-6.75-42.5 0-29 12.75-54.5 27 0 47.5 9.875t47.25
+ 30.875q36.75-8.75 77.25-8.75 37 0 70 8 26.25-20.5
+ 46.75-30.25t47.25-9.75q12.75 25.5 12.75 54.5 0 21.75-6.75 42 34 40 34
+ 99.5z" />
+</svg>
+
+ </defs>
+ </svg>
+ <input class="md-toggle" data-md-toggle="drawer" type="checkbox" id="drawer" autocomplete="off">
+ <input class="md-toggle" data-md-toggle="search" type="checkbox" id="search" autocomplete="off">
+ <label class="md-overlay" data-md-component="overlay" for="drawer"></label>
+
+ <a href="#st_geomfromwkt" tabindex="1" class="md-skip">
+ Skip to content
+ </a>
+
+
+ <header class="md-header" data-md-component="header">
+ <nav class="md-header-nav md-grid">
+ <div class="md-flex">
+ <div class="md-flex__cell md-flex__cell--shrink">
+ <a href="../../.." title="GeoSpark" class="md-header-nav__button md-logo">
+
+ <i class="md-icon"></i>
+
+ </a>
+ </div>
+ <div class="md-flex__cell md-flex__cell--shrink">
+ <label class="md-icon md-icon--menu md-header-nav__button" for="drawer"></label>
+ </div>
+ <div class="md-flex__cell md-flex__cell--stretch">
+ <div class="md-flex__ellipsis md-header-nav__title" data-md-component="title">
+
+
+ <span class="md-header-nav__topic">
+ GeoSpark
+ </span>
+ <span class="md-header-nav__topic">
+ Constructor
+ </span>
+
+
+ </div>
+ </div>
+ <div class="md-flex__cell md-flex__cell--shrink">
+
+
+ <label class="md-icon md-icon--search md-header-nav__button" for="search"></label>
+
+<div class="md-search" data-md-component="search" role="dialog">
+ <label class="md-search__overlay" for="search"></label>
+ <div class="md-search__inner" role="search">
+ <form class="md-search__form" name="search">
+ <input type="text" class="md-search__input" name="query" placeholder="Search" autocapitalize="off" autocorrect="off" autocomplete="off" spellcheck="false" data-md-component="query" data-md-state="active">
+ <label class="md-icon md-search__icon" for="search"></label>
+ <button type="reset" class="md-icon md-search__icon" data-md-component="reset" tabindex="-1">
+ 
+ </button>
+ </form>
+ <div class="md-search__output">
+ <div class="md-search__scrollwrap" data-md-scrollfix>
+ <div class="md-search-result" data-md-component="result">
+ <div class="md-search-result__meta">
+ Type to start searching
+ </div>
+ <ol class="md-search-result__list"></ol>
+ </div>
+ </div>
+ </div>
+ </div>
+</div>
+
+
+ </div>
+
+ <div class="md-flex__cell md-flex__cell--shrink">
+ <div class="md-header-nav__source">
+
+
+
+
+
+
+ <a href="https://github.com/DataSystemsLab/GeoSpark/" title="Go to repository" class="md-source" data-md-source="github">
+
+ <div class="md-source__icon">
+ <svg viewBox="0 0 24 24" width="24" height="24">
+ <use xlink:href="#github" width="24" height="24"></use>
+ </svg>
+ </div>
+
+ <div class="md-source__repository">
+ GitHub
+ </div>
+ </a>
+
+ </div>
+ </div>
+
+ </div>
+ </nav>
+</header>
+
+ <div class="md-container">
+
+
+
+
+ <main class="md-main">
+ <div class="md-main__inner md-grid" data-md-component="container">
+
+
+ <div class="md-sidebar md-sidebar--primary" data-md-component="navigation">
+ <div class="md-sidebar__scrollwrap">
+ <div class="md-sidebar__inner">
+ <nav class="md-nav md-nav--primary" data-md-level="0">
+ <label class="md-nav__title md-nav__title--site" for="drawer">
+ <span class="md-nav__button md-logo">
+
+ <i class="md-icon"></i>
+
+ </span>
+ GeoSpark
+ </label>
+
+ <div class="md-nav__source">
+
+
+
+
+
+
+ <a href="https://github.com/DataSystemsLab/GeoSpark/" title="Go to repository" class="md-source" data-md-source="github">
+
+ <div class="md-source__icon">
+ <svg viewBox="0 0 24 24" width="24" height="24">
+ <use xlink:href="#github" width="24" height="24"></use>
+ </svg>
+ </div>
+
+ <div class="md-source__repository">
+ GitHub
+ </div>
+ </a>
+
+ </div>
+
+ <ul class="md-nav__list" data-md-scrollfix>
+
+
+
+
+
+
+ <li class="md-nav__item">
+ <a href="../../.." title="Home" class="md-nav__link">
+ Home
+ </a>
+ </li>
+
+
+
+
+
+
+
+ <li class="md-nav__item md-nav__item--nested">
+
+ <input class="md-toggle md-nav__toggle" data-md-toggle="nav-2" type="checkbox" id="nav-2">
+
+ <label class="md-nav__link" for="nav-2">
+ Download
+ </label>
+ <nav class="md-nav" data-md-component="collapsible" data-md-level="1">
+ <label class="md-nav__title" for="nav-2">
+ Download
+ </label>
+ <ul class="md-nav__list" data-md-scrollfix>
+
+
+
+
+
+
+
+ <li class="md-nav__item">
+ <a href="../../../download/overview/" title="Quick start" class="md-nav__link">
+ Quick start
+ </a>
+ </li>
+
+
+
+
+
+
+
+ <li class="md-nav__item">
+ <a href="../../../download/GeoSpark-All-Modules-Release-notes/" title="Release notes" class="md-nav__link">
+ Release notes
+ </a>
+ </li>
+
+
+
+
+
+
+
+ <li class="md-nav__item">
+ <a href="../../../download/GeoSpark-All-Modules-Maven-Central-Coordinates/" title="Maven Central coordinate" class="md-nav__link">
+ Maven Central coordinate
+ </a>
+ </li>
+
+
+
+
+
+
+
+ <li class="md-nav__item">
+ <a href="../../../download/cluster/" title="Set up Spark cluser" class="md-nav__link">
+ Set up Spark cluser
+ </a>
+ </li>
+
+
+
+
+
+
+
+ <li class="md-nav__item">
+ <a href="../../../download/scalashell/" title="Spark Scala shell" class="md-nav__link">
+ Spark Scala shell
+ </a>
+ </li>
+
+
+
+
+
+
+
+ <li class="md-nav__item">
+ <a href="../../../download/project/" title="Self-contained project" class="md-nav__link">
+ Self-contained project
+ </a>
+ </li>
+
+
+
+
+
+
+
+ <li class="md-nav__item">
+ <a href="../../../download/zeppelin/" title="Install GeoSpark-Zeppelin" class="md-nav__link">
+ Install GeoSpark-Zeppelin
+ </a>
+ </li>
+
+
+
+
+
+
+
+ <li class="md-nav__item">
+ <a href="../../../download/compile/" title="Compile the source code" class="md-nav__link">
+ Compile the source code
+ </a>
+ </li>
+
+
+ </ul>
+ </nav>
+ </li>
+
+
+
+
+
+
+
+ <li class="md-nav__item md-nav__item--nested">
+
+ <input class="md-toggle md-nav__toggle" data-md-toggle="nav-3" type="checkbox" id="nav-3">
+
+ <label class="md-nav__link" for="nav-3">
+ Tutorial
+ </label>
+ <nav class="md-nav" data-md-component="collapsible" data-md-level="1">
+ <label class="md-nav__title" for="nav-3">
+ Tutorial
+ </label>
+ <ul class="md-nav__list" data-md-scrollfix>
+
+
+
+
+
+
+
+ <li class="md-nav__item">
+ <a href="../../../tutorial/rdd/" title="Spatial RDD application" class="md-nav__link">
+ Spatial RDD application
+ </a>
+ </li>
+
+
+
+
+
+
+
+ <li class="md-nav__item">
+ <a href="../../../tutorial/sql/" title="Spatial SQL application" class="md-nav__link">
+ Spatial SQL application
+ </a>
+ </li>
+
+
+
+
+
+
+
+ <li class="md-nav__item">
+ <a href="../../../tutorial/viz/" title="Visualize Spatial DataFrame" class="md-nav__link">
+ Visualize Spatial DataFrame
+ </a>
+ </li>
+
+
+
+
+
+
+
+ <li class="md-nav__item">
+ <a href="../../../tutorial/zeppelin/" title="Run GeoSpark via Zeppelin" class="md-nav__link">
+ Run GeoSpark via Zeppelin
+ </a>
+ </li>
+
+
+
+
+
+
+
+ <li class="md-nav__item">
+ <a href="../../../tutorial/geospark-core-python/" title="Spatial RDD in Python" class="md-nav__link">
+ Spatial RDD in Python
+ </a>
+ </li>
+
+
+
+
+
+
+
+ <li class="md-nav__item">
+ <a href="../../../tutorial/geospark-sql-python/" title="Spatial SQL in Python" class="md-nav__link">
+ Spatial SQL in Python
+ </a>
+ </li>
+
+
+
+
+
+
+
+ <li class="md-nav__item">
+ <a href="../../../tutorial/GeoSpark-Runnable-DEMO/" title="GeoSpark template project" class="md-nav__link">
+ GeoSpark template project
+ </a>
+ </li>
+
+
+
+
+
+
+
+ <li class="md-nav__item">
+ <a href="../../../tutorial/faq/" title="Frequently Asked Questions" class="md-nav__link">
+ Frequently Asked Questions
+ </a>
+ </li>
+
+
+
+
+
+
+
+ <li class="md-nav__item">
+ <a href="../../../tutorial/Advanced-Tutorial-Tune-your-GeoSpark-Application/" title="Tune GeoSpark RDD application" class="md-nav__link">
+ Tune GeoSpark RDD application
+ </a>
+ </li>
+
+
+
+
+
+
+
+ <li class="md-nav__item">
+ <a href="../../../tutorial/benchmark/" title="Benchmark" class="md-nav__link">
+ Benchmark
+ </a>
+ </li>
+
+
+ </ul>
+ </nav>
+ </li>
+
+
+
+
+
+
+
+
+
+ <li class="md-nav__item md-nav__item--active md-nav__item--nested">
+
+ <input class="md-toggle md-nav__toggle" data-md-toggle="nav-4" type="checkbox" id="nav-4" checked>
+
+ <label class="md-nav__link" for="nav-4">
+ API
+ </label>
+ <nav class="md-nav" data-md-component="collapsible" data-md-level="1">
+ <label class="md-nav__title" for="nav-4">
+ API
+ </label>
+ <ul class="md-nav__list" data-md-scrollfix>
+
+
+
+
+
+
+
+ <li class="md-nav__item md-nav__item--nested">
+
+ <input class="md-toggle md-nav__toggle" data-md-toggle="nav-4-1" type="checkbox" id="nav-4-1">
+
+ <label class="md-nav__link" for="nav-4-1">
+ GeoSpark core (RDD)
+ </label>
+ <nav class="md-nav" data-md-component="collapsible" data-md-level="2">
+ <label class="md-nav__title" for="nav-4-1">
+ GeoSpark core (RDD)
+ </label>
+ <ul class="md-nav__list" data-md-scrollfix>
+
+
+
+
+
+
+
+ <li class="md-nav__item">
+ <a href="../../GeoSpark-Scala-and-Java-API/" title="Scala/Java doc" class="md-nav__link">
+ Scala/Java doc
+ </a>
+ </li>
+
+
+
+
+
+
+
+ <li class="md-nav__item">
+ <a href="../../GeoSpark-Python-API/" title="Python doc" class="md-nav__link">
+ Python doc
+ </a>
+ </li>
+
+
+ </ul>
+ </nav>
+ </li>
+
+
+
+
+
+
+
+
+
+ <li class="md-nav__item md-nav__item--active md-nav__item--nested">
+
+ <input class="md-toggle md-nav__toggle" data-md-toggle="nav-4-2" type="checkbox" id="nav-4-2" checked>
+
+ <label class="md-nav__link" for="nav-4-2">
+ GeoSpark SQL
+ </label>
+ <nav class="md-nav" data-md-component="collapsible" data-md-level="2">
+ <label class="md-nav__title" for="nav-4-2">
+ GeoSpark SQL
+ </label>
+ <ul class="md-nav__list" data-md-scrollfix>
+
+
+
+
+
+
+
+ <li class="md-nav__item">
+ <a href="../GeoSparkSQL-javadoc/" title="JavaDoc" class="md-nav__link">
+ JavaDoc
+ </a>
+ </li>
+
+
+
+
+
+
+
+ <li class="md-nav__item">
+ <a href="../GeoSparkSQL-Overview/" title="Quick start" class="md-nav__link">
+ Quick start
+ </a>
+ </li>
+
+
+
+
+
+
+
+
+
+ <li class="md-nav__item md-nav__item--active">
+
+ <input class="md-toggle md-nav__toggle" data-md-toggle="toc" type="checkbox" id="toc">
+
+
+ <label class="md-nav__link md-nav__link--active" for="toc">
+ Constructor
+ </label>
+
+ <a href="./" title="Constructor" class="md-nav__link md-nav__link--active">
+ Constructor
+ </a>
+
+
+<nav class="md-nav md-nav--secondary">
+
+
+
+ <label class="md-nav__title" for="toc">Table of contents</label>
+ <ul class="md-nav__list" data-md-scrollfix>
+
+ <li class="md-nav__item">
+ <a href="#st_geomfromwkt" title="ST_GeomFromWKT" class="md-nav__link">
+ ST_GeomFromWKT
+ </a>
+
+</li>
+
+ <li class="md-nav__item">
+ <a href="#st_geomfromwkb" title="ST_GeomFromWKB" class="md-nav__link">
+ ST_GeomFromWKB
+ </a>
+
+</li>
+
+ <li class="md-nav__item">
+ <a href="#st_geomfromgeojson" title="ST_GeomFromGeoJSON" class="md-nav__link">
+ ST_GeomFromGeoJSON
+ </a>
+
+</li>
+
+ <li class="md-nav__item">
+ <a href="#read-esri-shapefile" title="Read ESRI Shapefile" class="md-nav__link">
+ Read ESRI Shapefile
+ </a>
+
+</li>
+
+ <li class="md-nav__item">
+ <a href="#st_point" title="ST_Point" class="md-nav__link">
+ ST_Point
+ </a>
+
+</li>
+
+ <li class="md-nav__item">
+ <a href="#st_pointfromtext" title="ST_PointFromText" class="md-nav__link">
+ ST_PointFromText
+ </a>
+
+</li>
+
+ <li class="md-nav__item">
+ <a href="#st_polygonfromtext" title="ST_PolygonFromText" class="md-nav__link">
+ ST_PolygonFromText
+ </a>
+
+</li>
+
+ <li class="md-nav__item">
+ <a href="#st_linestringfromtext" title="ST_LineStringFromText" class="md-nav__link">
+ ST_LineStringFromText
+ </a>
+
+</li>
+
+ <li class="md-nav__item">
+ <a href="#st_polygonfromenvelope" title="ST_PolygonFromEnvelope" class="md-nav__link">
+ ST_PolygonFromEnvelope
+ </a>
+
+</li>
+
+ <li class="md-nav__item">
+ <a href="#st_circle" title="ST_Circle" class="md-nav__link">
+ ST_Circle
+ </a>
+
+</li>
+
+
+
+
+
+ </ul>
+
+</nav>
+
+ </li>
+
+
+
+
+
+
+
+ <li class="md-nav__item">
+ <a href="../GeoSparkSQL-Function/" title="Function" class="md-nav__link">
+ Function
+ </a>
+ </li>
+
+
+
+
+
+
+
+ <li class="md-nav__item">
+ <a href="../GeoSparkSQL-Predicate/" title="Predicate" class="md-nav__link">
+ Predicate
+ </a>
+ </li>
+
+
+
+
+
+
+
+ <li class="md-nav__item">
+ <a href="../GeoSparkSQL-AggregateFunction/" title="Aggregate function" class="md-nav__link">
+ Aggregate function
+ </a>
+ </li>
+
+
+
+
+
+
+
+ <li class="md-nav__item">
+ <a href="../GeoSparkSQL-Optimizer/" title="Join query (optimizer)" class="md-nav__link">
+ Join query (optimizer)
+ </a>
+ </li>
+
+
+
+
+
+
+
+ <li class="md-nav__item">
+ <a href="../GeoSparkSQL-Parameter/" title="Parameter" class="md-nav__link">
+ Parameter
+ </a>
+ </li>
+
+
+ </ul>
+ </nav>
+ </li>
+
+
+
+
+
+
+
+ <li class="md-nav__item md-nav__item--nested">
+
+ <input class="md-toggle md-nav__toggle" data-md-toggle="nav-4-3" type="checkbox" id="nav-4-3">
+
+ <label class="md-nav__link" for="nav-4-3">
+ GeoSpark Viz
+ </label>
+ <nav class="md-nav" data-md-component="collapsible" data-md-level="2">
+ <label class="md-nav__title" for="nav-4-3">
+ GeoSpark Viz
+ </label>
+ <ul class="md-nav__list" data-md-scrollfix>
+
+
+
+
+
+
+
+ <li class="md-nav__item">
+ <a href="../../viz/sql/" title="DataFrame/SQL" class="md-nav__link">
+ DataFrame/SQL
+ </a>
+ </li>
+
+
+
+
+
+
+
+ <li class="md-nav__item">
+ <a href="../../viz/Babylon-Scala-and-Java-API/" title="RDD" class="md-nav__link">
+ RDD
+ </a>
+ </li>
+
+
+ </ul>
+ </nav>
+ </li>
+
+
+ </ul>
+ </nav>
+ </li>
+
+
+
+
+
+
+
+ <li class="md-nav__item md-nav__item--nested">
+
+ <input class="md-toggle md-nav__toggle" data-md-toggle="nav-5" type="checkbox" id="nav-5">
+
+ <label class="md-nav__link" for="nav-5">
+ Contributing
+ </label>
+ <nav class="md-nav" data-md-component="collapsible" data-md-level="1">
+ <label class="md-nav__title" for="nav-5">
+ Contributing
+ </label>
+ <ul class="md-nav__list" data-md-scrollfix>
+
+
+
+
+
+
+
+ <li class="md-nav__item">
+ <a href="../../../contribute/rule/" title="Contributing rule" class="md-nav__link">
+ Contributing rule
+ </a>
+ </li>
+
+
+
+
+
+
+
+ <li class="md-nav__item">
+ <a href="../../../contribute/contributor/" title="Contributors and committers" class="md-nav__link">
+ Contributors and committers
+ </a>
+ </li>
+
+
+ </ul>
+ </nav>
+ </li>
+
+
+
+
+
+
+
+ <li class="md-nav__item">
+ <a href="../../../contact/" title="Contact" class="md-nav__link">
+ Contact
+ </a>
+ </li>
+
+
+
+
+
+
+
+ <li class="md-nav__item">
+ <a href="../../../publication/" title="Publications" class="md-nav__link">
+ Publications
+ </a>
+ </li>
+
+
+
+
+
+
+
+ <li class="md-nav__item md-nav__item--nested">
+
+ <input class="md-toggle md-nav__toggle" data-md-toggle="nav-8" type="checkbox" id="nav-8">
+
+ <label class="md-nav__link" for="nav-8">
+ License
+ </label>
+ <nav class="md-nav" data-md-component="collapsible" data-md-level="1">
+ <label class="md-nav__title" for="nav-8">
+ License
+ </label>
+ <ul class="md-nav__list" data-md-scrollfix>
+
+
+
+
+
+
+
+ <li class="md-nav__item">
+ <a href="../../../license/License-before-1-2-0/" title="License-before-1.2.0" class="md-nav__link">
+ License-before-1.2.0
+ </a>
+ </li>
+
+
+
+
+
+
+
+ <li class="md-nav__item">
+ <a href="../../../license/License/" title="License" class="md-nav__link">
+ License
+ </a>
+ </li>
+
+
+ </ul>
+ </nav>
+ </li>
+
+
+ </ul>
+</nav>
+ </div>
+ </div>
+ </div>
+
+
+ <div class="md-sidebar md-sidebar--secondary" data-md-component="toc">
+ <div class="md-sidebar__scrollwrap">
+ <div class="md-sidebar__inner">
+
+<nav class="md-nav md-nav--secondary">
+
+
+
+ <label class="md-nav__title" for="toc">Table of contents</label>
+ <ul class="md-nav__list" data-md-scrollfix>
+
+ <li class="md-nav__item">
+ <a href="#st_geomfromwkt" title="ST_GeomFromWKT" class="md-nav__link">
+ ST_GeomFromWKT
+ </a>
+
+</li>
+
+ <li class="md-nav__item">
+ <a href="#st_geomfromwkb" title="ST_GeomFromWKB" class="md-nav__link">
+ ST_GeomFromWKB
+ </a>
+
+</li>
+
+ <li class="md-nav__item">
+ <a href="#st_geomfromgeojson" title="ST_GeomFromGeoJSON" class="md-nav__link">
+ ST_GeomFromGeoJSON
+ </a>
+
+</li>
+
+ <li class="md-nav__item">
+ <a href="#read-esri-shapefile" title="Read ESRI Shapefile" class="md-nav__link">
+ Read ESRI Shapefile
+ </a>
+
+</li>
+
+ <li class="md-nav__item">
+ <a href="#st_point" title="ST_Point" class="md-nav__link">
+ ST_Point
+ </a>
+
+</li>
+
+ <li class="md-nav__item">
+ <a href="#st_pointfromtext" title="ST_PointFromText" class="md-nav__link">
+ ST_PointFromText
+ </a>
+
+</li>
+
+ <li class="md-nav__item">
+ <a href="#st_polygonfromtext" title="ST_PolygonFromText" class="md-nav__link">
+ ST_PolygonFromText
+ </a>
+
+</li>
+
+ <li class="md-nav__item">
+ <a href="#st_linestringfromtext" title="ST_LineStringFromText" class="md-nav__link">
+ ST_LineStringFromText
+ </a>
+
+</li>
+
+ <li class="md-nav__item">
+ <a href="#st_polygonfromenvelope" title="ST_PolygonFromEnvelope" class="md-nav__link">
+ ST_PolygonFromEnvelope
+ </a>
+
+</li>
+
+ <li class="md-nav__item">
+ <a href="#st_circle" title="ST_Circle" class="md-nav__link">
+ ST_Circle
+ </a>
+
+</li>
+
+
+
+
+
+ </ul>
+
+</nav>
+ </div>
+ </div>
+ </div>
+
+
+ <div class="md-content">
+ <article class="md-content__inner md-typeset">
+
+
+ <a href="https://github.com/DataSystemsLab/GeoSpark/edit/master/docs/api/sql/GeoSparkSQL-Constructor.md" title="Edit this page" class="md-icon md-content__icon"></a>
+
+
+ <h1>Constructor</h1>
+
+ <div class="admonition note">
+<p class="admonition-title">Note</p>
+<p>UUIDs ensure the shape uniqueness of a geometry. It can be any strings. This is only needed when you want to convert an Spatial DataFrame to an Spatial RDD and let each geometry carry some non-spatial attributes (e.g., price, age, ...).</p>
+</div>
+<h2 id="st_geomfromwkt">ST_GeomFromWKT<a class="headerlink" href="#st_geomfromwkt" title="Permanent link">¶</a></h2>
+<p>Introduction: Construct a Geometry from Wkt. Unlimited UUID strings can be appended.</p>
+<p>Format:
+<code class="codehilite">ST_GeomFromWKT (Wkt:string, UUID1, UUID2, ...)</code></p>
+<p>Since: <code class="codehilite">v1.0.0</code></p>
+<p>Spark SQL example:
+<div class="codehilite"><pre><span></span><span class="k">SELECT</span> <span class="n">ST_GeomFromWKT</span><span class="p">(</span><span class="n">polygontable</span><span class="p">.</span><span class="n">_c0</span><span class="p">)</span> <span class="k">AS</span> <span class="n">polygonshape</span>
+<span class="k">FROM</span> <span class="n">polygontable</span>
+</pre></div></p>
+<div class="codehilite"><pre><span></span><span class="k">SELECT</span> <span class="n">ST_GeomFromWKT</span><span class="p">(</span><span class="s1">'POINT(40.7128,-74.0060)'</span><span class="p">)</span> <span class="k">AS</span> <span class="n">geometry</span>
+</pre></div>
+
+<h2 id="st_geomfromwkb">ST_GeomFromWKB<a class="headerlink" href="#st_geomfromwkb" title="Permanent link">¶</a></h2>
+<p>Introduction: Construct a Geometry from WKB string. Unlimited UUID strings can be appended.</p>
+<p>Format:
+<code class="codehilite">ST_GeomFromWKB (Wkb:string, UUID1, UUID2, ...)</code></p>
+<p>Since: <code class="codehilite">v1.2.0</code></p>
+<p>Spark SQL example:
+<div class="codehilite"><pre><span></span><span class="k">SELECT</span> <span class="n">ST_GeomFromWKB</span><span class="p">(</span><span class="n">polygontable</span><span class="p">.</span><span class="n">_c0</span><span class="p">)</span> <span class="k">AS</span> <span class="n">polygonshape</span>
+<span class="k">FROM</span> <span class="n">polygontable</span>
+</pre></div></p>
+<h2 id="st_geomfromgeojson">ST_GeomFromGeoJSON<a class="headerlink" href="#st_geomfromgeojson" title="Permanent link">¶</a></h2>
+<p>Introduction: Construct a Geometry from GeoJson. Unlimited UUID strings can be appended.</p>
+<p>Format: <code class="codehilite">ST_GeomFromGeoJSON (GeoJson:string, UUID1, UUID2, ...)</code></p>
+<p>Since: <code class="codehilite">v1.0.0</code></p>
+<p>Spark SQL example:
+<div class="codehilite"><pre><span></span><span class="k">var</span> <span class="n">polygonJsonDf</span> <span class="k">=</span> <span class="n">sparkSession</span><span class="o">.</span><span class="n">read</span><span class="o">.</span><span class="n">format</span><span class="o">(</span><span class="s">"csv"</span><span class="o">).</span><span class="n">option</span><span class="o">(</span><span class="s">"delimiter"</span><span class="o">,</span><span class="s [...]
+<span class="n">polygonJsonDf</span><span class="o">.</span><span class="n">createOrReplaceTempView</span><span class="o">(</span><span class="s">"polygontable"</span><span class="o">)</span>
+<span class="n">polygonJsonDf</span><span class="o">.</span><span class="n">show</span><span class="o">()</span>
+<span class="k">var</span> <span class="n">polygonDf</span> <span class="k">=</span> <span class="n">sparkSession</span><span class="o">.</span><span class="n">sql</span><span class="o">(</span>
+ <span class="s">"""</span>
+<span class="s"> | SELECT ST_GeomFromGeoJSON(polygontable._c0) AS countyshape</span>
+<span class="s"> | FROM polygontable</span>
+<span class="s"> """</span><span class="o">.</span><span class="n">stripMargin</span><span class="o">)</span>
+<span class="n">polygonDf</span><span class="o">.</span><span class="n">show</span><span class="o">()</span>
+</pre></div></p>
+<div class="admonition warning">
+<p class="admonition-title">Warning</p>
+<p>The way that GeoSparkSQL reads GeoJSON is different from that in SparkSQL</p>
+</div>
+<h2 id="read-esri-shapefile">Read ESRI Shapefile<a class="headerlink" href="#read-esri-shapefile" title="Permanent link">¶</a></h2>
+<p>Introduction: Construct a DataFrame from a Shapefile</p>
+<p>Since: <code class="codehilite">v1.0.0</code></p>
+<p>SparkSQL example:</p>
+<div class="codehilite"><pre><span></span><span class="k">var</span> <span class="n">spatialRDD</span> <span class="k">=</span> <span class="k">new</span> <span class="nc">SpatialRDD</span><span class="o">[</span><span class="kt">Geometry</span><span class="o">]</span>
+<span class="n">spatialRDD</span><span class="o">.</span><span class="n">rawSpatialRDD</span> <span class="k">=</span> <span class="nc">ShapefileReader</span><span class="o">.</span><span class="n">readToGeometryRDD</span><span class="o">(</span><span class="n">sparkSession</span><span class="o">.</span><span class="n">sparkContext</span><span class="o">,</span> <span class="n">shapefileInputLocation</span><span class="o">)</span>
+<span class="k">var</span> <span class="n">rawSpatialDf</span> <span class="k">=</span> <span class="nc">Adapter</span><span class="o">.</span><span class="n">toDf</span><span class="o">(</span><span class="n">spatialRDD</span><span class="o">,</span><span class="n">sparkSession</span><span class="o">)</span>
+<span class="n">rawSpatialDf</span><span class="o">.</span><span class="n">createOrReplaceTempView</span><span class="o">(</span><span class="s">"rawSpatialDf"</span><span class="o">)</span>
+<span class="k">var</span> <span class="n">spatialDf</span> <span class="k">=</span> <span class="n">sparkSession</span><span class="o">.</span><span class="n">sql</span><span class="o">(</span><span class="s">"""</span>
+<span class="s"> | ST_GeomFromWKT(rddshape), _c1, _c2</span>
+<span class="s"> | FROM rawSpatialDf</span>
+<span class="s"> """</span><span class="o">.</span><span class="n">stripMargin</span><span class="o">)</span>
+<span class="n">spatialDf</span><span class="o">.</span><span class="n">show</span><span class="o">()</span>
+<span class="n">spatialDf</span><span class="o">.</span><span class="n">printSchema</span><span class="o">()</span>
+</pre></div>
+
+<div class="admonition note">
+<p class="admonition-title">Note</p>
+<p>The file extensions of .shp, .shx, .dbf must be in lowercase. Assume you have a shape file called <mark>myShapefile</mark>, the file structure should be like this:
+<div class="codehilite"><pre><span></span>- shapefile1
+- shapefile2
+- myshapefile
+ - myshapefile.shp
+ - myshapefile.shx
+ - myshapefile.dbf
+ - myshapefile...
+ - ...
+</pre></div></p>
+</div>
+<div class="admonition warning">
+<p class="admonition-title">Warning</p>
+<p>Please make sure you use <mark>ST_GeomFromWKT</mark> to create Geometry type column otherwise that column cannot be used in GeoSparkSQL.</p>
+</div>
+<p>If the file you are reading contains non-ASCII characters you'll need to explicitly set the encoding
+via <code class="codehilite">geospark.global.charset</code> system property before the call to <code class="codehilite">ShapefileReader.readToGeometryRDD</code>.</p>
+<p>Example:</p>
+<div class="codehilite"><pre><span></span><span class="nc">System</span><span class="o">.</span><span class="n">setProperty</span><span class="o">(</span><span class="s">"geospark.global.charset"</span><span class="o">,</span> <span class="s">"utf8"</span><span class="o">)</span>
+</pre></div>
+
+<h2 id="st_point">ST_Point<a class="headerlink" href="#st_point" title="Permanent link">¶</a></h2>
+<p>Introduction: Construct a Point from X and Y. Unlimited UUID strings can be appended.</p>
+<p>Format: <code class="codehilite">ST_Point (X:decimal, Y:decimal, UUID1, UUID2, ...)</code></p>
+<p>Since: <code class="codehilite">v1.0.0</code></p>
+<p>Spark SQL example:
+<div class="codehilite"><pre><span></span><span class="k">SELECT</span> <span class="n">ST_Point</span><span class="p">(</span><span class="k">CAST</span><span class="p">(</span><span class="n">pointtable</span><span class="p">.</span><span class="n">_c0</span> <span class="k">AS</span> <span class="nb">Decimal</span><span class="p">(</span><span class="mi">24</span><span class="p">,</span><span class="mi">20</span><span class="p">)),</span> <span class="k">CAST</span><span class="p">(</ [...]
+<span class="k">FROM</span> <span class="n">pointtable</span>
+</pre></div></p>
+<h2 id="st_pointfromtext">ST_PointFromText<a class="headerlink" href="#st_pointfromtext" title="Permanent link">¶</a></h2>
+<p>Introduction: Construct a Point from Text, delimited by Delimiter. Unlimited UUID strings can be appended.</p>
+<p>Format: <code class="codehilite">ST_PointFromText (Text:string, Delimiter:char, UUID1, UUID2, ...)</code></p>
+<p>Since: <code class="codehilite">v1.0.0</code></p>
+<p>Spark SQL example:
+<div class="codehilite"><pre><span></span><span class="k">SELECT</span> <span class="n">ST_PointFromText</span><span class="p">(</span><span class="n">pointtable</span><span class="p">.</span><span class="n">_c0</span><span class="p">,</span><span class="s1">','</span><span class="p">)</span> <span class="k">AS</span> <span class="n">pointshape</span>
+<span class="k">FROM</span> <span class="n">pointtable</span>
+</pre></div></p>
+<div class="codehilite"><pre><span></span><span class="k">SELECT</span> <span class="n">ST_PointFromText</span><span class="p">(</span><span class="s1">'40.7128,-74.0060'</span><span class="p">,</span> <span class="s1">','</span><span class="p">)</span> <span class="k">AS</span> <span class="n">pointshape</span>
+</pre></div>
+
+<h2 id="st_polygonfromtext">ST_PolygonFromText<a class="headerlink" href="#st_polygonfromtext" title="Permanent link">¶</a></h2>
+<p>Introduction: Construct a Polygon from Text, delimited by Delimiter. Path must be closed. Unlimited UUID strings can be appended.</p>
+<p>Format: <code class="codehilite">ST_PolygonFromText (Text:string, Delimiter:char, UUID1, UUID2, ...)</code></p>
+<p>Since: <code class="codehilite">v1.0.0</code></p>
+<p>Spark SQL example:
+<div class="codehilite"><pre><span></span><span class="k">SELECT</span> <span class="n">ST_PolygonFromText</span><span class="p">(</span><span class="n">polygontable</span><span class="p">.</span><span class="n">_c0</span><span class="p">,</span><span class="s1">','</span><span class="p">)</span> <span class="k">AS</span> <span class="n">polygonshape</span>
+<span class="k">FROM</span> <span class="n">polygontable</span>
+</pre></div></p>
+<div class="codehilite"><pre><span></span><span class="k">SELECT</span> <span class="n">ST_PolygonFromText</span><span class="p">(</span><span class="s1">'-74.0428197,40.6867969,-74.0421975,40.6921336,-74.0508020,40.6912794,-74.0428197,40.6867969'</span><span class="p">,</span> <span class="s1">','</span><span class="p">)</span> <span class="k">AS</span> <span class="n">polygonshape</span>
+</pre></div>
+
+<h2 id="st_linestringfromtext">ST_LineStringFromText<a class="headerlink" href="#st_linestringfromtext" title="Permanent link">¶</a></h2>
+<p>Introduction: Construct a LineString from Text, delimited by Delimiter. Unlimited UUID strings can be appended.</p>
+<p>Format: <code class="codehilite">ST_LineStringFromText (Text:string, Delimiter:char, UUID1, UUID2, ...)</code></p>
+<p>Since: <code class="codehilite">v1.0.0</code></p>
+<p>Spark SQL example:
+<div class="codehilite"><pre><span></span><span class="k">SELECT</span> <span class="n">ST_LineStringFromText</span><span class="p">(</span><span class="n">linestringtable</span><span class="p">.</span><span class="n">_c0</span><span class="p">,</span><span class="s1">','</span><span class="p">)</span> <span class="k">AS</span> <span class="n">linestringshape</span>
+<span class="k">FROM</span> <span class="n">linestringtable</span>
+</pre></div></p>
+<div class="codehilite"><pre><span></span><span class="k">SELECT</span> <span class="n">ST_LineStringFromText</span><span class="p">(</span><span class="s1">'-74.0428197,40.6867969,-74.0421975,40.6921336,-74.0508020,40.6912794'</span><span class="p">,</span> <span class="s1">','</span><span class="p">)</span> <span class="k">AS</span> <span class="n">linestringshape</span>
+</pre></div>
+
+<h2 id="st_polygonfromenvelope">ST_PolygonFromEnvelope<a class="headerlink" href="#st_polygonfromenvelope" title="Permanent link">¶</a></h2>
+<p>Introduction: Construct a Polygon from MinX, MinY, MaxX, MaxY. Unlimited UUID strings can be appended.</p>
+<p>Format: <code class="codehilite">ST_PolygonFromEnvelope (MinX:decimal, MinY:decimal, MaxX:decimal, MaxY:decimal, UUID1, UUID2, ...)</code></p>
+<p>Since: <code class="codehilite">v1.0.0</code></p>
+<p>Spark SQL example:
+<div class="codehilite"><pre><span></span><span class="k">SELECT</span> <span class="o">*</span>
+<span class="k">FROM</span> <span class="n">pointdf</span>
+<span class="k">WHERE</span> <span class="n">ST_Contains</span><span class="p">(</span><span class="n">ST_PolygonFromEnvelope</span><span class="p">(</span><span class="mi">1</span><span class="p">.</span><span class="mi">0</span><span class="p">,</span><span class="mi">100</span><span class="p">.</span><span class="mi">0</span><span class="p">,</span><span class="mi">1000</span><span class="p">.</span><span class="mi">0</span><span class="p">,</span><span class="mi">1100</span><span cla [...]
+</pre></div></p>
+<h2 id="st_circle">ST_Circle<a class="headerlink" href="#st_circle" title="Permanent link">¶</a></h2>
+<p>Introduction: Construct a Circle from A with a Radius.</p>
+<p>Format: <code class="codehilite">ST_Circle (A:Geometry, Radius:decimal)</code></p>
+<p>Since: <code class="codehilite">v1.0.0</code> - <code class="codehilite">v1.1.3</code></p>
+<p>Spark SQL example:</p>
+<div class="codehilite"><pre><span></span><span class="k">SELECT</span> <span class="n">ST_Circle</span><span class="p">(</span><span class="n">pointdf</span><span class="p">.</span><span class="n">pointshape</span><span class="p">,</span> <span class="mi">1</span><span class="p">.</span><span class="mi">0</span><span class="p">)</span>
+<span class="k">FROM</span> <span class="n">pointdf</span>
+</pre></div>
+
+<div class="admonition note">
+<p class="admonition-title">Note</p>
+<p>GeoSpark doesn't control the radius's unit (degree or meter). It is same with the geometry. To change the geometry's unit, please transform the coordinate reference system. See <a href="../GeoSparkSQL-Function/#st_transform">ST_Transform</a>.</p>
+</div>
+
+
+
+
+
+
+
+
+
+ </article>
+ </div>
+ </div>
+ </main>
+
+
+<footer class="md-footer">
+
+ <div class="md-footer-nav">
+ <nav class="md-footer-nav__inner md-grid">
+
+ <a href="../GeoSparkSQL-Overview/" title="Quick start" class="md-flex md-footer-nav__link md-footer-nav__link--prev" rel="prev">
+ <div class="md-flex__cell md-flex__cell--shrink">
+ <i class="md-icon md-icon--arrow-back md-footer-nav__button"></i>
+ </div>
+ <div class="md-flex__cell md-flex__cell--stretch md-footer-nav__title">
+ <span class="md-flex__ellipsis">
+ <span class="md-footer-nav__direction">
+ Previous
+ </span>
+ Quick start
+ </span>
+ </div>
+ </a>
+
+
+ <a href="../GeoSparkSQL-Function/" title="Function" class="md-flex md-footer-nav__link md-footer-nav__link--next" rel="next">
+ <div class="md-flex__cell md-flex__cell--stretch md-footer-nav__title">
+ <span class="md-flex__ellipsis">
+ <span class="md-footer-nav__direction">
+ Next
+ </span>
+ Function
+ </span>
+ </div>
+ <div class="md-flex__cell md-flex__cell--shrink">
+ <i class="md-icon md-icon--arrow-forward md-footer-nav__button"></i>
+ </div>
+ </a>
+
+ </nav>
+ </div>
+
+ <div class="md-footer-meta md-typeset">
+ <div class="md-footer-meta__inner md-grid">
+ <div class="md-footer-copyright">
+
+ powered by
+ <a href="http://www.mkdocs.org">MkDocs</a>
+ and
+ <a href="https://squidfunk.github.io/mkdocs-material/">
+ Material for MkDocs</a>
+ </div>
+
+
+ <div class="md-footer-social">
+
+ <link rel="stylesheet" href="https://cdnjs.cloudflare.com/ajax/libs/font-awesome/4.7.0/css/font-awesome.min.css">
+
+ <a href="https://github.com/DataSystemsLab/GeoSpark" class="md-footer-social__link fa fa-github"></a>
+
+ <a href="https://twitter.com/GeoSpark_ASU" class="md-footer-social__link fa fa-twitter"></a>
+
+ </div>
+
+
+ </div>
+ </div>
+</footer>
+
+ </div>
+
+ <script src="../../../assets/javascripts/application.8eb9be28.js"></script>
+
+ <script>app.initialize({version:"0.17.2",url:{base:"../../.."}})</script>
+
+
+
+
+ <script>!function(e,a,t,n,o,c,i){e.GoogleAnalyticsObject=o,e.ga=e.ga||function(){(e.ga.q=e.ga.q||[]).push(arguments)},e.ga.l=1*new Date,c=a.createElement(t),i=a.getElementsByTagName(t)[0],c.async=1,c.src="https://www.google-analytics.com/analytics.js",i.parentNode.insertBefore(c,i)}(window,document,"script",0,"ga"),ga("create","UA-64886725-1","www.public.asu.edu/~jiayu2/geospark/index.html"),ga("set","anonymizeIp",!0),ga("send","pageview");var links=document.getElementsByTagName( [...]
+
+
+ </body>
+</html>
\ No newline at end of file
diff --git a/api/sql/GeoSparkSQL-Function/index.html b/api/sql/GeoSparkSQL-Function/index.html
new file mode 100644
index 0000000..15569de
--- /dev/null
+++ b/api/sql/GeoSparkSQL-Function/index.html
@@ -0,0 +1,1869 @@
+
+
+
+
+<!DOCTYPE html>
+<html lang="en" class="no-js">
+ <head>
+
+ <meta charset="utf-8">
+ <meta name="viewport" content="width=device-width,initial-scale=1">
+ <meta http-equiv="x-ua-compatible" content="ie=edge">
+
+
+
+
+ <meta name="lang:clipboard.copy" content="Copy to clipboard">
+
+ <meta name="lang:clipboard.copied" content="Copied to clipboard">
+
+ <meta name="lang:search.language" content="en">
+
+ <meta name="lang:search.pipeline.stopwords" content="True">
+
+ <meta name="lang:search.pipeline.trimmer" content="True">
+
+ <meta name="lang:search.result.none" content="No matching documents">
+
+ <meta name="lang:search.result.one" content="1 matching document">
+
+ <meta name="lang:search.result.other" content="# matching documents">
+
+ <meta name="lang:search.tokenizer" content="[\s\-]+">
+
+ <link rel="shortcut icon" href="../../../assets/images/favicon.png">
+ <meta name="generator" content="mkdocs-0.17.2, mkdocs-material-2.7.1">
+
+
+
+ <title>Function - GeoSpark</title>
+
+
+
+ <link rel="stylesheet" href="../../../assets/stylesheets/application.78aab2dc.css">
+
+ <link rel="stylesheet" href="../../../assets/stylesheets/application-palette.6079476c.css">
+
+
+
+ <script src="../../../assets/javascripts/modernizr.1aa3b519.js"></script>
+
+
+ <link href="https://fonts.gstatic.com" rel="preconnect" crossorigin>
+
+ <link rel="stylesheet" href="https://fonts.googleapis.com/css?family=Roboto:300,400,400i,700|Roboto+Mono">
+ <style>body,input{font-family:"Roboto","Helvetica Neue",Helvetica,Arial,sans-serif}code,kbd,pre{font-family:"Roboto Mono","Courier New",Courier,monospace}</style>
+
+ <link rel="stylesheet" href="https://fonts.googleapis.com/icon?family=Material+Icons">
+
+
+
+ </head>
+
+
+
+ <body dir="ltr" data-md-color-primary="cyan" data-md-color-accent="pink">
+
+ <svg class="md-svg">
+ <defs>
+
+
+ <svg xmlns="http://www.w3.org/2000/svg" width="416" height="448"
+ viewBox="0 0 416 448" id="github">
+ <path fill="currentColor" d="M160 304q0 10-3.125 20.5t-10.75 19-18.125
+ 8.5-18.125-8.5-10.75-19-3.125-20.5 3.125-20.5 10.75-19 18.125-8.5
+ 18.125 8.5 10.75 19 3.125 20.5zM320 304q0 10-3.125 20.5t-10.75
+ 19-18.125 8.5-18.125-8.5-10.75-19-3.125-20.5 3.125-20.5 10.75-19
+ 18.125-8.5 18.125 8.5 10.75 19 3.125 20.5zM360
+ 304q0-30-17.25-51t-46.75-21q-10.25 0-48.75 5.25-17.75 2.75-39.25
+ 2.75t-39.25-2.75q-38-5.25-48.75-5.25-29.5 0-46.75 21t-17.25 51q0 22 8
+ 38.375t20.25 25.75 30.5 15 35 7.375 37.25 1.75h42q20.5 0
+ 37.25-1.75t35-7.375 30.5-15 20.25-25.75 8-38.375zM416 260q0 51.75-15.25
+ 82.75-9.5 19.25-26.375 33.25t-35.25 21.5-42.5 11.875-42.875 5.5-41.75
+ 1.125q-19.5 0-35.5-0.75t-36.875-3.125-38.125-7.5-34.25-12.875-30.25-20.25-21.5-28.75q-15.5-30.75-15.5-82.75
+ 0-59.25 34-99-6.75-20.5-6.75-42.5 0-29 12.75-54.5 27 0 47.5 9.875t47.25
+ 30.875q36.75-8.75 77.25-8.75 37 0 70 8 26.25-20.5
+ 46.75-30.25t47.25-9.75q12.75 25.5 12.75 54.5 0 21.75-6.75 42 34 40 34
+ 99.5z" />
+</svg>
+
+ </defs>
+ </svg>
+ <input class="md-toggle" data-md-toggle="drawer" type="checkbox" id="drawer" autocomplete="off">
+ <input class="md-toggle" data-md-toggle="search" type="checkbox" id="search" autocomplete="off">
+ <label class="md-overlay" data-md-component="overlay" for="drawer"></label>
+
+ <a href="#st_distance" tabindex="1" class="md-skip">
+ Skip to content
+ </a>
+
+
+ <header class="md-header" data-md-component="header">
+ <nav class="md-header-nav md-grid">
+ <div class="md-flex">
+ <div class="md-flex__cell md-flex__cell--shrink">
+ <a href="../../.." title="GeoSpark" class="md-header-nav__button md-logo">
+
+ <i class="md-icon"></i>
+
+ </a>
+ </div>
+ <div class="md-flex__cell md-flex__cell--shrink">
+ <label class="md-icon md-icon--menu md-header-nav__button" for="drawer"></label>
+ </div>
+ <div class="md-flex__cell md-flex__cell--stretch">
+ <div class="md-flex__ellipsis md-header-nav__title" data-md-component="title">
+
+
+ <span class="md-header-nav__topic">
+ GeoSpark
+ </span>
+ <span class="md-header-nav__topic">
+ Function
+ </span>
+
+
+ </div>
+ </div>
+ <div class="md-flex__cell md-flex__cell--shrink">
+
+
+ <label class="md-icon md-icon--search md-header-nav__button" for="search"></label>
+
+<div class="md-search" data-md-component="search" role="dialog">
+ <label class="md-search__overlay" for="search"></label>
+ <div class="md-search__inner" role="search">
+ <form class="md-search__form" name="search">
+ <input type="text" class="md-search__input" name="query" placeholder="Search" autocapitalize="off" autocorrect="off" autocomplete="off" spellcheck="false" data-md-component="query" data-md-state="active">
+ <label class="md-icon md-search__icon" for="search"></label>
+ <button type="reset" class="md-icon md-search__icon" data-md-component="reset" tabindex="-1">
+ 
+ </button>
+ </form>
+ <div class="md-search__output">
+ <div class="md-search__scrollwrap" data-md-scrollfix>
+ <div class="md-search-result" data-md-component="result">
+ <div class="md-search-result__meta">
+ Type to start searching
+ </div>
+ <ol class="md-search-result__list"></ol>
+ </div>
+ </div>
+ </div>
+ </div>
+</div>
+
+
+ </div>
+
+ <div class="md-flex__cell md-flex__cell--shrink">
+ <div class="md-header-nav__source">
+
+
+
+
+
+
+ <a href="https://github.com/DataSystemsLab/GeoSpark/" title="Go to repository" class="md-source" data-md-source="github">
+
+ <div class="md-source__icon">
+ <svg viewBox="0 0 24 24" width="24" height="24">
+ <use xlink:href="#github" width="24" height="24"></use>
+ </svg>
+ </div>
+
+ <div class="md-source__repository">
+ GitHub
+ </div>
+ </a>
+
+ </div>
+ </div>
+
+ </div>
+ </nav>
+</header>
+
+ <div class="md-container">
+
+
+
+
+ <main class="md-main">
+ <div class="md-main__inner md-grid" data-md-component="container">
+
+
+ <div class="md-sidebar md-sidebar--primary" data-md-component="navigation">
+ <div class="md-sidebar__scrollwrap">
+ <div class="md-sidebar__inner">
+ <nav class="md-nav md-nav--primary" data-md-level="0">
+ <label class="md-nav__title md-nav__title--site" for="drawer">
+ <span class="md-nav__button md-logo">
+
+ <i class="md-icon"></i>
+
+ </span>
+ GeoSpark
+ </label>
+
+ <div class="md-nav__source">
+
+
+
+
+
+
+ <a href="https://github.com/DataSystemsLab/GeoSpark/" title="Go to repository" class="md-source" data-md-source="github">
+
+ <div class="md-source__icon">
+ <svg viewBox="0 0 24 24" width="24" height="24">
+ <use xlink:href="#github" width="24" height="24"></use>
+ </svg>
+ </div>
+
+ <div class="md-source__repository">
+ GitHub
+ </div>
+ </a>
+
+ </div>
+
+ <ul class="md-nav__list" data-md-scrollfix>
+
+
+
+
+
+
+ <li class="md-nav__item">
+ <a href="../../.." title="Home" class="md-nav__link">
+ Home
+ </a>
+ </li>
+
+
+
+
+
+
+
+ <li class="md-nav__item md-nav__item--nested">
+
+ <input class="md-toggle md-nav__toggle" data-md-toggle="nav-2" type="checkbox" id="nav-2">
+
+ <label class="md-nav__link" for="nav-2">
+ Download
+ </label>
+ <nav class="md-nav" data-md-component="collapsible" data-md-level="1">
+ <label class="md-nav__title" for="nav-2">
+ Download
+ </label>
+ <ul class="md-nav__list" data-md-scrollfix>
+
+
+
+
+
+
+
+ <li class="md-nav__item">
+ <a href="../../../download/overview/" title="Quick start" class="md-nav__link">
+ Quick start
+ </a>
+ </li>
+
+
+
+
+
+
+
+ <li class="md-nav__item">
+ <a href="../../../download/GeoSpark-All-Modules-Release-notes/" title="Release notes" class="md-nav__link">
+ Release notes
+ </a>
+ </li>
+
+
+
+
+
+
+
+ <li class="md-nav__item">
+ <a href="../../../download/GeoSpark-All-Modules-Maven-Central-Coordinates/" title="Maven Central coordinate" class="md-nav__link">
+ Maven Central coordinate
+ </a>
+ </li>
+
+
+
+
+
+
+
+ <li class="md-nav__item">
+ <a href="../../../download/cluster/" title="Set up Spark cluser" class="md-nav__link">
+ Set up Spark cluser
+ </a>
+ </li>
+
+
+
+
+
+
+
+ <li class="md-nav__item">
+ <a href="../../../download/scalashell/" title="Spark Scala shell" class="md-nav__link">
+ Spark Scala shell
+ </a>
+ </li>
+
+
+
+
+
+
+
+ <li class="md-nav__item">
+ <a href="../../../download/project/" title="Self-contained project" class="md-nav__link">
+ Self-contained project
+ </a>
+ </li>
+
+
+
+
+
+
+
+ <li class="md-nav__item">
+ <a href="../../../download/zeppelin/" title="Install GeoSpark-Zeppelin" class="md-nav__link">
+ Install GeoSpark-Zeppelin
+ </a>
+ </li>
+
+
+
+
+
+
+
+ <li class="md-nav__item">
+ <a href="../../../download/compile/" title="Compile the source code" class="md-nav__link">
+ Compile the source code
+ </a>
+ </li>
+
+
+ </ul>
+ </nav>
+ </li>
+
+
+
+
+
+
+
+ <li class="md-nav__item md-nav__item--nested">
+
+ <input class="md-toggle md-nav__toggle" data-md-toggle="nav-3" type="checkbox" id="nav-3">
+
+ <label class="md-nav__link" for="nav-3">
+ Tutorial
+ </label>
+ <nav class="md-nav" data-md-component="collapsible" data-md-level="1">
+ <label class="md-nav__title" for="nav-3">
+ Tutorial
+ </label>
+ <ul class="md-nav__list" data-md-scrollfix>
+
+
+
+
+
+
+
+ <li class="md-nav__item">
+ <a href="../../../tutorial/rdd/" title="Spatial RDD application" class="md-nav__link">
+ Spatial RDD application
+ </a>
+ </li>
+
+
+
+
+
+
+
+ <li class="md-nav__item">
+ <a href="../../../tutorial/sql/" title="Spatial SQL application" class="md-nav__link">
+ Spatial SQL application
+ </a>
+ </li>
+
+
+
+
+
+
+
+ <li class="md-nav__item">
+ <a href="../../../tutorial/viz/" title="Visualize Spatial DataFrame" class="md-nav__link">
+ Visualize Spatial DataFrame
+ </a>
+ </li>
+
+
+
+
+
+
+
+ <li class="md-nav__item">
+ <a href="../../../tutorial/zeppelin/" title="Run GeoSpark via Zeppelin" class="md-nav__link">
+ Run GeoSpark via Zeppelin
+ </a>
+ </li>
+
+
+
+
+
+
+
+ <li class="md-nav__item">
+ <a href="../../../tutorial/geospark-core-python/" title="Spatial RDD in Python" class="md-nav__link">
+ Spatial RDD in Python
+ </a>
+ </li>
+
+
+
+
+
+
+
+ <li class="md-nav__item">
+ <a href="../../../tutorial/geospark-sql-python/" title="Spatial SQL in Python" class="md-nav__link">
+ Spatial SQL in Python
+ </a>
+ </li>
+
+
+
+
+
+
+
+ <li class="md-nav__item">
+ <a href="../../../tutorial/GeoSpark-Runnable-DEMO/" title="GeoSpark template project" class="md-nav__link">
+ GeoSpark template project
+ </a>
+ </li>
+
+
+
+
+
+
+
+ <li class="md-nav__item">
+ <a href="../../../tutorial/faq/" title="Frequently Asked Questions" class="md-nav__link">
+ Frequently Asked Questions
+ </a>
+ </li>
+
+
+
+
+
+
+
+ <li class="md-nav__item">
+ <a href="../../../tutorial/Advanced-Tutorial-Tune-your-GeoSpark-Application/" title="Tune GeoSpark RDD application" class="md-nav__link">
+ Tune GeoSpark RDD application
+ </a>
+ </li>
+
+
+
+
+
+
+
+ <li class="md-nav__item">
+ <a href="../../../tutorial/benchmark/" title="Benchmark" class="md-nav__link">
+ Benchmark
+ </a>
+ </li>
+
+
+ </ul>
+ </nav>
+ </li>
+
+
+
+
+
+
+
+
+
+ <li class="md-nav__item md-nav__item--active md-nav__item--nested">
+
+ <input class="md-toggle md-nav__toggle" data-md-toggle="nav-4" type="checkbox" id="nav-4" checked>
+
+ <label class="md-nav__link" for="nav-4">
+ API
+ </label>
+ <nav class="md-nav" data-md-component="collapsible" data-md-level="1">
+ <label class="md-nav__title" for="nav-4">
+ API
+ </label>
+ <ul class="md-nav__list" data-md-scrollfix>
+
+
+
+
+
+
+
+ <li class="md-nav__item md-nav__item--nested">
+
+ <input class="md-toggle md-nav__toggle" data-md-toggle="nav-4-1" type="checkbox" id="nav-4-1">
+
+ <label class="md-nav__link" for="nav-4-1">
+ GeoSpark core (RDD)
+ </label>
+ <nav class="md-nav" data-md-component="collapsible" data-md-level="2">
+ <label class="md-nav__title" for="nav-4-1">
+ GeoSpark core (RDD)
+ </label>
+ <ul class="md-nav__list" data-md-scrollfix>
+
+
+
+
+
+
+
+ <li class="md-nav__item">
+ <a href="../../GeoSpark-Scala-and-Java-API/" title="Scala/Java doc" class="md-nav__link">
+ Scala/Java doc
+ </a>
+ </li>
+
+
+
+
+
+
+
+ <li class="md-nav__item">
+ <a href="../../GeoSpark-Python-API/" title="Python doc" class="md-nav__link">
+ Python doc
+ </a>
+ </li>
+
+
+ </ul>
+ </nav>
+ </li>
+
+
+
+
+
+
+
+
+
+ <li class="md-nav__item md-nav__item--active md-nav__item--nested">
+
+ <input class="md-toggle md-nav__toggle" data-md-toggle="nav-4-2" type="checkbox" id="nav-4-2" checked>
+
+ <label class="md-nav__link" for="nav-4-2">
+ GeoSpark SQL
+ </label>
+ <nav class="md-nav" data-md-component="collapsible" data-md-level="2">
+ <label class="md-nav__title" for="nav-4-2">
+ GeoSpark SQL
+ </label>
+ <ul class="md-nav__list" data-md-scrollfix>
+
+
+
+
+
+
+
+ <li class="md-nav__item">
+ <a href="../GeoSparkSQL-javadoc/" title="JavaDoc" class="md-nav__link">
+ JavaDoc
+ </a>
+ </li>
+
+
+
+
+
+
+
+ <li class="md-nav__item">
+ <a href="../GeoSparkSQL-Overview/" title="Quick start" class="md-nav__link">
+ Quick start
+ </a>
+ </li>
+
+
+
+
+
+
+
+ <li class="md-nav__item">
+ <a href="../GeoSparkSQL-Constructor/" title="Constructor" class="md-nav__link">
+ Constructor
+ </a>
+ </li>
+
+
+
+
+
+
+
+
+
+ <li class="md-nav__item md-nav__item--active">
+
+ <input class="md-toggle md-nav__toggle" data-md-toggle="toc" type="checkbox" id="toc">
+
+
+ <label class="md-nav__link md-nav__link--active" for="toc">
+ Function
+ </label>
+
+ <a href="./" title="Function" class="md-nav__link md-nav__link--active">
+ Function
+ </a>
+
+
+<nav class="md-nav md-nav--secondary">
+
+
+
+ <label class="md-nav__title" for="toc">Table of contents</label>
+ <ul class="md-nav__list" data-md-scrollfix>
+
+ <li class="md-nav__item">
+ <a href="#st_distance" title="ST_Distance" class="md-nav__link">
+ ST_Distance
+ </a>
+
+</li>
+
+ <li class="md-nav__item">
+ <a href="#st_convexhull" title="ST_ConvexHull" class="md-nav__link">
+ ST_ConvexHull
+ </a>
+
+</li>
+
+ <li class="md-nav__item">
+ <a href="#st_envelope" title="ST_Envelope" class="md-nav__link">
+ ST_Envelope
+ </a>
+
+</li>
+
+ <li class="md-nav__item">
+ <a href="#st_length" title="ST_Length" class="md-nav__link">
+ ST_Length
+ </a>
+
+</li>
+
+ <li class="md-nav__item">
+ <a href="#st_area" title="ST_Area" class="md-nav__link">
+ ST_Area
+ </a>
+
+</li>
+
+ <li class="md-nav__item">
+ <a href="#st_centroid" title="ST_Centroid" class="md-nav__link">
+ ST_Centroid
+ </a>
+
+</li>
+
+ <li class="md-nav__item">
+ <a href="#st_transform" title="ST_Transform" class="md-nav__link">
+ ST_Transform
+ </a>
+
+</li>
+
+ <li class="md-nav__item">
+ <a href="#st_intersection" title="ST_Intersection" class="md-nav__link">
+ ST_Intersection
+ </a>
+
+</li>
+
+ <li class="md-nav__item">
+ <a href="#st_isvalid" title="ST_IsValid" class="md-nav__link">
+ ST_IsValid
+ </a>
+
+</li>
+
+ <li class="md-nav__item">
+ <a href="#st_makevalid" title="ST_MakeValid" class="md-nav__link">
+ ST_MakeValid
+ </a>
+
+</li>
+
+ <li class="md-nav__item">
+ <a href="#st_precisionreduce" title="ST_PrecisionReduce" class="md-nav__link">
+ ST_PrecisionReduce
+ </a>
+
+</li>
+
+ <li class="md-nav__item">
+ <a href="#st_issimple" title="ST_IsSimple" class="md-nav__link">
+ ST_IsSimple
+ </a>
+
+</li>
+
+ <li class="md-nav__item">
+ <a href="#st_buffer" title="ST_Buffer" class="md-nav__link">
+ ST_Buffer
+ </a>
+
+</li>
+
+ <li class="md-nav__item">
+ <a href="#st_astext" title="ST_AsText" class="md-nav__link">
+ ST_AsText
+ </a>
+
+</li>
+
+ <li class="md-nav__item">
+ <a href="#st_asgeojson" title="ST_AsGeoJSON" class="md-nav__link">
+ ST_AsGeoJSON
+ </a>
+
+</li>
+
+ <li class="md-nav__item">
+ <a href="#st_npoints" title="ST_NPoints" class="md-nav__link">
+ ST_NPoints
+ </a>
+
+</li>
+
+ <li class="md-nav__item">
+ <a href="#st_simplifypreservetopology" title="ST_SimplifyPreserveTopology" class="md-nav__link">
+ ST_SimplifyPreserveTopology
+ </a>
+
+</li>
+
+ <li class="md-nav__item">
+ <a href="#st_geometrytype" title="ST_GeometryType" class="md-nav__link">
+ ST_GeometryType
+ </a>
+
+</li>
+
+ <li class="md-nav__item">
+ <a href="#st_linemerge" title="ST_LineMerge" class="md-nav__link">
+ ST_LineMerge
+ </a>
+
+</li>
+
+ <li class="md-nav__item">
+ <a href="#st_azimuth" title="ST_Azimuth" class="md-nav__link">
+ ST_Azimuth
+ </a>
+
+</li>
+
+ <li class="md-nav__item">
+ <a href="#st_x" title="ST_X" class="md-nav__link">
+ ST_X
+ </a>
+
+</li>
+
+ <li class="md-nav__item">
+ <a href="#st_y" title="ST_Y" class="md-nav__link">
+ ST_Y
+ </a>
+
+</li>
+
+ <li class="md-nav__item">
+ <a href="#st_startpoint" title="ST_StartPoint" class="md-nav__link">
+ ST_StartPoint
+ </a>
+
+</li>
+
+ <li class="md-nav__item">
+ <a href="#st_endpoint" title="ST_EndPoint" class="md-nav__link">
+ ST_EndPoint
+ </a>
+
+</li>
+
+ <li class="md-nav__item">
+ <a href="#st_boundary" title="ST_Boundary" class="md-nav__link">
+ ST_Boundary
+ </a>
+
+</li>
+
+ <li class="md-nav__item">
+ <a href="#st_exteriorring" title="ST_ExteriorRing" class="md-nav__link">
+ ST_ExteriorRing
+ </a>
+
+</li>
+
+ <li class="md-nav__item">
+ <a href="#st_geometryn" title="ST_GeometryN" class="md-nav__link">
+ ST_GeometryN
+ </a>
+
+</li>
+
+ <li class="md-nav__item">
+ <a href="#st_interiorringn" title="ST_InteriorRingN" class="md-nav__link">
+ ST_InteriorRingN
+ </a>
+
+</li>
+
+ <li class="md-nav__item">
+ <a href="#st_dump" title="ST_Dump" class="md-nav__link">
+ ST_Dump
+ </a>
+
+</li>
+
+ <li class="md-nav__item">
+ <a href="#st_dumppoints" title="ST_DumpPoints" class="md-nav__link">
+ ST_DumpPoints
+ </a>
+
+</li>
+
+ <li class="md-nav__item">
+ <a href="#st_isclosed" title="ST_IsClosed" class="md-nav__link">
+ ST_IsClosed
+ </a>
+
+</li>
+
+ <li class="md-nav__item">
+ <a href="#st_numinteriorrings" title="ST_NumInteriorRings" class="md-nav__link">
+ ST_NumInteriorRings
+ </a>
+
+</li>
+
+ <li class="md-nav__item">
+ <a href="#st_addpoint" title="ST_AddPoint" class="md-nav__link">
+ ST_AddPoint
+ </a>
+
+</li>
+
+ <li class="md-nav__item">
+ <a href="#st_removepoint" title="ST_RemovePoint" class="md-nav__link">
+ ST_RemovePoint
+ </a>
+
+</li>
+
+ <li class="md-nav__item">
+ <a href="#st_isring" title="ST_IsRing" class="md-nav__link">
+ ST_IsRing
+ </a>
+
+</li>
+
+ <li class="md-nav__item">
+ <a href="#st_numgeometries" title="ST_NumGeometries" class="md-nav__link">
+ ST_NumGeometries
+ </a>
+
+</li>
+
+
+
+
+
+ </ul>
+
+</nav>
+
+ </li>
+
+
+
+
+
+
+
+ <li class="md-nav__item">
+ <a href="../GeoSparkSQL-Predicate/" title="Predicate" class="md-nav__link">
+ Predicate
+ </a>
+ </li>
+
+
+
+
+
+
+
+ <li class="md-nav__item">
+ <a href="../GeoSparkSQL-AggregateFunction/" title="Aggregate function" class="md-nav__link">
+ Aggregate function
+ </a>
+ </li>
+
+
+
+
+
+
+
+ <li class="md-nav__item">
+ <a href="../GeoSparkSQL-Optimizer/" title="Join query (optimizer)" class="md-nav__link">
+ Join query (optimizer)
+ </a>
+ </li>
+
+
+
+
+
+
+
+ <li class="md-nav__item">
+ <a href="../GeoSparkSQL-Parameter/" title="Parameter" class="md-nav__link">
+ Parameter
+ </a>
+ </li>
+
+
+ </ul>
+ </nav>
+ </li>
+
+
+
+
+
+
+
+ <li class="md-nav__item md-nav__item--nested">
+
+ <input class="md-toggle md-nav__toggle" data-md-toggle="nav-4-3" type="checkbox" id="nav-4-3">
+
+ <label class="md-nav__link" for="nav-4-3">
+ GeoSpark Viz
+ </label>
+ <nav class="md-nav" data-md-component="collapsible" data-md-level="2">
+ <label class="md-nav__title" for="nav-4-3">
+ GeoSpark Viz
+ </label>
+ <ul class="md-nav__list" data-md-scrollfix>
+
+
+
+
+
+
+
+ <li class="md-nav__item">
+ <a href="../../viz/sql/" title="DataFrame/SQL" class="md-nav__link">
+ DataFrame/SQL
+ </a>
+ </li>
+
+
+
+
+
+
+
+ <li class="md-nav__item">
+ <a href="../../viz/Babylon-Scala-and-Java-API/" title="RDD" class="md-nav__link">
+ RDD
+ </a>
+ </li>
+
+
+ </ul>
+ </nav>
+ </li>
+
+
+ </ul>
+ </nav>
+ </li>
+
+
+
+
+
+
+
+ <li class="md-nav__item md-nav__item--nested">
+
+ <input class="md-toggle md-nav__toggle" data-md-toggle="nav-5" type="checkbox" id="nav-5">
+
+ <label class="md-nav__link" for="nav-5">
+ Contributing
+ </label>
+ <nav class="md-nav" data-md-component="collapsible" data-md-level="1">
+ <label class="md-nav__title" for="nav-5">
+ Contributing
+ </label>
+ <ul class="md-nav__list" data-md-scrollfix>
+
+
+
+
+
+
+
+ <li class="md-nav__item">
+ <a href="../../../contribute/rule/" title="Contributing rule" class="md-nav__link">
+ Contributing rule
+ </a>
+ </li>
+
+
+
+
+
+
+
+ <li class="md-nav__item">
+ <a href="../../../contribute/contributor/" title="Contributors and committers" class="md-nav__link">
+ Contributors and committers
+ </a>
+ </li>
+
+
+ </ul>
+ </nav>
+ </li>
+
+
+
+
+
+
+
+ <li class="md-nav__item">
+ <a href="../../../contact/" title="Contact" class="md-nav__link">
+ Contact
+ </a>
+ </li>
+
+
+
+
+
+
+
+ <li class="md-nav__item">
+ <a href="../../../publication/" title="Publications" class="md-nav__link">
+ Publications
+ </a>
+ </li>
+
+
+
+
+
+
+
+ <li class="md-nav__item md-nav__item--nested">
+
+ <input class="md-toggle md-nav__toggle" data-md-toggle="nav-8" type="checkbox" id="nav-8">
+
+ <label class="md-nav__link" for="nav-8">
+ License
+ </label>
+ <nav class="md-nav" data-md-component="collapsible" data-md-level="1">
+ <label class="md-nav__title" for="nav-8">
+ License
+ </label>
+ <ul class="md-nav__list" data-md-scrollfix>
+
+
+
+
+
+
+
+ <li class="md-nav__item">
+ <a href="../../../license/License-before-1-2-0/" title="License-before-1.2.0" class="md-nav__link">
+ License-before-1.2.0
+ </a>
+ </li>
+
+
+
+
+
+
+
+ <li class="md-nav__item">
+ <a href="../../../license/License/" title="License" class="md-nav__link">
+ License
+ </a>
+ </li>
+
+
+ </ul>
+ </nav>
+ </li>
+
+
+ </ul>
+</nav>
+ </div>
+ </div>
+ </div>
+
+
+ <div class="md-sidebar md-sidebar--secondary" data-md-component="toc">
+ <div class="md-sidebar__scrollwrap">
+ <div class="md-sidebar__inner">
+
+<nav class="md-nav md-nav--secondary">
+
+
+
+ <label class="md-nav__title" for="toc">Table of contents</label>
+ <ul class="md-nav__list" data-md-scrollfix>
+
+ <li class="md-nav__item">
+ <a href="#st_distance" title="ST_Distance" class="md-nav__link">
+ ST_Distance
+ </a>
+
+</li>
+
+ <li class="md-nav__item">
+ <a href="#st_convexhull" title="ST_ConvexHull" class="md-nav__link">
+ ST_ConvexHull
+ </a>
+
+</li>
+
+ <li class="md-nav__item">
+ <a href="#st_envelope" title="ST_Envelope" class="md-nav__link">
+ ST_Envelope
+ </a>
+
+</li>
+
+ <li class="md-nav__item">
+ <a href="#st_length" title="ST_Length" class="md-nav__link">
+ ST_Length
+ </a>
+
+</li>
+
+ <li class="md-nav__item">
+ <a href="#st_area" title="ST_Area" class="md-nav__link">
+ ST_Area
+ </a>
+
+</li>
+
+ <li class="md-nav__item">
+ <a href="#st_centroid" title="ST_Centroid" class="md-nav__link">
+ ST_Centroid
+ </a>
+
+</li>
+
+ <li class="md-nav__item">
+ <a href="#st_transform" title="ST_Transform" class="md-nav__link">
+ ST_Transform
+ </a>
+
+</li>
+
+ <li class="md-nav__item">
+ <a href="#st_intersection" title="ST_Intersection" class="md-nav__link">
+ ST_Intersection
+ </a>
+
+</li>
+
+ <li class="md-nav__item">
+ <a href="#st_isvalid" title="ST_IsValid" class="md-nav__link">
+ ST_IsValid
+ </a>
+
+</li>
+
+ <li class="md-nav__item">
+ <a href="#st_makevalid" title="ST_MakeValid" class="md-nav__link">
+ ST_MakeValid
+ </a>
+
+</li>
+
+ <li class="md-nav__item">
+ <a href="#st_precisionreduce" title="ST_PrecisionReduce" class="md-nav__link">
+ ST_PrecisionReduce
+ </a>
+
+</li>
+
+ <li class="md-nav__item">
+ <a href="#st_issimple" title="ST_IsSimple" class="md-nav__link">
+ ST_IsSimple
+ </a>
+
+</li>
+
+ <li class="md-nav__item">
+ <a href="#st_buffer" title="ST_Buffer" class="md-nav__link">
+ ST_Buffer
+ </a>
+
+</li>
+
+ <li class="md-nav__item">
+ <a href="#st_astext" title="ST_AsText" class="md-nav__link">
+ ST_AsText
+ </a>
+
+</li>
+
+ <li class="md-nav__item">
+ <a href="#st_asgeojson" title="ST_AsGeoJSON" class="md-nav__link">
+ ST_AsGeoJSON
+ </a>
+
+</li>
+
+ <li class="md-nav__item">
+ <a href="#st_npoints" title="ST_NPoints" class="md-nav__link">
+ ST_NPoints
+ </a>
+
+</li>
+
+ <li class="md-nav__item">
+ <a href="#st_simplifypreservetopology" title="ST_SimplifyPreserveTopology" class="md-nav__link">
+ ST_SimplifyPreserveTopology
+ </a>
+
+</li>
+
+ <li class="md-nav__item">
+ <a href="#st_geometrytype" title="ST_GeometryType" class="md-nav__link">
+ ST_GeometryType
+ </a>
+
+</li>
+
+ <li class="md-nav__item">
+ <a href="#st_linemerge" title="ST_LineMerge" class="md-nav__link">
+ ST_LineMerge
+ </a>
+
+</li>
+
+ <li class="md-nav__item">
+ <a href="#st_azimuth" title="ST_Azimuth" class="md-nav__link">
+ ST_Azimuth
+ </a>
+
+</li>
+
+ <li class="md-nav__item">
+ <a href="#st_x" title="ST_X" class="md-nav__link">
+ ST_X
+ </a>
+
+</li>
+
+ <li class="md-nav__item">
+ <a href="#st_y" title="ST_Y" class="md-nav__link">
+ ST_Y
+ </a>
+
+</li>
+
+ <li class="md-nav__item">
+ <a href="#st_startpoint" title="ST_StartPoint" class="md-nav__link">
+ ST_StartPoint
+ </a>
+
+</li>
+
+ <li class="md-nav__item">
+ <a href="#st_endpoint" title="ST_EndPoint" class="md-nav__link">
+ ST_EndPoint
+ </a>
+
+</li>
+
+ <li class="md-nav__item">
+ <a href="#st_boundary" title="ST_Boundary" class="md-nav__link">
+ ST_Boundary
+ </a>
+
+</li>
+
+ <li class="md-nav__item">
+ <a href="#st_exteriorring" title="ST_ExteriorRing" class="md-nav__link">
+ ST_ExteriorRing
+ </a>
+
+</li>
+
+ <li class="md-nav__item">
+ <a href="#st_geometryn" title="ST_GeometryN" class="md-nav__link">
+ ST_GeometryN
+ </a>
+
+</li>
+
+ <li class="md-nav__item">
+ <a href="#st_interiorringn" title="ST_InteriorRingN" class="md-nav__link">
+ ST_InteriorRingN
+ </a>
+
+</li>
+
+ <li class="md-nav__item">
+ <a href="#st_dump" title="ST_Dump" class="md-nav__link">
+ ST_Dump
+ </a>
+
+</li>
+
+ <li class="md-nav__item">
+ <a href="#st_dumppoints" title="ST_DumpPoints" class="md-nav__link">
+ ST_DumpPoints
+ </a>
+
+</li>
+
+ <li class="md-nav__item">
+ <a href="#st_isclosed" title="ST_IsClosed" class="md-nav__link">
+ ST_IsClosed
+ </a>
+
+</li>
+
+ <li class="md-nav__item">
+ <a href="#st_numinteriorrings" title="ST_NumInteriorRings" class="md-nav__link">
+ ST_NumInteriorRings
+ </a>
+
+</li>
+
+ <li class="md-nav__item">
+ <a href="#st_addpoint" title="ST_AddPoint" class="md-nav__link">
+ ST_AddPoint
+ </a>
+
+</li>
+
+ <li class="md-nav__item">
+ <a href="#st_removepoint" title="ST_RemovePoint" class="md-nav__link">
+ ST_RemovePoint
+ </a>
+
+</li>
+
+ <li class="md-nav__item">
+ <a href="#st_isring" title="ST_IsRing" class="md-nav__link">
+ ST_IsRing
+ </a>
+
+</li>
+
+ <li class="md-nav__item">
+ <a href="#st_numgeometries" title="ST_NumGeometries" class="md-nav__link">
+ ST_NumGeometries
+ </a>
+
+</li>
+
+
+
+
+
+ </ul>
+
+</nav>
+ </div>
+ </div>
+ </div>
+
+
+ <div class="md-content">
+ <article class="md-content__inner md-typeset">
+
+
+ <a href="https://github.com/DataSystemsLab/GeoSpark/edit/master/docs/api/sql/GeoSparkSQL-Function.md" title="Edit this page" class="md-icon md-content__icon"></a>
+
+
+ <h1>Function</h1>
+
+ <h2 id="st_distance">ST_Distance<a class="headerlink" href="#st_distance" title="Permanent link">¶</a></h2>
+<p>Introduction: Return the Euclidean distance between A and B</p>
+<p>Format: <code class="codehilite">ST_Distance (A:geometry, B:geometry)</code></p>
+<p>Since: <code class="codehilite">v1.0.0</code></p>
+<p>Spark SQL example:
+<div class="codehilite"><pre><span></span><span class="k">SELECT</span> <span class="n">ST_Distance</span><span class="p">(</span><span class="n">polygondf</span><span class="p">.</span><span class="n">countyshape</span><span class="p">,</span> <span class="n">polygondf</span><span class="p">.</span><span class="n">countyshape</span><span class="p">)</span>
+<span class="k">FROM</span> <span class="n">polygondf</span>
+</pre></div></p>
+<h2 id="st_convexhull">ST_ConvexHull<a class="headerlink" href="#st_convexhull" title="Permanent link">¶</a></h2>
+<p>Introduction: Return the Convex Hull of polgyon A</p>
+<p>Format: <code class="codehilite">ST_ConvexHull (A:geometry)</code></p>
+<p>Since: <code class="codehilite">v1.0.0</code></p>
+<p>Spark SQL example:
+<div class="codehilite"><pre><span></span><span class="k">SELECT</span> <span class="n">ST_ConvexHull</span><span class="p">(</span><span class="n">polygondf</span><span class="p">.</span><span class="n">countyshape</span><span class="p">)</span>
+<span class="k">FROM</span> <span class="n">polygondf</span>
+</pre></div></p>
+<h2 id="st_envelope">ST_Envelope<a class="headerlink" href="#st_envelope" title="Permanent link">¶</a></h2>
+<p>Introduction: Return the envelop boundary of A</p>
+<p>Format: <code class="codehilite">ST_Envelope (A:geometry)</code></p>
+<p>Since: <code class="codehilite">v1.0.0</code></p>
+<p>Spark SQL example:</p>
+<div class="codehilite"><pre><span></span><span class="k">SELECT</span> <span class="n">ST_Envelope</span><span class="p">(</span><span class="n">polygondf</span><span class="p">.</span><span class="n">countyshape</span><span class="p">)</span>
+<span class="k">FROM</span> <span class="n">polygondf</span>
+</pre></div>
+
+<h2 id="st_length">ST_Length<a class="headerlink" href="#st_length" title="Permanent link">¶</a></h2>
+<p>Introduction: Return the perimeter of A</p>
+<p>Format: ST_Length (A:geometry)</p>
+<p>Since: <code class="codehilite">v1.0.0</code></p>
+<p>Spark SQL example:
+<div class="codehilite"><pre><span></span><span class="k">SELECT</span> <span class="n">ST_Length</span><span class="p">(</span><span class="n">polygondf</span><span class="p">.</span><span class="n">countyshape</span><span class="p">)</span>
+<span class="k">FROM</span> <span class="n">polygondf</span>
+</pre></div></p>
+<h2 id="st_area">ST_Area<a class="headerlink" href="#st_area" title="Permanent link">¶</a></h2>
+<p>Introduction: Return the area of A</p>
+<p>Format: <code class="codehilite">ST_Area (A:geometry)</code></p>
+<p>Since: <code class="codehilite">v1.0.0</code></p>
+<p>Spark SQL example:
+<div class="codehilite"><pre><span></span><span class="k">SELECT</span> <span class="n">ST_Area</span><span class="p">(</span><span class="n">polygondf</span><span class="p">.</span><span class="n">countyshape</span><span class="p">)</span>
+<span class="k">FROM</span> <span class="n">polygondf</span>
+</pre></div></p>
+<h2 id="st_centroid">ST_Centroid<a class="headerlink" href="#st_centroid" title="Permanent link">¶</a></h2>
+<p>Introduction: Return the centroid point of A</p>
+<p>Format: <code class="codehilite">ST_Centroid (A:geometry)</code></p>
+<p>Since: <code class="codehilite">v1.0.0</code></p>
+<p>Spark SQL example:
+<div class="codehilite"><pre><span></span><span class="k">SELECT</span> <span class="n">ST_Centroid</span><span class="p">(</span><span class="n">polygondf</span><span class="p">.</span><span class="n">countyshape</span><span class="p">)</span>
+<span class="k">FROM</span> <span class="n">polygondf</span>
+</pre></div></p>
+<h2 id="st_transform">ST_Transform<a class="headerlink" href="#st_transform" title="Permanent link">¶</a></h2>
+<p>Introduction:</p>
+<p>Transform the Spatial Reference System / Coordinate Reference System of A, from SourceCRS to TargetCRS</p>
+<div class="admonition note">
+<p class="admonition-title">Note</p>
+<p>By default, <mark>ST_Transform</mark> assumes Longitude/Latitude is your coordinate X/Y. If this is not the case, set UseLongitudeLatitudeOrder as "false".</p>
+</div>
+<div class="admonition note">
+<p class="admonition-title">Note</p>
+<p>If <mark>ST_Transform</mark> throws an Exception called "Bursa wolf parameters required", you need to disable the error notification in ST_Transform. You can append a boolean value at the end.</p>
+</div>
+<p>Format: <code class="codehilite">ST_Transform (A:geometry, SourceCRS:string, TargetCRS:string, [Optional] UseLongitudeLatitudeOrder:Boolean, [Optional] DisableError)</code></p>
+<p>Since: <code class="codehilite">v1.0.0</code></p>
+<p>Spark SQL example (simple):
+<div class="codehilite"><pre><span></span><span class="k">SELECT</span> <span class="n">ST_Transform</span><span class="p">(</span><span class="n">polygondf</span><span class="p">.</span><span class="n">countyshape</span><span class="p">,</span> <span class="s1">'epsg:4326'</span><span class="p">,</span><span class="s1">'epsg:3857'</span><span class="p">)</span>
+<span class="k">FROM</span> <span class="n">polygondf</span>
+</pre></div></p>
+<p>Spark SQL example (with optional parameters):
+<div class="codehilite"><pre><span></span><span class="k">SELECT</span> <span class="n">ST_Transform</span><span class="p">(</span><span class="n">polygondf</span><span class="p">.</span><span class="n">countyshape</span><span class="p">,</span> <span class="s1">'epsg:4326'</span><span class="p">,</span><span class="s1">'epsg:3857'</span><span class="p">,</span><span class="k">true</span><span class="p">,</span> <span class="k">false</span><span class="p">)</span>
+<span class="k">FROM</span> <span class="n">polygondf</span>
+</pre></div></p>
+<div class="admonition note">
+<p class="admonition-title">Note</p>
+<p>The detailed EPSG information can be searched on <a href="https://epsg.io/">EPSG.io</a>.</p>
+</div>
+<h2 id="st_intersection">ST_Intersection<a class="headerlink" href="#st_intersection" title="Permanent link">¶</a></h2>
+<p>Introduction: Return the intersection geometry of A and B</p>
+<p>Format: <code class="codehilite">ST_Intersection (A:geometry, B:geometry)</code></p>
+<p>Since: <code class="codehilite">v1.1.0</code></p>
+<p>Spark SQL example:</p>
+<div class="codehilite"><pre><span></span><span class="k">SELECT</span> <span class="n">ST_Intersection</span><span class="p">(</span><span class="n">polygondf</span><span class="p">.</span><span class="n">countyshape</span><span class="p">,</span> <span class="n">polygondf</span><span class="p">.</span><span class="n">countyshape</span><span class="p">)</span>
+<span class="k">FROM</span> <span class="n">polygondf</span>
+</pre></div>
+
+<h2 id="st_isvalid">ST_IsValid<a class="headerlink" href="#st_isvalid" title="Permanent link">¶</a></h2>
+<p>Introduction: Test if a geometry is well formed</p>
+<p>Format: <code class="codehilite">ST_IsValid (A:geometry)</code></p>
+<p>Since: <code class="codehilite">v1.2.0</code></p>
+<p>Spark SQL example:</p>
+<div class="codehilite"><pre><span></span><span class="k">SELECT</span> <span class="n">ST_IsValid</span><span class="p">(</span><span class="n">polygondf</span><span class="p">.</span><span class="n">countyshape</span><span class="p">)</span>
+<span class="k">FROM</span> <span class="n">polygondf</span>
+</pre></div>
+
+<h2 id="st_makevalid">ST_MakeValid<a class="headerlink" href="#st_makevalid" title="Permanent link">¶</a></h2>
+<p>Introduction: Given an invalid polygon or multipolygon and removeHoles boolean flag,
+ create a valid representation of the geometry.</p>
+<p>Format: <code class="codehilite">ST_MakeValid (A:geometry, removeHoles:Boolean)</code></p>
+<p>Since: <code class="codehilite">v1.2.0</code></p>
+<p>Spark SQL example:</p>
+<div class="codehilite"><pre><span></span><span class="k">SELECT</span> <span class="n">geometryValid</span><span class="p">.</span><span class="n">polygon</span>
+<span class="k">FROM</span> <span class="k">table</span>
+<span class="k">LATERAL</span> <span class="k">VIEW</span> <span class="n">ST_MakeValid</span><span class="p">(</span><span class="n">polygon</span><span class="p">,</span> <span class="k">false</span><span class="p">)</span> <span class="n">geometryValid</span> <span class="k">AS</span> <span class="n">polygon</span>
+</pre></div>
+
+<div class="admonition note">
+<p class="admonition-title">Note</p>
+<p>Might return multiple polygons from a only one invalid polygon
+That's the reason why we need to use the LATERAL VIEW expression</p>
+</div>
+<div class="admonition note">
+<p class="admonition-title">Note</p>
+<p>Throws an exception if the geometry isn't polygon or multipolygon</p>
+</div>
+<h2 id="st_precisionreduce">ST_PrecisionReduce<a class="headerlink" href="#st_precisionreduce" title="Permanent link">¶</a></h2>
+<p>Introduction: Reduce the decimals places in the coordinates of the geometry to the given number of decimal places. The last decimal place will be rounded.</p>
+<p>Format: <code class="codehilite">ST_PrecisionReduce (A:geometry, B:int)</code></p>
+<p>Since: <code class="codehilite">v1.2.0</code></p>
+<p>Spark SQL example:</p>
+<p><div class="codehilite"><pre><span></span><span class="k">SELECT</span> <span class="n">ST_PrecisionReduce</span><span class="p">(</span><span class="n">polygondf</span><span class="p">.</span><span class="n">countyshape</span><span class="p">,</span> <span class="mi">9</span><span class="p">)</span>
+<span class="k">FROM</span> <span class="n">polygondf</span>
+</pre></div>
+The new coordinates will only have 9 decimal places.</p>
+<h2 id="st_issimple">ST_IsSimple<a class="headerlink" href="#st_issimple" title="Permanent link">¶</a></h2>
+<p>Introduction: Test if geometry's only self-intersections are at boundary points.</p>
+<p>Format: <code class="codehilite">ST_IsSimple (A:geometry)</code></p>
+<p>Since: <code class="codehilite">v1.2.0</code></p>
+<p>Spark SQL example:</p>
+<div class="codehilite"><pre><span></span><span class="k">SELECT</span> <span class="n">ST_IsSimple</span><span class="p">(</span><span class="n">polygondf</span><span class="p">.</span><span class="n">countyshape</span><span class="p">)</span>
+<span class="k">FROM</span> <span class="n">polygondf</span>
+</pre></div>
+
+<h2 id="st_buffer">ST_Buffer<a class="headerlink" href="#st_buffer" title="Permanent link">¶</a></h2>
+<p>Introduction: Returns a geometry/geography that represents all points whose distance from this Geometry/geography is less than or equal to distance.</p>
+<p>Format: <code class="codehilite">ST_Buffer (A:geometry, buffer: Double)</code></p>
+<p>Since: <code class="codehilite">v1.2.0</code></p>
+<p>Spark SQL example:
+<div class="codehilite"><pre><span></span><span class="k">SELECT</span> <span class="n">ST_Buffer</span><span class="p">(</span><span class="n">polygondf</span><span class="p">.</span><span class="n">countyshape</span><span class="p">,</span> <span class="mi">1</span><span class="p">)</span>
+<span class="k">FROM</span> <span class="n">polygondf</span>
+</pre></div></p>
+<h2 id="st_astext">ST_AsText<a class="headerlink" href="#st_astext" title="Permanent link">¶</a></h2>
+<p>Introduction: Return the Well-Known Text string representation of a geometry</p>
+<p>Format: <code class="codehilite">ST_AsText (A:geometry)</code></p>
+<p>Since: <code class="codehilite">v1.2.0</code></p>
+<p>Spark SQL example:
+<div class="codehilite"><pre><span></span><span class="k">SELECT</span> <span class="n">ST_AsText</span><span class="p">(</span><span class="n">polygondf</span><span class="p">.</span><span class="n">countyshape</span><span class="p">)</span>
+<span class="k">FROM</span> <span class="n">polygondf</span>
+</pre></div></p>
+<h2 id="st_asgeojson">ST_AsGeoJSON<a class="headerlink" href="#st_asgeojson" title="Permanent link">¶</a></h2>
+<p>Introduction: Return the <a href="https://geojson.org/">GeoJSON</a> string representation of a geometry</p>
+<p>Format: <code class="codehilite">ST_AsGeoJSON (A:geometry)</code></p>
+<p>Since: <code class="codehilite">v1.3.2</code></p>
+<p>Spark SQL example:
+<div class="codehilite"><pre><span></span><span class="k">SELECT</span> <span class="n">ST_AsGeoJSON</span><span class="p">(</span><span class="n">polygondf</span><span class="p">.</span><span class="n">countyshape</span><span class="p">)</span>
+<span class="k">FROM</span> <span class="n">polygondf</span>
+</pre></div></p>
+<h2 id="st_npoints">ST_NPoints<a class="headerlink" href="#st_npoints" title="Permanent link">¶</a></h2>
+<p>Introduction: Return points of the geometry</p>
+<p>Since: <code class="codehilite">v1.2.1</code></p>
+<p>Format: <code class="codehilite">ST_NPoints (A:geometry)</code></p>
+<div class="codehilite"><pre><span></span><span class="k">SELECT</span> <span class="n">ST_NPoints</span><span class="p">(</span><span class="n">polygondf</span><span class="p">.</span><span class="n">countyshape</span><span class="p">)</span>
+<span class="k">FROM</span> <span class="n">polygondf</span>
+</pre></div>
+
+<h2 id="st_simplifypreservetopology">ST_SimplifyPreserveTopology<a class="headerlink" href="#st_simplifypreservetopology" title="Permanent link">¶</a></h2>
+<p>Introduction: Simplifies a geometry and ensures that the result is a valid geometry having the same dimension and number of components as the input,
+ and with the components having the same topological relationship.</p>
+<p>Since: <code class="codehilite">v1.2.1</code></p>
+<p>Format: <code class="codehilite">ST_SimplifyPreserveTopology (A:geometry, distanceTolerance: Double)</code></p>
+<div class="codehilite"><pre><span></span><span class="k">SELECT</span> <span class="n">ST_SimplifyPreserveTopology</span><span class="p">(</span><span class="n">polygondf</span><span class="p">.</span><span class="n">countyshape</span><span class="p">,</span> <span class="mi">10</span><span class="p">.</span><span class="mi">0</span><span class="p">)</span>
+<span class="k">FROM</span> <span class="n">polygondf</span>
+</pre></div>
+
+<h2 id="st_geometrytype">ST_GeometryType<a class="headerlink" href="#st_geometrytype" title="Permanent link">¶</a></h2>
+<p>Introduction: Returns the type of the geometry as a string. EG: 'ST_Linestring', 'ST_Polygon' etc.</p>
+<p>Format: <code class="codehilite">ST_GeometryType (A:geometry)</code></p>
+<p>Since: <code class="codehilite">v1.2.1</code></p>
+<p>Spark SQL example:
+<div class="codehilite"><pre><span></span><span class="k">SELECT</span> <span class="n">ST_GeometryType</span><span class="p">(</span><span class="n">polygondf</span><span class="p">.</span><span class="n">countyshape</span><span class="p">)</span>
+<span class="k">FROM</span> <span class="n">polygondf</span>
+</pre></div></p>
+<h2 id="st_linemerge">ST_LineMerge<a class="headerlink" href="#st_linemerge" title="Permanent link">¶</a></h2>
+<p>Introduction: Returns a LineString formed by sewing together the constituent line work of a MULTILINESTRING.</p>
+<div class="admonition note">
+<p class="admonition-title">Note</p>
+<p>Only works for MULTILINESTRING. Using other geometry will return a GEOMETRYCOLLECTION EMPTY. If the MultiLineString can't be merged, the original MULTILINESTRING is returned.</p>
+</div>
+<p>Format: <code class="codehilite">ST_LineMerge (A:geometry)</code></p>
+<p>Since: <code class="codehilite">v1.3.2</code></p>
+<div class="codehilite"><pre><span></span><span class="k">SELECT</span> <span class="n">ST_LineMerge</span><span class="p">(</span><span class="n">geometry</span><span class="p">)</span>
+<span class="k">FROM</span> <span class="n">df</span>
+</pre></div>
+
+<h2 id="st_azimuth">ST_Azimuth<a class="headerlink" href="#st_azimuth" title="Permanent link">¶</a></h2>
+<p>Introduction: Returns Azimuth for two given points in radians null otherwise.</p>
+<p>Format: <code class="codehilite">ST_Azimuth(pointA: Point, pointB: Point)</code></p>
+<p>Since: <code class="codehilite">v1.3.2</code></p>
+<p>Spark SQL example:
+<div class="codehilite"><pre><span></span><span class="k">SELECT</span> <span class="n">ST_Azimuth</span><span class="p">(</span><span class="n">ST_POINT</span><span class="p">(</span><span class="mi">0</span><span class="p">.</span><span class="mi">0</span> <span class="mi">25</span><span class="p">.</span><span class="mi">0</span><span class="p">),</span> <span class="n">ST_POINT</span><span class="p">(</span><span class="mi">0</span><span class="p">.</span><span class="mi">0</span> <s [...]
+</pre></div></p>
+<p>Output: <code class="codehilite">3.141592653589793</code></p>
+<h2 id="st_x">ST_X<a class="headerlink" href="#st_x" title="Permanent link">¶</a></h2>
+<p>Introduction: Returns X Coordinate of given Point null otherwise.</p>
+<p>Format: <code class="codehilite">ST_X(pointA: Point)</code></p>
+<p>Since: <code class="codehilite">v1.3.2</code></p>
+<p>Spark SQL example:
+<div class="codehilite"><pre><span></span><span class="k">SELECT</span> <span class="n">ST_X</span><span class="p">(</span><span class="n">ST_POINT</span><span class="p">(</span><span class="mi">0</span><span class="p">.</span><span class="mi">0</span> <span class="mi">25</span><span class="p">.</span><span class="mi">0</span><span class="p">))</span>
+</pre></div>
+Output: <code class="codehilite">0.0</code></p>
+<h2 id="st_y">ST_Y<a class="headerlink" href="#st_y" title="Permanent link">¶</a></h2>
+<p>Introduction: Returns Y Coordinate of given Point, null otherwise.</p>
+<p>Format: <code class="codehilite">ST_Y(pointA: Point)</code></p>
+<p>Since: <code class="codehilite">v1.3.2</code></p>
+<p>Spark SQL example:
+<div class="codehilite"><pre><span></span><span class="k">SELECT</span> <span class="n">ST_Y</span><span class="p">(</span><span class="n">ST_POINT</span><span class="p">(</span><span class="mi">0</span><span class="p">.</span><span class="mi">0</span> <span class="mi">25</span><span class="p">.</span><span class="mi">0</span><span class="p">))</span>
+</pre></div></p>
+<p>Output: <code class="codehilite">25.0</code></p>
+<h2 id="st_startpoint">ST_StartPoint<a class="headerlink" href="#st_startpoint" title="Permanent link">¶</a></h2>
+<p>Introduction: Returns first point of given linestring.</p>
+<p>Format: <code class="codehilite">ST_StartPoint(geom: geometry)</code></p>
+<p>Since: <code class="codehilite">v1.3.2</code></p>
+<p>Spark SQL example:
+<div class="codehilite"><pre><span></span><span class="k">SELECT</span> <span class="n">ST_StartPoint</span><span class="p">(</span><span class="n">ST_GeomFromText</span><span class="p">(</span><span class="s1">'LINESTRING(100 150,50 60, 70 80, 160 170)'</span><span class="p">))</span>
+</pre></div></p>
+<p>Output: <code class="codehilite">POINT(100 150)</code></p>
+<h2 id="st_endpoint">ST_EndPoint<a class="headerlink" href="#st_endpoint" title="Permanent link">¶</a></h2>
+<p>Introduction: Returns last point of given linestring.</p>
+<p>Format: <code class="codehilite">ST_EndPoint(geom: geometry)</code></p>
+<p>Since: <code class="codehilite">v1.3.2</code></p>
+<p>Spark SQL example:
+<div class="codehilite"><pre><span></span><span class="k">SELECT</span> <span class="n">ST_EndPoint</span><span class="p">(</span><span class="n">ST_GeomFromText</span><span class="p">(</span><span class="s1">'LINESTRING(100 150,50 60, 70 80, 160 170)'</span><span class="p">))</span>
+</pre></div></p>
+<p>Output: <code class="codehilite">POINT(160 170)</code></p>
+<h2 id="st_boundary">ST_Boundary<a class="headerlink" href="#st_boundary" title="Permanent link">¶</a></h2>
+<p>Introduction: Returns the closure of the combinatorial boundary of this Geometry.</p>
+<p>Format: <code class="codehilite">ST_Boundary(geom: geometry)</code></p>
+<p>Since: <code class="codehilite">v1.3.2</code></p>
+<p>Spark SQL example:
+<div class="codehilite"><pre><span></span><span class="k">SELECT</span> <span class="n">ST_Boundary</span><span class="p">(</span><span class="n">ST_GeomFromText</span><span class="p">(</span><span class="s1">'POLYGON((1 1,0 0, -1 1, 1 1))'</span><span class="p">))</span>
+</pre></div></p>
+<p>Output: <code class="codehilite">LINESTRING (1 1, 0 0, -1 1, 1 1)</code></p>
+<h2 id="st_exteriorring">ST_ExteriorRing<a class="headerlink" href="#st_exteriorring" title="Permanent link">¶</a></h2>
+<p>Introduction: Returns a line string representing the exterior ring of the POLYGON geometry. Return NULL if the geometry is not a polygon.</p>
+<p>Format: <code class="codehilite">ST_ExteriorRing(geom: geometry)</code></p>
+<p>Since: <code class="codehilite">v1.3.2</code></p>
+<p>Spark SQL example:
+<div class="codehilite"><pre><span></span><span class="k">SELECT</span> <span class="n">ST_ExteriorRing</span><span class="p">(</span><span class="n">ST_GeomFromText</span><span class="p">(</span><span class="s1">'POLYGON((0 0 1, 1 1 1, 1 2 1, 1 1 1, 0 0 1))'</span><span class="p">))</span>
+</pre></div></p>
+<p>Output: <code class="codehilite">LINESTRING (0 0, 1 1, 1 2, 1 1, 0 0)</code></p>
+<h2 id="st_geometryn">ST_GeometryN<a class="headerlink" href="#st_geometryn" title="Permanent link">¶</a></h2>
+<p>Introduction: Return the 1-based Nth geometry if the geometry is a GEOMETRYCOLLECTION, (MULTI)POINT, (MULTI)LINESTRING, MULTICURVE or (MULTI)POLYGON Otherwise, return null</p>
+<p>Format: <code class="codehilite">ST_GeometryN(geom: geometry, n: Int)</code></p>
+<p>Since: <code class="codehilite">v1.3.2</code></p>
+<p>Spark SQL example:
+<div class="codehilite"><pre><span></span><span class="k">SELECT</span> <span class="n">ST_GeometryN</span><span class="p">(</span><span class="n">ST_GeomFromText</span><span class="p">(</span><span class="s1">'MULTIPOINT((1 2), (3 4), (5 6), (8 9))'</span><span class="p">),</span> <span class="mi">1</span><span class="p">)</span>
+</pre></div></p>
+<p>Output: <code class="codehilite">POINT (3 4)</code></p>
+<h2 id="st_interiorringn">ST_InteriorRingN<a class="headerlink" href="#st_interiorringn" title="Permanent link">¶</a></h2>
+<p>Introduction: Returns the Nth interior linestring ring of the polygon geometry. Returns NULL if the geometry is not a polygon or the given N is out of range</p>
+<p>Format: <code class="codehilite">ST_InteriorRingN(geom: geometry, n: Int)</code></p>
+<p>Since: <code class="codehilite">v1.3.2</code></p>
+<p>Spark SQL example:
+<div class="codehilite"><pre><span></span><span class="k">SELECT</span> <span class="n">ST_InteriorRingN</span><span class="p">(</span><span class="n">ST_GeomFromText</span><span class="p">(</span><span class="s1">'POLYGON((0 0, 0 5, 5 5, 5 0, 0 0), (1 1, 2 1, 2 2, 1 2, 1 1), (1 3, 2 3, 2 4, 1 4, 1 3), (3 3, 4 3, 4 4, 3 4, 3 3))'</span><span class="p">),</span> <span class="mi">0</span><span class="p">)</span>
+</pre></div></p>
+<p>Output: <code class="codehilite">LINESTRING (1 1, 2 1, 2 2, 1 2, 1 1)</code></p>
+<h2 id="st_dump">ST_Dump<a class="headerlink" href="#st_dump" title="Permanent link">¶</a></h2>
+<p>Introduction: It expands the geometries. If the geometry is simple (Point, Polygon Linestring etc.) it returns the geometry
+itself, if the geometry is collection or multi it returns record for each of collection components.</p>
+<p>Format: <code class="codehilite">ST_Dump(geom: geometry)</code></p>
+<p>Since: <code class="codehilite">v1.3.2</code></p>
+<p>Spark SQL example:
+<div class="codehilite"><pre><span></span><span class="k">SELECT</span> <span class="n">ST_Dump</span><span class="p">(</span><span class="n">ST_GeomFromText</span><span class="p">(</span><span class="s1">'MULTIPOINT ((10 40), (40 30), (20 20), (30 10))'</span><span class="p">))</span>
+</pre></div></p>
+<p>Output: [POINT (10 40), POINT (40 30), POINT (20 20), POINT (30 10)]</p>
+<h2 id="st_dumppoints">ST_DumpPoints<a class="headerlink" href="#st_dumppoints" title="Permanent link">¶</a></h2>
+<p>Introduction: Returns list of Points which geometry consists of.</p>
+<p>Format: <code class="codehilite">ST_DumpPoints(geom: geometry)</code></p>
+<p>Since: <code class="codehilite">v1.3.2</code></p>
+<p>Spark SQL example:
+<div class="codehilite"><pre><span></span><span class="k">SELECT</span> <span class="n">ST_DumpPoints</span><span class="p">(</span><span class="n">ST_GeomFromText</span><span class="p">(</span><span class="s1">'LINESTRING (0 0, 1 1, 1 0)'</span><span class="p">))</span>
+</pre></div></p>
+<p>Output: <code class="codehilite">[POINT (0 0), POINT (0 1), POINT (1 1), POINT (1 0), POINT (0 0)]</code></p>
+<h2 id="st_isclosed">ST_IsClosed<a class="headerlink" href="#st_isclosed" title="Permanent link">¶</a></h2>
+<p>Introduction: RETURNS true if the LINESTRING start and end point are the same.</p>
+<p>Format: <code class="codehilite">ST_IsClosed(geom: geometry)</code></p>
+<p>Since: <code class="codehilite">v1.3.2</code></p>
+<p>Spark SQL example:
+<div class="codehilite"><pre><span></span><span class="k">SELECT</span> <span class="n">ST_IsClosed</span><span class="p">(</span><span class="n">ST_GeomFromText</span><span class="p">(</span><span class="s1">'LINESTRING(0 0, 1 1, 1 0)'</span><span class="p">))</span>
+</pre></div></p>
+<p>Output: <code class="codehilite">false</code></p>
+<h2 id="st_numinteriorrings">ST_NumInteriorRings<a class="headerlink" href="#st_numinteriorrings" title="Permanent link">¶</a></h2>
+<p>Introduction: RETURNS number of interior rings of polygon geometries.</p>
+<p>Format: <code class="codehilite">ST_NumInteriorRings(geom: geometry)</code></p>
+<p>Since: <code class="codehilite">v1.3.2</code></p>
+<p>Spark SQL example:
+<div class="codehilite"><pre><span></span><span class="k">SELECT</span> <span class="n">ST_NumInteriorRings</span><span class="p">(</span><span class="n">ST_GeomFromText</span><span class="p">(</span><span class="s1">'POLYGON ((0 0, 0 5, 5 5, 5 0, 0 0), (1 1, 2 1, 2 2, 1 2, 1 1))'</span><span class="p">))</span>
+</pre></div></p>
+<p>Output: <code class="codehilite">1</code></p>
+<h2 id="st_addpoint">ST_AddPoint<a class="headerlink" href="#st_addpoint" title="Permanent link">¶</a></h2>
+<p>Introduction: RETURN Linestring with additional point at the given index, if position is not available the point will be added at the end of line.</p>
+<p>Format: <code class="codehilite">ST_AddPoint(geom: geometry, point: geometry, position: integer)</code></p>
+<p>Format: <code class="codehilite">ST_AddPoint(geom: geometry, point: geometry)</code></p>
+<p>Since: <code class="codehilite">v1.3.2</code></p>
+<p>Spark SQL example:
+<div class="codehilite"><pre><span></span><span class="k">SELECT</span> <span class="n">ST_AddPoint</span><span class="p">(</span><span class="n">ST_GeomFromText</span><span class="p">(</span><span class="ss">"LINESTRING(0 0, 1 1, 1 0)"</span><span class="p">),</span> <span class="n">ST_GeomFromText</span><span class="p">(</span><span class="ss">"Point(21 52)"</span><span class="p">),</span> <span class="mi">1</span><span class="p">)</span>
+
+<span class="k">SELECT</span> <span class="n">ST_AddPoint</span><span class="p">(</span><span class="n">ST_GeomFromText</span><span class="p">(</span><span class="ss">"Linestring(0 0, 1 1, 1 0)"</span><span class="p">),</span> <span class="n">ST_GeomFromText</span><span class="p">(</span><span class="ss">"Point(21 52)"</span><span class="p">))</span>
+</pre></div></p>
+<p>Output:
+<div class="codehilite"><pre><span></span>LINESTRING(0 0, 21 52, 1 1, 1 0)
+LINESTRING(0 0, 1 1, 1 0, 21 52)
+</pre></div></p>
+<h2 id="st_removepoint">ST_RemovePoint<a class="headerlink" href="#st_removepoint" title="Permanent link">¶</a></h2>
+<p>Introduction: RETURN Line with removed point at given index, position can be omitted and then last one will be removed.</p>
+<p>Format: <code class="codehilite">ST_RemovePoint(geom: geometry, position: integer)</code></p>
+<p>Format: <code class="codehilite">ST_RemovePoint(geom: geometry)</code></p>
+<p>Since: <code class="codehilite">v1.3.2</code></p>
+<p>Spark SQL example:
+<div class="codehilite"><pre><span></span><span class="k">SELECT</span> <span class="n">ST_RemovePoint</span><span class="p">(</span><span class="n">ST_GeomFromText</span><span class="p">(</span><span class="ss">"LINESTRING(0 0, 1 1, 1 0)"</span><span class="p">),</span> <span class="mi">1</span><span class="p">)</span>
+</pre></div></p>
+<p>Output: <code class="codehilite">LINESTRING(0 0, 1 0)</code></p>
+<h2 id="st_isring">ST_IsRing<a class="headerlink" href="#st_isring" title="Permanent link">¶</a></h2>
+<p>Introduction: RETURN true if LINESTRING is ST_IsClosed and ST_IsSimple.</p>
+<p>Format: <code class="codehilite">ST_IsRing(geom: geometry)</code></p>
+<p>Since: <code class="codehilite">v1.3.2</code></p>
+<p>Spark SQL example:
+<div class="codehilite"><pre><span></span><span class="k">SELECT</span> <span class="n">ST_IsRing</span><span class="p">(</span><span class="n">ST_GeomFromText</span><span class="p">(</span><span class="ss">"LINESTRING(0 0, 0 1, 1 1, 1 0, 0 0)"</span><span class="p">))</span>
+</pre></div></p>
+<p>Output: <code class="codehilite">true</code></p>
+<h2 id="st_numgeometries">ST_NumGeometries<a class="headerlink" href="#st_numgeometries" title="Permanent link">¶</a></h2>
+<p>Introduction: Returns the number of Geometries. If geometry is a GEOMETRYCOLLECTION (or MULTI*) return the number of geometries, for single geometries will return 1.</p>
+<p>Format: <code class="codehilite">ST_NumGeometries (A:geometry)</code></p>
+<p>Since: <code class="codehilite">v1.3.2</code></p>
+<div class="codehilite"><pre><span></span><span class="k">SELECT</span> <span class="n">ST_NumGeometries</span><span class="p">(</span><span class="n">df</span><span class="p">.</span><span class="n">geometry</span><span class="p">)</span>
+<span class="k">FROM</span> <span class="n">df</span>
+</pre></div>
+
+
+
+
+
+
+
+
+
+ </article>
+ </div>
+ </div>
+ </main>
+
+
+<footer class="md-footer">
+
+ <div class="md-footer-nav">
+ <nav class="md-footer-nav__inner md-grid">
+
+ <a href="../GeoSparkSQL-Constructor/" title="Constructor" class="md-flex md-footer-nav__link md-footer-nav__link--prev" rel="prev">
+ <div class="md-flex__cell md-flex__cell--shrink">
+ <i class="md-icon md-icon--arrow-back md-footer-nav__button"></i>
+ </div>
+ <div class="md-flex__cell md-flex__cell--stretch md-footer-nav__title">
+ <span class="md-flex__ellipsis">
+ <span class="md-footer-nav__direction">
+ Previous
+ </span>
+ Constructor
+ </span>
+ </div>
+ </a>
+
+
+ <a href="../GeoSparkSQL-Predicate/" title="Predicate" class="md-flex md-footer-nav__link md-footer-nav__link--next" rel="next">
+ <div class="md-flex__cell md-flex__cell--stretch md-footer-nav__title">
+ <span class="md-flex__ellipsis">
+ <span class="md-footer-nav__direction">
+ Next
+ </span>
+ Predicate
+ </span>
+ </div>
+ <div class="md-flex__cell md-flex__cell--shrink">
+ <i class="md-icon md-icon--arrow-forward md-footer-nav__button"></i>
+ </div>
+ </a>
+
+ </nav>
+ </div>
+
+ <div class="md-footer-meta md-typeset">
+ <div class="md-footer-meta__inner md-grid">
+ <div class="md-footer-copyright">
+
+ powered by
+ <a href="http://www.mkdocs.org">MkDocs</a>
+ and
+ <a href="https://squidfunk.github.io/mkdocs-material/">
+ Material for MkDocs</a>
+ </div>
+
+
+ <div class="md-footer-social">
+
+ <link rel="stylesheet" href="https://cdnjs.cloudflare.com/ajax/libs/font-awesome/4.7.0/css/font-awesome.min.css">
+
+ <a href="https://github.com/DataSystemsLab/GeoSpark" class="md-footer-social__link fa fa-github"></a>
+
+ <a href="https://twitter.com/GeoSpark_ASU" class="md-footer-social__link fa fa-twitter"></a>
+
+ </div>
+
+
+ </div>
+ </div>
+</footer>
+
+ </div>
+
+ <script src="../../../assets/javascripts/application.8eb9be28.js"></script>
+
+ <script>app.initialize({version:"0.17.2",url:{base:"../../.."}})</script>
+
+
+
+
+ <script>!function(e,a,t,n,o,c,i){e.GoogleAnalyticsObject=o,e.ga=e.ga||function(){(e.ga.q=e.ga.q||[]).push(arguments)},e.ga.l=1*new Date,c=a.createElement(t),i=a.getElementsByTagName(t)[0],c.async=1,c.src="https://www.google-analytics.com/analytics.js",i.parentNode.insertBefore(c,i)}(window,document,"script",0,"ga"),ga("create","UA-64886725-1","www.public.asu.edu/~jiayu2/geospark/index.html"),ga("set","anonymizeIp",!0),ga("send","pageview");var links=document.getElementsByTagName( [...]
+
+
+ </body>
+</html>
\ No newline at end of file
diff --git a/api/sql/GeoSparkSQL-Optimizer/index.html b/api/sql/GeoSparkSQL-Optimizer/index.html
new file mode 100644
index 0000000..91e9081
--- /dev/null
+++ b/api/sql/GeoSparkSQL-Optimizer/index.html
@@ -0,0 +1,1155 @@
+
+
+
+
+<!DOCTYPE html>
+<html lang="en" class="no-js">
+ <head>
+
+ <meta charset="utf-8">
+ <meta name="viewport" content="width=device-width,initial-scale=1">
+ <meta http-equiv="x-ua-compatible" content="ie=edge">
+
+
+
+
+ <meta name="lang:clipboard.copy" content="Copy to clipboard">
+
+ <meta name="lang:clipboard.copied" content="Copied to clipboard">
+
+ <meta name="lang:search.language" content="en">
+
+ <meta name="lang:search.pipeline.stopwords" content="True">
+
+ <meta name="lang:search.pipeline.trimmer" content="True">
+
+ <meta name="lang:search.result.none" content="No matching documents">
+
+ <meta name="lang:search.result.one" content="1 matching document">
+
+ <meta name="lang:search.result.other" content="# matching documents">
+
+ <meta name="lang:search.tokenizer" content="[\s\-]+">
+
+ <link rel="shortcut icon" href="../../../assets/images/favicon.png">
+ <meta name="generator" content="mkdocs-0.17.2, mkdocs-material-2.7.1">
+
+
+
+ <title>Join query (optimizer) - GeoSpark</title>
+
+
+
+ <link rel="stylesheet" href="../../../assets/stylesheets/application.78aab2dc.css">
+
+ <link rel="stylesheet" href="../../../assets/stylesheets/application-palette.6079476c.css">
+
+
+
+ <script src="../../../assets/javascripts/modernizr.1aa3b519.js"></script>
+
+
+ <link href="https://fonts.gstatic.com" rel="preconnect" crossorigin>
+
+ <link rel="stylesheet" href="https://fonts.googleapis.com/css?family=Roboto:300,400,400i,700|Roboto+Mono">
+ <style>body,input{font-family:"Roboto","Helvetica Neue",Helvetica,Arial,sans-serif}code,kbd,pre{font-family:"Roboto Mono","Courier New",Courier,monospace}</style>
+
+ <link rel="stylesheet" href="https://fonts.googleapis.com/icon?family=Material+Icons">
+
+
+
+ </head>
+
+
+
+ <body dir="ltr" data-md-color-primary="cyan" data-md-color-accent="pink">
+
+ <svg class="md-svg">
+ <defs>
+
+
+ <svg xmlns="http://www.w3.org/2000/svg" width="416" height="448"
+ viewBox="0 0 416 448" id="github">
+ <path fill="currentColor" d="M160 304q0 10-3.125 20.5t-10.75 19-18.125
+ 8.5-18.125-8.5-10.75-19-3.125-20.5 3.125-20.5 10.75-19 18.125-8.5
+ 18.125 8.5 10.75 19 3.125 20.5zM320 304q0 10-3.125 20.5t-10.75
+ 19-18.125 8.5-18.125-8.5-10.75-19-3.125-20.5 3.125-20.5 10.75-19
+ 18.125-8.5 18.125 8.5 10.75 19 3.125 20.5zM360
+ 304q0-30-17.25-51t-46.75-21q-10.25 0-48.75 5.25-17.75 2.75-39.25
+ 2.75t-39.25-2.75q-38-5.25-48.75-5.25-29.5 0-46.75 21t-17.25 51q0 22 8
+ 38.375t20.25 25.75 30.5 15 35 7.375 37.25 1.75h42q20.5 0
+ 37.25-1.75t35-7.375 30.5-15 20.25-25.75 8-38.375zM416 260q0 51.75-15.25
+ 82.75-9.5 19.25-26.375 33.25t-35.25 21.5-42.5 11.875-42.875 5.5-41.75
+ 1.125q-19.5 0-35.5-0.75t-36.875-3.125-38.125-7.5-34.25-12.875-30.25-20.25-21.5-28.75q-15.5-30.75-15.5-82.75
+ 0-59.25 34-99-6.75-20.5-6.75-42.5 0-29 12.75-54.5 27 0 47.5 9.875t47.25
+ 30.875q36.75-8.75 77.25-8.75 37 0 70 8 26.25-20.5
+ 46.75-30.25t47.25-9.75q12.75 25.5 12.75 54.5 0 21.75-6.75 42 34 40 34
+ 99.5z" />
+</svg>
+
+ </defs>
+ </svg>
+ <input class="md-toggle" data-md-toggle="drawer" type="checkbox" id="drawer" autocomplete="off">
+ <input class="md-toggle" data-md-toggle="search" type="checkbox" id="search" autocomplete="off">
+ <label class="md-overlay" data-md-component="overlay" for="drawer"></label>
+
+ <a href="#geosparksql-query-optimizer" tabindex="1" class="md-skip">
+ Skip to content
+ </a>
+
+
+ <header class="md-header" data-md-component="header">
+ <nav class="md-header-nav md-grid">
+ <div class="md-flex">
+ <div class="md-flex__cell md-flex__cell--shrink">
+ <a href="../../.." title="GeoSpark" class="md-header-nav__button md-logo">
+
+ <i class="md-icon"></i>
+
+ </a>
+ </div>
+ <div class="md-flex__cell md-flex__cell--shrink">
+ <label class="md-icon md-icon--menu md-header-nav__button" for="drawer"></label>
+ </div>
+ <div class="md-flex__cell md-flex__cell--stretch">
+ <div class="md-flex__ellipsis md-header-nav__title" data-md-component="title">
+
+
+ <span class="md-header-nav__topic">
+ GeoSpark
+ </span>
+ <span class="md-header-nav__topic">
+ Join query (optimizer)
+ </span>
+
+
+ </div>
+ </div>
+ <div class="md-flex__cell md-flex__cell--shrink">
+
+
+ <label class="md-icon md-icon--search md-header-nav__button" for="search"></label>
+
+<div class="md-search" data-md-component="search" role="dialog">
+ <label class="md-search__overlay" for="search"></label>
+ <div class="md-search__inner" role="search">
+ <form class="md-search__form" name="search">
+ <input type="text" class="md-search__input" name="query" placeholder="Search" autocapitalize="off" autocorrect="off" autocomplete="off" spellcheck="false" data-md-component="query" data-md-state="active">
+ <label class="md-icon md-search__icon" for="search"></label>
+ <button type="reset" class="md-icon md-search__icon" data-md-component="reset" tabindex="-1">
+ 
+ </button>
+ </form>
+ <div class="md-search__output">
+ <div class="md-search__scrollwrap" data-md-scrollfix>
+ <div class="md-search-result" data-md-component="result">
+ <div class="md-search-result__meta">
+ Type to start searching
+ </div>
+ <ol class="md-search-result__list"></ol>
+ </div>
+ </div>
+ </div>
+ </div>
+</div>
+
+
+ </div>
+
+ <div class="md-flex__cell md-flex__cell--shrink">
+ <div class="md-header-nav__source">
+
+
+
+
+
+
+ <a href="https://github.com/DataSystemsLab/GeoSpark/" title="Go to repository" class="md-source" data-md-source="github">
+
+ <div class="md-source__icon">
+ <svg viewBox="0 0 24 24" width="24" height="24">
+ <use xlink:href="#github" width="24" height="24"></use>
+ </svg>
+ </div>
+
+ <div class="md-source__repository">
+ GitHub
+ </div>
+ </a>
+
+ </div>
+ </div>
+
+ </div>
+ </nav>
+</header>
+
+ <div class="md-container">
+
+
+
+
+ <main class="md-main">
+ <div class="md-main__inner md-grid" data-md-component="container">
+
+
+ <div class="md-sidebar md-sidebar--primary" data-md-component="navigation">
+ <div class="md-sidebar__scrollwrap">
+ <div class="md-sidebar__inner">
+ <nav class="md-nav md-nav--primary" data-md-level="0">
+ <label class="md-nav__title md-nav__title--site" for="drawer">
+ <span class="md-nav__button md-logo">
+
+ <i class="md-icon"></i>
+
+ </span>
+ GeoSpark
+ </label>
+
+ <div class="md-nav__source">
+
+
+
+
+
+
+ <a href="https://github.com/DataSystemsLab/GeoSpark/" title="Go to repository" class="md-source" data-md-source="github">
+
+ <div class="md-source__icon">
+ <svg viewBox="0 0 24 24" width="24" height="24">
+ <use xlink:href="#github" width="24" height="24"></use>
+ </svg>
+ </div>
+
+ <div class="md-source__repository">
+ GitHub
+ </div>
+ </a>
+
+ </div>
+
+ <ul class="md-nav__list" data-md-scrollfix>
+
+
+
+
+
+
+ <li class="md-nav__item">
+ <a href="../../.." title="Home" class="md-nav__link">
+ Home
+ </a>
+ </li>
+
+
+
+
+
+
+
+ <li class="md-nav__item md-nav__item--nested">
+
+ <input class="md-toggle md-nav__toggle" data-md-toggle="nav-2" type="checkbox" id="nav-2">
+
+ <label class="md-nav__link" for="nav-2">
+ Download
+ </label>
+ <nav class="md-nav" data-md-component="collapsible" data-md-level="1">
+ <label class="md-nav__title" for="nav-2">
+ Download
+ </label>
+ <ul class="md-nav__list" data-md-scrollfix>
+
+
+
+
+
+
+
+ <li class="md-nav__item">
+ <a href="../../../download/overview/" title="Quick start" class="md-nav__link">
+ Quick start
+ </a>
+ </li>
+
+
+
+
+
+
+
+ <li class="md-nav__item">
+ <a href="../../../download/GeoSpark-All-Modules-Release-notes/" title="Release notes" class="md-nav__link">
+ Release notes
+ </a>
+ </li>
+
+
+
+
+
+
+
+ <li class="md-nav__item">
+ <a href="../../../download/GeoSpark-All-Modules-Maven-Central-Coordinates/" title="Maven Central coordinate" class="md-nav__link">
+ Maven Central coordinate
+ </a>
+ </li>
+
+
+
+
+
+
+
+ <li class="md-nav__item">
+ <a href="../../../download/cluster/" title="Set up Spark cluser" class="md-nav__link">
+ Set up Spark cluser
+ </a>
+ </li>
+
+
+
+
+
+
+
+ <li class="md-nav__item">
+ <a href="../../../download/scalashell/" title="Spark Scala shell" class="md-nav__link">
+ Spark Scala shell
+ </a>
+ </li>
+
+
+
+
+
+
+
+ <li class="md-nav__item">
+ <a href="../../../download/project/" title="Self-contained project" class="md-nav__link">
+ Self-contained project
+ </a>
+ </li>
+
+
+
+
+
+
+
+ <li class="md-nav__item">
+ <a href="../../../download/zeppelin/" title="Install GeoSpark-Zeppelin" class="md-nav__link">
+ Install GeoSpark-Zeppelin
+ </a>
+ </li>
+
+
+
+
+
+
+
+ <li class="md-nav__item">
+ <a href="../../../download/compile/" title="Compile the source code" class="md-nav__link">
+ Compile the source code
+ </a>
+ </li>
+
+
+ </ul>
+ </nav>
+ </li>
+
+
+
+
+
+
+
+ <li class="md-nav__item md-nav__item--nested">
+
+ <input class="md-toggle md-nav__toggle" data-md-toggle="nav-3" type="checkbox" id="nav-3">
+
+ <label class="md-nav__link" for="nav-3">
+ Tutorial
+ </label>
+ <nav class="md-nav" data-md-component="collapsible" data-md-level="1">
+ <label class="md-nav__title" for="nav-3">
+ Tutorial
+ </label>
+ <ul class="md-nav__list" data-md-scrollfix>
+
+
+
+
+
+
+
+ <li class="md-nav__item">
+ <a href="../../../tutorial/rdd/" title="Spatial RDD application" class="md-nav__link">
+ Spatial RDD application
+ </a>
+ </li>
+
+
+
+
+
+
+
+ <li class="md-nav__item">
+ <a href="../../../tutorial/sql/" title="Spatial SQL application" class="md-nav__link">
+ Spatial SQL application
+ </a>
+ </li>
+
+
+
+
+
+
+
+ <li class="md-nav__item">
+ <a href="../../../tutorial/viz/" title="Visualize Spatial DataFrame" class="md-nav__link">
+ Visualize Spatial DataFrame
+ </a>
+ </li>
+
+
+
+
+
+
+
+ <li class="md-nav__item">
+ <a href="../../../tutorial/zeppelin/" title="Run GeoSpark via Zeppelin" class="md-nav__link">
+ Run GeoSpark via Zeppelin
+ </a>
+ </li>
+
+
+
+
+
+
+
+ <li class="md-nav__item">
+ <a href="../../../tutorial/geospark-core-python/" title="Spatial RDD in Python" class="md-nav__link">
+ Spatial RDD in Python
+ </a>
+ </li>
+
+
+
+
+
+
+
+ <li class="md-nav__item">
+ <a href="../../../tutorial/geospark-sql-python/" title="Spatial SQL in Python" class="md-nav__link">
+ Spatial SQL in Python
+ </a>
+ </li>
+
+
+
+
+
+
+
+ <li class="md-nav__item">
+ <a href="../../../tutorial/GeoSpark-Runnable-DEMO/" title="GeoSpark template project" class="md-nav__link">
+ GeoSpark template project
+ </a>
+ </li>
+
+
+
+
+
+
+
+ <li class="md-nav__item">
+ <a href="../../../tutorial/faq/" title="Frequently Asked Questions" class="md-nav__link">
+ Frequently Asked Questions
+ </a>
+ </li>
+
+
+
+
+
+
+
+ <li class="md-nav__item">
+ <a href="../../../tutorial/Advanced-Tutorial-Tune-your-GeoSpark-Application/" title="Tune GeoSpark RDD application" class="md-nav__link">
+ Tune GeoSpark RDD application
+ </a>
+ </li>
+
+
+
+
+
+
+
+ <li class="md-nav__item">
+ <a href="../../../tutorial/benchmark/" title="Benchmark" class="md-nav__link">
+ Benchmark
+ </a>
+ </li>
+
+
+ </ul>
+ </nav>
+ </li>
+
+
+
+
+
+
+
+
+
+ <li class="md-nav__item md-nav__item--active md-nav__item--nested">
+
+ <input class="md-toggle md-nav__toggle" data-md-toggle="nav-4" type="checkbox" id="nav-4" checked>
+
+ <label class="md-nav__link" for="nav-4">
+ API
+ </label>
+ <nav class="md-nav" data-md-component="collapsible" data-md-level="1">
+ <label class="md-nav__title" for="nav-4">
+ API
+ </label>
+ <ul class="md-nav__list" data-md-scrollfix>
+
+
+
+
+
+
+
+ <li class="md-nav__item md-nav__item--nested">
+
+ <input class="md-toggle md-nav__toggle" data-md-toggle="nav-4-1" type="checkbox" id="nav-4-1">
+
+ <label class="md-nav__link" for="nav-4-1">
+ GeoSpark core (RDD)
+ </label>
+ <nav class="md-nav" data-md-component="collapsible" data-md-level="2">
+ <label class="md-nav__title" for="nav-4-1">
+ GeoSpark core (RDD)
+ </label>
+ <ul class="md-nav__list" data-md-scrollfix>
+
+
+
+
+
+
+
+ <li class="md-nav__item">
+ <a href="../../GeoSpark-Scala-and-Java-API/" title="Scala/Java doc" class="md-nav__link">
+ Scala/Java doc
+ </a>
+ </li>
+
+
+
+
+
+
+
+ <li class="md-nav__item">
+ <a href="../../GeoSpark-Python-API/" title="Python doc" class="md-nav__link">
+ Python doc
+ </a>
+ </li>
+
+
+ </ul>
+ </nav>
+ </li>
+
+
+
+
+
+
+
+
+
+ <li class="md-nav__item md-nav__item--active md-nav__item--nested">
+
+ <input class="md-toggle md-nav__toggle" data-md-toggle="nav-4-2" type="checkbox" id="nav-4-2" checked>
+
+ <label class="md-nav__link" for="nav-4-2">
+ GeoSpark SQL
+ </label>
+ <nav class="md-nav" data-md-component="collapsible" data-md-level="2">
+ <label class="md-nav__title" for="nav-4-2">
+ GeoSpark SQL
+ </label>
+ <ul class="md-nav__list" data-md-scrollfix>
+
+
+
+
+
+
+
+ <li class="md-nav__item">
+ <a href="../GeoSparkSQL-javadoc/" title="JavaDoc" class="md-nav__link">
+ JavaDoc
+ </a>
+ </li>
+
+
+
+
+
+
+
+ <li class="md-nav__item">
+ <a href="../GeoSparkSQL-Overview/" title="Quick start" class="md-nav__link">
+ Quick start
+ </a>
+ </li>
+
+
+
+
+
+
+
+ <li class="md-nav__item">
+ <a href="../GeoSparkSQL-Constructor/" title="Constructor" class="md-nav__link">
+ Constructor
+ </a>
+ </li>
+
+
+
+
+
+
+
+ <li class="md-nav__item">
+ <a href="../GeoSparkSQL-Function/" title="Function" class="md-nav__link">
+ Function
+ </a>
+ </li>
+
+
+
+
+
+
+
+ <li class="md-nav__item">
+ <a href="../GeoSparkSQL-Predicate/" title="Predicate" class="md-nav__link">
+ Predicate
+ </a>
+ </li>
+
+
+
+
+
+
+
+ <li class="md-nav__item">
+ <a href="../GeoSparkSQL-AggregateFunction/" title="Aggregate function" class="md-nav__link">
+ Aggregate function
+ </a>
+ </li>
+
+
+
+
+
+
+
+
+
+ <li class="md-nav__item md-nav__item--active">
+
+ <input class="md-toggle md-nav__toggle" data-md-toggle="toc" type="checkbox" id="toc">
+
+
+
+
+ <label class="md-nav__link md-nav__link--active" for="toc">
+ Join query (optimizer)
+ </label>
+
+ <a href="./" title="Join query (optimizer)" class="md-nav__link md-nav__link--active">
+ Join query (optimizer)
+ </a>
+
+
+<nav class="md-nav md-nav--secondary">
+
+
+
+
+
+ <label class="md-nav__title" for="toc">Table of contents</label>
+ <ul class="md-nav__list" data-md-scrollfix>
+
+ <li class="md-nav__item">
+ <a href="#range-join" title="Range join" class="md-nav__link">
+ Range join
+ </a>
+
+</li>
+
+ <li class="md-nav__item">
+ <a href="#distance-join" title="Distance join" class="md-nav__link">
+ Distance join
+ </a>
+
+</li>
+
+ <li class="md-nav__item">
+ <a href="#predicate-pushdown" title="Predicate pushdown" class="md-nav__link">
+ Predicate pushdown
+ </a>
+
+</li>
+
+
+
+
+
+ </ul>
+
+</nav>
+
+ </li>
+
+
+
+
+
+
+
+ <li class="md-nav__item">
+ <a href="../GeoSparkSQL-Parameter/" title="Parameter" class="md-nav__link">
+ Parameter
+ </a>
+ </li>
+
+
+ </ul>
+ </nav>
+ </li>
+
+
+
+
+
+
+
+ <li class="md-nav__item md-nav__item--nested">
+
+ <input class="md-toggle md-nav__toggle" data-md-toggle="nav-4-3" type="checkbox" id="nav-4-3">
+
+ <label class="md-nav__link" for="nav-4-3">
+ GeoSpark Viz
+ </label>
+ <nav class="md-nav" data-md-component="collapsible" data-md-level="2">
+ <label class="md-nav__title" for="nav-4-3">
+ GeoSpark Viz
+ </label>
+ <ul class="md-nav__list" data-md-scrollfix>
+
+
+
+
+
+
+
+ <li class="md-nav__item">
+ <a href="../../viz/sql/" title="DataFrame/SQL" class="md-nav__link">
+ DataFrame/SQL
+ </a>
+ </li>
+
+
+
+
+
+
+
+ <li class="md-nav__item">
+ <a href="../../viz/Babylon-Scala-and-Java-API/" title="RDD" class="md-nav__link">
+ RDD
+ </a>
+ </li>
+
+
+ </ul>
+ </nav>
+ </li>
+
+
+ </ul>
+ </nav>
+ </li>
+
+
+
+
+
+
+
+ <li class="md-nav__item md-nav__item--nested">
+
+ <input class="md-toggle md-nav__toggle" data-md-toggle="nav-5" type="checkbox" id="nav-5">
+
+ <label class="md-nav__link" for="nav-5">
+ Contributing
+ </label>
+ <nav class="md-nav" data-md-component="collapsible" data-md-level="1">
+ <label class="md-nav__title" for="nav-5">
+ Contributing
+ </label>
+ <ul class="md-nav__list" data-md-scrollfix>
+
+
+
+
+
+
+
+ <li class="md-nav__item">
+ <a href="../../../contribute/rule/" title="Contributing rule" class="md-nav__link">
+ Contributing rule
+ </a>
+ </li>
+
+
+
+
+
+
+
+ <li class="md-nav__item">
+ <a href="../../../contribute/contributor/" title="Contributors and committers" class="md-nav__link">
+ Contributors and committers
+ </a>
+ </li>
+
+
+ </ul>
+ </nav>
+ </li>
+
+
+
+
+
+
+
+ <li class="md-nav__item">
+ <a href="../../../contact/" title="Contact" class="md-nav__link">
+ Contact
+ </a>
+ </li>
+
+
+
+
+
+
+
+ <li class="md-nav__item">
+ <a href="../../../publication/" title="Publications" class="md-nav__link">
+ Publications
+ </a>
+ </li>
+
+
+
+
+
+
+
+ <li class="md-nav__item md-nav__item--nested">
+
+ <input class="md-toggle md-nav__toggle" data-md-toggle="nav-8" type="checkbox" id="nav-8">
+
+ <label class="md-nav__link" for="nav-8">
+ License
+ </label>
+ <nav class="md-nav" data-md-component="collapsible" data-md-level="1">
+ <label class="md-nav__title" for="nav-8">
+ License
+ </label>
+ <ul class="md-nav__list" data-md-scrollfix>
+
+
+
+
+
+
+
+ <li class="md-nav__item">
+ <a href="../../../license/License-before-1-2-0/" title="License-before-1.2.0" class="md-nav__link">
+ License-before-1.2.0
+ </a>
+ </li>
+
+
+
+
+
+
+
+ <li class="md-nav__item">
+ <a href="../../../license/License/" title="License" class="md-nav__link">
+ License
+ </a>
+ </li>
+
+
+ </ul>
+ </nav>
+ </li>
+
+
+ </ul>
+</nav>
+ </div>
+ </div>
+ </div>
+
+
+ <div class="md-sidebar md-sidebar--secondary" data-md-component="toc">
+ <div class="md-sidebar__scrollwrap">
+ <div class="md-sidebar__inner">
+
+<nav class="md-nav md-nav--secondary">
+
+
+
+
+
+ <label class="md-nav__title" for="toc">Table of contents</label>
+ <ul class="md-nav__list" data-md-scrollfix>
+
+ <li class="md-nav__item">
+ <a href="#range-join" title="Range join" class="md-nav__link">
+ Range join
+ </a>
+
+</li>
+
+ <li class="md-nav__item">
+ <a href="#distance-join" title="Distance join" class="md-nav__link">
+ Distance join
+ </a>
+
+</li>
+
+ <li class="md-nav__item">
+ <a href="#predicate-pushdown" title="Predicate pushdown" class="md-nav__link">
+ Predicate pushdown
+ </a>
+
+</li>
+
+
+
+
+
+ </ul>
+
+</nav>
+ </div>
+ </div>
+ </div>
+
+
+ <div class="md-content">
+ <article class="md-content__inner md-typeset">
+
+
+ <a href="https://github.com/DataSystemsLab/GeoSpark/edit/master/docs/api/sql/GeoSparkSQL-Optimizer.md" title="Edit this page" class="md-icon md-content__icon"></a>
+
+
+ <h1 id="geosparksql-query-optimizer">GeoSparkSQL query optimizer<a class="headerlink" href="#geosparksql-query-optimizer" title="Permanent link">¶</a></h1>
+<p>GeoSpark Spatial operators fully supports Apache SparkSQL query optimizer. It has the following query optimization features:</p>
+<ul>
+<li>Automatically optimizes range join query and distance join query.</li>
+<li>Automatically performs predicate pushdown.</li>
+</ul>
+<h2 id="range-join">Range join<a class="headerlink" href="#range-join" title="Permanent link">¶</a></h2>
+<p>Introduction: Find geometries from A and geometries from B such that each geometry pair satisfies a certain predicate. Most predicates supported by GeoSparkSQL can trigger a range join.</p>
+<p>Spark SQL Example:</p>
+<div class="codehilite"><pre><span></span><span class="k">SELECT</span> <span class="o">*</span>
+<span class="k">FROM</span> <span class="n">polygondf</span><span class="p">,</span> <span class="n">pointdf</span>
+<span class="k">WHERE</span> <span class="n">ST_Contains</span><span class="p">(</span><span class="n">polygondf</span><span class="p">.</span><span class="n">polygonshape</span><span class="p">,</span><span class="n">pointdf</span><span class="p">.</span><span class="n">pointshape</span><span class="p">)</span>
+</pre></div>
+
+<div class="codehilite"><pre><span></span><span class="k">SELECT</span> <span class="o">*</span>
+<span class="k">FROM</span> <span class="n">polygondf</span><span class="p">,</span> <span class="n">pointdf</span>
+<span class="k">WHERE</span> <span class="n">ST_Intersects</span><span class="p">(</span><span class="n">polygondf</span><span class="p">.</span><span class="n">polygonshape</span><span class="p">,</span><span class="n">pointdf</span><span class="p">.</span><span class="n">pointshape</span><span class="p">)</span>
+</pre></div>
+
+<p><div class="codehilite"><pre><span></span><span class="k">SELECT</span> <span class="o">*</span>
+<span class="k">FROM</span> <span class="n">pointdf</span><span class="p">,</span> <span class="n">polygondf</span>
+<span class="k">WHERE</span> <span class="n">ST_Within</span><span class="p">(</span><span class="n">pointdf</span><span class="p">.</span><span class="n">pointshape</span><span class="p">,</span> <span class="n">polygondf</span><span class="p">.</span><span class="n">polygonshape</span><span class="p">)</span>
+</pre></div>
+Spark SQL Physical plan:
+<div class="codehilite"><pre><span></span><span class="o">==</span> <span class="nv">Physical</span> <span class="nv">Plan</span> <span class="o">==</span>
+<span class="nv">RangeJoin</span> <span class="s s-Atom">polygonshape#</span><span class="mi">20</span><span class="s s-Atom">:</span> <span class="s s-Atom">geometry</span><span class="p">,</span> <span class="s s-Atom">pointshape#</span><span class="mi">43</span><span class="s s-Atom">:</span> <span class="s s-Atom">geometry</span><span class="p">,</span> <span class="nf">false</span>
+<span class="o">:-</span> <span class="nv">Project</span> <span class="p">[</span><span class="nf">st_polygonfromenvelope</span><span class="p">(</span><span class="nf">cast</span><span class="p">(</span><span class="k">_</span><span class="s s-Atom">c0#</span><span class="mi">0</span> <span class="s s-Atom">as</span> <span class="nf">decimal</span><span class="p">(</span><span class="mi">24</span><span class="p">,</span><span class="mi">20</span><span class="p">)),</span> <span class="n [...]
+<span class="s s-Atom">:</span> <span class="s s-Atom">+-</span> <span class="o">*</span><span class="nv">FileScan</span> <span class="s s-Atom">csv</span>
+<span class="s s-Atom">+-</span> <span class="nv">Project</span> <span class="p">[</span><span class="nf">st_point</span><span class="p">(</span><span class="nf">cast</span><span class="p">(</span><span class="k">_</span><span class="s s-Atom">c0#</span><span class="mi">31</span> <span class="s s-Atom">as</span> <span class="nf">decimal</span><span class="p">(</span><span class="mi">24</span><span class="p">,</span><span class="mi">20</span><span class="p">)),</span> <span class="nf">cas [...]
+ <span class="s s-Atom">+-</span> <span class="o">*</span><span class="nv">FileScan</span> <span class="s s-Atom">csv</span>
+</pre></div></p>
+<div class="admonition note">
+<p class="admonition-title">Note</p>
+<p>All join queries in GeoSparkSQL are inner joins</p>
+</div>
+<h2 id="distance-join">Distance join<a class="headerlink" href="#distance-join" title="Permanent link">¶</a></h2>
+<p>Introduction: Find geometries from A and geometries from B such that the internal Euclidean distance of each geometry pair is less or equal than a certain distance</p>
+<p>Spark SQL Example:</p>
+<p><em>Only consider <mark>fully within a certain distance</mark></em>
+<div class="codehilite"><pre><span></span><span class="k">SELECT</span> <span class="o">*</span>
+<span class="k">FROM</span> <span class="n">pointdf1</span><span class="p">,</span> <span class="n">pointdf2</span>
+<span class="k">WHERE</span> <span class="n">ST_Distance</span><span class="p">(</span><span class="n">pointdf1</span><span class="p">.</span><span class="n">pointshape1</span><span class="p">,</span><span class="n">pointdf2</span><span class="p">.</span><span class="n">pointshape2</span><span class="p">)</span> <span class="o"><</span> <span class="mi">2</span>
+</pre></div></p>
+<p><em>Consider <mark>intersects within a certain distance</mark></em>
+<div class="codehilite"><pre><span></span><span class="k">SELECT</span> <span class="o">*</span>
+<span class="k">FROM</span> <span class="n">pointdf1</span><span class="p">,</span> <span class="n">pointdf2</span>
+<span class="k">WHERE</span> <span class="n">ST_Distance</span><span class="p">(</span><span class="n">pointdf1</span><span class="p">.</span><span class="n">pointshape1</span><span class="p">,</span><span class="n">pointdf2</span><span class="p">.</span><span class="n">pointshape2</span><span class="p">)</span> <span class="o"><=</span> <span class="mi">2</span>
+</pre></div></p>
+<p>Spark SQL Physical plan:
+<div class="codehilite"><pre><span></span><span class="o">==</span> <span class="nv">Physical</span> <span class="nv">Plan</span> <span class="o">==</span>
+<span class="nv">DistanceJoin</span> <span class="s s-Atom">pointshape1#</span><span class="mi">12</span><span class="s s-Atom">:</span> <span class="s s-Atom">geometry</span><span class="p">,</span> <span class="s s-Atom">pointshape2#</span><span class="mi">33</span><span class="s s-Atom">:</span> <span class="s s-Atom">geometry</span><span class="p">,</span> <span class="mf">2.0</span><span class="p">,</span> <span class="nf">true</span>
+<span class="o">:-</span> <span class="nv">Project</span> <span class="p">[</span><span class="nf">st_point</span><span class="p">(</span><span class="nf">cast</span><span class="p">(</span><span class="k">_</span><span class="s s-Atom">c0#</span><span class="mi">0</span> <span class="s s-Atom">as</span> <span class="nf">decimal</span><span class="p">(</span><span class="mi">24</span><span class="p">,</span><span class="mi">20</span><span class="p">)),</span> <span class="nf">cast</span> [...]
+<span class="s s-Atom">:</span> <span class="s s-Atom">+-</span> <span class="o">*</span><span class="nv">FileScan</span> <span class="s s-Atom">csv</span>
+<span class="s s-Atom">+-</span> <span class="nv">Project</span> <span class="p">[</span><span class="nf">st_point</span><span class="p">(</span><span class="nf">cast</span><span class="p">(</span><span class="k">_</span><span class="s s-Atom">c0#</span><span class="mi">21</span> <span class="s s-Atom">as</span> <span class="nf">decimal</span><span class="p">(</span><span class="mi">24</span><span class="p">,</span><span class="mi">20</span><span class="p">)),</span> <span class="nf">cas [...]
+ <span class="s s-Atom">+-</span> <span class="o">*</span><span class="nv">FileScan</span> <span class="s s-Atom">csv</span>
+</pre></div></p>
+<div class="admonition warning">
+<p class="admonition-title">Warning</p>
+<p>GeoSpark doesn't control the distance's unit (degree or meter). It is same with the geometry. To change the geometry's unit, please transform the coordinate reference system. See <a href="../GeoSparkSQL-Function/#st_transform">ST_Transform</a>.</p>
+</div>
+<h2 id="predicate-pushdown">Predicate pushdown<a class="headerlink" href="#predicate-pushdown" title="Permanent link">¶</a></h2>
+<p>Introduction: Given a join query and a predicate in the same WHERE clause, first executes the Predicate as a filter, then executes the join query*</p>
+<p>Spark SQL Example:</p>
+<div class="codehilite"><pre><span></span><span class="k">SELECT</span> <span class="o">*</span>
+<span class="k">FROM</span> <span class="n">polygondf</span><span class="p">,</span> <span class="n">pointdf</span>
+<span class="k">WHERE</span> <span class="n">ST_Contains</span><span class="p">(</span><span class="n">polygondf</span><span class="p">.</span><span class="n">polygonshape</span><span class="p">,</span><span class="n">pointdf</span><span class="p">.</span><span class="n">pointshape</span><span class="p">)</span>
+<span class="k">AND</span> <span class="n">ST_Contains</span><span class="p">(</span><span class="n">ST_PolygonFromEnvelope</span><span class="p">(</span><span class="mi">1</span><span class="p">.</span><span class="mi">0</span><span class="p">,</span><span class="mi">101</span><span class="p">.</span><span class="mi">0</span><span class="p">,</span><span class="mi">501</span><span class="p">.</span><span class="mi">0</span><span class="p">,</span><span class="mi">601</span><span class=" [...]
+</pre></div>
+
+<p>Spark SQL Physical plan:</p>
+<div class="codehilite"><pre><span></span><span class="o">==</span> <span class="nv">Physical</span> <span class="nv">Plan</span> <span class="o">==</span>
+<span class="nv">RangeJoin</span> <span class="s s-Atom">polygonshape#</span><span class="mi">20</span><span class="s s-Atom">:</span> <span class="s s-Atom">geometry</span><span class="p">,</span> <span class="s s-Atom">pointshape#</span><span class="mi">43</span><span class="s s-Atom">:</span> <span class="s s-Atom">geometry</span><span class="p">,</span> <span class="nf">false</span>
+<span class="o">:-</span> <span class="nv">Project</span> <span class="p">[</span><span class="nf">st_polygonfromenvelope</span><span class="p">(</span><span class="nf">cast</span><span class="p">(</span><span class="k">_</span><span class="s s-Atom">c0#</span><span class="mi">0</span> <span class="s s-Atom">as</span> <span class="nf">decimal</span><span class="p">(</span><span class="mi">24</span><span class="p">,</span><span class="mi">20</span><span class="p">)),</span> <span class="n [...]
+<span class="s s-Atom">:</span> <span class="s s-Atom">+-</span> <span class="nv">Filter</span> <span class="s s-Atom">**org</span><span class="p">.</span><span class="s s-Atom">apache</span><span class="p">.</span><span class="s s-Atom">spark</span><span class="p">.</span><span class="s s-Atom">sql</span><span class="p">.</span><span class="s s-Atom">geosparksql</span><span class="p">.</span><span class="s s-Atom">expressions</span><span class="p">.</span><span class="nv">ST_Contains< [...]
+<span class="s s-Atom">:</span> <span class="s s-Atom">+-</span> <span class="o">*</span><span class="nv">FileScan</span> <span class="s s-Atom">csv</span>
+<span class="s s-Atom">+-</span> <span class="nv">Project</span> <span class="p">[</span><span class="nf">st_point</span><span class="p">(</span><span class="nf">cast</span><span class="p">(</span><span class="k">_</span><span class="s s-Atom">c0#</span><span class="mi">31</span> <span class="s s-Atom">as</span> <span class="nf">decimal</span><span class="p">(</span><span class="mi">24</span><span class="p">,</span><span class="mi">20</span><span class="p">)),</span> <span class="nf">cas [...]
+ <span class="s s-Atom">+-</span> <span class="o">*</span><span class="nv">FileScan</span> <span class="s s-Atom">csv</span>
+</pre></div>
+
+
+
+
+
+
+
+
+
+ </article>
+ </div>
+ </div>
+ </main>
+
+
+<footer class="md-footer">
+
+ <div class="md-footer-nav">
+ <nav class="md-footer-nav__inner md-grid">
+
+ <a href="../GeoSparkSQL-AggregateFunction/" title="Aggregate function" class="md-flex md-footer-nav__link md-footer-nav__link--prev" rel="prev">
+ <div class="md-flex__cell md-flex__cell--shrink">
+ <i class="md-icon md-icon--arrow-back md-footer-nav__button"></i>
+ </div>
+ <div class="md-flex__cell md-flex__cell--stretch md-footer-nav__title">
+ <span class="md-flex__ellipsis">
+ <span class="md-footer-nav__direction">
+ Previous
+ </span>
+ Aggregate function
+ </span>
+ </div>
+ </a>
+
+
+ <a href="../GeoSparkSQL-Parameter/" title="Parameter" class="md-flex md-footer-nav__link md-footer-nav__link--next" rel="next">
+ <div class="md-flex__cell md-flex__cell--stretch md-footer-nav__title">
+ <span class="md-flex__ellipsis">
+ <span class="md-footer-nav__direction">
+ Next
+ </span>
+ Parameter
+ </span>
+ </div>
+ <div class="md-flex__cell md-flex__cell--shrink">
+ <i class="md-icon md-icon--arrow-forward md-footer-nav__button"></i>
+ </div>
+ </a>
+
+ </nav>
+ </div>
+
+ <div class="md-footer-meta md-typeset">
+ <div class="md-footer-meta__inner md-grid">
+ <div class="md-footer-copyright">
+
+ powered by
+ <a href="http://www.mkdocs.org">MkDocs</a>
+ and
+ <a href="https://squidfunk.github.io/mkdocs-material/">
+ Material for MkDocs</a>
+ </div>
+
+
+ <div class="md-footer-social">
+
+ <link rel="stylesheet" href="https://cdnjs.cloudflare.com/ajax/libs/font-awesome/4.7.0/css/font-awesome.min.css">
+
+ <a href="https://github.com/DataSystemsLab/GeoSpark" class="md-footer-social__link fa fa-github"></a>
+
+ <a href="https://twitter.com/GeoSpark_ASU" class="md-footer-social__link fa fa-twitter"></a>
+
+ </div>
+
+
+ </div>
+ </div>
+</footer>
+
+ </div>
+
+ <script src="../../../assets/javascripts/application.8eb9be28.js"></script>
+
+ <script>app.initialize({version:"0.17.2",url:{base:"../../.."}})</script>
+
+
+
+
+ <script>!function(e,a,t,n,o,c,i){e.GoogleAnalyticsObject=o,e.ga=e.ga||function(){(e.ga.q=e.ga.q||[]).push(arguments)},e.ga.l=1*new Date,c=a.createElement(t),i=a.getElementsByTagName(t)[0],c.async=1,c.src="https://www.google-analytics.com/analytics.js",i.parentNode.insertBefore(c,i)}(window,document,"script",0,"ga"),ga("create","UA-64886725-1","www.public.asu.edu/~jiayu2/geospark/index.html"),ga("set","anonymizeIp",!0),ga("send","pageview");var links=document.getElementsByTagName( [...]
+
+
+ </body>
+</html>
\ No newline at end of file
diff --git a/api/sql/GeoSparkSQL-Overview/index.html b/api/sql/GeoSparkSQL-Overview/index.html
new file mode 100644
index 0000000..2bd0408
--- /dev/null
+++ b/api/sql/GeoSparkSQL-Overview/index.html
@@ -0,0 +1,1105 @@
+
+
+
+
+<!DOCTYPE html>
+<html lang="en" class="no-js">
+ <head>
+
+ <meta charset="utf-8">
+ <meta name="viewport" content="width=device-width,initial-scale=1">
+ <meta http-equiv="x-ua-compatible" content="ie=edge">
+
+
+
+
+ <meta name="lang:clipboard.copy" content="Copy to clipboard">
+
+ <meta name="lang:clipboard.copied" content="Copied to clipboard">
+
+ <meta name="lang:search.language" content="en">
+
+ <meta name="lang:search.pipeline.stopwords" content="True">
+
+ <meta name="lang:search.pipeline.trimmer" content="True">
+
+ <meta name="lang:search.result.none" content="No matching documents">
+
+ <meta name="lang:search.result.one" content="1 matching document">
+
+ <meta name="lang:search.result.other" content="# matching documents">
+
+ <meta name="lang:search.tokenizer" content="[\s\-]+">
+
+ <link rel="shortcut icon" href="../../../assets/images/favicon.png">
+ <meta name="generator" content="mkdocs-0.17.2, mkdocs-material-2.7.1">
+
+
+
+ <title>Quick start - GeoSpark</title>
+
+
+
+ <link rel="stylesheet" href="../../../assets/stylesheets/application.78aab2dc.css">
+
+ <link rel="stylesheet" href="../../../assets/stylesheets/application-palette.6079476c.css">
+
+
+
+ <script src="../../../assets/javascripts/modernizr.1aa3b519.js"></script>
+
+
+ <link href="https://fonts.gstatic.com" rel="preconnect" crossorigin>
+
+ <link rel="stylesheet" href="https://fonts.googleapis.com/css?family=Roboto:300,400,400i,700|Roboto+Mono">
+ <style>body,input{font-family:"Roboto","Helvetica Neue",Helvetica,Arial,sans-serif}code,kbd,pre{font-family:"Roboto Mono","Courier New",Courier,monospace}</style>
+
+ <link rel="stylesheet" href="https://fonts.googleapis.com/icon?family=Material+Icons">
+
+
+
+ </head>
+
+
+
+ <body dir="ltr" data-md-color-primary="cyan" data-md-color-accent="pink">
+
+ <svg class="md-svg">
+ <defs>
+
+
+ <svg xmlns="http://www.w3.org/2000/svg" width="416" height="448"
+ viewBox="0 0 416 448" id="github">
+ <path fill="currentColor" d="M160 304q0 10-3.125 20.5t-10.75 19-18.125
+ 8.5-18.125-8.5-10.75-19-3.125-20.5 3.125-20.5 10.75-19 18.125-8.5
+ 18.125 8.5 10.75 19 3.125 20.5zM320 304q0 10-3.125 20.5t-10.75
+ 19-18.125 8.5-18.125-8.5-10.75-19-3.125-20.5 3.125-20.5 10.75-19
+ 18.125-8.5 18.125 8.5 10.75 19 3.125 20.5zM360
+ 304q0-30-17.25-51t-46.75-21q-10.25 0-48.75 5.25-17.75 2.75-39.25
+ 2.75t-39.25-2.75q-38-5.25-48.75-5.25-29.5 0-46.75 21t-17.25 51q0 22 8
+ 38.375t20.25 25.75 30.5 15 35 7.375 37.25 1.75h42q20.5 0
+ 37.25-1.75t35-7.375 30.5-15 20.25-25.75 8-38.375zM416 260q0 51.75-15.25
+ 82.75-9.5 19.25-26.375 33.25t-35.25 21.5-42.5 11.875-42.875 5.5-41.75
+ 1.125q-19.5 0-35.5-0.75t-36.875-3.125-38.125-7.5-34.25-12.875-30.25-20.25-21.5-28.75q-15.5-30.75-15.5-82.75
+ 0-59.25 34-99-6.75-20.5-6.75-42.5 0-29 12.75-54.5 27 0 47.5 9.875t47.25
+ 30.875q36.75-8.75 77.25-8.75 37 0 70 8 26.25-20.5
+ 46.75-30.25t47.25-9.75q12.75 25.5 12.75 54.5 0 21.75-6.75 42 34 40 34
+ 99.5z" />
+</svg>
+
+ </defs>
+ </svg>
+ <input class="md-toggle" data-md-toggle="drawer" type="checkbox" id="drawer" autocomplete="off">
+ <input class="md-toggle" data-md-toggle="search" type="checkbox" id="search" autocomplete="off">
+ <label class="md-overlay" data-md-component="overlay" for="drawer"></label>
+
+ <a href="#introduction" tabindex="1" class="md-skip">
+ Skip to content
+ </a>
+
+
+ <header class="md-header" data-md-component="header">
+ <nav class="md-header-nav md-grid">
+ <div class="md-flex">
+ <div class="md-flex__cell md-flex__cell--shrink">
+ <a href="../../.." title="GeoSpark" class="md-header-nav__button md-logo">
+
+ <i class="md-icon"></i>
+
+ </a>
+ </div>
+ <div class="md-flex__cell md-flex__cell--shrink">
+ <label class="md-icon md-icon--menu md-header-nav__button" for="drawer"></label>
+ </div>
+ <div class="md-flex__cell md-flex__cell--stretch">
+ <div class="md-flex__ellipsis md-header-nav__title" data-md-component="title">
+
+
+ <span class="md-header-nav__topic">
+ GeoSpark
+ </span>
+ <span class="md-header-nav__topic">
+ Quick start
+ </span>
+
+
+ </div>
+ </div>
+ <div class="md-flex__cell md-flex__cell--shrink">
+
+
+ <label class="md-icon md-icon--search md-header-nav__button" for="search"></label>
+
+<div class="md-search" data-md-component="search" role="dialog">
+ <label class="md-search__overlay" for="search"></label>
+ <div class="md-search__inner" role="search">
+ <form class="md-search__form" name="search">
+ <input type="text" class="md-search__input" name="query" placeholder="Search" autocapitalize="off" autocorrect="off" autocomplete="off" spellcheck="false" data-md-component="query" data-md-state="active">
+ <label class="md-icon md-search__icon" for="search"></label>
+ <button type="reset" class="md-icon md-search__icon" data-md-component="reset" tabindex="-1">
+ 
+ </button>
+ </form>
+ <div class="md-search__output">
+ <div class="md-search__scrollwrap" data-md-scrollfix>
+ <div class="md-search-result" data-md-component="result">
+ <div class="md-search-result__meta">
+ Type to start searching
+ </div>
+ <ol class="md-search-result__list"></ol>
+ </div>
+ </div>
+ </div>
+ </div>
+</div>
+
+
+ </div>
+
+ <div class="md-flex__cell md-flex__cell--shrink">
+ <div class="md-header-nav__source">
+
+
+
+
+
+
+ <a href="https://github.com/DataSystemsLab/GeoSpark/" title="Go to repository" class="md-source" data-md-source="github">
+
+ <div class="md-source__icon">
+ <svg viewBox="0 0 24 24" width="24" height="24">
+ <use xlink:href="#github" width="24" height="24"></use>
+ </svg>
+ </div>
+
+ <div class="md-source__repository">
+ GitHub
+ </div>
+ </a>
+
+ </div>
+ </div>
+
+ </div>
+ </nav>
+</header>
+
+ <div class="md-container">
+
+
+
+
+ <main class="md-main">
+ <div class="md-main__inner md-grid" data-md-component="container">
+
+
+ <div class="md-sidebar md-sidebar--primary" data-md-component="navigation">
+ <div class="md-sidebar__scrollwrap">
+ <div class="md-sidebar__inner">
+ <nav class="md-nav md-nav--primary" data-md-level="0">
+ <label class="md-nav__title md-nav__title--site" for="drawer">
+ <span class="md-nav__button md-logo">
+
+ <i class="md-icon"></i>
+
+ </span>
+ GeoSpark
+ </label>
+
+ <div class="md-nav__source">
+
+
+
+
+
+
+ <a href="https://github.com/DataSystemsLab/GeoSpark/" title="Go to repository" class="md-source" data-md-source="github">
+
+ <div class="md-source__icon">
+ <svg viewBox="0 0 24 24" width="24" height="24">
+ <use xlink:href="#github" width="24" height="24"></use>
+ </svg>
+ </div>
+
+ <div class="md-source__repository">
+ GitHub
+ </div>
+ </a>
+
+ </div>
+
+ <ul class="md-nav__list" data-md-scrollfix>
+
+
+
+
+
+
+ <li class="md-nav__item">
+ <a href="../../.." title="Home" class="md-nav__link">
+ Home
+ </a>
+ </li>
+
+
+
+
+
+
+
+ <li class="md-nav__item md-nav__item--nested">
+
+ <input class="md-toggle md-nav__toggle" data-md-toggle="nav-2" type="checkbox" id="nav-2">
+
+ <label class="md-nav__link" for="nav-2">
+ Download
+ </label>
+ <nav class="md-nav" data-md-component="collapsible" data-md-level="1">
+ <label class="md-nav__title" for="nav-2">
+ Download
+ </label>
+ <ul class="md-nav__list" data-md-scrollfix>
+
+
+
+
+
+
+
+ <li class="md-nav__item">
+ <a href="../../../download/overview/" title="Quick start" class="md-nav__link">
+ Quick start
+ </a>
+ </li>
+
+
+
+
+
+
+
+ <li class="md-nav__item">
+ <a href="../../../download/GeoSpark-All-Modules-Release-notes/" title="Release notes" class="md-nav__link">
+ Release notes
+ </a>
+ </li>
+
+
+
+
+
+
+
+ <li class="md-nav__item">
+ <a href="../../../download/GeoSpark-All-Modules-Maven-Central-Coordinates/" title="Maven Central coordinate" class="md-nav__link">
+ Maven Central coordinate
+ </a>
+ </li>
+
+
+
+
+
+
+
+ <li class="md-nav__item">
+ <a href="../../../download/cluster/" title="Set up Spark cluser" class="md-nav__link">
+ Set up Spark cluser
+ </a>
+ </li>
+
+
+
+
+
+
+
+ <li class="md-nav__item">
+ <a href="../../../download/scalashell/" title="Spark Scala shell" class="md-nav__link">
+ Spark Scala shell
+ </a>
+ </li>
+
+
+
+
+
+
+
+ <li class="md-nav__item">
+ <a href="../../../download/project/" title="Self-contained project" class="md-nav__link">
+ Self-contained project
+ </a>
+ </li>
+
+
+
+
+
+
+
+ <li class="md-nav__item">
+ <a href="../../../download/zeppelin/" title="Install GeoSpark-Zeppelin" class="md-nav__link">
+ Install GeoSpark-Zeppelin
+ </a>
+ </li>
+
+
+
+
+
+
+
+ <li class="md-nav__item">
+ <a href="../../../download/compile/" title="Compile the source code" class="md-nav__link">
+ Compile the source code
+ </a>
+ </li>
+
+
+ </ul>
+ </nav>
+ </li>
+
+
+
+
+
+
+
+ <li class="md-nav__item md-nav__item--nested">
+
+ <input class="md-toggle md-nav__toggle" data-md-toggle="nav-3" type="checkbox" id="nav-3">
+
+ <label class="md-nav__link" for="nav-3">
+ Tutorial
+ </label>
+ <nav class="md-nav" data-md-component="collapsible" data-md-level="1">
+ <label class="md-nav__title" for="nav-3">
+ Tutorial
+ </label>
+ <ul class="md-nav__list" data-md-scrollfix>
+
+
+
+
+
+
+
+ <li class="md-nav__item">
+ <a href="../../../tutorial/rdd/" title="Spatial RDD application" class="md-nav__link">
+ Spatial RDD application
+ </a>
+ </li>
+
+
+
+
+
+
+
+ <li class="md-nav__item">
+ <a href="../../../tutorial/sql/" title="Spatial SQL application" class="md-nav__link">
+ Spatial SQL application
+ </a>
+ </li>
+
+
+
+
+
+
+
+ <li class="md-nav__item">
+ <a href="../../../tutorial/viz/" title="Visualize Spatial DataFrame" class="md-nav__link">
+ Visualize Spatial DataFrame
+ </a>
+ </li>
+
+
+
+
+
+
+
+ <li class="md-nav__item">
+ <a href="../../../tutorial/zeppelin/" title="Run GeoSpark via Zeppelin" class="md-nav__link">
+ Run GeoSpark via Zeppelin
+ </a>
+ </li>
+
+
+
+
+
+
+
+ <li class="md-nav__item">
+ <a href="../../../tutorial/geospark-core-python/" title="Spatial RDD in Python" class="md-nav__link">
+ Spatial RDD in Python
+ </a>
+ </li>
+
+
+
+
+
+
+
+ <li class="md-nav__item">
+ <a href="../../../tutorial/geospark-sql-python/" title="Spatial SQL in Python" class="md-nav__link">
+ Spatial SQL in Python
+ </a>
+ </li>
+
+
+
+
+
+
+
+ <li class="md-nav__item">
+ <a href="../../../tutorial/GeoSpark-Runnable-DEMO/" title="GeoSpark template project" class="md-nav__link">
+ GeoSpark template project
+ </a>
+ </li>
+
+
+
+
+
+
+
+ <li class="md-nav__item">
+ <a href="../../../tutorial/faq/" title="Frequently Asked Questions" class="md-nav__link">
+ Frequently Asked Questions
+ </a>
+ </li>
+
+
+
+
+
+
+
+ <li class="md-nav__item">
+ <a href="../../../tutorial/Advanced-Tutorial-Tune-your-GeoSpark-Application/" title="Tune GeoSpark RDD application" class="md-nav__link">
+ Tune GeoSpark RDD application
+ </a>
+ </li>
+
+
+
+
+
+
+
+ <li class="md-nav__item">
+ <a href="../../../tutorial/benchmark/" title="Benchmark" class="md-nav__link">
+ Benchmark
+ </a>
+ </li>
+
+
+ </ul>
+ </nav>
+ </li>
+
+
+
+
+
+
+
+
+
+ <li class="md-nav__item md-nav__item--active md-nav__item--nested">
+
+ <input class="md-toggle md-nav__toggle" data-md-toggle="nav-4" type="checkbox" id="nav-4" checked>
+
+ <label class="md-nav__link" for="nav-4">
+ API
+ </label>
+ <nav class="md-nav" data-md-component="collapsible" data-md-level="1">
+ <label class="md-nav__title" for="nav-4">
+ API
+ </label>
+ <ul class="md-nav__list" data-md-scrollfix>
+
+
+
+
+
+
+
+ <li class="md-nav__item md-nav__item--nested">
+
+ <input class="md-toggle md-nav__toggle" data-md-toggle="nav-4-1" type="checkbox" id="nav-4-1">
+
+ <label class="md-nav__link" for="nav-4-1">
+ GeoSpark core (RDD)
+ </label>
+ <nav class="md-nav" data-md-component="collapsible" data-md-level="2">
+ <label class="md-nav__title" for="nav-4-1">
+ GeoSpark core (RDD)
+ </label>
+ <ul class="md-nav__list" data-md-scrollfix>
+
+
+
+
+
+
+
+ <li class="md-nav__item">
+ <a href="../../GeoSpark-Scala-and-Java-API/" title="Scala/Java doc" class="md-nav__link">
+ Scala/Java doc
+ </a>
+ </li>
+
+
+
+
+
+
+
+ <li class="md-nav__item">
+ <a href="../../GeoSpark-Python-API/" title="Python doc" class="md-nav__link">
+ Python doc
+ </a>
+ </li>
+
+
+ </ul>
+ </nav>
+ </li>
+
+
+
+
+
+
+
+
+
+ <li class="md-nav__item md-nav__item--active md-nav__item--nested">
+
+ <input class="md-toggle md-nav__toggle" data-md-toggle="nav-4-2" type="checkbox" id="nav-4-2" checked>
+
+ <label class="md-nav__link" for="nav-4-2">
+ GeoSpark SQL
+ </label>
+ <nav class="md-nav" data-md-component="collapsible" data-md-level="2">
+ <label class="md-nav__title" for="nav-4-2">
+ GeoSpark SQL
+ </label>
+ <ul class="md-nav__list" data-md-scrollfix>
+
+
+
+
+
+
+
+ <li class="md-nav__item">
+ <a href="../GeoSparkSQL-javadoc/" title="JavaDoc" class="md-nav__link">
+ JavaDoc
+ </a>
+ </li>
+
+
+
+
+
+
+
+
+
+ <li class="md-nav__item md-nav__item--active">
+
+ <input class="md-toggle md-nav__toggle" data-md-toggle="toc" type="checkbox" id="toc">
+
+
+
+
+ <label class="md-nav__link md-nav__link--active" for="toc">
+ Quick start
+ </label>
+
+ <a href="./" title="Quick start" class="md-nav__link md-nav__link--active">
+ Quick start
+ </a>
+
+
+<nav class="md-nav md-nav--secondary">
+
+
+
+
+
+ <label class="md-nav__title" for="toc">Table of contents</label>
+ <ul class="md-nav__list" data-md-scrollfix>
+
+ <li class="md-nav__item">
+ <a href="#function-list" title="Function list" class="md-nav__link">
+ Function list
+ </a>
+
+</li>
+
+ <li class="md-nav__item">
+ <a href="#quick-start" title="Quick start" class="md-nav__link">
+ Quick start
+ </a>
+
+</li>
+
+
+
+
+
+ </ul>
+
+</nav>
+
+ </li>
+
+
+
+
+
+
+
+ <li class="md-nav__item">
+ <a href="../GeoSparkSQL-Constructor/" title="Constructor" class="md-nav__link">
+ Constructor
+ </a>
+ </li>
+
+
+
+
+
+
+
+ <li class="md-nav__item">
+ <a href="../GeoSparkSQL-Function/" title="Function" class="md-nav__link">
+ Function
+ </a>
+ </li>
+
+
+
+
+
+
+
+ <li class="md-nav__item">
+ <a href="../GeoSparkSQL-Predicate/" title="Predicate" class="md-nav__link">
+ Predicate
+ </a>
+ </li>
+
+
+
+
+
+
+
+ <li class="md-nav__item">
+ <a href="../GeoSparkSQL-AggregateFunction/" title="Aggregate function" class="md-nav__link">
+ Aggregate function
+ </a>
+ </li>
+
+
+
+
+
+
+
+ <li class="md-nav__item">
+ <a href="../GeoSparkSQL-Optimizer/" title="Join query (optimizer)" class="md-nav__link">
+ Join query (optimizer)
+ </a>
+ </li>
+
+
+
+
+
+
+
+ <li class="md-nav__item">
+ <a href="../GeoSparkSQL-Parameter/" title="Parameter" class="md-nav__link">
+ Parameter
+ </a>
+ </li>
+
+
+ </ul>
+ </nav>
+ </li>
+
+
+
+
+
+
+
+ <li class="md-nav__item md-nav__item--nested">
+
+ <input class="md-toggle md-nav__toggle" data-md-toggle="nav-4-3" type="checkbox" id="nav-4-3">
+
+ <label class="md-nav__link" for="nav-4-3">
+ GeoSpark Viz
+ </label>
+ <nav class="md-nav" data-md-component="collapsible" data-md-level="2">
+ <label class="md-nav__title" for="nav-4-3">
+ GeoSpark Viz
+ </label>
+ <ul class="md-nav__list" data-md-scrollfix>
+
+
+
+
+
+
+
+ <li class="md-nav__item">
+ <a href="../../viz/sql/" title="DataFrame/SQL" class="md-nav__link">
+ DataFrame/SQL
+ </a>
+ </li>
+
+
+
+
+
+
+
+ <li class="md-nav__item">
+ <a href="../../viz/Babylon-Scala-and-Java-API/" title="RDD" class="md-nav__link">
+ RDD
+ </a>
+ </li>
+
+
+ </ul>
+ </nav>
+ </li>
+
+
+ </ul>
+ </nav>
+ </li>
+
+
+
+
+
+
+
+ <li class="md-nav__item md-nav__item--nested">
+
+ <input class="md-toggle md-nav__toggle" data-md-toggle="nav-5" type="checkbox" id="nav-5">
+
+ <label class="md-nav__link" for="nav-5">
+ Contributing
+ </label>
+ <nav class="md-nav" data-md-component="collapsible" data-md-level="1">
+ <label class="md-nav__title" for="nav-5">
+ Contributing
+ </label>
+ <ul class="md-nav__list" data-md-scrollfix>
+
+
+
+
+
+
+
+ <li class="md-nav__item">
+ <a href="../../../contribute/rule/" title="Contributing rule" class="md-nav__link">
+ Contributing rule
+ </a>
+ </li>
+
+
+
+
+
+
+
+ <li class="md-nav__item">
+ <a href="../../../contribute/contributor/" title="Contributors and committers" class="md-nav__link">
+ Contributors and committers
+ </a>
+ </li>
+
+
+ </ul>
+ </nav>
+ </li>
+
+
+
+
+
+
+
+ <li class="md-nav__item">
+ <a href="../../../contact/" title="Contact" class="md-nav__link">
+ Contact
+ </a>
+ </li>
+
+
+
+
+
+
+
+ <li class="md-nav__item">
+ <a href="../../../publication/" title="Publications" class="md-nav__link">
+ Publications
+ </a>
+ </li>
+
+
+
+
+
+
+
+ <li class="md-nav__item md-nav__item--nested">
+
+ <input class="md-toggle md-nav__toggle" data-md-toggle="nav-8" type="checkbox" id="nav-8">
+
+ <label class="md-nav__link" for="nav-8">
+ License
+ </label>
+ <nav class="md-nav" data-md-component="collapsible" data-md-level="1">
+ <label class="md-nav__title" for="nav-8">
+ License
+ </label>
+ <ul class="md-nav__list" data-md-scrollfix>
+
+
+
+
+
+
+
+ <li class="md-nav__item">
+ <a href="../../../license/License-before-1-2-0/" title="License-before-1.2.0" class="md-nav__link">
+ License-before-1.2.0
+ </a>
+ </li>
+
+
+
+
+
+
+
+ <li class="md-nav__item">
+ <a href="../../../license/License/" title="License" class="md-nav__link">
+ License
+ </a>
+ </li>
+
+
+ </ul>
+ </nav>
+ </li>
+
+
+ </ul>
+</nav>
+ </div>
+ </div>
+ </div>
+
+
+ <div class="md-sidebar md-sidebar--secondary" data-md-component="toc">
+ <div class="md-sidebar__scrollwrap">
+ <div class="md-sidebar__inner">
+
+<nav class="md-nav md-nav--secondary">
+
+
+
+
+
+ <label class="md-nav__title" for="toc">Table of contents</label>
+ <ul class="md-nav__list" data-md-scrollfix>
+
+ <li class="md-nav__item">
+ <a href="#function-list" title="Function list" class="md-nav__link">
+ Function list
+ </a>
+
+</li>
+
+ <li class="md-nav__item">
+ <a href="#quick-start" title="Quick start" class="md-nav__link">
+ Quick start
+ </a>
+
+</li>
+
+
+
+
+
+ </ul>
+
+</nav>
+ </div>
+ </div>
+ </div>
+
+
+ <div class="md-content">
+ <article class="md-content__inner md-typeset">
+
+
+ <a href="https://github.com/DataSystemsLab/GeoSpark/edit/master/docs/api/sql/GeoSparkSQL-Overview.md" title="Edit this page" class="md-icon md-content__icon"></a>
+
+
+ <h1 id="introduction">Introduction<a class="headerlink" href="#introduction" title="Permanent link">¶</a></h1>
+<h2 id="function-list">Function list<a class="headerlink" href="#function-list" title="Permanent link">¶</a></h2>
+<p>GeoSparkSQL supports SQL/MM Part3 Spatial SQL Standard. It includes four kinds of SQL operators as follows. All these operators can be directly called through:
+<div class="codehilite"><pre><span></span><span class="k">var</span> <span class="n">myDataFrame</span> <span class="k">=</span> <span class="n">sparkSession</span><span class="o">.</span><span class="n">sql</span><span class="o">(</span><span class="s">"YOUR_SQL"</span><span class="o">)</span>
+</pre></div></p>
+<ul>
+<li>Constructor: Construct a Geometry given an input string or coordinates<ul>
+<li>Example: ST_GeomFromWKT (string). Create a Geometry from a WKT String.</li>
+<li>Documentation: <a href="../GeoSparkSQL-Constructor">Here</a></li>
+</ul>
+</li>
+<li>Function: Execute a function on the given column or columns<ul>
+<li>Example: ST_Distance (A, B). Given two Geometry A and B, return the Euclidean distance of A and B.</li>
+<li>Documentation: <a href="../GeoSparkSQL-Function">Here</a></li>
+</ul>
+</li>
+<li>Aggregate function: Return the aggregated value on the given column<ul>
+<li>Example: ST_Envelope_Aggr (Geometry column). Given a Geometry column, calculate the entire envelope boundary of this column.</li>
+<li>Documentation: <a href="../GeoSparkSQL-AggregateFunction">Here</a></li>
+</ul>
+</li>
+<li>Predicate: Execute a logic judgement on the given columns and return true or false<ul>
+<li>Example: ST_Contains (A, B). Check if A fully contains B. Return "True" if yes, else return "False".</li>
+<li>Documentation: <a href="../GeoSparkSQL-Predicate">Here</a></li>
+</ul>
+</li>
+</ul>
+<p>GeoSparkSQL supports SparkSQL query optimizer, documentation is <a href="../GeoSparkSQL-Optimizer">Here</a></p>
+<h2 id="quick-start">Quick start<a class="headerlink" href="#quick-start" title="Permanent link">¶</a></h2>
+<p>The detailed explanation is here <a href="../../../tutorial/sql/">Write a SQL/DataFrame application</a>.</p>
+<ol>
+<li>Add GeoSpark-core and GeoSparkSQL into your project POM.xml or build.sbt</li>
+<li>Declare your Spark Session
+<div class="codehilite"><pre><span></span><span class="n">sparkSession</span> <span class="k">=</span> <span class="nc">SparkSession</span><span class="o">.</span><span class="n">builder</span><span class="o">().</span>
+ <span class="n">config</span><span class="o">(</span><span class="s">"spark.serializer"</span><span class="o">,</span><span class="n">classOf</span><span class="o">[</span><span class="kt">KryoSerializer</span><span class="o">].</span><span class="n">getName</span><span class="o">).</span>
+ <span class="n">config</span><span class="o">(</span><span class="s">"spark.kryo.registrator"</span><span class="o">,</span> <span class="n">classOf</span><span class="o">[</span><span class="kt">GeoSparkKryoRegistrator</span><span class="o">].</span><span class="n">getName</span><span class="o">).</span>
+ <span class="n">master</span><span class="o">(</span><span class="s">"local[*]"</span><span class="o">).</span><span class="n">appName</span><span class="o">(</span><span class="s">"myGeoSparkSQLdemo"</span><span class="o">).</span><span class="n">getOrCreate</span><span class="o">()</span>
+</pre></div></li>
+<li>Add the following line after your SparkSession declaration:
+<div class="codehilite"><pre><span></span><span class="nc">GeoSparkSQLRegistrator</span><span class="o">.</span><span class="n">registerAll</span><span class="o">(</span><span class="n">sparkSession</span><span class="o">)</span>
+</pre></div></li>
+</ol>
+
+
+
+
+
+
+
+
+
+ </article>
+ </div>
+ </div>
+ </main>
+
+
+<footer class="md-footer">
+
+ <div class="md-footer-nav">
+ <nav class="md-footer-nav__inner md-grid">
+
+ <a href="../GeoSparkSQL-javadoc/" title="JavaDoc" class="md-flex md-footer-nav__link md-footer-nav__link--prev" rel="prev">
+ <div class="md-flex__cell md-flex__cell--shrink">
+ <i class="md-icon md-icon--arrow-back md-footer-nav__button"></i>
+ </div>
+ <div class="md-flex__cell md-flex__cell--stretch md-footer-nav__title">
+ <span class="md-flex__ellipsis">
+ <span class="md-footer-nav__direction">
+ Previous
+ </span>
+ JavaDoc
+ </span>
+ </div>
+ </a>
+
+
+ <a href="../GeoSparkSQL-Constructor/" title="Constructor" class="md-flex md-footer-nav__link md-footer-nav__link--next" rel="next">
+ <div class="md-flex__cell md-flex__cell--stretch md-footer-nav__title">
+ <span class="md-flex__ellipsis">
+ <span class="md-footer-nav__direction">
+ Next
+ </span>
+ Constructor
+ </span>
+ </div>
+ <div class="md-flex__cell md-flex__cell--shrink">
+ <i class="md-icon md-icon--arrow-forward md-footer-nav__button"></i>
+ </div>
+ </a>
+
+ </nav>
+ </div>
+
+ <div class="md-footer-meta md-typeset">
+ <div class="md-footer-meta__inner md-grid">
+ <div class="md-footer-copyright">
+
+ powered by
+ <a href="http://www.mkdocs.org">MkDocs</a>
+ and
+ <a href="https://squidfunk.github.io/mkdocs-material/">
+ Material for MkDocs</a>
+ </div>
+
+
+ <div class="md-footer-social">
+
+ <link rel="stylesheet" href="https://cdnjs.cloudflare.com/ajax/libs/font-awesome/4.7.0/css/font-awesome.min.css">
+
+ <a href="https://github.com/DataSystemsLab/GeoSpark" class="md-footer-social__link fa fa-github"></a>
+
+ <a href="https://twitter.com/GeoSpark_ASU" class="md-footer-social__link fa fa-twitter"></a>
+
+ </div>
+
+
+ </div>
+ </div>
+</footer>
+
+ </div>
+
+ <script src="../../../assets/javascripts/application.8eb9be28.js"></script>
+
+ <script>app.initialize({version:"0.17.2",url:{base:"../../.."}})</script>
+
+
+
+
+ <script>!function(e,a,t,n,o,c,i){e.GoogleAnalyticsObject=o,e.ga=e.ga||function(){(e.ga.q=e.ga.q||[]).push(arguments)},e.ga.l=1*new Date,c=a.createElement(t),i=a.getElementsByTagName(t)[0],c.async=1,c.src="https://www.google-analytics.com/analytics.js",i.parentNode.insertBefore(c,i)}(window,document,"script",0,"ga"),ga("create","UA-64886725-1","www.public.asu.edu/~jiayu2/geospark/index.html"),ga("set","anonymizeIp",!0),ga("send","pageview");var links=document.getElementsByTagName( [...]
+
+
+ </body>
+</html>
\ No newline at end of file
diff --git a/api/sql/GeoSparkSQL-Parameter/index.html b/api/sql/GeoSparkSQL-Parameter/index.html
new file mode 100644
index 0000000..1c9f38e
--- /dev/null
+++ b/api/sql/GeoSparkSQL-Parameter/index.html
@@ -0,0 +1,1113 @@
+
+
+
+
+<!DOCTYPE html>
+<html lang="en" class="no-js">
+ <head>
+
+ <meta charset="utf-8">
+ <meta name="viewport" content="width=device-width,initial-scale=1">
+ <meta http-equiv="x-ua-compatible" content="ie=edge">
+
+
+
+
+ <meta name="lang:clipboard.copy" content="Copy to clipboard">
+
+ <meta name="lang:clipboard.copied" content="Copied to clipboard">
+
+ <meta name="lang:search.language" content="en">
+
+ <meta name="lang:search.pipeline.stopwords" content="True">
+
+ <meta name="lang:search.pipeline.trimmer" content="True">
+
+ <meta name="lang:search.result.none" content="No matching documents">
+
+ <meta name="lang:search.result.one" content="1 matching document">
+
+ <meta name="lang:search.result.other" content="# matching documents">
+
+ <meta name="lang:search.tokenizer" content="[\s\-]+">
+
+ <link rel="shortcut icon" href="../../../assets/images/favicon.png">
+ <meta name="generator" content="mkdocs-0.17.2, mkdocs-material-2.7.1">
+
+
+
+ <title>Parameter - GeoSpark</title>
+
+
+
+ <link rel="stylesheet" href="../../../assets/stylesheets/application.78aab2dc.css">
+
+ <link rel="stylesheet" href="../../../assets/stylesheets/application-palette.6079476c.css">
+
+
+
+ <script src="../../../assets/javascripts/modernizr.1aa3b519.js"></script>
+
+
+ <link href="https://fonts.gstatic.com" rel="preconnect" crossorigin>
+
+ <link rel="stylesheet" href="https://fonts.googleapis.com/css?family=Roboto:300,400,400i,700|Roboto+Mono">
+ <style>body,input{font-family:"Roboto","Helvetica Neue",Helvetica,Arial,sans-serif}code,kbd,pre{font-family:"Roboto Mono","Courier New",Courier,monospace}</style>
+
+ <link rel="stylesheet" href="https://fonts.googleapis.com/icon?family=Material+Icons">
+
+
+
+ </head>
+
+
+
+ <body dir="ltr" data-md-color-primary="cyan" data-md-color-accent="pink">
+
+ <svg class="md-svg">
+ <defs>
+
+
+ <svg xmlns="http://www.w3.org/2000/svg" width="416" height="448"
+ viewBox="0 0 416 448" id="github">
+ <path fill="currentColor" d="M160 304q0 10-3.125 20.5t-10.75 19-18.125
+ 8.5-18.125-8.5-10.75-19-3.125-20.5 3.125-20.5 10.75-19 18.125-8.5
+ 18.125 8.5 10.75 19 3.125 20.5zM320 304q0 10-3.125 20.5t-10.75
+ 19-18.125 8.5-18.125-8.5-10.75-19-3.125-20.5 3.125-20.5 10.75-19
+ 18.125-8.5 18.125 8.5 10.75 19 3.125 20.5zM360
+ 304q0-30-17.25-51t-46.75-21q-10.25 0-48.75 5.25-17.75 2.75-39.25
+ 2.75t-39.25-2.75q-38-5.25-48.75-5.25-29.5 0-46.75 21t-17.25 51q0 22 8
+ 38.375t20.25 25.75 30.5 15 35 7.375 37.25 1.75h42q20.5 0
+ 37.25-1.75t35-7.375 30.5-15 20.25-25.75 8-38.375zM416 260q0 51.75-15.25
+ 82.75-9.5 19.25-26.375 33.25t-35.25 21.5-42.5 11.875-42.875 5.5-41.75
+ 1.125q-19.5 0-35.5-0.75t-36.875-3.125-38.125-7.5-34.25-12.875-30.25-20.25-21.5-28.75q-15.5-30.75-15.5-82.75
+ 0-59.25 34-99-6.75-20.5-6.75-42.5 0-29 12.75-54.5 27 0 47.5 9.875t47.25
+ 30.875q36.75-8.75 77.25-8.75 37 0 70 8 26.25-20.5
+ 46.75-30.25t47.25-9.75q12.75 25.5 12.75 54.5 0 21.75-6.75 42 34 40 34
+ 99.5z" />
+</svg>
+
+ </defs>
+ </svg>
+ <input class="md-toggle" data-md-toggle="drawer" type="checkbox" id="drawer" autocomplete="off">
+ <input class="md-toggle" data-md-toggle="search" type="checkbox" id="search" autocomplete="off">
+ <label class="md-overlay" data-md-component="overlay" for="drawer"></label>
+
+ <a href="#usage" tabindex="1" class="md-skip">
+ Skip to content
+ </a>
+
+
+ <header class="md-header" data-md-component="header">
+ <nav class="md-header-nav md-grid">
+ <div class="md-flex">
+ <div class="md-flex__cell md-flex__cell--shrink">
+ <a href="../../.." title="GeoSpark" class="md-header-nav__button md-logo">
+
+ <i class="md-icon"></i>
+
+ </a>
+ </div>
+ <div class="md-flex__cell md-flex__cell--shrink">
+ <label class="md-icon md-icon--menu md-header-nav__button" for="drawer"></label>
+ </div>
+ <div class="md-flex__cell md-flex__cell--stretch">
+ <div class="md-flex__ellipsis md-header-nav__title" data-md-component="title">
+
+
+ <span class="md-header-nav__topic">
+ GeoSpark
+ </span>
+ <span class="md-header-nav__topic">
+ Parameter
+ </span>
+
+
+ </div>
+ </div>
+ <div class="md-flex__cell md-flex__cell--shrink">
+
+
+ <label class="md-icon md-icon--search md-header-nav__button" for="search"></label>
+
+<div class="md-search" data-md-component="search" role="dialog">
+ <label class="md-search__overlay" for="search"></label>
+ <div class="md-search__inner" role="search">
+ <form class="md-search__form" name="search">
+ <input type="text" class="md-search__input" name="query" placeholder="Search" autocapitalize="off" autocorrect="off" autocomplete="off" spellcheck="false" data-md-component="query" data-md-state="active">
+ <label class="md-icon md-search__icon" for="search"></label>
+ <button type="reset" class="md-icon md-search__icon" data-md-component="reset" tabindex="-1">
+ 
+ </button>
+ </form>
+ <div class="md-search__output">
+ <div class="md-search__scrollwrap" data-md-scrollfix>
+ <div class="md-search-result" data-md-component="result">
+ <div class="md-search-result__meta">
+ Type to start searching
+ </div>
+ <ol class="md-search-result__list"></ol>
+ </div>
+ </div>
+ </div>
+ </div>
+</div>
+
+
+ </div>
+
+ <div class="md-flex__cell md-flex__cell--shrink">
+ <div class="md-header-nav__source">
+
+
+
+
+
+
+ <a href="https://github.com/DataSystemsLab/GeoSpark/" title="Go to repository" class="md-source" data-md-source="github">
+
+ <div class="md-source__icon">
+ <svg viewBox="0 0 24 24" width="24" height="24">
+ <use xlink:href="#github" width="24" height="24"></use>
+ </svg>
+ </div>
+
+ <div class="md-source__repository">
+ GitHub
+ </div>
+ </a>
+
+ </div>
+ </div>
+
+ </div>
+ </nav>
+</header>
+
+ <div class="md-container">
+
+
+
+
+ <main class="md-main">
+ <div class="md-main__inner md-grid" data-md-component="container">
+
+
+ <div class="md-sidebar md-sidebar--primary" data-md-component="navigation">
+ <div class="md-sidebar__scrollwrap">
+ <div class="md-sidebar__inner">
+ <nav class="md-nav md-nav--primary" data-md-level="0">
+ <label class="md-nav__title md-nav__title--site" for="drawer">
+ <span class="md-nav__button md-logo">
+
+ <i class="md-icon"></i>
+
+ </span>
+ GeoSpark
+ </label>
+
+ <div class="md-nav__source">
+
+
+
+
+
+
+ <a href="https://github.com/DataSystemsLab/GeoSpark/" title="Go to repository" class="md-source" data-md-source="github">
+
+ <div class="md-source__icon">
+ <svg viewBox="0 0 24 24" width="24" height="24">
+ <use xlink:href="#github" width="24" height="24"></use>
+ </svg>
+ </div>
+
+ <div class="md-source__repository">
+ GitHub
+ </div>
+ </a>
+
+ </div>
+
+ <ul class="md-nav__list" data-md-scrollfix>
+
+
+
+
+
+
+ <li class="md-nav__item">
+ <a href="../../.." title="Home" class="md-nav__link">
+ Home
+ </a>
+ </li>
+
+
+
+
+
+
+
+ <li class="md-nav__item md-nav__item--nested">
+
+ <input class="md-toggle md-nav__toggle" data-md-toggle="nav-2" type="checkbox" id="nav-2">
+
+ <label class="md-nav__link" for="nav-2">
+ Download
+ </label>
+ <nav class="md-nav" data-md-component="collapsible" data-md-level="1">
+ <label class="md-nav__title" for="nav-2">
+ Download
+ </label>
+ <ul class="md-nav__list" data-md-scrollfix>
+
+
+
+
+
+
+
+ <li class="md-nav__item">
+ <a href="../../../download/overview/" title="Quick start" class="md-nav__link">
+ Quick start
+ </a>
+ </li>
+
+
+
+
+
+
+
+ <li class="md-nav__item">
+ <a href="../../../download/GeoSpark-All-Modules-Release-notes/" title="Release notes" class="md-nav__link">
+ Release notes
+ </a>
+ </li>
+
+
+
+
+
+
+
+ <li class="md-nav__item">
+ <a href="../../../download/GeoSpark-All-Modules-Maven-Central-Coordinates/" title="Maven Central coordinate" class="md-nav__link">
+ Maven Central coordinate
+ </a>
+ </li>
+
+
+
+
+
+
+
+ <li class="md-nav__item">
+ <a href="../../../download/cluster/" title="Set up Spark cluser" class="md-nav__link">
+ Set up Spark cluser
+ </a>
+ </li>
+
+
+
+
+
+
+
+ <li class="md-nav__item">
+ <a href="../../../download/scalashell/" title="Spark Scala shell" class="md-nav__link">
+ Spark Scala shell
+ </a>
+ </li>
+
+
+
+
+
+
+
+ <li class="md-nav__item">
+ <a href="../../../download/project/" title="Self-contained project" class="md-nav__link">
+ Self-contained project
+ </a>
... 159828 lines suppressed ...