Bases de Datos Geográficas


Teoría de bases de datos

Objetivos



  • Investigar ventajas e inconvenientes de las bases de datos
  • Acercar al alumno al modelado de bases de datos
  • Implementar el modelo de datos entidad relación en un modelo relacional

Problemas


  • Manejo de grandes volúmenes de datos
  • Complejidad en la extracción de estos datos
  • Concurrencia en el acceso a datos, accesos simultáneos por varios usuarios

Limitaciones de archivos


  • Limitaciones en la cantidad de datos que era posible almacenar
  • Rendimiento de lectura de estos archivos
  • Bloqueo de los archivos con el acceso por usuario
  • Imposibilidad de gestionar el versionado de manera sencilla

¡¡Fragmentación!!

Con el desarrollo de la tecnología se democratiza el uso de ordenadores potentes que permiten poner a disposición de las organizaciones equipos potentes que gestionen de manera eficiente las base de datos mediante 



Base de datos



  • Una gran masa de datos relacionados entre si pertenecientes a un mismo contexto
  • Colección estructurada almacenada en un sistema informático

OBJETIVO




Aportar a la organización a la que sirve la información necesaria

Funciones




  • Recogida
  • Almacenamiento
  • Procesamiento
  • Recuperación

Algunas propiedades





    Estructuradas de manera independiente de las aplicaciones y del soporte de almacenamiento que las contiene
     
    2 Capas                                                              3 Capas



    Deben presentar la menor redundancia posible







    Son compartidas por todos los usuarios de una red

    Objetivos generales de las BBDD


    • Abstracción de la información
    • Redundancia mínima
    • Seguridad
    • Integridad
    • Respaldo y recuperación
    • Control de la concurrencia, versionado
    • Tiempo de respuesta
    • ...

    Modelo de datos




    Encargado de reflejar mediante un conjunto de REGLAS y CONCEPTOS en la estructura de datos y OPERACIONES aplicables sobre estos

    Modelo de datos



    • Define el tipo de datos que hay en la base de datos y la forma en que se relacionan
    • Aplica restricciones entre estos datos
    • Define las operaciones de manipulación de los datos




    Modelo de datos relacional E-R

    Modelo de datos relacional




    Una base de datos relacional es un conjunto de una o más tablas estructuradas en registros (filas) y campos (columnas)

    Conceptos básicos


    • Tablas
    • Columnas
    • Registros
    • Relaciones

    Tablas

    Unidad que almacena la información referente a un echo. Guarda lo relativo a un concepto definido

    Columnas

    Almacena la información referente a propiedades o atributos determinados del echo conocido


    Registros

    Asigna un valor determinado dentro de un rango para cada columna del echo conocido. Define la unidad mínima de información asociada al contexto

    Relaciones





    Determina el comportamiento de unos echos con otros, de unas tablas con las otras.

    Modelización




    Construir un modelo de la realidad, que simplifique la “complejidad infinita de ésta”, y permita estudiar una “realidad simplificada”, de tal forma que la información sobre la ejecución de estos escenarios en el modelo sirva de apoyo para la toma de decisiones en base a lo que sucedería en el mundo real.

    Modelización




    Conceptos deL modelo de datos

    Entidad

    Algunos ejemplos de entidad son un accidente geográfico, un edificio o una calle. También son entidades otros elementos del mundo real de interés, menos tangibles pero igualmente diferenciales del resto de objetos; por ejemplo, un punto de interés, un tipo de usuario, un archivo de imagen, etc.

    Entidad




    PARQUE NATURAL →Entidad
    OFICINA CORREO →Entidad
    ACCIDENTE GEOGRÁFICO →Entidad

    Entidad



    Las entidades se representan con un rectángulo. El nombre de la entidad se escribe en mayúsculas dentro del rectángulo.


    entidad




    Entidad débil





    Una entidad débil es una entidad cuyos atributos no la identifican completamente, sino que sólo la identifican de forma parcial. Esta entidad debe participar en una interrelación que ayuda a identificarla.

    Entidad débil



    Curso →  Profesor
    Localidad →  Provincia


    Dominio y valor





    El conjunto de posibles valores que puede tomar una cierta característica se denomina dominio

    dominio y valor




    Inglés  → pertenece al dominio de Idiomas
    33000ha → pertenece al dominio de unidades de medida de superficie

    dominio y valor





    atributo



    Cada una de las propiedades o características que tiene un tipo de entidad o un tipo de relación se denomina atributo; estos toman valores de uno o varios dominios.

    Atributo





    atributo




    Atributo


    • Atributo multivaluado: atributos de una entidad que pueden tener más de un valor.
    • Atributo optativo: aquel que puede admitir valores nulos
    • Atributo identificador: Uno o más campos cuyos valores son únicos en cada ejemplar de una entidad
    1. Deben distinguir a cada ejemplar tendiendo en cuenta las entidades que utiliza el modelo
    2. Todos los ejemplares de un entidad deben tener el mismo identificador

    Atributo




    Ejemplos de atributo:

    Parque Natural →  Superficie
    Parque Natural → Nombre
    Oficina → Teléfono

    ATRIBUTO





    Atributo



    Ejemplos de atributo multivaluado:


    • Curso → Idioma
    • Oficina → Teléfono

    Atributo multivaluado





    Atributo




    Ejemplos de atributo opcional:

    • Cliente → e-mail

    Atributo


    Ejemplos de atributo identificador:

    • Cliente → numero identificación



    Pueden existir varios atributos identificadores

    Atributo identificador




    Restricciones



    Se trata de limitaciones en las estructuras y en los datos impuestas por el propio modelo o por el desarrollador del modelo. 

    Estas solo deben darse entre las entidades del modelo, nunca entre las relaciones. 

    Restricciones



    Ejemplos de restricción

    El modelo obliga a que las entidades tengan un identificador
    El uso de dominios se puede considerar una restricción sobre los valores. 
    Necesidad de Integridad referencial

    Restricciones


    Ejemplos de restricción
    Restricción de dominio: Un trabajador de Correos no puede tener un sueldo menor a X 
    Integridad referencial: Si cierra Correos no puede quedar ninguna Oficina abierta en la base de datos

    Relaciones





    Esta se define como la asociación, vinculación o correspondencia entre entidades.

    Relaciones




    Ejemplo de relación:

    PAÍS →        TIENE     → PARQUE NATURAL

    Relaciones




    En el modelo relacional se representa con un rombo entre las entidades relacionadas






    Elementos de una relación

    Nombre




    Nombre, es el valor por el que se distingue del resto. En la representación gráfica se correspondería con la etiqueta incluida en el rombo que representa la relación.

    Nombre







    Aporta semántica al modelo relacional

    Grado



    Número de entidades que participan en un tipo de relación. Será de grado 2 (o binaria) cuando asocia dos tipos de entidad. Para las relaciones de grado 2 puede existir un caso particular que son las reflexivas o recursivas, en las cuales una entidad se asocia consigo misma.

    Grado





    Tipo de correspondencia



    Número máximo de ejemplares que pueden estar asociados, en una determinada relación, con un ejemplar de otro tipo. Para representarlo gráficamente se pone una etiqueta 0:N, 1:1, 1:N o N:M en el lado de la relación que corresponda o bien se orienta el arco de la unión en el sentido 1 a N mediante una flecha

    Tipo de correspondencia





    Papel




    El papel o rol, es la función que cada uno de los tipos de entidad tiene en la relación. Se representa poniendo el nombre del papel en el arco de cada entidad

    Papel





    Cardinalidad



    Número mínimo y máximo de ejemplares de un tipo de entidad que pueden estar interrelacionadas con un ejemplar del otro, u otros tipos de entidad que participan en el tipo de relación. Se representará graficamente mediante un etiqueta del tipo (0,1), (1,1), (0,N) o (1,N).

    Cardinalidad




    Atributos de las relaciones




    Se produce cuando el atributo identifica una característica propia de la relación y no de alguna de sus entidades

    Ejemplo de atributo en relación:

    • Fecha de un evento
    • Edición de un curso

    Especialización




    Entidades que se pueden dividir en entidades más concretas. La entidad general comparte con las especializadas sus atributos. Se detecta cuando hay ejemplares para los que no tienen sentido algunos de los atributos mientras que otros si.

    Especialización




    Generalización




    La generalización es si se puede agrupar varias entidades en una o mas entidades generales. Se observa generalización si en varias entidades existen atributos iguales.

    Generalización






    Modelización



    • Encontrar entidades 
    • Identificar atributos de las entidades
    • Buscar identificadores
    • Especificar las relaciones y cardinalidades
    • Identificar entidades débiles
    • Especializar y generalizar entidades donde sea posible



    Práctica guiada


    Crear un diseño entidad relación que permita almacenar datos geográficos referidos a un país:
    • Se almacenará la población de cada localidad, junto con su nombre y los datos del distrito al que pertenece la localidad, su nombre y superficie
    • Necesitamos también conocer el nombre de cada provincia y las localidades y distritos de la misma
    • Para  identificar a la provincia se usarán los dos primeros dígitos del código postal. Es decir 111 será el código de una provincia y 51 el del distrito
    • Necesitamos saber qué localidad es la capital de cada provincia y cuáles lo son de cada distrito

    Encontrar entidades


  • Se almacenará la población de cada localidad, junto con su nombre y los datos del distrito al que pertenece la localidad, su nombre y superficie
  • Necesitamos también conocer el nombre de cada provincia y las localidades y distritos de la misma
  • Para  identificar a la provincia se usarán los dos primeros dígitos del código postal. Es decir 111 será el código de una provincia y 51 el del distrito
  • Necesitamos saber qué localidad es la capital de cada provincia y cuáles lo son de cada distrito

  • Encontrar entidades







    Identificar atributos


  • Se almacenará la población de cada localidad, junto con su nombre y los datos del distrito al que pertenece la localidad, su nombre y superficie
  • Necesitamos también conocer el nombre de cada provincia y las localidades y distritos de la misma
  • Para  identificar a la provincia se usarán los dos primeros dígitos del código postal. Es decir 111 será el código de una provincia y 51 el del distrito
  • Necesitamos saber qué localidad es la capital de cada provincia y cuáles lo son de cada distrito
  • IDENTIFICAR ATRIBUTOS




    Buscar identificadores


  • Se almacenará la población de cada localidad, junto con su nombre y los datos del distrito al que pertenece la localidad, su nombre y superficie
  • Necesitamos también conocer el nombre de cada provincia y las localidades y distritos de la misma
  • Para  identificar a la provincia se usarán los dos primeros dígitos del código postal. Es decir 111 será el código de una provincia y 51 el del distrito
  • Necesitamos saber qué localidad es la capital de cada provincia y cuáles lo son de cada distrito
  • BUSCAR IDENTIFICADORES


    Especificar relaciones y cardinalidades


  • Se almacenará la población de cada localidad, junto con su nombre y los datos del distrito al que pertenece la localidad, su nombre y superficie
  • Necesitamos también conocer el nombre de cada provincia y las localidades y distritos de la misma
  • Para  identificar a la provincia se usarán los dos primeros dígitos del código postal. Es decir 111 será el código de una provincia y 51 el del distrito
  • Necesitamos saber qué localidad es la capital de cada provincia y cuáles lo son de cada distrito
  • ESPECIFICAR RELACIONES Y CARDINALIDADES




    Identificar entidades débiles


    RESULTADO



    ¡¡RECORDAD!!



    Encontrar entidades 
    Identificar atributos de las entidades
    Buscar identificadores
    Especificar las relaciones y cardinalidades
    Identificar entidades débiles
    Especializar y generalizar entidades donde sea posible

    Modelo E/R

    By Micho García