BASES DE DATOS, MODELOS DE DATOS Y DBMS



Documentos relacionados
DBMS (Data Base Management System) Un Sistema de Gestión de Base de Datos, consiste en una colección de datos interrelacionados y un conjunto de

Bases de datos 1. Teórico: Introducción

Introducción a los sistemas de bases de datos

Asignaturas, profesores, alumnos. Profesores, grupos, asignaturas, aulas

Tema 1. Conceptos básicos

SISTEMA DE GESTIÓN DE BASE DE DATOS (Database Management System (DBMS))

BASES DE DATOS TEMA 1

TEORIA DE BASES DE DATOS. M. Sc. Cristina Bender Lic. Diana Gázquez

Modelos de Datos y DBMS

Funciones del Administrador de Base de Datos. Ing. Anaylen López, MSc Base de Datos II

1.1 Definición de bases de Datos Distribuidas

1.1.- Objetivos de los sistemas de bases de datos Administración de los datos y administración de bases de datos Niveles de Arquitectura

Sistemas de Información II Tema 1. El enfoque de bases de datos

Universidad de Colima Facultad de Ingeniería Mecánica y Eléctrica. Base de Datos I. Maestra: Martha E. Evangelista Salazar

Resumen. El rol del lenguaje SQL en los SGBDR y en la Relacional. cjimenez@inf.udec.cl, tamrstro@inf.udec.cl

Bases de Datos 3º Informática de Sistemas

Modelos de Datos y DBMS. Referencia. Elmasri Navathe. Temas:

ELEMENTO I INTRODUCCION A LOS SISTEMAS DE BASES DE DATOS

1. Introducción Información y datos Ficheros vs. Bases de datos

Introducción. Componentes de un SI. Sistema de Información:

Base de datos relacional

Unidad 1. Introducción a los conceptos de Bases de Datos

BASES DE DATOS TEMA 1. INTRODUCCION

Arquitectura de Manejadores de Base de Datos

ADMINISTRACIÓN DE BASE DE DATOS

Maestría en Bioinformática. Bases de Datos y Sistemas de Información. Diseño Lógico. Ing. Alfonso Vicente, PMP alfonso.vicente@logos.com.

[CASI v.0110] Pág. 1

BASES DE DATOS TEMA 2. Arquitectura de un Sistema de Gestión de Bases de Datos

ADMINISTRACIÓN DE BASES DE DATOS DISTRIBUIDAS

TEMA 2.- EL SISTEMA GESTOR DE BASES DE DATOS.

SISTEMAS DE GESTIÓN DE BASE DE DATOS SGBD / DBMS

Bases de Datos. Sistemas de Gestión de Bases de Datos

A.N.E.P. Consejo de Educación Técnico Profesional. Educación Media Tecnológica. Orientación: Informática ASIGNATURA SISTEMAS DE BASES DE DATOS II

Unidad I: Sistemas Gestores de Bases de Datos. 1.1 Objetivo de las Bases de Datos

Introducción a Bases de Datos

TALLER No. 1 Capitulo 1: Conceptos Básicos de Bases de datos

Es una colección de datos operativos almacenados y utilizados por los programadores de aplicaciones y por usuarios finales de muy diversa índole!

INTRODUCCION. entidades. Modelo lógico de la base de datos. Matricula. carne. codigo_curso. año semestre nota. propiedades

Universidad de Cantabria

Unidad didáctica 2: Metodologías de desarrollo de Bases de Datos. Unidad didáctica 1: Fase de análisis de requisitos Modelo E/R

Base de Datos. Profesor: José Miguel Rubio L. P. UNIVERSIDAD CATÓLICA DE VALPARAÍSO FACULTAD DE INGENIERÍA ESCUELA DE ING.

DEPARTAMENTO: Computación y diseño NOMBRE DEL CURSO: Base de datos I CLAVE: ACADEMIA A LA QUE PERTENECE: Base de datos I

T ema 2. S is tem as ges tores de bas es de datos

PRESENTACIÓN Resultado de Aprendizaje:

BASE DE DATOS UNIVERSIDAD DE LOS ANDES FACULTAD DE MEDICINA T.S.U. EN ESTADISTICA DE SALUD CATEDRA DE COMPUTACIÓN II. Comenzar presentación

Estructura de Bases de datos. Leonardo Víquez Acuña

TEMA 2 ARQUITECTURA. 1. Arquitectura ANSI-SPARC El DBA y el SGBD Arquitectura back-end / front-end... 31

Tema 11 Bases de datos. Fundamentos de Informática

Capitulo III. Diseño del Sistema.

Una base de datos es una colección de información ordenada e interrelacionada que es de importancia para una empresa.

BASE DE DATOS RELACIONALES

Capítulo 1: Conceptos Básicos de Bases de Datos

República Bolivariana de Venezuela Ministerio Popular de Educación y Deportes UNEFA Cátedra: Base de Datos Unidad I. Introducción

Capítulo 1: Introducción a los Sistemas de Gestión de Bases de Datos (SGBD)

Capítulo 2. Planteamiento del problema. Capítulo 2 Planteamiento del problema

FICHEROS Y BASES DE DATOS (E44) 3º INGENIERÍA EN INFORMÁTICA. Tema 5. Sistemas de Bases de Datos. frente a Sistemas de Ficheros

Ministerio de Educación Base de datos en la Enseñanza. Glosario

BASE DE DATOS QUÉ ES UNA BASE DE DATOS?

BENEMÉRITA UNIVERSIDAD AUTÓNOMA DE PUEBLA FACULTAD CIENCIAS DE LA COMPUTACION

PROGRAMACIÓN ORIENTADA A OBJETOS Master de Computación. II MODELOS y HERRAMIENTAS UML. II.2 UML: Modelado de casos de uso

rg.o El l c i c c i l c o l o de d vi v d i a d a cm a l@ rza e de d u n u n si s s i t s e t ma m a de d in i f n or o ma m c a i c ó i n ó b

Introducción a las bases de datos

IWG-101: Introducción a la Ingeniería. Departamento de Informática, UTFSM 1

BASES DE DATOS DSIC. Curso

UNIVERSIDAD NACIONAL AUTÓNOMA DE MÉXICO FACULTAD DE ESTUDIOS SUPERIORES ACATLÁN HORAS SEMANA

Nuevas tendencias: Virtualización de computadores / servidores

Adquisición y Procesamiento de la Información

Introducción a los sistemas de Bases de datos. Profesor: Msc. MIGUEL ANGEL NIÑO ZAMBRANO

IWG-101: Introducción a la Ingeniería. Departamento de Informática, UTFSM 1

UNIVERSIDAD NACIONAL DE INGENIERÍA CENTRO DE EXTENSIÓN Y PROYECCIÓN SOCIAL AREA DE CURSOS DE ESPECIALIZACIÓN EN TECNOLOGÍAS DE LA INFORMACIÓN

Programa de Asignatura Base de datos

SQL (Structured Query Language)

MODELO RELACIONAL Y PASAJE MER A RELACIONAL

1 GLOSARIO. Actor: Es un consumidor (usa) del servicio (persona, sistema o servicio).

Introducción a los Sistemas de Gestión de Bases de Datos

Sistemas de Información para la Gestión

1

INTRODUCCION A LAS BASES DE DATOS Procesamiento de Archivos vs Bases de Datos ARCHIVOS BASES DE DATOS

UNIVERSIDAD SIMÓN BOLÍVAR Vicerrectorado Académico

HOJA DE ASIGNATURA CON DESGLOSE DE UNIDADES TEMÁTICAS

Asignación de Procesadores

1 EL SISTEMA R/3 DE SAP AG

INTRODUCCIÓN A LOS SISTEMAS GESTORES DE BASE DE DATOS

Tema 1: Sistemas de Gestión de Bases de Datos

SISTEMAS DE INFORMACIÓN II TEORÍA

BASES DE DATOS - SQL. Javier Enciso

Conceptos básicos Oracle 10g Introducción - Administración de Oracle - Orasite.com

Sistemas de Gestión de Bases de Datos

Tecnología de la Información y la Comunicación. Base de datos. Consultas

BASE DE DATOS Heterogéneas

LINEAMIENTOS DE BASES DE DATOS

BASES DE DATOS TEMA 4 DISEÑO DE BASES DE DATOS RELACIONALES

Sistemas de Información y Bases de Datos. Introducción a las Bases de Datos Tema 1

Transcripción:

BASES DE DATOS, MODELOS DE DATOS Y DBMS Maestría en Bioinformática Marzo 2010 Bases de Datos Algunas definiciones: Bases de Datos y DBMS Procesos y Actores Involucrados Por qué usar DBMSs? Cuándo no usar un DBMSs?

Algunas Definiciones Qué es un Base de Datos (BD)? Conjunto de datos relacionados NO tiene por qué ser un programa. Ej: agenda de teléfonos Qué es un Database Management System (DBMS)? Software especializado en la gestión de Bases de Datos Por lo general pensado para grande volúmenes de datos Procesos y Actores Involucrados Procesos: Definición de una BD Construcción de una BD Manipulación de una BD Actores: Administrador de BDs. Diseñador de BDs Desarrolladores de Sistemas de Información Usuarios finales

Por qué usar DBMSs? (I) Qué aporta esta tecnología? Software específico para manejo de datos relacionados. Qué se haría si no se puede usar? Desarrollar programas usando lenguajes de propósito general. C, Java, C++,... y esto que problemas trae? Más trabajo para manipular datos. Productividad, Costos, Calidad. Ejemplo - Aplicación Bancaria Un banco posee un Sistema de Información. Está formado por los siguientes programas: 1. Un programa que debita y/o acredita $ en cuentas. 2. Un programa que crea una cuenta nueva. 3. Un programa que devuelve el saldo de una cuenta. 4. Un programa que genera los movimientos mensuales de una cuenta. 5. Un programa que lista el cliente, la dirección y el saldo de su cuenta. Los datos se almacenan en archivos y los programas se escriben en lenguajes de propósito

Problemas al no usar DBMSs (I) Específicos a la implementación basada en archivos, a resolver por el programador. Inconsistencia de datos. Programar control de restricciones de Integridad. Dificultades para el acceso a información. Programar consultas/listados específicos. Aislamiento de datos. Programar algoritmos de merge (apareo archivos). Seguridad en datos. Programar los controles de acceso para los ítems. Problemas al no usar DBMSs (II) Control de concurrencia. Qué pasa si se ejecuta el programa DEBITO desde dos estaciones? Programa DEBITO (nro_cuenta, cant_retiro) END cuenta = ObtenerCuenta(nro_cuenta); /* lectura de la cuenta a fin de visualizar el saldo actual de la misma y poder modificarlo */ cuenta.saldo := cuenta.saldo cant_retiro; /* se actualiza el saldo */ GuardarCuenta(cuenta); /* se hace efectivo el retiro */

Problemas al no usar DBMSs (III) Una ejecución podría ser de la forma: Puesto 1 (DEBITO(#10,50) cuenta = ObtenerCuenta(#10) saldo = cuenta.saldo // ($ 500) saldo = saldo - 50 // (quedan $ 450) cuenta.saldo = saldo GuardarCuenta(cuenta) Fin DEBITO El saldo es $ 450 Puesto 2 (DEBITO(#10,100) cuenta = ObtenerCuenta(#10) saldo = cuenta.saldo // ($ 500) saldo = saldo - 100 // (quedan $ 400) cuenta.saldo = saldo GuardarCuenta(cuenta) Fin DEBITO El saldo es $ 400 tiempo Por qué usar DBMSs? (II) Organización de la información: Definición central de datos. Abstracción de Datos. Permite múltiples vistas de los datos. Programación del acceso a datos: Separación entre programas y datos. Control de Restricciones de Integridad. Estandarización de modelos y lenguajes.

Por qué usar DBMSs? (III) Explotación de la Base de Datos: Datos compartidos. Control de concurrencia. Seguridad y Recuperación ante fallas. Datos persistentes en modelos avanzados. Por qué no usar DBMSs? Para evitar ciertos costos: Inversión en : Hardware Software Capacitación técnica Costo de administración del DBMS y la base de datos. Costo computacional para proveer: Control de concurrencia Restricción de acceso, etc.

Por qué no usar DBMSs? (II) En algunos casos el uso de un DBMS no se justifica : Muy pocos datos (planillas) Datos muy estables Alta performance (sistemas de tiempo real) Cuando no hay acceso concurrente Modelos de Datos y DBMS Modelos de Datos Esquemas e Instancias Arquitectura en tres niveles Tipos de DBMS Cómo se interactúa con un DBMS? Estructura básica de DBMSs

Modelos de Datos: Definición Lenguajes usados para especificar Bases de Datos Los Modelos de Datos permiten expresar: Estructuras: objetos de los problemas EJ: CUENTAS(nro_cuenta, tipo, moneda, saldo) Restricciones: reglas que deben cumplir los datos EJ: ( c CUENTAS) (c.saldo > 0) Operaciones sobre los datos: insertar, borrar y consultar la BD EJ: INSERT INTO CUENTAS (2584,Caja de ahorros,pesos,5000) Modelos de Datos: Clasificación Según el nivel de abstracción: Conceptuales: Representan la realidad independientemente de cualquier implementación de BD Usados en etapa de Análisis Lógicos: Representan la implementación del conceptual en un DBMS particular Usado en etapas de Diseño e Implementación Físicos: Implementación de estructuras de datos

Modelos de Datos Conceptuales La realidad expresada en términos de: Entidades: conceptos u objetos del mundo real Atributos: propiedades de las entidades Relaciones: asociaciones entre 2 o más entidades Utilizaremos un lenguaje gráfico para construir nuestros modelos (Modelo Entidad Relación) Modelos de Datos: Aplicación MUNDO REAL MODELADO CONCEPTUAL ESQUEMA CONCEPTUAL CUENTAS CAJAS DE AHORROS POSEEN CUENTAS CORRIENTES PERSONAS EJ: MODELO ENTIDAD - RELACION DISEÑO DEL SISTEMA ESQUEMA LÓGICO TABLA CUENTAS(nro_cuenta, moneda, saldo) TABLA PERSONAS (cédula, nombre, ) TABLA POSEEN(cédula, nro_cuenta) EJ: MODELO RELACIONA L

Esquema e Instancias Esquema de una BD: Estructura y significado Muy estables. CUENTAS(nro_cuenta, moneda, saldo) PERSONAS (cédula, nombre, direccion, telefono) POSEEN(cédula, nro_cuenta) Instancias: Datos almacenados Muy volátiles Nro_cuenta moneda saldo 25440 pesos 15000 23456 dólares 500 23457 dólares 850 Recordemos... Propiedades importantes de DBMSs: Control centralizado de la BD. Separación entre esquema y aplicaciones. Esquema: visión global de los datos de la realidad. Aplicaciones: programas sobre la BD. Soporte a diferentes visiones de los datos. Usuarios/aplicaciones ven subconjuntos de la BD. Independencia de datos. Esquema lógico independiente de implementación.

Niveles de Abstracción (arquitectura) NIVEL EXTERNO VISTA EXTERNA 1 VISTA EXTERNA 2 VISTA EXTERNA 3 NIVEL CONCEPTUAL ESQUEMA CONCEPTUAL NIVEL INTERNO ESQUEMA INTERNO Tipos de DBMS Según el Modelo de Datos que usan para la representación interna: Relacional (RDBMS) Orientado a Objetos (OODBMS) Otros: Redes, Jerárquico, Deductivo Según distribución de la BD: Centralizado Distribuido En el curso usaremos un RDBMS centralizado: PostgreSQL

Cómo se interactúa con un DBMS? Existen lenguajes que me permiten: Definir el esquema (crear, borrar, modificar) Data Definition Language (DDL) Manipular las instancias (crear borrar, modificar) Data Manipulation Language (DML) Hacer consultas Query Language (QL) Crear vistas View Definition Language (VDL) SQL (Structured Query Language) lenguaje que permite hacer todo esto sobre los RDBMS Cómo se interactúa con un DBMS? (II) Mediante lenguajes de programación: Los lenguajes definen abstracciones (ej: bibliotecas) Usándolas interactuo con el DBMS También puedo interactuar usando programas cliente que provee el fabricante del DBMS

Estructura de DBMS Referencias Fundamentals of Database Systems 5th Ed., Elmasri & Navathe, Addison Wesley, 2007. (cap. 2 y 3) Curso Fundamentos de Bases de Datos, INCO, http://www.fing.edu.uy/inco/cursos/bdatos/