Introduccion Color

10
 Introducci Introducci ó ó n n Bases de Datos Bases de Datos Ingenier Ingenierí í a T a Té écnica en Inform cnica en Informá ática de Sistema tica de Sistema SGBD SGBD Introducci Introducció ón n 2 Objetivo Principal de un SGBD: Proporcionar una forma práctica y eficiente de almacenar y recuperar la información de una Base de Datos Un Sistema Gestor de Bases de Datos consiste en: Una colección de datos interrelacionados Un conjunto de programas para acceder a los datos Definición de estructuras de almacenamiento, diseño de mecanismos de manipulación de los datos, control de la fiabilidad (ante caídas del sistema o intentos de acceso no autorizado), control de inconsistencias entre usuarios Base de Datos Campos de Aplicación Bases de Datos vs Archivo s  Ver los Datos Modelos de Datos Lenguajes Usuarios Módulos de una Base de Datos Historia Nivel Físico Nivel Lógico Nivel de Vistas  V1 V2 Vn Í Í ndice ndice Introducci Introducció ón n 3 3  Campos de Campos de Aplicaci Aplicaci ó ó n n Introducci Introducció ón n Bases de Datos Bases de Datos Ingenier Ingenierí í a T a Té écnica en Inform cnica en Informá ática de Sistemas tica de Sistemas Aplicaciones Representativas Aplicaciones Representativas Campos de Aplicaci Campos de Aplicació ón n 5 5 Banca: Información de los clientes, de las cuentas, de los préstamos, del registro de operaciones, de las operaciones con tarjetas de crédito, … Líneas Aéreas: Reservas de billetes, planificación de recursos, … Universidades: Matrícula de alumnos, gestión de personal, … Telecomunicaciones: Registros de llamadas, generación de facturas, control del saldo en prepago, … Primeros en usar Bases de Datos distribuidas Aplicaciones Representativas Aplicaciones Representativas Campos de Aplicaci Campos de Aplicació ón n 6 6 Finanzas: Información de empresas, cotizaciones, compra y venta de acciones, …  Ventas por Internet: Presentación de productos, control de pedidos, facturación, personalización de ofertas, … Recursos Humanos: Información de empleados, gestión de nóminas, … La Bases de Datos están presentes, cada vez más, en todos los aspectos de nuestras vidas DNI, NSS, PIN son campos de nuestro registro

description

colores

Transcript of Introduccion Color

  • 1IntroducciIntroduccinn

    Bases de DatosBases de DatosIngenierIngeniera Ta Tcnica en Informcnica en Informtica de Sistematica de Sistema

    SGBDSGBD

    IntroducciIntroduccinn 22

    Objetivo Principal de un SGBD: Proporcionar una forma prctica y eficiente de almacenar y recuperarla informacin de una Base de Datos

    Un Sistema Gestor de Bases de Datos consiste en: Una coleccin de datos interrelacionados Un conjunto de programas para acceder a los datos

    Definicin de estructuras de almacenamiento, diseo de mecanismos de manipulacin de los datos, control de la fiabilidad (ante cadas del sistema o intentos de acceso no autorizado), control de inconsistencias entre usuarios

    Base de Datos

    Campos de Aplicacin Bases de Datos vs Archivos Ver los Datos Modelos de Datos Lenguajes Usuarios Mdulos de una Base de Datos Historia

    Nivel Fsico

    Nivel Lgico

    Nivel de VistasV1 V2 Vn

    ndicendice

    IntroducciIntroduccinn 33

    Campos de Campos de AplicaciAplicacinn

    IntroducciIntroduccinnBases de DatosBases de Datos

    IngenierIngeniera Ta Tcnica en Informcnica en Informtica de Sistemastica de Sistemas

    Aplicaciones RepresentativasAplicaciones Representativas

    Campos de AplicaciCampos de Aplicacinn 55

    Banca: Informacin de los clientes, de las cuentas, de los prstamos, del registro de operaciones, de las operaciones con tarjetas de crdito,

    Lneas Areas: Reservas de billetes, planificacin de recursos,

    Universidades: Matrcula de alumnos, gestin de personal,

    Telecomunicaciones: Registros de llamadas, generacin de facturas, control del saldo en prepago,

    Primeros en usar Bases de Datos

    distribuidas

    Aplicaciones RepresentativasAplicaciones Representativas

    Campos de AplicaciCampos de Aplicacinn 66

    Finanzas: Informacin de empresas, cotizaciones, compra y venta de acciones,

    Ventas por Internet: Presentacin de productos, control de pedidos, facturacin, personalizacin de ofertas,

    Recursos Humanos: Informacin de empleados, gestin de nminas,

    La Bases de Datos estn presentes, cada vez ms, en todos los aspectos de nuestras vidas

    DNI, NSS, PIN son campos de nuestro registro

  • 2Ejemplos del CursoEjemplos del Curso

    Campos de AplicaciCampos de Aplicacinn 77

    Ejemplo 1: Un Banco que mantiene informacin acerca de sus sucursales, sus clientes y las cuentas y prstamos de sus clientes

    Ejemplo 2: Una Biblioteca Pblica que mantiene informacin acerca de sus usuarios, de sus libros y de los prstamos de libros que realiza a sus usuarios

    Ejemplo 3: Un Videoclub que mantiene informacin acerca de sus clientes, de sus productos y de los prstamos y ventas que realiza a sus clientes

    Bases de Datos Bases de Datos vsvs ArchivosArchivos

    IntroducciIntroduccinnBases de DatosBases de Datos

    IngenierIngeniera Ta Tcnica en Informcnica en Informtica de Sistemastica de Sistemas

    Proceso de ArchivosProceso de Archivos

    Bases de Datos Bases de Datos vsvs ArchivosArchivos 99

    En los Sistemas de Procesamiento de Archivos tpicos, previos a las Bases de Datos, se mantena la informacin en varios archivos (del sistema operativo) y se escriban programas como respuesta a las necesidades de la entidad

    Si las necesidades de datos se modificaban se creaban nuevos archivos, si las situaciones posibles aumentaban se creaban nuevos programas

    Mantener la informacin de una organizacin en un Sistema de Procesamiento de Archivos tiene importantes inconvenientes

    RedundanciaRedundancia

    Bases de Datos Bases de Datos vsvs ArchivosArchivos 1010

    La misma informacin puede estar duplicada en diferentes archivos

    La direccin de un cliente del Banco puede aparecer en el archivo de cuentas y en al archivo de prstamos

    El telfono particular de un cliente del Videoclub puede aparecer en el archivo de prstamos y en el archivo de ventas

    Esta redundancia conduce a un almacenamiento y coste de acceso ms alto

    InconsistenciaInconsistencia

    Bases de Datos Bases de Datos vsvs ArchivosArchivos 1111

    Diversas copias de los mismos datos en diferentes ficheros puede no coincidir

    Un cambio de la direccin del cliente reflejado en el archivo de cuentas pero no en al archivo de prstamos

    El telfono particular de un cliente del Videoclub puede ser diferente en el archivo de prstamos y en el archivo de ventas

    La inconsistencia hace dudar de la veracidad de los datos

    Dificultad de AccesoDificultad de Acceso

    Bases de Datos Bases de Datos vsvs ArchivosArchivos 1212

    Slo se pueden obtener aquellos datos para los cuales hay un programa diseado

    Se necesitan los nombre de todos los clientes del Banco que vivan en una localidad concreta

    Hace falta un listado de los usuarios que habitualmente son morosos en la Biblioteca

    La obtencin de datos no es prctica y eficiente

  • 3AislamientoAislamiento

    Bases de Datos Bases de Datos vsvs ArchivosArchivos 1313

    Es difcil escribir programas para archivos que pueden estar en diferentes formatos

    El tiempo de diseo se emplea en problemas de formato y no en problemas de modelado

    IntegridadIntegridad

    Bases de Datos Bases de Datos vsvs ArchivosArchivos 1414

    Los valores almacenados en los distintos ficheros deben satisfacer restricciones de consistencia

    Las restricciones cada vez implican ms datos, generalmente en diferentes archivo, y son cada vez ms difciles de implementar

    El saldo de una cuenta bancaria no puede estar por debajo de los 25 siempre que el cliente tenga pendiente un prstamo

    El cliente del videoclub recibe un descuento en sus pelculas alquiladas en funcin de las compras realizadas en el ltimo ao

    AtomicidadAtomicidad

    Bases de Datos Bases de Datos vsvs ArchivosArchivos 1515

    Es necesario garantizar la consistencia de los datos frente a las acciones de los programas (especialmente ante fallos)

    Una transferencia de fondos en el Banco consiste en quitar dinero de una cuenta y ponrsela a la otra (o se realizan ambas operaciones o no se realiza ninguna)

    El no control de la Atomicidad de las operaciones puede provocar datos inconsistentes

    ConcurrenciaConcurrencia

    Bases de Datos Bases de Datos vsvs ArchivosArchivos 1616

    Las operaciones realizadas deben permitir el trabajo simultneo de varios usuarios

    Varios cajeros del Banco estn realizando operaciones (depsitos, extracciones, transferencias, ) sobre la misma cuenta

    Dos empleados del Videoclub estn alquilando la misma pelcula

    El no control de la Concurrencia de las operaciones puede provocar datos inconsistentes

    SeguridadSeguridad

    Bases de Datos Bases de Datos vsvs ArchivosArchivos 1717

    No todos los usuarios del sistema de datos tienen porqu acceder a toda la informacin

    El cajero del Banco no tiene porqu ver el historial crediticio del cliente para realizar un depsito

    El no control de la Concurrencia de las operaciones puede provocar datos inconsistentes

    SGBDSGBD

    Bases de Datos Bases de Datos vsvs ArchivosArchivos 1818

    Los Sistemas de Gestin de Bases de Datos surgen cmo solucin para evitar, o al menos minimizar, este tipo de problemas

  • 4Ver los DatosVer los Datos

    IntroducciIntroduccinnBases de DatosBases de Datos

    IngenierIngeniera Ta Tcnica en Informcnica en Informtica de Sistemastica de Sistemas

    VisiVisin Abstractan Abstracta

    Ver los DatosVer los Datos 2020

    Uno de los objetivos fundamentales de un Sistema de Gestin de Bases de Datos es proporcionar a los usuarios una Visin Abstracta de los datos almacenados

    Esconder detalles acerca de cmo se

    almacenan y mantienen los datos

    Niveles de Abstraccin

    Nivel de Vistas

    Nivel Lgico

    Nivel Fsico

    Nivel FNivel Fsicosico

    Ver los DatosVer los Datos 2121

    El nivel ms bajo de abstraccin describe cmose almacenan realmente los datos

    Se describen en detalle las estructuras de datos complejas de bajo nivel

    En el Nivel Fsico se define el Esquema Fsico

    Nivel Fsico

    Nivel Lgico

    Nivel de VistasV1 V2 Vn

    Nivel LNivel Lgicogico

    Ver los DatosVer los Datos 2222

    En el nivel de abstraccin lgico se describe qu datosse almacenan en la Base de Datos y qu relaciones existen entre esos datos

    La Base de Datos se describe en trminos de un nmero pequeo de estructuras relativamente simple

    Los Administradores de Bases de Datos, que deben decidir la informacin que se mantiene en la base de datos usan este nivel de abstraccin

    En el Nivel Lgico se define el Esquema Lgico

    Nivel Fsico

    Nivel Lgico

    Nivel de VistasV1 V2 Vn

    Nivel Fsico

    Nivel Lgico

    Nivel de VistasV1 V2 Vn

    Nivel de VistasNivel de Vistas

    Ver los DatosVer los Datos 2323

    En el nivel ms alto de abstraccin se describe slo una parte de la base de datos

    Se trata de adaptaciones de la base de datos a las necesidades de cada usuario

    En el Nivel de Vistas se definen los Subesquemas

    El sistema puede proporcionar muchas vistas para una misma base de datos

    Esquema LEsquema Lgicogico

    Ver los DatosVer los Datos 2424

    El esquema lgico es, con mucho, el ms importante

    Los programadores construyen las aplicaciones usando el nivel lgico

    Nivel Fsico

    Nivel Lgico

    Nivel de VistasV1 V2 Vn

  • 5Modelos de Modelos de DatosDatos

    IntroducciIntroduccinnBases de DatosBases de Datos

    IngenierIngeniera Ta Tcnica en Informcnica en Informtica de Sistemastica de Sistemas

    Modelo de DatosModelo de Datos

    Modelos de DatosModelos de Datos 2626

    Coleccin de herramientas conceptuales para describir los datos, las relaciones, la semnticay las restricciones de consistencia presentes en el universo a estudiar

    Modelos lgicos basados en objetos

    Modelos lgicos basados en registros

    Modelos fsicos

    Modelo EntidadModelo Entidad--RelaciRelacinn

    Modelos de DatosModelos de Datos 2727

    Est basado en una percepcin del mundo real que consta de una coleccin de objetos bsicos, llamados entidades, y de relaciones entre estos objetos

    Personas y cuentas son entidades del Banco

    Libros es una entidad de la Biblioteca

    Alquilar y vender son relaciones del Videoclub

    Depsito y reintegro son relaciones del Banco

    Diagrama EDiagrama E--RR

    Modelos de DatosModelos de Datos 2828

    Entidades Relaciones

    Modelo RelacionalModelo Relacional

    Modelos de DatosModelos de Datos 2929

    Se utiliza un grupo de tablas, compuestas por columnas, para representar los datos y las relaciones entre ellos

    Est situado en un nivel de abstraccin menor que el modelo E-R

    Otros ModelosOtros Modelos

    Modelos de DatosModelos de Datos 3030

    Modelo de datos orientado a objetos: Extensin del modelo E-R con las nociones de encapsulacin, mtodos e identidad

    Modelo de datos relacional orientado a objetos:Combina caractersticas del modelo orientado a objetos y el modelo relacional

    Lenguaje de marcas extensible (XML): se usa para representar datos semiestructurados

    Modelo de datos en red, modelo de datos jerrquico:modelos antiguos con menor nivel de abstraccin

  • 6LenguajesLenguajes

    IntroducciIntroduccinnBases de DatosBases de Datos

    IngenierIngeniera Ta Tcnica en Informcnica en Informtica de Sistemastica de Sistemas

    Tipos de LenguajesTipos de Lenguajes

    LenguajesLenguajes 3232

    Lenguaje de definicin de datos (LDD): para especificar el esquema de la base de datos, especificar las restricciones de consistencia

    Lenguaje de manipulacin de datos (LMD): para expresar las consultas a la base de datos, las modificaciones, el borrado de datos

    No son dos lenguajes separados

    LMD procedimentales: el usuario debe especificar qu datos se necesitan y cmo obtener esos datos

    LMD declarativos: el usuario debe especificar qudatos se necesitan pero no cmo obtener esos datos

    SQLSQL

    LenguajesLenguajes 3333

    SELECT texto, autorFROM citasWHERE LEFT(texto,1)="$letra"

    ORDER BY texto

    CREATE TABLE citas(texto VARCHAR(200),nacimiento SMALLINT(4),)

    LMD declarativo

    LDD

    ProgramasProgramas

    LenguajesLenguajes 3434

    Programas de aplicacin escritos en lenguajes como Cobol, C, C++ Java para interaccionar con la base de datos

    Ejecucin de las instrucciones LDD y LMD:

    Mediante un interfaz o conjunto de procedimientos (ODBC, JDBC)

    Mediante un precompilador LMD

    UsuariosUsuarios

    IntroducciIntroduccinnBases de DatosBases de Datos

    IngenierIngeniera Ta Tcnica en Informcnica en Informtica de Sistemastica de Sistemas

    Usuario NormalUsuario Normal

    UsuariosUsuarios 3636

    Interactan con el sistema mediante la invocacin de alguno de los programas de aplicacin que se han escrito previamente

    El cajero del Banco

    La bibliotecaria de la Biblioteca

    Los empleados del Videoclub

    Un usuario de banca online del Banco

    Interfaz de formularios

  • 7Programador de AplicacionesProgramador de Aplicaciones

    UsuariosUsuarios 3737

    Escriben programas de aplicacin mediante herramientas

    Usuario SofisticadoUsuario Sofisticado

    UsuariosUsuarios 3838

    Interacta con el sistema sin programas escritos; forma sus consultas en un lenguaje de consulta de bases de datos y las enva al procesador de consultas

    Analistas que envan consultas para explorar la base de datos

    Programadores de aplicaciones probando los efectos de sus diseos

    Usuario EspecializadoUsuario Especializado

    UsuariosUsuarios 3939

    Escriben aplicaciones de bases de datos especializadas que no son adecuadas en el marco del procesamiento de datos tradicional

    Diseadores de sistemas de diseo asistido, bases de conocimiento, sistemas expertos, sistemas con datos complejos (audio, vdeo, )

    AdministradorAdministrador

    UsuariosUsuarios 4040

    Control centralizado de los datos y de los programas que acceden a los datos

    Una de las principales razones de la introduccin de los SGBD es la disponibilidad de administradores

    Funciones del AdministradorFunciones del Administrador

    UsuariosUsuarios 4141

    Definicin del esquema: crea el esquema original de la base de datos escribiendo un conjunto de instrucciones de definicin de datos en el LDD

    Definicin de la estructura y del mtodo de acceso

    Modificacin del esquema y de la organizacin lgica: realizan cambios en el esquema para reflejar las necesidades cambiantes de la organizacin

    Concesin de autorizacin para el acceso a datos: determina a qu partes de la base de datos puede acceder cada usuario

    Mantenimiento rutinario: copias de seguridad, control del espacio libre, control del rendimiento,

    UsuariosUsuarios

    UsuariosUsuarios 4242

  • 8MMdulos de una dulos de una Base de DatosBase de Datos

    IntroducciIntroduccinnBases de DatosBases de Datos

    IngenierIngeniera Ta Tcnica en Informcnica en Informtica de Sistemastica de Sistemas

    Procesador de ConsultasProcesador de Consultas

    MMdulos de una Base de Datosdulos de una Base de Datos 4444

    Ayuda al sistema de bases de datos a simplificar y facilitar el acceso a los datos

    Intrprete del LDD: interpreta las instrucciones para registrar las definiciones en el diccionario de datos

    Compilador del LMD: traduce las instrucciones de manipulacin en planes de evaluacin para el motor de evaluacin de consultas

    Optimizador de consultas: elige el mejor plan de evaluacin

    Motor de evaluacin de consultas: ejecuta las instrucciones de bajo nivel correspondientes a las consultas

    Procesador de ConsultasProcesador de Consultas

    MMdulos de una Base de Datosdulos de una Base de Datos 4545

    Gestor de AlmacenamientoGestor de Almacenamiento

    MMdulos de una Base de Datosdulos de una Base de Datos 4646

    Proporciona la interfaz entre los datos de bajo nivel en la base de datos y los programas de aplicacin y las consultas

    Gestor de autorizacin e integridad: comprueba las autorizaciones de acceso de los usuarios y que se satisfagan las restricciones de integridad

    Gestor de transacciones: asegura el estado consistente de la base de datos

    Gestor de archivos: gestiona la reserva de espacio de almacenamiento

    Gestor de memoria intermedia: movimiento de los datos entre disco, memoria principal y memoria cach

    Gestor de AlmacenamientoGestor de Almacenamiento

    MMdulos de una Base de Datosdulos de una Base de Datos 4747

    Estructuras de DatosEstructuras de Datos

    MMdulos de una Base de Datosdulos de una Base de Datos 4848

    Implementacin fsica del sistema

    Archivos de datos: almacenan la base de datos

    Diccionario de datos: almacenan el esquema de la base de datos

    ndice: almacenan mecanismos de acceso rpido a los datos

  • 9Estructuras de DatosEstructuras de Datos

    MMdulos de una Base de Datosdulos de una Base de Datos 4949

    ArquitecturaArquitectura

    MMdulos de una Base de Datosdulos de una Base de Datos 5050

    Predomina la arquitectura cliente-servidor

    Dos capas: la aplicacin reside en el cliente

    Tres capas: el cliente se comunica con un servidor de aplicaciones

    HistoriaHistoria

    IntroducciIntroduccinnBases de DatosBases de Datos

    IngenierIngeniera Ta Tcnica en Informcnica en Informtica de Sistemastica de Sistemas

    Procesamiento de DatosProcesamiento de Datos

    HistoriaHistoria 5252

    El procesamiento de datos es la locomotora que empuja el crecimiento de los ordenadores

    Las tarjetas perforadas, inventadas por Hollerith, se usaron en los principio del siglo XX para registrar los datos del censo de los EE.UU. y el proceso, para tabular los resultados, se realiz mediante sistemas mecnicos

    ~1950 ~1950 -- ~1964~1964

    HistoriaHistoria 5353

    Se desarrollan las cintas magnticas

    El procesamiento de datos consista en leer datos de una o ms cintas y escribir datos en una nueva cinta

    Las cintas slo se podan leer secuencialmente

    ~1965 ~1965 -- ~1979~1979

    HistoriaHistoria 5454

    El uso de los discos fijos a finales de los 60 cambia el escenario del procesamiento de datos

    Los datos se liberaron de la tirana de la secuencialidad

    Se desarrollan las bases de datos de red y jerrquicas que permitieron estructuras de datos tales como listas y rboles

    Los programadores pueden construir y manipular estructuras de datos

    Edgar Frank Codd (1970) publica el modelo relacional y formas declarativas (no procedimentales) de consultar los datos

  • 10

    ~1980 ~1980 -- ~1989~1989

    HistoriaHistoria 5555

    System R, un proyecto innovador de IBM, desarrolla tcnicas para la construccin de bases de datos relacionales eficaces (SQL/DS)

    Primeros sistemas de bases de datos relacionales: DB2 de IBM, Oracle, Ingres y Rdb de DEC

    El modelo relacional consigue el consigue el reinado supremo entre los modelos de datos

    Investigacin en bases de datos paralelas, distribuidas y orientadas a objetos

    ~1990 ~1990 -- ~1999~1999

    HistoriaHistoria 5656

    Se estandariza el SQL ?A mitad de la dcada, las bases de datos se implantan de forma extensiva con la llegada de la WWW

    Se trabaja en la alta fiabilidad y disponibilidad (24x7)