BASES DE DATOS Conceptos B á sicos  Prof. Eric Nelson Pérez Z. Bases de datos I
Un poco de historia … Bases de datos I Sistemas de archivos: Surgieron a raíz de la necesidad de almacenamiento de la información para su correspondiente reutilización ( persistencia ) Desventajas: Redundancia de los datos Los archivos están separados unos de otros (no se pueden “combinar” fácilmente) Alto costo para la propagación de cambios Inconsistencia debido a actualizaciones simultáneas
Un poco de historia … Bases de datos I Procesamiento  de Clientes Archivo de  Clientes Procesamiento  de Préstamos Archivo de  Préstamos Usuario  del  Archivo de Clientes Usuario  del  Archivo de Préstamos Por cada préstamo se guarda la información del cliente correspondiente: Redundancia
¿Por qué surgieron los sistemas de Bases de Datos? Necesidad de solucionar las debilidades de los sistemas de archivos Capacidades: Manejo de  persistencia Soporte por lo menos de un  modelo de datos Soporte de un  lenguaje de alto nivel  que permita manipular y definir la estructura de la información Control de acceso Evitar inconsistencias  al  compartir  la información Bases de datos I Un poco de historia …
…  Antes Bases de datos I Empleados Clientes Inventario Ventas Cuentas SGBD Empleados Clientes Ventas Inventario Cuentas Dpto. Personal Dpto. Ventas Dpto. Contabilidad BASE DE DATOS …  Ahora Personal Ventas Contabilidad
Definición Una  base de datos  es un  conjunto  estructurado de datos coherentes Bases de datos I Colección disponible de información
Definición Una  base de datos  es un conjunto  estructurado  de datos coherentes Bases de datos I Colección organizada en subconjuntos, en función de ligas y de relaciones entre las diferentes informaciones (estructura lógica)
Definición Una  base de datos  es un conjunto estructurado de datos  coherentes Bases de datos I No hay contradicción entre los datos ligados, no hay pérdida de información, aun sabiendo que hay una utilización compartida de los datos entre varios usuarios
Definición Un  S istema de  G estión de  B ases de  D atos ( SGBD ) es un software que permite  manipular  las bases de datos Bases de datos I Construir Utilizar  Mantener  Reorganizar
Sistema de Gestión de Bases de Datos Propiedades fundamentales Independencia de los datos (OJO es muy importante) Acceso eficiente a los datos Integridad y seguridad de los datos Administración de los datos  Acceso concurrente y recuperación en caso de « crash » Los SGBD deben cumplir con las propiedades ACID para las transacciones: A tomicity (Atomicidad: las transacciones son atómicas) C onsistency (Consistencia: una transacción transforma un estado consistente de la BD en otro) I solation (Aislamiento: las transacciones están aisladas entre si) D urability (Durabilidad: después que una transacción ha sido confirmada ella persiste) Bases de datos I
Algunas definiciones Esquema de una Base de Datos : Cuando una base de Datos es diseñada interesa definir una estructura para ésta.  Esta estructura permanece “estática” durante un gran período de tiempo, aunque puede sufrir modificaciones ocasionales Instancia : Es la información que en un determinado instante del tiempo posee la base de datos y que cambia permanentemente (excepto en algunos tipos de bases de BD particulares) Bases de datos I
Usuario final:  El que interactúa con la base de datos, por lo general a través de aplicaciones e interfaces Usuario especialista:  El que diseña y programa aplicaciones para usuarios finales. DBA (Database Administrator):  El que administra la base de datos. ¿Qué hace? Algunas definiciones Bases de datos I
Bases de datos I Universidad Nacional de Colombia Funciones y componentes principales de un SGBD DDL: lenguaje de definición de datos DML: lenguaje de manipulación de datos Fuente: “Introducción a los sistemas de bases de datos” C.J. Date
Componentes funcionales de un SGBD Metadatos o Diccionario de Datos (D.D):  Contiene el esquema de la B.D, los usuarios, los permisos de acceso, etc.  Son datos sobre los datos. Almacena la información que permite la traducción entre los 3 niveles de la Arquitectura ANSI/SPARC* Optimizador de consultas : Define el plan de ejecución de operaciones solicitadas por los usuarios, de tal manera que se lleven a cabo de la manera más eficiente posible Manejador de transacciones :  Controla el acceso y la concurrencia de operaciones *Se verá mas adelante en el curso Bases de datos I
Componentes funcionales de un SGBD Manejador de almacenamiento  tiene dos componentes: - M anejador de archivos    recupera desde disco los bloques que contienen la información solicitada por una transacción. - M anejador de buffer    mantiene en memoria principal la información  más usada  y decide cuando llevar a disco alguno de sus bloques. Bases de datos I
SGBD - Funciones Soporta DML:  Lenguaje para actualización, almacenamiento y recuperación de datos Ofrece optimización en la búsqueda de la información Soporta DDL :  Lenguaje para definir los datos Metadatos (DD): Catálogo autodescriptivo,  información sobre los objetos existentes en el sistema     Datos sobre los datos Bases de datos I
Ventajas de un SGBD Reutilización de datos y programas  Control de redundancia Estandarización ¿En qué sentido? Consistencia (No hay redundancia)  Es posible equilibrar las cargas de los requerimientos (establecer prioridades) Bases de datos I
Ventajas de un SGBD Integridad (Se cumplen las reglas establecidas    ¿Por quién?) Seguridad Rapidez de desarrollo Mantenimiento y reingeniería: cambios en la estructura de datos sin cambiar los programas que los usan (hasta cierto punto) Bases de datos I
Desventajas de un SGBD Tamaño Susceptibilidad a fallas ( Discutible ) Complejidad en la recuperación a fallas ( Discutible ) Puede llegar a trabajar en forma “lenta” debido a la cantidad de  verificaciones  que debe hacer Bases de datos I
Niveles de abstracción (ANSI/SPARC) Bases de datos I Nivel interno  gestión de acceso Nivel   conceptual  integridad-coherencia Nivel externo  confidencialidad Esquema físico Esquema lógico, resultado de un proceso de modelamiento   Vista usuario 1 Vista usuario 2 Vista usuario n n esquemas externos
Nivel de Visión Externo El más cercano a los usuarios finales Percepción de la base de datos por parte de los usuarios finales Tantas visiones como tipos de usuarios Cada visión de usuario final se puede caracterizar como un  subesquema   Bases de datos I
Nivel de Visión Cada visión puede proporcionar diferentes representaciones de los mismos datos Bases de datos I Visión Vendedor  Fechas con formato: (dd-mm-yy) Visión Contador Fechas con formato: (yyyy-dd-mm) BD
Nivel de Visión Algunas  visiones  de usuario pueden incluir: Datos  Agrupados :  Totales por Dpto . Datos  Derivados :  Sueldo total = básico + comisión   Datos  Calculados :  Edad de una persona (inferida a partir de su fecha de Nacimiento) Bases de datos I
Nivel de Visión Los conceptos de dato derivado y calculado podrían usarse indistintamente para significar, en general, que un dato se genera a partir de otro(s) Pueden haber a su vez datos agregados derivados, datos agregados calculados etc. Bases de datos I
Nivel Conceptual Mediador entre los otros 2 niveles Interesante para el usuario especialista Se ocupa de los datos almacenados en la base de datos física y las  relaciones  entre ellos Descripción semántica de los datos que conforman la base de datos Soporta a cada visión de usuario externa Bases de datos I
Nivel Conceptual Es una visión completa de todos los  requerimientos  y elementos de  interés para  la organización Debe incluir  restricciones  sobre los datos La descripción del nivel conceptual no debe tener detalles dependientes del almacenamiento* Tiene asociado un lenguaje de alto nivel * Sin embargo en algunos SGBD esto no se logra expresar de esta manera… Bases de datos I
Nivel Físico Interno Más cercano a la máquina Interesa al Administrador y al usuario Especialista Esquema físico: Descripción y  tipos de datos:  tamaño y precisión, tipos de índices y de estructuras de almacenamiento concretas que se manejan, de acuerdo con un  SGBD particular Bases de datos I
Nivel Físico Describe  cómo  los datos son almacenados en términos de estructuras de datos particulares Se encarga de:  - Reservar espacio para datos e índices - Compresión de datos - Técnicas de encriptamiento de datos Bases de datos I
Independencia de los datos Es uno de los objetivos de la arquitectura ANSI/SPARC Permite modificar la definición de un nivel sin  afectar  (en lo posible) el nivel inmediatamente superior Sin independencia de datos se requeriría mucho esfuerzo para cambiar las aplicaciones de tal forma que se adaptasen a la nueva estructura de la base de datos. Hay dos tipos: física y lógica Bases de datos I
Independencia de los datos Física: inmunidad que tienen los usuarios y las aplicaciones ante los cambios en la forma de almacenar físicamente los datos. Conceptual o lógica: inmunidad que poseen los usuarios y las aplicaciones ante los cambios en la estructura lógica de la base de datos Bases de datos I
Independencia Física Se presenta entre el nivel conceptual y el nivel físico Un cambio en el esquema físico (usar otras estructuras de almacenamiento) no conduce a cambios en el esquema conceptual Ej. Cambio en la forma de almacenar un índice:  B+  por  Hashing , ¿con qué propósito se hace un cambio de este tipo? Inmunidad  del esquema conceptual ante cambios del esquema físico   Bases de datos I
Independencia Lógica Se presenta entre el nivel de visión y el nivel conceptual Significa que un cambio en el nivel conceptual no debe conllevar a un cambio en el nivel de visión Es más difícil de lograr. ¿Por qué? Bases de datos I
Independencia Lógica Algunos de los posibles cambios en el nivel conceptual: Adición de nuevos elementos (atributos, entidades etc.) Eliminación de elementos     Puede afectar a los subesquemas externos Bases de datos I
Tendencias de los SGBD Sistemas para el soporte para toma de decisiones (Data Warehouse) y/o con capacidades deductivas y bases de datos temporales Manejar información multimedial: Imágenes, audio, videos Bases de datos orientadas a objetos y objeto-relacionales Manejar información georeferenciada: Sistemas de Información Geográficos (SIG) Manejo de información documental: Motores de búsqueda, sistemas para el manejo de documentos.  Bases de datos nativas para XML Bases de datos I
La descripción completa de una base de datos se denomina  esquema Cada visión de usuario tiene su esquema (subesquema), existe  un  esquema conceptual y  uno  interno Existen correspondencias (“mappings”)  -  Entre cada subesquema externo y el  conceptual -  Entre el esquema conceptual y el interno Estas correspondencias le permiten al SGBD por ejemplo saber un registro conceptual con qué registro(s) del nivel físico se corresponde Bases de datos I RESUMEN
En  teoría  debería existir un lenguaje de descripción para cada nivel* En la práctica sin embargo en muchos SGBD el esquema conceptual queda fusionado con la especificación del esquema interno. * No siempre sucede así en los SGBD actuales… Bases de datos I RESUMEN
Próximas clases Modelos: Modelo conceptual: el diseño de un modelo conceptual parte de la especificación de requisitos Ingeniería de requisitos Modelos conceptuales: E/A, semántico Modelos Lógicos: Relacional Modelos físicos: dependientes del SGBD Bases de datos I

Concepto de bd

  • 1.
    BASES DE DATOSConceptos B á sicos Prof. Eric Nelson Pérez Z. Bases de datos I
  • 2.
    Un poco dehistoria … Bases de datos I Sistemas de archivos: Surgieron a raíz de la necesidad de almacenamiento de la información para su correspondiente reutilización ( persistencia ) Desventajas: Redundancia de los datos Los archivos están separados unos de otros (no se pueden “combinar” fácilmente) Alto costo para la propagación de cambios Inconsistencia debido a actualizaciones simultáneas
  • 3.
    Un poco dehistoria … Bases de datos I Procesamiento de Clientes Archivo de Clientes Procesamiento de Préstamos Archivo de Préstamos Usuario del Archivo de Clientes Usuario del Archivo de Préstamos Por cada préstamo se guarda la información del cliente correspondiente: Redundancia
  • 4.
    ¿Por qué surgieronlos sistemas de Bases de Datos? Necesidad de solucionar las debilidades de los sistemas de archivos Capacidades: Manejo de persistencia Soporte por lo menos de un modelo de datos Soporte de un lenguaje de alto nivel que permita manipular y definir la estructura de la información Control de acceso Evitar inconsistencias al compartir la información Bases de datos I Un poco de historia …
  • 5.
    … AntesBases de datos I Empleados Clientes Inventario Ventas Cuentas SGBD Empleados Clientes Ventas Inventario Cuentas Dpto. Personal Dpto. Ventas Dpto. Contabilidad BASE DE DATOS … Ahora Personal Ventas Contabilidad
  • 6.
    Definición Una base de datos es un conjunto estructurado de datos coherentes Bases de datos I Colección disponible de información
  • 7.
    Definición Una base de datos es un conjunto estructurado de datos coherentes Bases de datos I Colección organizada en subconjuntos, en función de ligas y de relaciones entre las diferentes informaciones (estructura lógica)
  • 8.
    Definición Una base de datos es un conjunto estructurado de datos coherentes Bases de datos I No hay contradicción entre los datos ligados, no hay pérdida de información, aun sabiendo que hay una utilización compartida de los datos entre varios usuarios
  • 9.
    Definición Un S istema de G estión de B ases de D atos ( SGBD ) es un software que permite manipular las bases de datos Bases de datos I Construir Utilizar Mantener Reorganizar
  • 10.
    Sistema de Gestiónde Bases de Datos Propiedades fundamentales Independencia de los datos (OJO es muy importante) Acceso eficiente a los datos Integridad y seguridad de los datos Administración de los datos Acceso concurrente y recuperación en caso de « crash » Los SGBD deben cumplir con las propiedades ACID para las transacciones: A tomicity (Atomicidad: las transacciones son atómicas) C onsistency (Consistencia: una transacción transforma un estado consistente de la BD en otro) I solation (Aislamiento: las transacciones están aisladas entre si) D urability (Durabilidad: después que una transacción ha sido confirmada ella persiste) Bases de datos I
  • 11.
    Algunas definiciones Esquemade una Base de Datos : Cuando una base de Datos es diseñada interesa definir una estructura para ésta. Esta estructura permanece “estática” durante un gran período de tiempo, aunque puede sufrir modificaciones ocasionales Instancia : Es la información que en un determinado instante del tiempo posee la base de datos y que cambia permanentemente (excepto en algunos tipos de bases de BD particulares) Bases de datos I
  • 12.
    Usuario final: El que interactúa con la base de datos, por lo general a través de aplicaciones e interfaces Usuario especialista: El que diseña y programa aplicaciones para usuarios finales. DBA (Database Administrator): El que administra la base de datos. ¿Qué hace? Algunas definiciones Bases de datos I
  • 13.
    Bases de datosI Universidad Nacional de Colombia Funciones y componentes principales de un SGBD DDL: lenguaje de definición de datos DML: lenguaje de manipulación de datos Fuente: “Introducción a los sistemas de bases de datos” C.J. Date
  • 14.
    Componentes funcionales deun SGBD Metadatos o Diccionario de Datos (D.D): Contiene el esquema de la B.D, los usuarios, los permisos de acceso, etc. Son datos sobre los datos. Almacena la información que permite la traducción entre los 3 niveles de la Arquitectura ANSI/SPARC* Optimizador de consultas : Define el plan de ejecución de operaciones solicitadas por los usuarios, de tal manera que se lleven a cabo de la manera más eficiente posible Manejador de transacciones : Controla el acceso y la concurrencia de operaciones *Se verá mas adelante en el curso Bases de datos I
  • 15.
    Componentes funcionales deun SGBD Manejador de almacenamiento tiene dos componentes: - M anejador de archivos  recupera desde disco los bloques que contienen la información solicitada por una transacción. - M anejador de buffer  mantiene en memoria principal la información más usada y decide cuando llevar a disco alguno de sus bloques. Bases de datos I
  • 16.
    SGBD - FuncionesSoporta DML: Lenguaje para actualización, almacenamiento y recuperación de datos Ofrece optimización en la búsqueda de la información Soporta DDL : Lenguaje para definir los datos Metadatos (DD): Catálogo autodescriptivo, información sobre los objetos existentes en el sistema  Datos sobre los datos Bases de datos I
  • 17.
    Ventajas de unSGBD Reutilización de datos y programas Control de redundancia Estandarización ¿En qué sentido? Consistencia (No hay redundancia) Es posible equilibrar las cargas de los requerimientos (establecer prioridades) Bases de datos I
  • 18.
    Ventajas de unSGBD Integridad (Se cumplen las reglas establecidas  ¿Por quién?) Seguridad Rapidez de desarrollo Mantenimiento y reingeniería: cambios en la estructura de datos sin cambiar los programas que los usan (hasta cierto punto) Bases de datos I
  • 19.
    Desventajas de unSGBD Tamaño Susceptibilidad a fallas ( Discutible ) Complejidad en la recuperación a fallas ( Discutible ) Puede llegar a trabajar en forma “lenta” debido a la cantidad de verificaciones que debe hacer Bases de datos I
  • 20.
    Niveles de abstracción(ANSI/SPARC) Bases de datos I Nivel interno gestión de acceso Nivel conceptual integridad-coherencia Nivel externo confidencialidad Esquema físico Esquema lógico, resultado de un proceso de modelamiento Vista usuario 1 Vista usuario 2 Vista usuario n n esquemas externos
  • 21.
    Nivel de VisiónExterno El más cercano a los usuarios finales Percepción de la base de datos por parte de los usuarios finales Tantas visiones como tipos de usuarios Cada visión de usuario final se puede caracterizar como un subesquema Bases de datos I
  • 22.
    Nivel de VisiónCada visión puede proporcionar diferentes representaciones de los mismos datos Bases de datos I Visión Vendedor Fechas con formato: (dd-mm-yy) Visión Contador Fechas con formato: (yyyy-dd-mm) BD
  • 23.
    Nivel de VisiónAlgunas visiones de usuario pueden incluir: Datos Agrupados : Totales por Dpto . Datos Derivados : Sueldo total = básico + comisión Datos Calculados : Edad de una persona (inferida a partir de su fecha de Nacimiento) Bases de datos I
  • 24.
    Nivel de VisiónLos conceptos de dato derivado y calculado podrían usarse indistintamente para significar, en general, que un dato se genera a partir de otro(s) Pueden haber a su vez datos agregados derivados, datos agregados calculados etc. Bases de datos I
  • 25.
    Nivel Conceptual Mediadorentre los otros 2 niveles Interesante para el usuario especialista Se ocupa de los datos almacenados en la base de datos física y las relaciones entre ellos Descripción semántica de los datos que conforman la base de datos Soporta a cada visión de usuario externa Bases de datos I
  • 26.
    Nivel Conceptual Esuna visión completa de todos los requerimientos y elementos de interés para la organización Debe incluir restricciones sobre los datos La descripción del nivel conceptual no debe tener detalles dependientes del almacenamiento* Tiene asociado un lenguaje de alto nivel * Sin embargo en algunos SGBD esto no se logra expresar de esta manera… Bases de datos I
  • 27.
    Nivel Físico InternoMás cercano a la máquina Interesa al Administrador y al usuario Especialista Esquema físico: Descripción y tipos de datos: tamaño y precisión, tipos de índices y de estructuras de almacenamiento concretas que se manejan, de acuerdo con un SGBD particular Bases de datos I
  • 28.
    Nivel Físico Describe cómo los datos son almacenados en términos de estructuras de datos particulares Se encarga de: - Reservar espacio para datos e índices - Compresión de datos - Técnicas de encriptamiento de datos Bases de datos I
  • 29.
    Independencia de losdatos Es uno de los objetivos de la arquitectura ANSI/SPARC Permite modificar la definición de un nivel sin afectar (en lo posible) el nivel inmediatamente superior Sin independencia de datos se requeriría mucho esfuerzo para cambiar las aplicaciones de tal forma que se adaptasen a la nueva estructura de la base de datos. Hay dos tipos: física y lógica Bases de datos I
  • 30.
    Independencia de losdatos Física: inmunidad que tienen los usuarios y las aplicaciones ante los cambios en la forma de almacenar físicamente los datos. Conceptual o lógica: inmunidad que poseen los usuarios y las aplicaciones ante los cambios en la estructura lógica de la base de datos Bases de datos I
  • 31.
    Independencia Física Sepresenta entre el nivel conceptual y el nivel físico Un cambio en el esquema físico (usar otras estructuras de almacenamiento) no conduce a cambios en el esquema conceptual Ej. Cambio en la forma de almacenar un índice: B+ por Hashing , ¿con qué propósito se hace un cambio de este tipo? Inmunidad del esquema conceptual ante cambios del esquema físico Bases de datos I
  • 32.
    Independencia Lógica Sepresenta entre el nivel de visión y el nivel conceptual Significa que un cambio en el nivel conceptual no debe conllevar a un cambio en el nivel de visión Es más difícil de lograr. ¿Por qué? Bases de datos I
  • 33.
    Independencia Lógica Algunosde los posibles cambios en el nivel conceptual: Adición de nuevos elementos (atributos, entidades etc.) Eliminación de elementos  Puede afectar a los subesquemas externos Bases de datos I
  • 34.
    Tendencias de losSGBD Sistemas para el soporte para toma de decisiones (Data Warehouse) y/o con capacidades deductivas y bases de datos temporales Manejar información multimedial: Imágenes, audio, videos Bases de datos orientadas a objetos y objeto-relacionales Manejar información georeferenciada: Sistemas de Información Geográficos (SIG) Manejo de información documental: Motores de búsqueda, sistemas para el manejo de documentos. Bases de datos nativas para XML Bases de datos I
  • 35.
    La descripción completade una base de datos se denomina esquema Cada visión de usuario tiene su esquema (subesquema), existe un esquema conceptual y uno interno Existen correspondencias (“mappings”) - Entre cada subesquema externo y el conceptual - Entre el esquema conceptual y el interno Estas correspondencias le permiten al SGBD por ejemplo saber un registro conceptual con qué registro(s) del nivel físico se corresponde Bases de datos I RESUMEN
  • 36.
    En teoría debería existir un lenguaje de descripción para cada nivel* En la práctica sin embargo en muchos SGBD el esquema conceptual queda fusionado con la especificación del esquema interno. * No siempre sucede así en los SGBD actuales… Bases de datos I RESUMEN
  • 37.
    Próximas clases Modelos:Modelo conceptual: el diseño de un modelo conceptual parte de la especificación de requisitos Ingeniería de requisitos Modelos conceptuales: E/A, semántico Modelos Lógicos: Relacional Modelos físicos: dependientes del SGBD Bases de datos I

Notas del editor

  • #11 Generalmente las bases de datos manejan transacciones que deben cumplir una serie de propiedades, a las que, comúnmente, se les suele denominar como propiedades ACID (Atomicity, Consistency, Isolation, Durability):   Atomicidad : garantiza que se ejecutan todas las acciones o que no se haga ninguna.   Consistencia : garantiza que, aunque haya muchos usuarios accediendo a la base de datos de manera concurrente, se mantenga la integridad de la información.    Aislamiento : garantiza que las transacciones que se están realizando concurrentemente en el sistema no interfieran entre ellas.   Durabilidad : garantiza que una transacción que finaliza correctamente queda adecuadamente reflejada. Además, el sistema será capaz de recordar todas la transacciones que han sido realizadas.