Jump to content
 







Main menu
   


Navigation  



Main page
Contents
Current events
Random article
About Wikipedia
Contact us
Donate
 




Contribute  



Help
Learn to edit
Community portal
Recent changes
Upload file
 








Search  

































Create account

Log in
 









Create account
 Log in
 




Pages for logged out editors learn more  



Contributions
Talk
 



















Contents

   



(Top)
 


1 Characteristics  





2 Spatial index  





3 Spatial query  





4 Spatial database management systems  



4.1  List  





4.2  Table of free systems especially for spatial data processing  







5 See also  





6 Notes  





7 References  





8 Further reading  





9 External links  














Spatial database






Čeština
Deutsch
Español
فارسی
Français
ि
Italiano
Norsk bokmål
Polski
Português
Русский
Suomi
Türkçe
Українська
 

Edit links
 









Article
Talk
 

















Read
Edit
View history
 








Tools
   


Actions  



Read
Edit
View history
 




General  



What links here
Related changes
Upload file
Special pages
Permanent link
Page information
Cite this page
Get shortened URL
Download QR code
Wikidata item
 




Print/export  



Download as PDF
Printable version
 
















Appearance
   

 






From Wikipedia, the free encyclopedia
 

(Redirected from Spatial index)

Aspatial database is a general-purpose database (usually a relational database) that has been enhanced to include spatial data that represents objects defined in a geometric space, along with tools for querying and analyzing such data.

Most spatial databases allow the representation of simple geometric objects such as points, lines and polygons. Some spatial databases handle more complex structures such as 3D objects, topological coverages, linear networks, and triangulated irregular networks (TINs). While typical databases have developed to manage various numeric and character types of data, such databases require additional functionality to process spatial data types efficiently, and developers have often added geometryorfeature data types.

Geographic database (orgeodatabase) is a georeferenced spatial database, used for storing and manipulating geographic data (or geodata, i.e., data associated with a location on Earth),[a] especially in geographic information systems (GIS). Almost all current relational and object-relational database management systems now have spatial extensions, and some GIS software vendors have developed their own spatial extensions to database management systems.

The Open Geospatial Consortium (OGC) developed the Simple Features specification (first released in 1997)[1] and sets standards for adding spatial functionality to database systems.[2] The SQL/MM Spatial ISO/IEC standard is a part of the structured query language and multimedia standard extending the Simple Features.[3]

Characteristics

[edit]

The core functionality added by a spatial extension to a database is one or more spatial datatypes, which allow for the storage of spatial data as attribute values in a table.[4] Most commonly, a single spatial value would be a geometric primitive (point, line, polygon, etc.) based on the vector data model. The datatypes in most spatial databases are based on the OGC Simple Features specification for representing geometric primitives. Some spatial databases also support the storage of raster data. Because all geographic locations must be specified according to a spatial reference system, spatial databases must also allow for the tracking and transformation of coordinate systems. In many systems, when a spatial column is defined in a table, it also includes a choice of coordinate system, chosen from a list of available systems that is stored in a lookup table.

The second major functionality extension in a spatial database is the addition of spatial capabilities to the query language (e.g., SQL); these give the spatial database the same query, analysis, and manipulation operations that are available in traditional GIS software. In most relational database management systems, this functionality is implemented as a set of new functions that can be used in SQL SELECT statements. Several types of operations are specified by the Open Geospatial Consortium standard:

Some databases support only simplified or modified sets of these operations, especially in cases of NoSQL systems like MongoDB and CouchDB.

Spatial index

[edit]

Aspatial index is used by a spatial database to optimize spatial queries. Database systems use indices to quickly look up values by sorting data values in a linear (e.g. alphabetical) order; however, this way of indexing data is not optimal for spatial queries in two- or three-dimensional space. Instead, spatial databases use a spatial index designed specifically for multi-dimensional ordering.[5] Common spatial index methods include:

Spatial query

[edit]

Aspatial query is a special type of database query supported by spatial databases, including geodatabases. The queries differ from non-spatial SQL queries in several important ways. Two of the most important are that they allow for the use of geometry data types such as points, lines and polygons and that these queries consider the spatial relationship between these geometries.

The function names for queries differ across geodatabases. The following are a few of the functions built into PostGIS, a free geodatabase which is a PostgreSQL extension (the term 'geometry' refers to a point, line, box or other two or three dimensional shape):[7]

Function prototype: functionName (parameter(s)) : return type

Thus, a spatial join between a points layer of cities and a polygon layer of countries could be performed in a spatially-extended SQL statement as:

SELECT * FROM cities, countries WHERE ST_Contains(countries.shape, cities.shape)

The Intersect vector overlay operation (a core element of GIS software) could be replicated as:

SELECT ST_Intersection(veg.shape, soil.shape) int_poly, veg.*, soil.* FROM veg, soil where ST_Intersects(veg.shape, soil.shape)

Spatial database management systems

[edit]

List

[edit]

Table of free systems especially for spatial data processing

[edit]
DBS License Distributed Spatial objects Spatial functions PostgreSQL interface UMN MapServer interface Documentation Modifiable HDFS
Apache Drill Apache License 2.0 yes yes yes - Drill Geospatial Functions Documentation yes no Official Documentation ANSI SQL yes
ArangoDB Apache License 2.0 yes yes yes - capabilities overview query language functions no no official documentation AQL no
GeoMesa Apache License 2.0 yes yes (Simple Features) yes (JTS) no (manufacturable with GeoTools) no parts of the functions, a few examples with Simple Feature AccessinJava Virtual Machine and Apache Spark are all kinds of tasks solvable yes
H2 (H2GIS) LGPL 3 (since v1.3), GPL 3 before no yes (custom, no raster) Simple Feature Access and custom functions for H2Network yes no yes (homepage) SQL no
Ingres GPL or proprietary yes (if extension is installed) yes (custom, no raster) Geometry Engine, Open Source[21] no with MapScript just briefly with C and OME no
Neo4J-spatial[22] GNU affero general public license no yes (Simple Features) yes (contain, cover, covered by, cross, disjoint, intersect, intersect window, overlap, touch, within and within distance) no no just briefly fork of JTS no
PostgreSQL with PostGIS GNU General Public License no yes (Simple Features and raster) yes (Simple Feature Access and raster functions) yes yes detailed SQL, in connection with R no
Postgres-XL with PostGIS Mozilla public license and GNU general public license yes yes (Simple Features and raster) yes (Simple Feature Access and raster functions) yes yes PostGIS: yes, Postgres-XL: briefly SQL, in connection with RorTclorPython no
Rasdaman server GPL, client LGPL, enterprise proprietary yes just raster raster manipulation with rasql yes with Web Coverage ServiceorWeb Processing Service detailed wiki own defined function in enterprise edition no
RethinkDB AGPL yes yes
  • distance
  • getIntersecting
  • getNearest
  • includes
  • intersects
no no official documentation[23] forking no

See also

[edit]

Notes

[edit]
  1. ^ The term "geodatabase" may also refer specifically to a set of proprietary spatial database formats, Geodatabase (Esri).

References

[edit]
  1. ^ McKee, Lance (2016). "OGC History (detailed)". OGC. Retrieved 2016-07-12. [...] 1997 [...] OGC released the OpenGIS Simple Features Specification, which specifies the interface that enables diverse systems to communicate in terms of 'simple features' which are based on 2D geometry. The supported geometry types include points, lines, linestrings, curves, and polygons. Each geometric object is associated with a Spatial Reference System, which describes the coordinate space in which the geometric object is defined.
  • ^ OGC Homepage
  • ^ Kresse, Wolfgang; Danko, David M., eds. (2010). Springer handbook of geographic information (1. ed.). Berlin: Springer. pp. 82–83. ISBN 9783540726807.
  • ^ Yue, P.; Tan, Z. "DM-03 - Relational DBMS and their Spatial Extensions". GIS&T Body of Knowledge. UCGIS. Retrieved 5 January 2023.
  • ^ Zhang, X.; Du, Z. "DM-66 Spatial Indexing". GIS&T Body of Knowledge. UCGIS. Retrieved 5 January 2023.
  • ^ Güting, Ralf Hartmut; Schneider, Markus (2005). Moving Objects Databases. Morgan Kaufmann. p. 262. ISBN 9780120887996.
  • ^ "PostGIS Function Reference". PostGIS Manual. OSGeo. Retrieved 4 January 2023.
  • ^ [1] Drill Geospatial Function Documentation
  • ^ "Geo queries | Elasticsearch Guide [7.15] | Elastic".
  • ^ H2 geometry type documentation
  • ^ H2 create spatial index documentation
  • ^ "GeoSpatial – MonetDB". 4 March 2014.
  • ^ "MySQL 5.5 Reference Manual - 12.17.1. Introduction to MySQL Spatial Support". Archived from the original on 2013-04-30. Retrieved 2013-05-01.
  • ^ OpenLink Software. "9.34. Geometry Data Types and Spatial Index Support". Retrieved October 24, 2018.
  • ^ OpenLink Software (2018-10-23). "New Releases of Virtuoso Enterprise and Open Source Editions". Retrieved October 24, 2018.
  • ^ "OGC Certified PostGIS".
  • ^ "Command reference – Redis".
  • ^ "SAP Help Portal" (PDF).
  • ^ "RTREE". tarantool.org. Archived from the original on 2014-12-13.
  • ^ "HP Vertica Place". 2 December 2015.
  • ^ "GEOS".
  • ^ "Neo4j Spatial is a library of utilities for Neo4j that facilitates the enabling of spatial operations on data. In particular you can add spatial indexes to already located data, and perform spatial". GitHub. 2019-02-18.
  • ^ "ReQL command reference - RethinkDB".
  • Further reading

    [edit]
    [edit]
    Retrieved from "https://en.wikipedia.org/w/index.php?title=Spatial_database&oldid=1228985967#Spatial_index"

    Categories: 
    Spatial databases
    Geometric algorithms
    Hidden categories: 
    Articles with short description
    Short description is different from Wikidata
    All articles with unsourced statements
    Articles with unsourced statements from July 2016
    Articles with GND identifiers
    Articles with J9U identifiers
    Articles with LCCN identifiers
     



    This page was last edited on 14 June 2024, at 06:47 (UTC).

    Text is available under the Creative Commons Attribution-ShareAlike License 4.0; additional terms may apply. By using this site, you agree to the Terms of Use and Privacy Policy. Wikipedia® is a registered trademark of the Wikimedia Foundation, Inc., a non-profit organization.



    Privacy policy

    About Wikipedia

    Disclaimers

    Contact Wikipedia

    Code of Conduct

    Developers

    Statistics

    Cookie statement

    Mobile view



    Wikimedia Foundation
    Powered by MediaWiki