MDBD A2 Modelamiento de Datos Diseño Conceptual Ejercicio 04
Programa del curso Introducción a las base de datos ▫ Conceptos generales ▫Tipos de BDs...
-
Upload
felipe-de-la-fuente-valenzuela -
Category
Documents
-
view
229 -
download
0
Transcript of Programa del curso Introducción a las base de datos ▫ Conceptos generales ▫Tipos de BDs...
![Page 1: Programa del curso Introducción a las base de datos ▫ Conceptos generales ▫Tipos de BDs ▫Tutorial Introductorio Modelamiento de datos ▫Modelos Entidad-Relación.](https://reader036.fdocuments.net/reader036/viewer/2022062410/5665b4d91a28abb57c943918/html5/thumbnails/1.jpg)
Programa del curso
•Introducción a las base de datos▫ Conceptos generales▫Tipos de BDs▫Tutorial Introductorio
•Modelamiento de datos▫Modelos Entidad-Relación▫Modelo Relacional
•Implementación práctica▫SQL▫PL/SQL
![Page 2: Programa del curso Introducción a las base de datos ▫ Conceptos generales ▫Tipos de BDs ▫Tutorial Introductorio Modelamiento de datos ▫Modelos Entidad-Relación.](https://reader036.fdocuments.net/reader036/viewer/2022062410/5665b4d91a28abb57c943918/html5/thumbnails/2.jpg)
Introducción a las base de datosParte 1
![Page 3: Programa del curso Introducción a las base de datos ▫ Conceptos generales ▫Tipos de BDs ▫Tutorial Introductorio Modelamiento de datos ▫Modelos Entidad-Relación.](https://reader036.fdocuments.net/reader036/viewer/2022062410/5665b4d91a28abb57c943918/html5/thumbnails/3.jpg)
Que es un dato?
•Impresión que describe una característica•«átomo» de información•Par{característica, valor}
▫Ejemplos
Característica Valor
Color Rojo
Edad 21
Estado encendido
![Page 4: Programa del curso Introducción a las base de datos ▫ Conceptos generales ▫Tipos de BDs ▫Tutorial Introductorio Modelamiento de datos ▫Modelos Entidad-Relación.](https://reader036.fdocuments.net/reader036/viewer/2022062410/5665b4d91a28abb57c943918/html5/thumbnails/4.jpg)
Que son las base de datos?• «Un conjunto de datos, que describe las
actividades de una organización»(Ramakrisshman, gehrke).
• «colección de datos bien organizados relacionados con sentido, que pueden ser accesados en distinto orden»(Sumathi, esakkirajan).
• «Una colección de datos organizados»(Elmasri, Navathe).
• Dos conceptos principales:▫Conjunto de Datos.▫Poseen una Estructura.
![Page 5: Programa del curso Introducción a las base de datos ▫ Conceptos generales ▫Tipos de BDs ▫Tutorial Introductorio Modelamiento de datos ▫Modelos Entidad-Relación.](https://reader036.fdocuments.net/reader036/viewer/2022062410/5665b4d91a28abb57c943918/html5/thumbnails/5.jpg)
DBMS•DBMS:Data Base Management System.
▫=«motor de Base de datos»▫=«Sistema de Base de datos»
•Conjunto de programas que manejan la estructura de la base de datos y controlan el acceso a los datos almacenados en ella( Rob, Coronel).
•Programas computacionales especiales en el manejo de base de datos.
![Page 6: Programa del curso Introducción a las base de datos ▫ Conceptos generales ▫Tipos de BDs ▫Tutorial Introductorio Modelamiento de datos ▫Modelos Entidad-Relación.](https://reader036.fdocuments.net/reader036/viewer/2022062410/5665b4d91a28abb57c943918/html5/thumbnails/6.jpg)
Ventajas de los DBMS• Independencia de datos
▫DBMS provee una vista abstracta de ellos.• Acceso de datos eficientes
▫Las operaciones de manipulación de datos están optimizadas para lograr una alta eficiencia.
• Integridad y seguridad de datos▫Robusto sistema de permisos y mantención de la
coherencia entre los datos y la realidad.• Administración de datos
▫Centralizar la administración de datos hace ganar eficiencia.
• Acceso concurrente y recuperación entre fallos
![Page 7: Programa del curso Introducción a las base de datos ▫ Conceptos generales ▫Tipos de BDs ▫Tutorial Introductorio Modelamiento de datos ▫Modelos Entidad-Relación.](https://reader036.fdocuments.net/reader036/viewer/2022062410/5665b4d91a28abb57c943918/html5/thumbnails/7.jpg)
Enfoque de trabajo de DBMS• Diseño
▫Como modelar los datos de un dominio para que representen bien la realidad?
▫ Involucra modelar datos, diagramas Entidad-Relación, etc.
• Programación▫Como acceder a los datos directamente?▫Como acceder a los desde un programa externo?
• Implementación DBMS▫Como implementar DBMS eficientes?▫ Involucra trabajar con estructuras de datos, algoritmos
de búsqueda y ordenamiento, estándares de seguridad, sistemas operativos, etc
![Page 8: Programa del curso Introducción a las base de datos ▫ Conceptos generales ▫Tipos de BDs ▫Tutorial Introductorio Modelamiento de datos ▫Modelos Entidad-Relación.](https://reader036.fdocuments.net/reader036/viewer/2022062410/5665b4d91a28abb57c943918/html5/thumbnails/8.jpg)
Especificación de Requisitos• Todo sistema informático es desarrollado con un
propósito y dentro de un contexto.• Esta fase busca establecer o refinar la definición del
sistema a construir▫Entrevistas, prototipos, estudio de documentos, etc
• A este contexto(sistema) se le denomina «Dominio»• «Reglas de Negocio»: Conjunto de reglas que definen
cómo funciona el sistema en el cual la solución se implantará.▫Pueden ser restricciones, definiciones y operaciones,
generalmente expresadas en lenguaje natural.
![Page 9: Programa del curso Introducción a las base de datos ▫ Conceptos generales ▫Tipos de BDs ▫Tutorial Introductorio Modelamiento de datos ▫Modelos Entidad-Relación.](https://reader036.fdocuments.net/reader036/viewer/2022062410/5665b4d91a28abb57c943918/html5/thumbnails/9.jpg)
Modelos de DBMS
•La forma en que los DBMS operan puede clasificarse según diferentes criterios
•De acuerdo a la organización de los datos(«database model»):▫Archivos «planos»
Archivos del sistema Operativo En realidad no son BDs, sin embargo, los
DBMS lo usan para almacenar la información.▫Modelo Jerárquico
El más antiguo paradigma
![Page 10: Programa del curso Introducción a las base de datos ▫ Conceptos generales ▫Tipos de BDs ▫Tutorial Introductorio Modelamiento de datos ▫Modelos Entidad-Relación.](https://reader036.fdocuments.net/reader036/viewer/2022062410/5665b4d91a28abb57c943918/html5/thumbnails/10.jpg)
Customer:ALFKI
Order: 10692
Order:10643
Order Detail:
product 28
Order Detail:
product 39
Order Detail:
product 28
…
…
…
![Page 11: Programa del curso Introducción a las base de datos ▫ Conceptos generales ▫Tipos de BDs ▫Tutorial Introductorio Modelamiento de datos ▫Modelos Entidad-Relación.](https://reader036.fdocuments.net/reader036/viewer/2022062410/5665b4d91a28abb57c943918/html5/thumbnails/11.jpg)
▫Modelo de Red Similar al modelo jerárquico (desarrollado
históricamente en paralelo) Las relaciones entre registros son
diferenciadas Más versátil, pero más complejo Referencias circulares permiten ciclos de
búsqueda (a veces infinitos)
![Page 12: Programa del curso Introducción a las base de datos ▫ Conceptos generales ▫Tipos de BDs ▫Tutorial Introductorio Modelamiento de datos ▫Modelos Entidad-Relación.](https://reader036.fdocuments.net/reader036/viewer/2022062410/5665b4d91a28abb57c943918/html5/thumbnails/12.jpg)
Customer:ALFKI
Order:10463
Order detail:
product 28
Order detail:
product 46
Order detail:
product 39
Order:10692
Order detail:
product 63
Next Order
Product 63
Next Product
( other product 63 orders)
Employee:4 Other employee 4
orders
Next order detail
![Page 13: Programa del curso Introducción a las base de datos ▫ Conceptos generales ▫Tipos de BDs ▫Tutorial Introductorio Modelamiento de datos ▫Modelos Entidad-Relación.](https://reader036.fdocuments.net/reader036/viewer/2022062410/5665b4d91a28abb57c943918/html5/thumbnails/13.jpg)
▫Modelo relacional Predominante en la actualidad Intuitivo: los datos se guardan en tablas
bidimensionales, como en una pantalla Se define la relacion entre conjuntos de
registros (taboas) en vez de entre Registros individuales
Se pueden establecer relaciones entre los registros despueés de haber generado el modelo
Mas simple que los anteriores Permite programar algoritmos mas genéricos
( busquedas, inserciones, etc)
![Page 14: Programa del curso Introducción a las base de datos ▫ Conceptos generales ▫Tipos de BDs ▫Tutorial Introductorio Modelamiento de datos ▫Modelos Entidad-Relación.](https://reader036.fdocuments.net/reader036/viewer/2022062410/5665b4d91a28abb57c943918/html5/thumbnails/14.jpg)
ID
First Name Last Name Phone E-mail
1 Joe Smith 555-12345 [email protected]
2 Jack Williams 555-5678 [email protected]
3 Jill Davis 555-54321 NULL
Employee
Order Detail
Order
Customer
Product
![Page 15: Programa del curso Introducción a las base de datos ▫ Conceptos generales ▫Tipos de BDs ▫Tutorial Introductorio Modelamiento de datos ▫Modelos Entidad-Relación.](https://reader036.fdocuments.net/reader036/viewer/2022062410/5665b4d91a28abb57c943918/html5/thumbnails/15.jpg)
• De acuerdo al Uso:▫Transaccional
Tambien llamada «de Producción» Diseñada para almacenar operaciones del día a día
( registros de ventas, pasajes de avios, log de usuarios, etc.)
Pobladas ( cargada de datos) desde los eventos diarios▫Data wareHouse
Diseñada para la toma de decisiones de nivel táctico o estratégico ( predicciones de ventas, análisis de mercado. Etc
«destilado» de formación mas importante
![Page 16: Programa del curso Introducción a las base de datos ▫ Conceptos generales ▫Tipos de BDs ▫Tutorial Introductorio Modelamiento de datos ▫Modelos Entidad-Relación.](https://reader036.fdocuments.net/reader036/viewer/2022062410/5665b4d91a28abb57c943918/html5/thumbnails/16.jpg)
•De acuerdo al numero de Usuarios▫MonoUsuario▫Multi Usuario
![Page 17: Programa del curso Introducción a las base de datos ▫ Conceptos generales ▫Tipos de BDs ▫Tutorial Introductorio Modelamiento de datos ▫Modelos Entidad-Relación.](https://reader036.fdocuments.net/reader036/viewer/2022062410/5665b4d91a28abb57c943918/html5/thumbnails/17.jpg)
Nivel de abstracción en BD•Los datos en una bd pueden ser tratados
en 3 niveles de abstracción•La abstracción permite obviar los detalles
de implementación de las capas inferiores, facilitando la manipulación de los datos
External Schema
External Schema
External Schema
Conceptual Schema
Internal Schema
![Page 18: Programa del curso Introducción a las base de datos ▫ Conceptos generales ▫Tipos de BDs ▫Tutorial Introductorio Modelamiento de datos ▫Modelos Entidad-Relación.](https://reader036.fdocuments.net/reader036/viewer/2022062410/5665b4d91a28abb57c943918/html5/thumbnails/18.jpg)
Esquema Conceptual
•Estructura lógica que representa el dominio ( blioteca: libros, préstamos, multas )
•Lo contribuyen las tablas, relaciones. etcExternal Schema
External Schema
External Schema
Conceptual Schema
Internal Schema
![Page 19: Programa del curso Introducción a las base de datos ▫ Conceptos generales ▫Tipos de BDs ▫Tutorial Introductorio Modelamiento de datos ▫Modelos Entidad-Relación.](https://reader036.fdocuments.net/reader036/viewer/2022062410/5665b4d91a28abb57c943918/html5/thumbnails/19.jpg)
Esquema Físico
•Como los datos están organizados en el disco
•Lo contribuyen archivos, índices, algoritmos de ordenamiento protocolos de seguridad, etc.External
SchemaExternal Schema
External Schema
Conceptual Schema
Internal Schema
![Page 20: Programa del curso Introducción a las base de datos ▫ Conceptos generales ▫Tipos de BDs ▫Tutorial Introductorio Modelamiento de datos ▫Modelos Entidad-Relación.](https://reader036.fdocuments.net/reader036/viewer/2022062410/5665b4d91a28abb57c943918/html5/thumbnails/20.jpg)
Esquema Externo• Como el usuario ve los datos almacenados en la BD• Subconjunto de datos «util» para usuarios en particular• Tantas vistas como usuarios y consultas• Lo contribuyen las vistas, especies de filtros de datos
External Schema
External Schema
External Schema
Conceptual Schema
Internal Schema
![Page 21: Programa del curso Introducción a las base de datos ▫ Conceptos generales ▫Tipos de BDs ▫Tutorial Introductorio Modelamiento de datos ▫Modelos Entidad-Relación.](https://reader036.fdocuments.net/reader036/viewer/2022062410/5665b4d91a28abb57c943918/html5/thumbnails/21.jpg)
Especificación de requerimientos• Todo sistema informático es desarrollado con un
propósito y dentro de un contexto.• Esta fase busca establecer o refinar la definición del
sistema a construir▫Entrevistas, prototipos, estudio de documentos.
• A este contexto (sistema) se le denomina «Dominio»• Reglas de negocio: conjunto de reglas que definen
cómo funciona el sistema en el cual la solución se implantará▫Pueden ser restricciones, definiciones u operaciones,
generalmente expresadas en lenguaje natural.
![Page 22: Programa del curso Introducción a las base de datos ▫ Conceptos generales ▫Tipos de BDs ▫Tutorial Introductorio Modelamiento de datos ▫Modelos Entidad-Relación.](https://reader036.fdocuments.net/reader036/viewer/2022062410/5665b4d91a28abb57c943918/html5/thumbnails/22.jpg)
Dominio y regla de Negocio• Ejemplo:
▫ «La universidad Austral es una institución de educación superior. En ella participan alumnos y funcionarios. Estos últimos pueden ser académicos o administrativos.Los estudiantes se matriculan en carreras. Las cuales están compuestas de un conjunto de asignaturas y un trabajo de título. Para obtener un título profesional el estudiante debe aprobar todas las asignaturas y desarrollar exitosamente su trabajo de título.Existen también estudiantes de postgrado, los cuales optan a grados académicos de magíster o doctorado. Sólo profesionales pueden ser estudiantes de postgrado.Por su parte, los académicos importen clases y realizan investigaciones. Las clases reúnen grupos de estudiantes, y se organizan en asignaturas, mientras que las investigaciones se organizan en proyectos. Los académicos pueden desempeñar cargos administrativos, como decano o directores de instituto.
• En la vida real la especificación de requerimientos es un documento mucho más extenso
![Page 23: Programa del curso Introducción a las base de datos ▫ Conceptos generales ▫Tipos de BDs ▫Tutorial Introductorio Modelamiento de datos ▫Modelos Entidad-Relación.](https://reader036.fdocuments.net/reader036/viewer/2022062410/5665b4d91a28abb57c943918/html5/thumbnails/23.jpg)
Diseño Conceptual
•Una ves que se definen –o refinan- los requerimientos, se diseña la solución.
•Los datos se diseñan mediante Diagrama de Entidad-Relación▫Modelo conceptual que expresa los
elementos y sus relaciones•Ejemplo
▫«… carreras, las cuales están compuestas de un conjunto de asignaturas, y un trabajo de ´titulo»
![Page 24: Programa del curso Introducción a las base de datos ▫ Conceptos generales ▫Tipos de BDs ▫Tutorial Introductorio Modelamiento de datos ▫Modelos Entidad-Relación.](https://reader036.fdocuments.net/reader036/viewer/2022062410/5665b4d91a28abb57c943918/html5/thumbnails/24.jpg)
![Page 25: Programa del curso Introducción a las base de datos ▫ Conceptos generales ▫Tipos de BDs ▫Tutorial Introductorio Modelamiento de datos ▫Modelos Entidad-Relación.](https://reader036.fdocuments.net/reader036/viewer/2022062410/5665b4d91a28abb57c943918/html5/thumbnails/25.jpg)
Diseño lógico
•El modelo ER es una representación abstracta. Debe ser traducida al paradigma que utilice la BD en la cual se implementará el sistema.
•Al traducir se opta por un modelo DMBS( Relacional, objetual, jerárquico, etc)
•En este paso también se normalizan las tablas.
•Ejemplo:▫Modelo relacional correspondiente al ER
anterior.
![Page 26: Programa del curso Introducción a las base de datos ▫ Conceptos generales ▫Tipos de BDs ▫Tutorial Introductorio Modelamiento de datos ▫Modelos Entidad-Relación.](https://reader036.fdocuments.net/reader036/viewer/2022062410/5665b4d91a28abb57c943918/html5/thumbnails/26.jpg)
![Page 27: Programa del curso Introducción a las base de datos ▫ Conceptos generales ▫Tipos de BDs ▫Tutorial Introductorio Modelamiento de datos ▫Modelos Entidad-Relación.](https://reader036.fdocuments.net/reader036/viewer/2022062410/5665b4d91a28abb57c943918/html5/thumbnails/27.jpg)
Diseño Físico• Finalmente, el diseño lógico se expresa en un
lenguaje que permite la creación de la BD. (script)
• Para BD relacionales, SQL• SQL permite:
▫Crear la BD (DDL: data definition language)▫Modificar la informacion(DML: data query
language)▫Hacer consultas a la BD(DQL:data query
language)▫Ejemplo
![Page 28: Programa del curso Introducción a las base de datos ▫ Conceptos generales ▫Tipos de BDs ▫Tutorial Introductorio Modelamiento de datos ▫Modelos Entidad-Relación.](https://reader036.fdocuments.net/reader036/viewer/2022062410/5665b4d91a28abb57c943918/html5/thumbnails/28.jpg)
•CREATE TABLE Carrera(nombre_carrera varchar2,duracion number(2),constraint ca_pk primary key(nombre_carrera))
![Page 29: Programa del curso Introducción a las base de datos ▫ Conceptos generales ▫Tipos de BDs ▫Tutorial Introductorio Modelamiento de datos ▫Modelos Entidad-Relación.](https://reader036.fdocuments.net/reader036/viewer/2022062410/5665b4d91a28abb57c943918/html5/thumbnails/29.jpg)
Quienes manejan bases de datos?• Diversos roles:
▫Administrador de BD (DBA) Autoriza accesos, coordina y monitorea su uso,
adquiere recursos de HW y SH según necesidad, backup & recovery, etc
▫Diseñador de DB Identifica datos a ser almacenados en BD, elige
las estructuras más adecuadas▫Usuarios
Programadores de aplicaciones: escriben programas que consultan a la BD
Usuarios finales: consulta la BD directamente
![Page 30: Programa del curso Introducción a las base de datos ▫ Conceptos generales ▫Tipos de BDs ▫Tutorial Introductorio Modelamiento de datos ▫Modelos Entidad-Relación.](https://reader036.fdocuments.net/reader036/viewer/2022062410/5665b4d91a28abb57c943918/html5/thumbnails/30.jpg)
Fin de Introducción
•Que viene a continuación?▫Diseño Conceptual (modelos ER)
Cómo expresar requerimientos de manera estructurada
▫Diseño lógico (modelos relacionales) Como expresar el modelo ER para RDBMSs
▫Diseño físico ( SQL y PL/SQL) Creación y manipulación de BD en la practica
![Page 31: Programa del curso Introducción a las base de datos ▫ Conceptos generales ▫Tipos de BDs ▫Tutorial Introductorio Modelamiento de datos ▫Modelos Entidad-Relación.](https://reader036.fdocuments.net/reader036/viewer/2022062410/5665b4d91a28abb57c943918/html5/thumbnails/31.jpg)
Resumen•BDs son un conjunto de datos estructurados
sobre un dominio•DBMS: programas que manejan BD.•DBMS facilitan el buen manejo de datos.•DBMS pueden conectarse a otros programas•Existen diversos enfoques de trabajo en
DBMS(diseño, programación, implementación de DMBS)
•Existen múltiples modelos de BDMS ( relacional, jerárquico, etc)
![Page 32: Programa del curso Introducción a las base de datos ▫ Conceptos generales ▫Tipos de BDs ▫Tutorial Introductorio Modelamiento de datos ▫Modelos Entidad-Relación.](https://reader036.fdocuments.net/reader036/viewer/2022062410/5665b4d91a28abb57c943918/html5/thumbnails/32.jpg)
Resumen• El más utilizado actualmente es el relacional• Los datos de una BD pueden considerarse en 3 niveles de
abstracción, llamados esquemas• Los BDMS son sistemas complejos, con distintos componentes,
encargados entre otros, dela concurrencia, acceso a datos, seguridad ante fallas.
• Las BD existen en un contexto de negocio ( dominio)• Su desarrollo está ligado al desarrollo de un sistema completo• Fases principales
▫ Especificación de requerimientos: que hacer▫ Diseño: como hacerlo
Conceptual Lógico Físico.
• Existen diferentes tipos de profesionales que interactúan con los DBMSs