공간 데이터베이스
Spatial database공간 데이터베이스는 기하학적 공간에서 정의된 객체를 나타내는 공간 데이터와 이러한 데이터를 쿼리 및 분석하기 위한 도구를 포함하도록 강화된 범용 데이터베이스(일반적으로 관계형 데이터베이스)입니다.대부분의 공간 데이터베이스는 점, 선 및 폴리곤과 같은 단순한 기하학적 객체를 표현할 수 있습니다.일부 공간 데이터베이스는 3D 객체, 토폴로지 커버리지, 선형 네트워크 및 TIN(Triangulated Orgular Network)과 같은 보다 복잡한 구조를 처리합니다.일반적인 데이터베이스는 다양한 수치 및 문자 유형을 관리하기 위해 개발되었지만, 이러한 데이터베이스는 공간 데이터 유형을 효율적으로 처리하기 위해 추가 기능을 필요로 하며, 개발자들은 종종 지오메트리 또는 피쳐 데이터 유형을 추가했습니다.OGC(Open Geospatial Consortium)는 Simple Features 규격([1]1997년에 처음 발표됨)을 개발하고 데이터베이스 시스템에 [2]공간 기능을 추가하기 위한 표준을 설정합니다.SQL/MM Spatial ISO/IEC 표준은 SQL/MM 멀티미디어 표준의 일부이며 순환 [3]보간을 지원하는 데이터 유형으로 단순 기능 표준을 확장합니다.
지오다타베이스
지오다타베이스(지리적 데이터베이스 및 지리공간 데이터베이스)는 국가, 행정 구역, 도시 및 관련 정보와 같은 지리적 데이터의 데이터베이스입니다.이러한 데이터베이스는 사용자 정의 목적으로 방문자의 위치를 식별하려는 웹 사이트에 유용할 수 있습니다.
특성.
데이터베이스 시스템은 인덱스를 사용하여 신속하게 값을 검색하지만, 이러한 데이터 인덱싱 방법은 공간 쿼리에 적합하지 않습니다.대신 공간 데이터베이스는 공간 색인을 사용하여 데이터베이스 작업 속도를 높입니다.
공간 데이터베이스는 SELECT 문과 같은 일반적인 SQL 쿼리 외에도 다양한 공간 작업을 수행할 수 있습니다.Open Geospatial Consortium 표준에는 다음과 같은 작업이 지정되어 있습니다.
- 공간 측정: 선 길이, 폴리곤 면적, 지오메트리 간 거리 등을 계산합니다.
- 공간 기능:기존 피쳐를 수정하여 새로운 피쳐를 작성합니다(예: 피쳐 주위에 버퍼를 제공하거나 피쳐를 교차시키는 등).
- 공간 술어:지오메트리 간의 공간 관계에 대한 참/거짓 쿼리를 허용합니다.예를 들어, "두 개의 폴리곤이 겹치나요?" 또는 "매립지를 건설하려는 지역에서 1마일 이내에 거주지가 있나요?" 등이 있습니다(DE-9 참조).IM)
- 지오메트리 생성자: 도형을 정의하는 정점(점 또는 노드)을 지정하여 새 지오메트리를 작성합니다.
- 옵서버 기능:원의 중심 위치와 같은 피쳐에 대한 특정 정보를 반환하는 쿼리입니다.
일부 데이터베이스는 특히 MongoDB 및 CouchDB와 같은 NoSQL 시스템의 경우 이러한 작업의 단순하거나 수정된 집합만 지원합니다.
공간 색인
공간 인덱스는 공간 쿼리를 최적화하기 위해 공간 데이터베이스(공간에 있는 객체와 관련된 정보를 저장하는 데이터베이스)에서 사용됩니다.기존 지수 유형은 두 점이 얼마나 다른지, 또는 점이 관심 공간 영역에 속하는지와 같은 공간 쿼리를 효율적으로 처리하지 않는다.일반적인 공간 인덱스 방법에는 다음이 포함됩니다.
- 이진 공간 파티션(BSP-Tree):하이퍼플레인으로 공간을 분할합니다.
- BVH(Bounding Volume Hierarchy)
- 지오해시
- 그리드(공간 색인)
- HHCode
- 힐베르트 R-트리
- kd 트리
- m-tree : m-tree 인덱스를 사용하면 임의의 메트릭을 사용하여 복잡한 오브젝트에 대한 유사성 쿼리를 효율적으로 해결할 수 있습니다.
- 옥트리
- PH 트리
- 쿼드 트리
- R-tree: 일반적으로 공간 [4]데이터를 인덱싱하는 데 선호되는 방법입니다.객체(도형, 선 및 점)는 MBR(Minimum Bounding 직사각형)을 사용하여 그룹화됩니다.오브젝트는 인덱스 내의 MBR에 추가되므로 크기가 가장 적게 증가합니다.
- R+ 트리
- R* 트리
- UB 트리
- X 트리
- Z 차수(곡선)
공간 쿼리
공간 조회는 지오다타베이스를 포함한 공간 데이터베이스에서 지원되는 특수한 유형의 데이터베이스 조회입니다.쿼리는 공간 외 SQL 쿼리와 몇 가지 중요한 점에서 다릅니다.가장 중요한 두 가지는 점, 선 및 폴리곤과 같은 지오메트리 데이터 유형을 사용할 수 있도록 하고 이러한 쿼리는 이러한 지오메트리 간의 공간 관계를 고려한다는 것입니다.
조회에 대한 함수 이름은 지오데이터베이스에 따라 다릅니다.다음 목록에는 Post에 내장된 일반적으로 사용되는 기능이 포함되어 있습니다.포스트그레인 무료 지오다타베이스인 GISSQL 확장('기하학'이라는 용어는 점, 선, 상자 또는 기타 2차원 또는 3차원 형상을 나타냅니다):
함수 프로토타입: functionName(파라미터): 반환 유형
- 거리(기하학, 지오메트리) : 숫자
- 등호(기하학, 지오메트리): 부울
- 분리(기하학, 지오메트리): 부울
- 교차(기하학, 지오메트리): 부울
- 터치(기하학, 지오메트리): 부울
- 크로스(기하학, 지오메트리): 부울
- 겹침(기하학, 지오메트리): 부울
- 포함(기하학, 지오메트리): 부울
- 길이(기하학) : 숫자
- 면적(기하학) : 수
- 중심(기하학) : 기하학
공간 데이터베이스 관리 시스템
목록.
- AllegroGraph – Resource Description Framework 데이터의 [citation needed]2차원 지리공간 좌표를 효율적으로 저장 및 검색하는 메커니즘을 제공하는 그래프 데이터베이스입니다.SPARQL 쿼리의 확장 구문이 포함되어 있습니다.
- ArangoDB - 지리 인덱스 기능을 제공하는 다중 모델 데이터베이스입니다.
- Apache Drill - 대규모 데이터 세트를 쿼리하기 위한 MPP SQL 쿼리 엔진입니다.드릴은 Postgre와 유사한 공간 데이터 유형 및 기능을 지원합니다.SQL.
- 캘리퍼는 공간 데이터 유형, 함수 및 유틸리티를 사용하여 Raima Data Manager를 확장합니다.
- CouchDB는 Geocouch라는 플러그인으로 공간적으로 활성화할 수 있는 문서 기반 데이터베이스 시스템입니다.
- Elastic Search는 위도/론 쌍을 지원하는 geo_point 필드와 점, 선, 원, 폴리곤, 멀티 폴리곤 [6]등을 지원하는 geo_shape 필드라는 두 가지 유형의 지리 데이터를 지원하는 문서 기반 데이터베이스 시스템입니다.
- GeoMesa는 Apache Acumulo 및 Apache Hadoop(Apache HBase, Google Bigtable, Apache Cassandra 및 Apache Kafka도 지원)을 기반으로 구축된 클라우드 기반 시공간 데이터베이스입니다.GeoMesa는 OGC Simple Features와 GeoServer 플러그인을 모두 지원합니다.
- H2는 버전 1.3.173(2013-07-28) 현재 지오메트리[7] 유형과 공간 색인을[8] 지원합니다.Maven Central에서 사용할 수 있는 H2GIS라는 확장 기능은 OGC Simple Features를 모두 지원합니다.
- IBM DB2의 모든 에디션을 공간적으로 활성화하여 Open을 구현할 수 있습니다.SQL 공간 유형 및 기능을 갖춘 GIS 공간 기능.
- IBM Informix Geodetic 및 Spatial Datablade 확장 기능은 사용 시 자동으로 설치되며 Informix의 데이터 유형을 확장하여 여러 표준 좌표계와 RTree 인덱스 지원을 포함합니다.지오데틱 및 공간 데이터는 Informix의 Timeseries 데이터 지원에도 통합되어 시간에 따라 움직이는 물체를 추적할 수 있습니다.
- Linter SQL Server는 Open에 따라 공간 유형 및 공간 기능을 지원합니다.GIS 사양
- Microsoft SQL Server는 버전 2008부터 공간 유형을 지원합니다.
- MonetDB용 MonetDB/GIS 확장은 관계형 컬럼스토어 데이터베이스에 OGS Simple [9]Features를 추가합니다.
- MySQL DBMS는 데이터형 지오메트리와 Open에 따라 구현된 일부 공간 함수를 구현합니다.GIS [10]사양그러나 MySQL 5.5 이전 버전에서는 공간 관계를 테스트하는 함수가 실제 지오메트리가 아닌 최소 경계 직사각형으로 작동하도록 제한됩니다.MySQL 5.0.16 이전 버전은 MyISAM 테이블의 공간 데이터만 지원했습니다.MySQL 5.0.16에서는 InnoDB, NDB, BDB, ARCHIVE도 공간 기능을 지원합니다.
- Neo4j – B-tree, Quadtree 및 Hilbert가 그래프에서 직접 곡선을 그리면서 1D 및 2D 인덱스를 구축할 수 있는 그래프 데이터베이스
- OpenLink Virtuoso는 버전 6.01.3126 [11]이후 SQL/MM을 지원하며 Open Source Edition 7.2.6 및 Enterprise Edition 8.2.0의[12] GeoSPARQL을 포함한 대폭적인 확장 기능을 갖추고 있습니다.
- Oracle Spatial
- PostgreSQL DBMS(데이터베이스 관리 시스템)는 Post 확장자를 사용합니다.표준화된 데이터 유형 지오메트리 및 해당 기능을 포함하여 OGC 호환 공간 기능을 구현하기 위한 GIS.
- Geo [14]API를 사용한 Redis.
- ReconnoteDB는 지리공간 인덱스를 2D로 지원합니다.
- SAP HANA는 SPS08을 [15]통해 지리 공간을 지원합니다.
- Smallworld VMDS, 네이티브 GE Smallworld GIS 데이터베이스
- Boeing의 Spatial Query Server는 Sybase ASE를 공간적으로 활성화합니다.
- SpatiaLite는 Sqlite를 공간 데이터 유형, 함수 및 유틸리티로 확장합니다.
- Tarantool은 RTREE [16]인덱스를 사용하여 지리 공간 쿼리를 지원합니다.
- Teradata Geospatial은 데이터 웨어하우스 시스템에 2D 공간 기능(OGC 호환)을 포함합니다.
- HP Vertica의 지리공간 확장 버전인 Vertica Place는 OGC 준거 공간 기능을 관계형 컬럼 스토어 [17]데이터베이스에 추가합니다.
공간 데이터 처리를 위한 자유 시스템 표
DBS | 면허증. | 분산 | 공간 객체 | 공간 기능 | PostgreSQL 인터페이스 | UMN MapServer 인터페이스 | 문서 | 수정 가능 | HDFS |
---|---|---|---|---|---|---|---|---|---|
아파치 드릴 | Apache 라이센스 2.0 | 네. | 네. | yes - 지리공간 함수 문서 드릴 | 네. | 아니요. | 공식 문서 | ANSI SQL | 네. |
아랑고DB | Apache 라이센스 2.0 | 네. | 네. | 예 - 기능 개요 쿼리 언어 기능 | 아니요. | 아니요. | 공식 문서 | AQL | 아니요. |
지오메사 | Apache 라이센스 2.0 | 네. | ○(심플한 기능) | ○(JTS) | 없음(GeoTools로 제조 가능) | 아니요. | 기능의 일부, 몇 가지 예 | Java Virtual Machine의 Simple Feature Access와 Apache Spark는 모두 해결 가능한 작업입니다. | 네. |
H2(H2GIS) | 이전 버전에서는 LGPL 3(v1.3 이후), GPL 3 | 아니요. | ○(커스텀, 래스터 없음) | H2 Network 용 심플한 기능 액세스 및 커스텀 기능 | 네. | 아니요. | ○(표준) | SQL | 아니요. |
잉그레스 | GPL 또는 독자 사양 | yes(확장이 설치되어 있는 경우) | ○(커스텀, 래스터 없음) | 지오메트리 엔진, 오픈[18] 소스 | 아니요. | MapScript 사용 | 아주 잠깐 | C 및 OME 사용 | 아니요. |
Neo4J[19] 공간 | GNU 어페로 일반 공중 라이선스 | 아니요. | ○(심플한 기능) | 예(예, 커버, 커버 대상, 교차, 분리, 교차, 교차 창, 겹침, 터치, 거리 내 및 거리 내) | 아니요. | 아니요. | 아주 잠깐 | JTS의 포크 | 아니요. |
PostgreSQL과 PostGIS | GNU 일반 공중 라이선스 | 아니요. | ○(심플한 기능과 래스터) | ○(간단한 기능 액세스 및 래스터 기능) | 네. | 네. | 세부적 | SQL, R과 연결 | 아니요. |
Postgres-XL (Post 포함)GIS | Mozilla Public License 및 GNU | 네. | ○(심플한 기능과 래스터) | ○(간단한 기능 액세스 및 래스터 기능) | 네. | 네. | PostGIS: 네, Postgres-XL: 간략하게 | R, TCL 또는 Python과 관련된 SQL | 아니요. |
라스다만 | 서버 GPL, 클라이언트 LGPL, 엔터프라이즈 전용 | 네. | 그냥 래스터 | rasql을 사용한 래스터 조작 | 네. | 웹 커버리지 서비스 또는 웹 프로세싱 서비스 포함 | 상세 Wiki | 엔터프라이즈 에디션에서 정의된 자체 기능 | 아니요. |
재고 DB | AGPL | 네. | 네. |
| 아니요. | 아니요. | 공식[20] 문서 | 포킹 | 아니요. |
「 」를 참조해 주세요.
- 지리정보시스템(GIS)
- GeoSPARQl
- 빙하 지질 데이터베이스
- 위치 정보
- 멀티미디어 데이터베이스
- 가장 가까운 네이버 검색
- 객체 기반 공간 데이터베이스
- 심플한 기능
- 공간 분석
- 공간 ETL
- 시공간 데이터베이스
레퍼런스
- ^ 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 홈페이지
- ^ Kresse, Wolfgang; Danko, David M., eds. (2010). Springer handbook of geographic information (1. ed.). Berlin: Springer. pp. 82–83. ISBN 9783540726807.
- ^ Güting, Ralf Hartmut; Schneider, Markus (2005). Moving Objects Databases. Morgan Kaufmann. p. 262. ISBN 9780120887996.
- ^ [1] 드릴 지리공간 함수 문서
- ^ "Geo queries Elasticsearch Guide [7.15] Elastic".
- ^ H2 지오메트리 타입 매뉴얼
- ^ H2 공간 색인 문서 생성
- ^ "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".
추가 정보
- 공간 데이터베이스: 프렌티스 홀, 샤시 셰카르, 산제이 차울라 투어, 2003 (ISBN 0-13-017480-7)
- 공간 데이터베이스 – GIS Philippe Rigaux, Michel Scholl 및 Agnes Voisard 응용 프로그램.Morgan Kaufmann Publishers. 2002 (ISBN 1-55860-588-6)
- 지리공간 빅데이터 푸리아 아미리안, 아나히드 바시리 및 애덤 윈스탠리의 데이터 관리 시스템 평가스프링거.2014년 (ISBN 978319091563)
외부 링크
- Postgre의 개요SQL PostGIS
- PostgreSQL POST서비스 지향 아키텍처의 구성요소로서의 GIS 비상대기상태
- Sajimon Abraham, P. Sojan Lal, Springer Berlin/Heidelberg-2008에 의해 발행된 도로망상의 물체를 이동하기 위한 트리거 기반 보안 경보 체계.
- 지오다타베이스 ArcGIS 리소스 센터 지오다타베이스 설명