You are on page 1of 19

Base de datos espacial - PostGIS

¿Qué es Base de datos espacial?


La base de datos espacial es un sistema colector/administrador de datos organizados de tal
manera que sirvan efectivamente para una o varias aplicaciones SIG. Esta base de datos
comprende la asociación entre sus dos principales componentes:

Atributos o datos No Espaciales - Datos Espaciales


¿Qué es PostGIS?
• POSTGIS es una extensión del sistema de base de
datos PostgreSQL, que permite el almacenamiento
y la manipulación de objetos geométricos
vectoriales en bases de datos; incluyendo además,
el Sistema de Referencia Espacial; lo que la
convierte en una base de datos espacial para su
utilización en Sistemas de Información Geográfica
(SIG). Está publicado bajo licencia GNU/GPL y
ha sido certificado, en 2006 por el Open
Geospatial Consortium (OGC), lo que garantiza la
interoperabilidad con otros sistemas.
¿Por qué utilizar PostGIS?
PostGIS convierte al sistema de administración de bases de datos PostgreSQL en una base de
datos espacial mediante la adición de tres características: tipos de datos espaciales, índices
espaciales y funciones que operan sobre ellos. Debido a que está construido sobre PostgreSQL,
PostGIS hereda automáticamente las características de las bases de datos empresariales, así
como los estándares abiertos que implementan un Sistema de Información Geográfica dentro
del motor de base de datos.
• Permite importar y exportar datos fácilmente a través de varias herramientas.
• Existe un gran número de clientes SIG de escritorio y servidores de mapas web que pueden
trabajar con PostGIS.
• Actualmente es la base de datos espacial de código abierto más utilizada.
Características de PostGIS

• Miles de funciones espaciales, comandos


que inician con el prefijo Spatial type
“ST_” en el PostgreSQL.
• Table-spaces, esquemas.
• Índice espacial R-Tree.
POSTGIS

Tipos de datos espaciales Funciones espaciales Índices espaciales

Geometry Grupos de funciones Geometry

POINT CONVERSION R-TREE

LINESTRING GESTION BRIN

POLYGON RECUPERACION

COLECCTION COMPARACION

GENERACION
Geometrías

• Puntos

• Líneas

• Polígonos
Tipo de datos espaciales
• Un dato espacial es una variable asociada a
una localización del espacio. Una base de
datos común tiene cadenas, números y
fechas. Una base de datos espacial añade
tipos espaciales para representar las
características geográficas . En muchos
aspectos, los tipos de datos espaciales
pueden entenderse simplemente como
formas. Se pueden operar a través de una
interfaz grafica o aplicaciones (SIG).
Como comentábamos, los datos espaciales representan información sobre la ubicación física y
la forma de objetos geométricos. Estos objetos pueden ser ubicaciones de punto u objetos más
complejos como países, carreteras o lagos. PostGIS admite datos espaciales de tipo Geometry
y el tipo de datos Geography.

Geography Geometry
• El tipo geography representa los datos en un sistema de • El tipo geometry representa los datos en un sistema de
coordenadas de tierra redonda. coordenadas euclidiano (plano)
Si los datos son geográficamente compactos (contenida dentro
de un estado, distrito o ciudad), utilice el tipo de geometría
cartesiana con una proyección que tenga sentido con sus datos.

Si es necesario medir la distancia con un conjunto de


datos que se dispersa geográficamente que cubre gran parte
del mundo (países, continentes), utilizar el tipo de geografía.
Índices Espaciales
• Recordemos que el índice espacial es una
de las tres características clave de una base
de datos espacial. Los índices son los que
hacen uso de una base de datos espacial
para grandes conjuntos de datos
posible. Sin indexación, cualquier
búsqueda de una característica requeriría
una "secuencia de exploración" de cada
registro de la base de datos.
Funciones espaciales
La mayor parte de las funciones espaciales pueden ser
Una base de datos ordinaria proporciona funciones agrupadas en una de las siguientes cinco categorías:
para manipular los datos en una consulta. Estas • Conversión: Funciones que convierten las
funciones incluyen la concatenación de cadenas, geometrías a otros formatos externos
operaciones matemáticas o la extracción de • Gestión: Tareas administrativas de PostGIS
información de las fechas. Una base de datos espacial
• Recuperación: Obtienen propiedades y medidas de
proporciona un completo juego de funciones para las geometrías.
poder realizar análisis con los objetos espaciales:
analizar la composición del objeto, determinar su
• Comparación: Comparan dos geometrías y
obtienen información sobre su relación espacial.
relación espacial con otros objetos, transformarlo, etc.
• Generación: Generan geometrías a partir de otros
tipos de datos.
ST_Transform
SELECT ST_AsText(ST_Transform(geom,4326)) FROM nyc_subway_stations WHERE name = 'Broad St';

CONVERSION
ST_Transform Devuelve una nueva geometría con sus
(geometría) coordenadas transformadas para el SRID
referencia el parámetro de número entero.
AddGeometryColumn
SELECT AddGeometryColumn ('my_schema','my_spatial_table','geom',4326,'POINT',2);

GESTION
AddGeometryColumn Añade una columna de geometría a una tabla
(varchar, número entero, existente de atributos.
varchar entero)
postgis_version () Devuelve opciones de número de versión
PostGIS y en tiempo de compilación.
ST_Area
SELECT name,ST_Area(geom) FROM geometries WHERE name LIKE 'Polygon%';

RECUPERACION

ST_Perimeter (geometría) Devuelve la longitud de todos los anillos

ST_Length (cadena lineal) Devuelve la longitud de la cadena de líneas

ST_Area (geometría) Devuelve el área de los polígonos

ST_GeometryType Devuelve el tipo de la geometría


(geometría)

ST_NRings (geometría Devuelve el número de anillos (por lo general


1, más si hay agujeros)

ST_GeometryType Devuelve el tipo de geometría del valor


ST_Geometry.
ST_Intersects
Select a.gid, b.geom FROM table1 as a, table2 as b WHERE st_intersects(a.geom, b.geom);

COMPARACION
ST_Equals (geometría Comprueba la igualdad espacial de dos
A, B geometría) geometrías.
ST_Intersects Devuelve t (TRUE) si las dos formas tienen algún
(geometría A, B espacio en común, es decir, si sus límites o
geometría) interiores forman intersección.
ST_Touches Comprueba si dos geometrías se tocan en sus
límites, pero no se cruzan en su interior
ST_Within (geometría Devuelve TRUE si la primera geometría está
A, B geometría) completamente dentro de la segunda
geometría. ST_Within pruebas para el resultado
opuesto exacto de ST_Contains.
ST_Distance (geometría Calcula la menor distancia entre dos geometrías y
A, B geometría) devuelve como un flotador. Esto es útil para
informar realmente la distancia entre los objetos.
ST_DWithin Devuelve verdadero si las geometrías son dentro
de la distancia especificada (radio) el uno del otro.
ST_Equals (geometría Comprueba la igualdad espacial de dos
A, B geometría) geometrías.
Dimensionally Extended 9-Intersection Model

You might also like