Download datos - RedGeomatica

Document related concepts

Normalización de bases de datos wikipedia , lookup

Transcript
Tema 12
(III)
MODELOS DE
BASES DE DATOS
ALFANUMÉRICOS
Modelo de datos Alfanuméricos
“Un modelo de datos es un conjunto de
conceptos que sirven para describir la
estructura de una base de datos: los
datos, las relaciones entre los datos y las
restricciones que deben cumplirse sobre
los datos”
Atributos







Nominales: nombres de las cosas (Ej. topónimos).
Ordinales o numéricos: se representan como
valor único (precio de una finca), o como valor total
(número de hospitales en un municipio).
Densidades: muy usado para los datos
demográficos (número de habitantes/área de
municipio).
Categorías: grupo de elementos similares
(carreteras [autopistas, autovías, senderos, ...]).
Proporciones: se agrupan los valores por
categorías y se dividen por el total (población
joven/población total).
Razones: expresan la relación entre 2 cantidades
(habitantes/número de hospitales).
Rangos: usado cuando es difícil o se está
representando una combinación de factores (valor
escénico del paisaje, riesgos, etc.).
Definiciones Iniciales

Base de Datos:
• Colección de datos, almacenados en soporte no volatil y con
redundancia controlada.
• Los datos, que han de ser compartidos por diferentes usuarios
y aplicaciones, deben mantenerse independientes de ellos, y su
definición (estructura de la base de datos) única y almacenada
junto con los datos.
• Se ha de apoyar en un modelo de datos, el cual ha de permitir
captar las interrelaciones y restricciones existentes en el mundo
real.

Sistema de Gestión de Bases de Datos (SGBD)
• Conjunto de programas que permiten la implantación, acceso y
mantenimiento de la BD.

Sistema Base de Datos.
• SGBD + DATOS + USUARIOS
Objetivos del DBMS (I)
1. Independencia Física:
• Almacenamiento físico de los datos
independiente del diseño lógico de la BD.
2. Independencia Lógica:
• Cada aplicación organiza los datos según sus
propios esquemas y accede a los datos que le
son necesarios.
3. Diseño y utilización orientada a usuario:
• Datos y aplicaciones accesibles a los usuarios
de la manera más amigable.
4. No Redundancia:
• Los datos no están duplicados.
Objetivos del DBMS (II)
5. Centralización:
•
Los datos se gestionan de forma centralizada e
independiente de las aplicaciones.
6. Consistencia:
•
Los datos son consistente: no adolecen de
fallos lógicos.
7. Fiabilidad:
•
Los datos están protegidos frente a fallos
fortuitos.
8. Seguridad:
•
No todos los datos son accesibles a todos los
usuarios
SGBD o DBMS
(Data Base Management System)
BIBLIOTECA
BIBLIOTECA
(LIBROS)
BIBLIOTECARIA
(GESTIÓN)
USUARIO
DATOS
-BD-
SGBD
DBMS
Ventajas del uso de DBMS

Respecto del usuario:
• Usuario final: puede acceder a los datos.
• Programador: elimina problemas de




Diseño lógico y físico.
Depuración de errores.
Mantenimiento del sistema.
Respecto del sistema:
• Control centralizado, fiabilidad, consistencia,
seguridad, ...
• Criterios de uniformización.
• Generación de nuevas aplicaciones.
• Equilibrio entre requerimientos.
Funciones de un DBMS (I)
1. Proporcionar un leguaje de definición de
datos (Definition Data Lenguage).
Generalmente es el SQL (Structured
Query Language).
2. Proporcionar un lenguaje de
manipulación de datos (Definition
Manipulation Lenguage). Por ejemplo:
Visual Basic de Aplicaciones
3. Proporcionar mecanismos para el
establecimiento de la seguridad:
•
•
Otorgar diferentes permisos de acceso y
manipulación.
Protección de accesos no autorizados,
mediante criptografía.
Funciones de un DBMS (II)
Mantener la integridad de la Base de Datos:
4.
•
•
5.
Definir reglas de integridad.
Controlar que se cumplan dichas reglas.
Gestión de la concurrencia:
•
•
6.
Ayuda a resolver conflictos cuando dos o más usuarios
están tratando de acceder a los mismos datos.
Si no tiene mecanismos para resolverlo, se bloquea el
sistema.
Recuperación ante fallos:
•
•
Hardware: cambio de voltaje, corriente, ...
Software: debido al sistema operativo, ...
Recuperación ante fallos



Las pérdidas accidentales se previene
mediante el mecanismo de transacción. Una
Transacción es una secuencia de operaciones
de manipulación sobre la BD.
Las transacciones tienen la propiedad de que
si se interrumpen antes de completarse, la BD
es restaurada a un estado de
auto-consistencia, usualmente el estado
anterior al inicio de la transacción.
La transacciones protegen los datos de fallos
de la corriente eléctrica, de la red y de la
concurrencia de usuarios.
¿Qué permite el DBMS?
1. Que el usuario no tenga que
conocer la estructura interna de la
organización de la BD.
2. Evitar la duplicidad innecesaria de
los datos.
3. Que nadie sin autorización pueda
“apropiarse” o “manipular” un dato.
4. Que no se pierda ningún dato.
Acciones sobre la Bases de Datos (I)

Sin alteración de la BD.
• Realización de búsquedas.
• Realización de consultas.
Selecciona
los datos
requeridos
Muestra los
resultados
pedidos
BD
Búsqueda
SGBD
Petición de
Información
USUARIO
Acciones sobre la Bases de Datos (II)

Con alteración de la BD.
• Modificaciones.
• Borrados o Bajas.
• Incorporaciones.
Muestra los
resultados
pedidos
Confirmación
BD
SGBD
Modificación
y envio
USUARIO
Petición de
Información
Metodología de acciones sobre las
Bases de Datos (I)

Acción Directa sobre la BD.
Borrar
Añadir
Modificar
Metodología de acciones sobre las
Bases de Datos (II)

Gestión por extracción e inserción en la BD.
Extraer elementos
Modificar y/o borrar
Añadir
Insertar elementos
Gestión conjunta de las Bases de
Datos Alfanuméricas y Gráficas
Tipos de Estructuras BD



BD en Red.
BD Orientadas a Objeto.
BD Relaciónales.
Conceptos básicos de BD OO (I)



Las BD OO parten de una organización
jerarquizada de la BD (se crean “familias” de
objetos).
Las entidades geográficas son consideradas
“Objetos”.
Objeto:
• Colección de elementos y datos estructurados e
identificados por una referencia única (i.e.
Viviendas).
• Los OBJETOS se definen por sus variables
geográficas y temáticas, así como por los métodos
y operaciones que les afectan.
Conceptos básicos de BD OO (II)

Propiedad:
• Característica o atributo de un objeto (ej. referencia
catastral).

Clase o familia:
• Grupos de objetos con idénticas propiedades (ej. parcelas).

Método:
• Operación asociada a una clase (ej. cambiar propietario de
parcela).

Desencadenadores o “Demonios”:
• Procedimientos que se ejecutan de manera continua y que
inician una acción ante una condición determinada (ej.
cambiar código de término municipal).

Herencia:
• Transmisión de propiedades de una clase (Antecedente) hacia
una subclase (descendente) (ej. las parcelas heredan las
propiedades del planeamiento).
BD Relacionales (I)

Organización de los Datos en Tablas Bidimensionales, donde:
• Las Filas son los Registros.
• Las Columnas son los Atributos.
Propietarios
A
B
C
D
E
Comercios
A-8
F-7
N-9
J-8
Nº
4567
678
45678
4523
9098
Nº
678
45678
98
321
Edificio
Edificio A
Edificio A
Edificio J
DNI
16578913
34567433
23058091
45789455
Viviendas
R-78
R-79
W-99
DNI
55789345
34567466
45789471
Conceptos y definiciones

Entidad:

Atributo:

Identificador Unívoco o Clave Primaria:
conjunto de objetos que se pueden agrupar por
compartir propiedades, relaciones o aspectos de
comportamiento. Ej.: proveedor, estudiante, etc.
propiedad asociada a una entidad. Ej: la entidad
“estudiante” tiene de atributos DNI, nombre, apellido, tlf, ...
conjunto de atributos que identifican unívocamente a una
entidad dentro de un conjunto de entidades. Ej.: la entidad
“estudiante” tiene de clave el DNI.

Relación (Asociación):
conexión semántica entre dos
conjuntos de entidades. Ej: Propietarios con Parcelas.
Tipos de Relación
• UNO A UNO: cada entidad de la tabla A está
en relación con un objeto de la tabla B (Ej: DNI
(A) sólo se corresponde a una persona (B)).
• UNO A MUCHOS: cada entidad de A puede
estar en relación con muchos objetos de B (Ej:
un propietario puede tener más de una parcela).
• MUCHOS A MUCHOS: cada entidad de A
puede estar en relación con muchos objetos de B
y viceversa. [Es aconsejable que no se use esta
relación. Para ello se puede dividir en dos
relaciones uno a muchos] (Ej: Alumnos con
asignaturas).
Reglas de Integridad de los datos (I)

Restricciones de Dominio: especifican que
un valor de cada atributo debe ser un valor
perteneciente al dominio de ese atributo (ej: el
DNI tiene que ser un valor numérico).

Restricciones de Clave: todas las filas en
una tabla deben de ser únicas, es decir que dos
filas no pueden tener la misma combinación de
valores para todos sus atributos.

Integridad de Entidad: especifica que una
clave primaria no puede tener valores nulos.
Reglas de Integridad de los datos (II)

Integridad Referencial: se especifica entre
dos tablas y se usa para mantener la consistencia
entre las filas de las dos tablas. La regla de
integridad referencial especifica que una fila de una
tabla que haga referencia a otra tabla debe referirse
a una fila existente en esa tabla.

Clave Foránea: un atributo es clave foránea de
una tabla si satisface las siguientes condiciones:
• Los valores de CF tienen el mismo dominio de los valores
de la clave primaria de la otra tabla.
• Un valor de CF se presenta como un valor de la clave
primaria en otra tabla.
Modelo Entidad/Relación


Un Modelo es un proceso para crear
una representación lógica de la
estructura de los datos.
El modelo E-R fue introducido por
Peter Chen en 1976; consiste en
dividir entre:
• Entidades (Estudiante, Asignaturas).
• Relaciones (entre entidades).
Diagrama Entidad/Relación (I)

Esquema gráfico que permite describir
cualquier información formulada de
acuerdo con un modelo E/R.
Símbolos
LIBROS
ESCRIBE
Entidad
Conexión
Atributo
Uno a uno
Clave Primaria
Muchos a muchos
Uno a muchos
Diagrama Entidad/Relación (II)
Ejemplo de Diagrama

Matrícula de alumnos en un centro de la Universidad.
Hipótesis:
• Se considera una sola carrera.
• Se considera que un profesor pertenece a un solo
Departamento y que debe de pertenecer a alguno.
• Se considera que un profesor imparte varias asignaturas y
que una asignatura ha de estar impartida por al menos un
profesor.
• Las asignaturas tiene clases en días, horas y aulas
determinadas.
• Los alumnos se matriculan de al menos una asignatura y que
una asignatura puede tener varios alumnos matriculados.
• Todo Departamento debe tener un director que es profesor.
Diagrama Entidad/Relación (III)
Ejemplo de Diagrama

Análisis previo:
Entidades
A
t
r
i
b
u
t
o
s
Asignatura
Alumno
Profesor
Departamento
Aula
Cod-Asig
Nom-Alum
Nom-Prof
Nom-Dep
Cod-Aul
Nom-Asig
DNI
NRP
Cod-Dep
Capacidad
Créditos
Fecha-Naci
Area
Carácter
Dirección
Categoría
Curso
Becario
Relaciones
Participa
Carácter
Atributos
Matrícula
Alum.-Asig.
N:M
Calificación
Imparte
Prof.-Asig.
N:M
Clase
Asig.-Aula
N:M
Pertenece
Prof.-Dept.
N:1
Dirige
Prof.-Dept.
1:1
Día; Hora
Diagrama Entidad/Relación (IV)
Ejemplo de Diagrama
asignatura
Cod.-asig
Nombre
Creditos
Carácter
curso
imparte
Dia
hora
clase
matricula
pertenece
calificacion
aula
alumnos
DNI
Nombre
Edad
Dirección
Beca
Profesor
NRP
Nombre
Categoria
Area
dirige
Cod-aula
capacidad
departamento
Cod.-dep
nombre
Diagrama Entidad/Relación (V)
Paso del Modelo E/R al Modelo Relacional
• Conjuntos de Entidades  en Tablas


Cada entidad es una fila.
Atributos y clave primaria (hay que identificarla) son las
columnas.
• Relaciones  en Tablas


Cada Ocurrencia es una fila (relación que se produce).
Atributos
• Las claves primarias de las entidades que intervienen.
• Los atributos de la relación (si los hubiera).

Si no hay atributos las relaciones son
• Muchos a muchos  la unión de las dos claves (con repetición).
• Uno a muchos  La clave correspondiente a muchos.
• Uno a uno  La unión de las dos claves (sin repetición).

Si hay atributos las relaciones dependen de la semántica de
los mismos.
Diagrama Entidad/Relación (VI)
Paso del Modelo E/R al Modelo Relacional
Asignatura
(Cod-Asig,Nom-Asig,Créditos,Carácter,Curso)
Profesor (NRP,Nom-Prof, Categoría,Area)
Alumno
(DNI,Nom-Alum,Fecha-Naci,Dirección,Becario)
Aula (Cod-aula,Capacidad)
Departamento (Cod-Dep,Nom-Dep)
Matrícula (DNI,Cod-Asig,Calificación)
Clase (Cod-Asig,Cod-Aula,Dia,Hora)
Imparte (NRP,Cod-Asig)
Pertenece (NRP,Cod-Dept)
Dirige (NRP,Cod-Dept)
Aplicación de las funciones del
álgebra relacional
• Operadores Monarios: selección y
proyección.
• Operadores Binarios: unión, intersección,
diferencia, producto cartesiano, p-reunión
y división.
Operaciones del Algebra Relacional (I)
Selección:
r=
Código
S1
S2
S3
S4
S6
S7
S8
S9
S10
Nombre
Juan López
Jose Sánchez
Antonio Pérez
Jose López
Carmen López
Julia Sánchez
Juana Pérez
Luis Gómez
Maria Gálvez
Ciudad
Granada
Jaén
Cádiz
Sevilla
Córdoba
Granada
Jaén
Almería
Sevilla
Edad
20
15
20
25
30
25
10
35
30
P (r)=
P= Edad>=25
Codigo
S4
S6
S7
S9
S10
Nombre
Jose López
Carmen López
Julia Sánchez
Luis Gómez
Maria Gálvez
Ciudad
Sevilla
Córdoba
Granada
Almería
Sevilla
Edad
25
30
25
35
30
Selección de Registros
Operaciones del Algebra Relacional (II)
Proyección:
ciudad,status(r)=
Ciudad
Granada
Jaén
Cádiz
Sevilla
Córdoba
Granada
Jaén
Almería
Sevilla
Status
20
15
20
25
30
25
10
35
30
Ciudades
Selección de Campos
Ciudad
Granada
ciudad(r)=
Jaén
Cádiz
Sevilla
Córdoba
Almería
Eliminación de
registros repetidos
Operaciones del Álgebra Relacional (III)
Producto Cartesiano:
A
a1
a2
a3
a4
B
b1
b2
b2
b4

D
d1
d2
d3
A
a1
a1
a1
= a2
a2
a2
a3
a3
a3
a4
a4
a4
B
b1
b1
b1
b2
b2
b2
b3
b3
b3
b4
b4
b4
D
d1
d2
d3
d1
d2
d3
d1
d2
d3
d1
d2
d3
Operaciones del Álgebra Relacional (IV)
DNI
18457801
12771482
22388236
27550369
28771942
30995018
53428628
55919248
58449012
66161258
79569438
93580136
p-Reunión:
DNI
Código de Asignaturas
18457801
28771942
55919248
58449012
30995018
79569438
22388236
93580136
27550369
66161258
66161258
58449012
58449012
53428628
53428628
12771482
12902
12901
12900
15903
12903
18620
18620
15905
15652
18632
12901
15652
12902
12900
20321
20321
Nombre
Arume
Roberto
Yapci
Oscar
Arume
Yeray
Ylenia
Sheila
Elena
Gema
Tinguaro
Ayose
Código de Asignaturas
curso
12900
12901
12902
12903
15903
15905
15652
18650
18620
18632
20321
20323
1
3
3
3
1
1
2
2
1
2
1
2
1º Apellido
Cabrera
Oubiña
Guillen
Santana
Vega
Canino
Naranjo
Quesada
Estévez
Medina
Bosa
Robaina
Operaciones del Álgebra Relacional (V)
p-Reunión:
Operaciones del Álgebra Relacional (VI)
A
a1
R= a2
a3
a4
Unión:
A
B
a1
b1
b2 S= a2
a5
b2
b4
B
b1
b2
b5
Intersección:
Diferencia:
R-S
RS
RS
A
a1
a2
a3
a4
a5
A B
a1 b1
a2 b2
B
b1
b2
b2
b4
b5
A
a3
a4
B
b2
b4
S-R
A
a5
B
b5
Álgebra Relacional: División
División:
R=
DNI
Código de Asignaturas
18457801
28771942
55919248
58449012
30995018
79569438
22388236
93580136
27550369
66161258
66161258
58449012
58449012
53428628
53428628
12771482
12902
12901
12900
15903
12903
18650
18620
15905
15652
18632
12901
15652
12902
12900
20321
20321
S=
Código de Asignaturas
curso
12900
12901
12902
12903
15903
15905
15652
18650
18620
18632
20321
20323
1
3
3
3
1
1
2
2
1
2
1
2
DNI
R ÷S=
DNI,cod_as(matricula)   cod_as(curso=1(asignatura)),
55919248
58449012
79569438
22388236
93580136
66161258
53428628
12771482
Operaciones sobre una BD Relacional


Recuperación mediante
especificación simbólica o nominal.
Recuperación mediante condición
aritmética y/o lógica.

Aritmética
•
•
•
•
•

Mayor que >
Menor que <
Igual que =
Diferente que |=
...
Análisis estadísticos.

Lógica
•
•
•
•
•
Y (and)
O (or)
NO (not)
NI (nor o xor)
...
Consulta a una BD Relacional (I)
DNI
¿De qué curso son las
“Gema Medina”
cursa
asignaturas
que cursa
asignaturas
de 3 y 2
“Gema
Medina”?
DNI
Código de Asignaturas
18457801
28771942
55919248
58449012
30995018
79569438
22388236
93580136
27550369
66161258
66161258
58449012
58449012
53428628
53428628
12771482
12902
12901
12900
15903
12903
18620
18620
15905
15652
18632
12901
15652
12902
12900
20321
20321
18457801
12771482
22388236
27550369
28771942
30995018
53428628
55919248
58449012
66161258
79569438
93580136
Nombre
Arume
Roberto
Yapci
Oscar
Arume
Yeray
Ylenia
Sheila
Elena
Gema
Tinguaro
Ayose
Código de Asignaturas
curso
12900
12901
12902
12903
15903
15905
15652
18650
18620
18632
20321
20323
1
3
3
3
1
1
2
2
1
2
1
2
1º Apellido
Cabrera
Oubiña
Guillen
Santana
Vega
Canino
Naranjo
Quesada
Estévez
Medina
Bosa
Robaina
Consulta a una BD Relacional (II)
Tabla Barrios
Id_Barrios
Id_Ciudad
Población
Nombre
1
1
100000
Escaleritas
2
1
50000
Alcaravaneras
3
2
15000
Albaicín
Tabla Equipamientos
Id_Equipo.
Nombre
Propietario
1
Centro Salud
Seguridad Social
2
Club Jubilados
Ayuntamiento
3
Biblioteca
Ministro de Cultura
Tabla: Situado en (Equipamiento y Barrios)
Id_Barrios
Id_Equip
Tamaño (m2)
Médicos
1
1
300
3
1
3
100
0
2
2
50
1
3
1
100
10
3
2
25
0
3
2
150
0
Tabla: Incluido en (Barrios y Ciudad)
Nombre
Ciudad
Escaleritas
Las Palmas G.C.
Alcaravaneras
Las Palmas G.C.
Albaicín
Granada
Pregunta:
¿En qué ciudades
tiene centros el
Ministerio de Cultura?
Respuesta:
Las Palmas de G.C.
Ventajas de las BD Relacionales



Poseen una estructura de datos de
tratamiento rápido y de fácil manejo.
Son estructuras muy adecuadas para
gestionar datos alfanuméricos
numerosos.
Poseen un lenguaje de gestión (SQL)
de gran claridad y facilidad de uso.
Inconvenientes de las BD Relacionales


Problemas de incoherencia de datos
e integración difíciles de resolver.
Es una estructura poco adecuada
para gestionar datos gráficos.
Ejemplo de BD Relacional
Tema 2