• No se han encontrado resultados

Bases de datos espaciales Tema 1: Introducción

N/A
N/A
Protected

Academic year: 2021

Share "Bases de datos espaciales Tema 1: Introducción"

Copied!
20
0
0

Texto completo

(1)

Bases de datos espaciales

Tema 1: Introducción

Miguel Ángel Manso

ETSI en Topografía, Geodesia y Cartografía - UPM

Contenido: definiciones y conceptos

• Fundamentos (conceptos)

• Visión y clasificación general de los SGBD • Operaciones de las BBDD

• Arquitecturas Hw y Sw de BBDD • Estructura de los datos

(2)

Fundamentos

• Data Set

– A logical collection of values or database objects

• Database

– A logical collection of information that is interrelated, managed, and stored as a unit. A store for multiple data sets.

Fundamentos

• Data Model

– A conceptual description of the data

elements/objects and their relationships that are to be represented in a database

• Data Dictionary

– A description of the contents of a database including data entity and attribute code definitions

(3)

Ejemplo modelo de datos

(4)

Fundamentos

• Data Transparency

– Transparency means hiding the structure and relationships from applications

– When structure, relationships, or media change the impacts on applications are minimized

• Data Base Management System (DBMS)

– Provides for the input, storage, manipulation, query, and retrieval of data. A store for multiple databases.

Resumen: Base de datos y SGBD

• BBDD: Gran colección de datos interrelacionados

almacenados en un ordenador que dota de persistencia (ante cambios de Sw y Hw)

• SGBD: Sistema que proporciona persistencia, concurrencia, escalabilidad de datos, seguridad, integridad y eficiencia en las consultas

• Los SGBD facilitan: definición (modelado), implementación, manipulación, consulta y actualización

(5)

Visión simplificada de SGBD

• Objetivo:

– Dotar de

independencia sobre los datos

• Abstracción

– Nivel lógico – Nivel físico

Spatial database with application to GIS, Rigaux (pg 5)

Spatial database Systems, Yeung(pg 27)

Clasificación de SGBD

(6)

Operaciones de las BBDD (Índice)

• Almacenamiento y manipulación • Seguridad e integridad

• Consulta

• Transacciones

• Respaldo (Backup) y recuperación • Replicación y sincronización • SQL

Almacenamiento y recuperación

• Tipos de almacenamiento: – Primario – Secundario – Terciario

• Secundario y terciario: bloques de disco

• Primario: memoria principal y ficheros (buffer & file manager)

(7)

Almacenamiento

Memoria Caché Memoria RAM Disco Magnético Disco Óptico Cinta Respaldo de datos Auditoria y tablas Optimizar consultas

Fuente: (Carlos Castillo UPF 2007)

Seguridad

• Seguridad: operaciones que puede realizar un perfil de usuario. Dos modelos:

– discrecional (operaciones que puede hacer un usuario sobre un determinado objeto)

– responsables (mandatory) (usuarios se clasifican por niveles o roles y cada nivel define reglas o restricciones)

(8)

Integridad

• Objetivo: mantener las restricciones de integridad. Modelos:

– Restricciones de dominio (tipo de dato y rangos de valores)

– Claves y relaciones (valores únicos y existencia de la clave en otras tablas: integridad referencial) – Restricciones de integridad semántica (reglas

normalmente lógicas, que definen si se puede o no insertar un elemento en función del estado representado en la base de datos)

Referencia integridad semántica:

http://www.monografias.com/trabajos58/procesamiento-datos/procesamiento-datos2.shtml

Consultas (Índice)

• Las operaciones se pueden clasificar en:

– Selección (SELECT) – Proyección (PROJECT) – Combinación (JOIN) – Producto (PRODUCT) – Unión (UNION) – Intersección (INTERSECT) – Diferencia (DIFFERENCE) – División (DIVIDE)

(9)

SELECCIÓN y PROYECCIÓN

• Selección:

– SELECT FROM

– SELECT FROM ORDER BY – SELECT PREDICADO FROM

• Predicado: ALL, TOP, DISCTINCT, DISCTINROW

• Proyección:

– SELECT atributos FROM

COMBINACIÓN (JOIN)

• JOIN natural

(10)

PRODUCTO

• Producto cartesiano, genera la combinación de filas de la primera tabla con las de la segunda

UNION

SELECT column_name(s) FROM table_name1 UNION [ALL]

SELECT column_name(s) FROM table_name2

(11)

INTERSECCIÓN

SELECT * FROM Orders WHERE Quantity BETWEEN 1 AND 100

INTERSECT

SELECT * FROM Orders WHERE Quantity BETWEEN 50 AND 200;

DIFERENCIA

SELECT * FROM Orders WHERE Quantity BETWEEN 1 AND 100

EXCEPT | MINUS

SELECT * FROM Orders WHERE Quantity BETWEEN 50 AND 75;

(12)

DIVISION

• r ÷ s is used when we wish to express queries with “all” • Ejemplo: Which persons have a bank account at ALL

the banks in the country?

• Se construye con NOT EXIST seguido NOT IN, • O bien con dos NOT EXIST consecutivos.

Ejemplos de DIVISION: http://web.abo.fi/~soini/divisionEnglish.pdf

Transacciones

• Operaciones indivisibles. Principios: – Atomicidad – Aislamiento – Durabilidad o permanencia – Consistencia en la preservación • Mecanismos de control: – Control de concurrencia

– Auditoria de transacciones (logging) – Confirmación de transacciones (commit) – Vuelta atrás (rollback)

(13)

Respaldo y recuperación

• Backup:

– Hot backup – Cold backup

• Restore

– Only Cold backup

Replicación y sincronización

• Objetivos:

– Mejorar el rendimiento – Mejorar la disponibilidad

de un modo transparente para los usuarios • Configuración: maestro/s + esclavos • Métodos de replicación:

– Instantánea (snapshot) – Fusión (merging)

(14)

Lenguaje de Manipulación de datos

• La manipulación (carga, mantenimiento y consulta/explotación) se realiza con un lenguaje de manipulación de datos (DML) • El DML más extendido es SQL, considerado un

lenguaje declarativo en el que el usuario

indica los resultados esperados no la forma de obtenerlos

• SQL tiene bases matemáticas y posibilita cálculo relacional y álgebra relacional

SQL statements: modos de uso

• Procesamiento interactivo (consola tipo SQL+, etc.)

• Embebido en un lenguaje de programación (Java, C++, etc.)

• Mediante llamadas a nivel de interfaces definidas a nivel de S.O.

• Usando API como JDBC and SQLJ (Java) • Aplicaciones independientes que llaman a

(15)

SQL statements types

• Database query (SELECT .. FROM .. WHERE ..)

• Data definition (CREATE TABLE, ALTER TABLE .. ADD ..)

• Data manipulation (INSERT INTO .., DELETE, UPDATE)

• Database connection and access control (CONNECT, CREATE ROLE, GRANT)

• Data sharing (CREATE TRIGGER)

• Data integrity (CONSTRAINT UNIQUE, CHECK)

Arquitecturas Hw y Sw de BBDD (Índice)

• Centralizada • Distribuida • Modelos de distribución de BBDD • Módulos del Sw de BBDD • Arquitectura Web de BBDD

(16)

Arquitecturas centralizada de BBDD

Spatial database Systems, Yeung (pg 42)

(17)

Modelos de distribución de BBDD

Spatial database Systems, Yeung (pg 45)

Módulos de Sw de BBDD

(18)

Arquitectura Web para BBDD

Spatial database Systems, Yeung (pg 48)

Estructura de los datos

• Lógica • Física • Índices

(19)

Estructura lógica de los datos

• The logical data structure is used in logical data modeling that aims to find the most

effective distribution of the data and data files inside the database

Spatial database Systems, Yeung (pg 50)

Estructura física de los datos

• Tipos de datos

– Básicos: Textos, numéricos y fechas

– Tipos de datos abstractos (ADT), este tipo de datos es el que usan los SGDB para almacenar nuevos tipos de datos como los espaciales

(20)

Índices en las BBDD

• Objetivo: acelerar las búsquedas • B-Tree el más común (Balanced)

Referencias

Documento similar

PostGIS convierte el Sistema Gestor de Bases de Datos PostgreSQL en una base de datos espacial añadiendo soporte para estas tres funcionalidades: tipos espaciales, índices espaciales

RIBEIRO, y respecto al comercio exterior su Consejo Regulador nos ha facilitado los datos del 85% de las bodegas inscritas que son las que han suministrado la información al

T02.019- Fecha y usuario del pedido, código, nombre, marca, pvp y precio de venta de los artículos solicitados en el pedido número 1 que sean televisores... select cod,nombre,'tiene

Estos planes de recolo- cación deben garantizar a las personas despedi- das un servicio continuado durante un periodo mínimo de seis meses que incluya medidas de formación

La figura siguiente muestra un nivel de jerarquía múltiple donde un registro DEPARTAMENTO se puede declarar miembro del conjunto DIVIS_DEPART y propietario del conjunto

Si para construir y evaluar una FBF necesitamos una interpretación y un LPO, para todo esquema de base de datos relacional (BDR) y para cada estado de base de datos

[r]

Cuando se realiza una revisión integrativa entorno a un tema como el de la sintomatología presente en los pacientes con enfermedad oncológica avanzada, que motivan el