DISEÑO DE BASE DE DATOS

30
DISEÑO DE BASE DE DATOS Modelo Entidad – Relación: Conceptos básicos Evolución histórica de las bases de datos. SESIÓ N 01 NELSON RODRIGUEZ HUALLPA.

Transcript of DISEÑO DE BASE DE DATOS

Page 1: DISEÑO DE BASE DE DATOS

DISEÑO DE BASE DE DATOS

Modelo Entidad – Relación: Conceptos básicos Evolución histórica de las bases de

datos.

SESIÓN

01

NELSON RODRIGUEZ HUALLPA.

Page 2: DISEÑO DE BASE DE DATOS

DISEÑO DE BASE DE DATOS

I. Conceptos Básicos

1. ¿Qué es un Dato? Del latín datum (“lo que se da”), un dato es una palabra o número que por sí solo no representa información alguna. Más si se le utiliza dentro de un proceso entonces se obtendrá información (A los datos se les utiliza en la toma de decisiones o en la realización de cálculos a partir de un procesamiento adecuado y teniendo en cuenta su contexto).

Ejemplos de DATO: Trate de encontrar lo que podría significar cada uno de los siguientes datos:

Manzana

Un dato por sí mismo no constituye información, es el procesamiento de los datos lo que nos proporciona información.

Según el contexto Use Wikipedia…

En Informática, el dato es una representación simbólica o un atributo de una entidad.

PRIMER MILLON

PRIMER MILLON

Nelson rodriguez huallpa

Page 3: DISEÑO DE BASE DE DATOS

DISEÑO DE BASE DE DATOS

1. Conceptos básicosI. Conceptos básicosEn informática, un atributo es una especificación que define una propiedad de un objeto, elemento o archivo. También puede referirse o establecer el valor específico para una instancia determinada de los mismos.

¿Y qué es un Atributo?Es una propiedad

¿Instancia?

¿Objeto?Los objetos son sujetos o cosas tangibles de nuestro mundo real, que tienen un estado y un comportamiento. En computación un objeto está formado por datos y métodos.

Son copias obtenidas de una clase definida. A los objetos se les llama también instancias de un tipo de clase.

¿Clase?Son los moldes con los que se producen objetos.

Nelson rodriguez huallpa

Page 4: DISEÑO DE BASE DE DATOS

DISEÑO DE BASE DE DATOS

1. Conceptos básicosI. Conceptos básicos

2. Entonces ¿Qué es una Base de Datos?

Se conoce como base de datos (o database, de acuerdo al término inglés) al conjunto de los datos que pertenecen a un mismo contexto y que son almacenados de manera sistemática para que puedan utilizarse en el futuro.O también es una colección de datos relacionados entre sí, estando ordenadas y organizadas para su actualización, modificación, inserción y borrado de los mismos. Generalmente almacenados en tablas.

El almacenamiento sistemático de los datos para su posterior uso hace que se le considere como banco de datos, tal como podría serlo una biblioteca (formado por documentos, libros y textos ordenadamente almacenados), una Guía de teléfonos, los registros de nacimiento, registros médicos, catastro de municipios, lista de votantes, etc.

Hoy en día con el uso de las computadoras podemos administrar los bancos de datos como bases de datos, y para ello usamos un software denominado Gestor de Base de Datos.

Nelson rodriguez huallpa

Page 5: DISEÑO DE BASE DE DATOS

DISEÑO DE BASE DE DATOS

1. Conceptos básicosI. Conceptos básicos

3. Tipos de Datos:En ciencias de la computación un tipo de dato informático o simplemente tipo es un atributo de los datos que indica al ordenador (y/o al programador) sobre la clase de datos que se va a trabajar. Esto incluye imponer restricciones en los datos, como qué valores pueden tomar y qué operaciones se pueden realizar.Los tipos de datos comunes son: números enteros, números con signo (negativos), números de coma flotante (decimales), cadenas alfanuméricas (y unicodes), estados, etc.

Datos Carácter

Cadena

Enteros

Reales

Punto Flotante

Decimales

Hora

Fecha

Booleano

Fecha y Hora

Lógicos

Cadena de Caracteres

Numéricos

Nelson rodriguez huallpa

Page 6: DISEÑO DE BASE DE DATOS

DISEÑO DE BASE DE DATOS

1. Conceptos básicosI. Conceptos básicos EJEMPLO BÁSICO DE BASE DE DATOS

1. En una tabla ingrese el código, el nombre y distrito de algunos alumnos.2. En una segunda tabla guarde solamente el código del alumno, uno de los cursos que está llevando y el promedio que

se espera obtener. 3. Entonces establezca la relación que existe entre ambas tablas.4. Al conjunto de las 2 tablas dele un nombre de base de datos.

Código Curso Promedio

Código Nombre DistritoRelación

Campo o Columna

Registro o Fila

Celda

Los campos tienen el mismo tipo de dato.Los registros pueden contener diferentes tipos de datos.

Nelson rodriguez huallpa

Page 7: DISEÑO DE BASE DE DATOS

DISEÑO DE BASE DE DATOS

1. Conceptos básicosI. Conceptos básicos

4. Ventajas de las Bases de Datos 5. Desventajas de las Bases de Datos Independencia de los datos, los programas y procesos. Esto

permite modificar los datos sin modificar el código de las aplicaciones.

Menor Redundancia. No hace falta tanta repetición de datos. Aunque, solo los buenos diseños tienen poca redundancia.

Integridad de los datos. Mayor dificultad de perder los datos o de realizar incoherencias con ellos.

Mayor seguridad en lo datos. Al limitar el acceso a ciertos usuarios.

Datos más documentados. Gracias a los metadatos que permiten describir la información de las bases de datos.

Acceso a los datos más eficiente. La organización de los datos produce un resultado más óptimo en rendimiento.

Instalaciones Costosas. El control y administración de bases de datos requiere de un software y hardware poderoso.

Requiere personal cualificado. Debido a la dificultad de manejo de este tipo de sistemas.

Implantación larga y difícil. Debido a los puntos anteriores. La adaptación del personal es mucho más complicada y lleva bastante tiempo.

Ausencia de estándares reales. Lo cual significa una excesiva dependencia hacia los sistemas comerciales del mercado. Aunque hay una buena parte de esta tecnología aceptada como estándar de echo.

Nelson rodriguez huallpa

Page 8: DISEÑO DE BASE DE DATOS

DISEÑO DE BASE DE DATOS

1. Conceptos básicosI. Conceptos básicos

6. Modelo de una Base de Datos Los modelos se utilizan en todo tipo de ciencias.

Su finalidad es la de simbolizar una parte del mundo real, y así poder ser manipulable.

Es un esquema mental o conceptual por el que se intentan reproducir las características de una realidad específica.

En el caso de los modelos de datos, se intenta reproducir una información real y que sea almacenable en un sistema informático.

Un esquema es una descripción específica en términos de modelo de datos y se puede representar tal como:

Mi Mundo Real

Nelson rodriguez huallpa

Page 9: DISEÑO DE BASE DE DATOS

DISEÑO DE BASE DE DATOS

II. Gestor de Base de Datos

Los Sistemas de Gestión de Base de Datos - SGBD (en inglés DataBase Management System - DBMS) son un tipo de software muy específico, dedicado a servir de interfaz entre la base de datos, el usuario y las aplicaciones que la utilizan. Se compone de un lenguaje (SQL – Structure Query Language) para definición de datos, de manipulación de datos y de consulta.

Mejora en la accesibilidad a los datos:Muchos SGBD proporcionan lenguajes de consultas o generadores de informes que permiten al usuario hacer cualquier tipo de consulta sobre los datos, sin que sea necesario que un programador escriba una aplicación que realice tal tarea.Mejora en la productividad:El SGBD proporciona muchas de las funciones estándar que el programador necesita escribir en un sistema de ficheros. A nivel básico, el SGBD proporciona todas las rutinas de manejo de ficheros típicas de los programas de aplicación.El hecho de disponer de estas funciones permite al programador centrarse mejor en la función específica requerida por los usuarios, sin tener que preocuparse de los detalles de implementación de bajo nivel.

Ventajas

Nelson rodriguez huallpa

Page 10: DISEÑO DE BASE DE DATOS

DISEÑO DE BASE DE DATOS

II. Gestor de Base de Datos

•Integridad de los datos: se refiere a una serie de medidas y reglas necesarias para mantener la validez de los datos. El sistema gestor de la base de datos se encarga de mantener estas restricciones.•Seguridad: la seguridad de la base de datos es la protección de ésta frente a usuarios no autorizados. Las autorizaciones pueden ser de varios tipos (modificar la base, consultarla…) Estas autorizaciones se administran mediante contraseñas.•Tiempo de respuesta: se asegura un tiempo de respuesta pequeño en el tratamiento de los datos.•Control de la concurrencia de datos: si dos o más usuarios quieren acceder a un mismo dato de forma concurrente el primero que acceda a dicho dato bloqueará el acceso a éste al resto de los usuarios para asegurar que si actualiza ese dato el resto de usuarios podrá acceder al dato ya actualizado.•Respaldo y recuperación de los datos: un sistema gestor de bases de datos proporciona las herramientas necesarias para la conservación de copias de seguridad de cada fichero como prevención ante posibles caídas del sistema. Al proceso de copia de los datos se le llama "back-up". Al proceso contrario, obtener los datos de las copias se le llama "recuperación".•Redundancias mínimas: permiten la NO repetición de datos.•Consistencia de los datos: si existen dos datos repetidos en distintos ficheros el sistema gestor de la base de datos garantiza la actualización de los datos en ambos ficheros.•Abstracción de la información: el sistema gestor de la base de datos proporciona una visión abstracta de cómo se almacenan la información en la base de datos.•Independencia de los datos: los datos son independientes de los programas de aplicación.

+ Ventajas

Nelson rodriguez huallpa

Page 11: DISEÑO DE BASE DE DATOS

DISEÑO DE BASE DE DATOS

II. Gestor de Base de Datos

Desventajas del uso

•Ausencia de estándares reales, lo cual significa una excesiva dependencia a los sistemas comerciales del mercado. Sin embargo, actualmente un gran sector de la tecnología esta aceptado como estándar de hecho.•Requiere personal calificado, debido a la dificultad del manejo de este tipo de sistemas. Esto requiere que los programadores y los analistas deben tomar cursos que los adiestren para poder comprender las capacidades y limitaciones de las Bases de Datos.•Instalación costosa, ya que el control y administración de bases de datos requiere de un software y hardware de elevado coste. Además de la adquisición y mantenimiento del Sistema Gestor de Datos (SGBD).•Falta de rentabilidad a corto plazo, debido al coste de equipos y de personal, al igual del tiempo que tarda en estar operativa.•Tamaño. El Sistema de Manejo de Base de Datos (DBMS) requiere de mucho espacio en disco duro y también requiere de mucha memoria principal (RAM) para poder correr adecuadamente.•Requerimientos adicionales de Equipo. El adquirir un producto de Base de Datos, requiere a su vez adquirir equipo adicional para poder correr ese producto como por ejemplo, servidores, memoria, discos duros, entre otros. Si se pretende correr la Base de Datos con el mínimo de requerimientos, esta posiblemente se degrada.

Nelson rodriguez huallpa

Page 12: DISEÑO DE BASE DE DATOS

DISEÑO DE BASE DE DATOS

Gestores de Bases de Datos más importantes

Nelson rodriguez huallpa

Page 13: DISEÑO DE BASE DE DATOS

DISEÑO DE BASE DE DATOS

II. Gestor de Base de Datos

Cuadro Comparativo

Nelson rodriguez huallpa

Page 14: DISEÑO DE BASE DE DATOS

DISEÑO DE BASE DE DATOS

II. Gestor de Base de Datos

Cuadro Comparativo

Nelson rodriguez huallpa

Page 15: DISEÑO DE BASE DE DATOS

DISEÑO DE BASE DE DATOS

III. Historia de las Bases de Datos

El término Base de Datos fue acuñado por primera vez en 1963, en un simposio celebrado en California.En la década del 70Edgar Frank Codd definió el modelo relacional y publicó una serie de reglas para la evaluación de administradores de sistemas de datos relacionales y asi nacieron las bases de datos relacionales.A partir de los aportes de Codd el multimillonario Larry Ellison desarrolló la base de datos Oracle, la cual es un sistema de administración de Base de Datos, que se destaca por sus transacciones, estabilidad, escalabilidad y multiplataforma.Inicialmente no se usó el Modelo Relacional debido a que tenía inconvenientes por el rendimiento, ya que no podían ser competitivas con las bases de datos Jerárquicas y de Red. Ésta tendencia cambio por un proyecto de IBM el cual desarrolló técnicas para la construcción de un sistema de bases de datos relacionales eficientes, llamado System R.

Edgar Frank Codd

Larry Ellison

Nelson rodriguez huallpa

Page 16: DISEÑO DE BASE DE DATOS

DISEÑO DE BASE DE DATOS

III. Historia de las Bases de Datos

En la década del 80Las Bases de Datos Relacionales con su sistema de Tablas, Filas y Columnas, pudieron competir con las Bases de Datos Jerárquicas y de Red, ya que su nivel de programación era bajo y su uso muy sencillo.En esta década el Modelo Relacional ha conseguido posicionarse en el mercado de las Bases de Datos. Y también en este tiempo se iniciaron grandes investigaciones, como las Sistemas de Gestión de Bases de Datos Orientadas a Objetos SGBDOO (System Management Object Oriented Databases). .Principios década de los 90Para la toma de decisiones se crea el lenguaje SQL (Structured Query Language) , que es un lenguaje programado para consultas. El programa de alto nivel SQL es un lenguaje de consulta estructurado que analiza grandes cantidades de información, el cual permite especificar diversos tipos de operaciones frente a la misma información, a diferencia de las bases de datos de los 80 que eran diseñadas para las aplicaciones de procesamiento de transacciones. Los grandes distribuidores de bases de datos incursionaron con la venta de bases de datos orientadas a objetos.

Bases de Datos Relacionales

Nelson rodriguez huallpa

Page 17: DISEÑO DE BASE DE DATOS

DISEÑO DE BASE DE DATOS

III. Historia de las Bases de Datos

Finales de la década de los 90El boom de esta década fue la aparición de la WWW “Word Wide Web” ya que por este medio se facilitaba la consulta de las bases de datos. Actualmente tienen una amplia capacidad de almacenamiento de información, también una de las ventajas es el servicio de siete días a la semana las veinticuatro horas del día, sin interrupciones a menos que haya planificaciones de mantenimiento de las plataformas o el software.

Nelson rodriguez huallpa

Page 18: DISEÑO DE BASE DE DATOS

DISEÑO DE BASE DE DATOS

III. Historia de las Bases de Datos

En la actualidad, las tres grandes compañías que dominan el mercado de las bases de datos son IBM, Microsoft y Oracle. Por su parte, en el campo de internet, la compañía que genera gran cantidad de información es Google. Aunque existe una gran variedad de software que permiten crear y manejar bases de datos con gran facilidad, como por ejemplo LINQ, que es un proyecto de Microsoft que agrega consultas nativas semejantes a las de SQL a los lenguajes de la plataforma .NET. El objetivo de este proyecto es permitir que todo el código hecho en Visual Studio sean también orientados a objetos; ya que antes de LINQ la manipulación de datos externos tenía un concepto más estructurado que orientado a objetos; y es por eso que trata de facilitar y estandarizar el acceso a dichos objetos.Cabe destacar que Visual Studio es un entorno de desarrollo integrado para sistemas operativos Windows que soporta varios lenguajes de programación tales como Visual C++, Visual#, Visual J#, ASP.NET y Visual Basic.NET, aunque se están desarrollando las extensiones necesarias para otros, cuyo objetivo es permitir crear aplicaciones, sitios y aplicaciones web, así como servicios web a cualquier entorno que soporte la plataforma .Net, creando así aplicaciones que intercomuniquen entre estaciones de trabajo, páginas web y dispositivos móviles.

SIGLO XXI

Nelson rodriguez huallpa

Page 19: DISEÑO DE BASE DE DATOS

DISEÑO DE BASE DE DATOS

IV. Modelamiento de las Bases de Datos

¿Qué es el modelo entidad-relación?Es solo y exclusivamente un método del que disponemos para diseñar esquemas que posteriormente debemos de implementar en un gestor de BBDD (bases de datos). Este modelo se representa a través de diagramas y está formado por varios elementos.Este modelo habitualmente, además de disponer de un diagrama que ayuda a entender los datos y como se relacionan entre ellos, debe de ser completado con un pequeño resumen con la lista de los atributos y las relaciones de cada elemento.

Nelson rodriguez huallpa

Page 20: DISEÑO DE BASE DE DATOS

DISEÑO DE BASE DE DATOS

IV. Modelamiento de las Bases de Datos

Elementos del modelo entidad-relaciónEntidadLas entidades representan cosas u objetos (ya sean reales o abstractos), que se diferencian claramente entre sí.Para poder seguir añadiremos ejemplos sobre un taller mecánico, donde se podría crear las siguientes entidades:•Coches (objeto físico): contiene la información de cada taller.•Empleado (objeto físico): información de los trabajadores.•Cargo del empleado (cosa abstracta): información de la función del empleado.Estas entidades se representan en un diagrama con un rectángulos, como los siguientes.

Nelson rodriguez huallpa

Page 21: DISEÑO DE BASE DE DATOS

DISEÑO DE BASE DE DATOS

IV. Modelamiento de las Bases de Datos

AtributosLos atributos definen o identifican las características de entidad (es el contenido de esta entidad). Cada entidad contiene distintos atributos, que dan información sobre esta entidad. Estos atributos pueden ser de distintos tipos (numéricos, texto, fecha...).Siguiendo el ejemplo de antes podemos analizar los atributos de nuestra entidad "Coches", que nos darán información sobre los coches de nuestro supuesto taller.Unos posibles atributos serían los siguientes: número de chasis, matrícula, DNI del propietario, marca, modelo y muchos otros que complementen la información de cada coche.Los atributos se representan como círculos que descienden de una entidad, y no es necesario representarlos todos, sino los más significativos, como a continuación.

Nelson rodriguez huallpa

Page 22: DISEÑO DE BASE DE DATOS

DISEÑO DE BASE DE DATOS

IV. Modelamiento de las Bases de Datos

En un modelo relacional (ya implementado en una base de datos) una ejemplo de tabla dentro de una BBDD podría ser el siguiente.

Este ejemplo es con tres atributos, pero un coche podría tener cientos (si fuese necesario) y seguirían la misma estructura de columnas, tras implementarlo en una BBDD.

Nelson rodriguez huallpa

Page 23: DISEÑO DE BASE DE DATOS

DISEÑO DE BASE DE DATOS

IV. Modelamiento de las Bases de Datos

RelaciónEs un vínculo que nos permite definir una dependencia entre varias entidades, es decir, nos permite exigir que varias entidades compartan ciertos atributos de forma indispensable.Por ejemplo, los empleados del taller (de la entidad "Empleados") tienen un cargo (según la entidad "Cargo del empleado"). Es decir, un atributo de la entidad "Empleados" especificará que cargo tiene en el taller, y tiene que ser idéntico al que ya existe en la entidad "Cargo del empleado".Las relaciones se muestran en los diagramas como rombos, que se unen a las entidades mediante líneas.

Nelson rodriguez huallpa

Page 24: DISEÑO DE BASE DE DATOS

DISEÑO DE BASE DE DATOS

IV. Modelamiento de las Bases de Datos

En el ejemplo se representa (resaltada la relación, que posteriormente se enseñará a hacerla).

Nelson rodriguez huallpa

Page 25: DISEÑO DE BASE DE DATOS

DISEÑO DE BASE DE DATOS

IV. Modelamiento de las Bases de Datos Relaciones de cardinalidadPodemos encontrar distintos tipos de relaciones según como participen en ellas las entidades. Es decir, en el caso anterior cada empleado puede tener un cargo, pero un mismo cargo lo pueden compartir varios empleados.Esto complementa a las representaciones de las relaciones, mediante un intervalo en cada extremo de la relación que especifica cuantos objetos o cosas (de cada entidad) pueden intervenir en esa relación.Uno a uno: Una entidad se relaciona únicamente con otra y viceversa. Por ejemplo, si tuviésemos una entidad con distintos chasis y otra con matrículas deberíamos de determinar que cada chasis solo puede tener una matrícula (y cada matrícula un chasis, ni más en ningún caso).

Nelson rodriguez huallpa

Page 26: DISEÑO DE BASE DE DATOS

DISEÑO DE BASE DE DATOS

IV. Modelamiento de las Bases de Datos

Uno a varios o varios a uno: determina que un registro de una entidad puede estar relacionado con varios de otra entidad, pero en esta entidad existir solo una vez. Como ha sido en el caso anterior del trabajador del taller.

Varios a varios: determina que una entidad puede relacionarse con otra con ninguno o varios registros y viceversa. Por ejemplo, en el taller un coche puede ser reparado por varios mecánicos distintos y esos mecánicos pueden reparar varios coches distintos.

Los indicadores numéricos indican el primero el número mínimo de registros en una relación y posteriormente el máximo (si no hay límite se representa con una "n").

Nelson rodriguez huallpa

Page 27: DISEÑO DE BASE DE DATOS

DISEÑO DE BASE DE DATOS

V. Ejemplo de Modelamiento de Base de Datos

Nelson rodriguez huallpa

Page 28: DISEÑO DE BASE DE DATOS

DISEÑO DE BASE DE DATOS

Ejercicios y Preguntas

1. Defina con sus propias palabras: dato, modelo de datos, esquema y entidad.2. Distinga entre objeto y clase.3. ¿Cuál es el objetivo de crear un modelo de base de datos?4. En una tabla ¿Qué es un identificador y como lo reconocería?

Taller:

Forme un grupo y diseñe un esquema con sus tablas, identificadores e interrelaciones, respecto a la entidad alumno, matricula y curso.

Nelson rodriguez huallpa

Page 29: DISEÑO DE BASE DE DATOS

CODIGO ALUMMNO DISTRITO001 NELSON BREÑA002 YOLANDA SAN MARTIN

003 MARIBEL LOS OLIVOS 004 SIMÓN BREÑA005 ERICK SAN JUAN DE

LURIGANCHO006 SOFÍA SAN MARTIN DE PORRES

CODIGO CURSO9 PROMEDIO001 MATEMATICA 18

002 COMUNICACION 17

002 COMUNICACIÓN 18

003 INGLES 18

ALUMNOS SON INSTANCIAS

ATRIBUTO..CAMPO

LLAVE PRIMARIA

TABLAS RELACIONADAS

Page 30: DISEÑO DE BASE DE DATOS

Nelson rodriguez huallpa