bases de datos - … · esquema de una base de datos: cuando una base de datos es diseñada...

50

Upload: dangtuong

Post on 05-Jun-2018

224 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: BASES DE DATOS - … · Esquema de una Base de Datos: Cuando una base de Datos es diseñada interesa definiruna estructura para ésta
Page 2: BASES DE DATOS - … · Esquema de una Base de Datos: Cuando una base de Datos es diseñada interesa definiruna estructura para ésta

Introducción

Definición de base de datos

Conceptos básicos

Sistema de Gestión de Base de Datos (SGBD)

Conclusiones

Page 3: BASES DE DATOS - … · Esquema de una Base de Datos: Cuando una base de Datos es diseñada interesa definiruna estructura para ésta

Introducción

Definición de base de datos

Conceptos básicos

Sistema de Gestión de Base de Datos (SGBD)

Conclusiones

Page 4: BASES DE DATOS - … · Esquema de una Base de Datos: Cuando una base de Datos es diseñada interesa definiruna estructura para ésta

En la actualidad el enfoque de bases de datos esextensamente utilizado por ser la única solución posiblepara manejar grandes volúmenes de datos, lacomplejidad de la extracción de datos y la concurrenciade datos (accesos simultáneos).

Las bases de datos se han extendido por la disminuciónde los costos de los servidores y las necesidades deexploración de datos.

Los sistemas integrados de gestión, paquetes contables oaplicaciones (como el SGB Sistema General de Bedelías yel Sistema de Recursos Humanos de la UdelaR)almecenan los datos en bases de datos.

INTRODUCCIÓN

Page 5: BASES DE DATOS - … · Esquema de una Base de Datos: Cuando una base de Datos es diseñada interesa definiruna estructura para ésta

Algunos sistemas utilizan bases de datos propietarias yotros continùan utilizando archivos tradicionales.

Resulta relevante para el Técnico en Administraciónconocer los conceptos generales vinculados al tema, a finde desempeñarse como usuario de estos sistemasrealizando consultas, así como para poder interactuaradecuadamente en equipos de desarrollo de los sistemasde información.

INTRODUCCIÓN

Page 6: BASES DE DATOS - … · Esquema de una Base de Datos: Cuando una base de Datos es diseñada interesa definiruna estructura para ésta

6 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

Page 7: BASES DE DATOS - … · Esquema de una Base de Datos: Cuando una base de Datos es diseñada interesa definiruna estructura para ésta

7

Procesamiento

de

Clientes

Archivode

Clientes

Procesamiento

de

Préstamos

Archivode

Préstamos

Usuario del

Archivo de Clientes

Usuario del

Archivo de Préstamos

Page 8: BASES DE DATOS - … · Esquema de una Base de Datos: Cuando una base de Datos es diseñada interesa definiruna estructura para ésta

8

¿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

Un poco de historia …

Page 9: BASES DE DATOS - … · Esquema de una Base de Datos: Cuando una base de Datos es diseñada interesa definiruna estructura para ésta

EmpleadosClientes

Inventario

Ventas Cuentas

SGBDEmpleados

ClientesVentas

InventarioCuentas

Dpto. Personal Dpto. VentasDpto. Contabilidad

BASE DE DATOS… AhoraPersonal

Ventas

Contabilidad

Page 10: BASES DE DATOS - … · Esquema de una Base de Datos: Cuando una base de Datos es diseñada interesa definiruna estructura para ésta

Ciclo de desarrollo de los

sistemas de información

En la etapa 4) Diseño se definen los detalles a fin de cumplir con los requerimientos identificados en la etapa 3)Análisis.

Page 11: BASES DE DATOS - … · Esquema de una Base de Datos: Cuando una base de Datos es diseñada interesa definiruna estructura para ésta

Diseño del sistema

Es particularmente importante el tema Bases de Datos en laetapa de diseño del desarrollo de un sistema de información,debido a que la misma comprende el diseño de:

Procedimientos precisos de captura de datos

Formularios y pantallas para ingresar datos

Interfaz con el usuario (mensajes, menús, uso del ratón omouse, etc.)

Base de datos que almacenará aquellos datos requeridospor quien toma las decisiones en la organización.

Salidas del sistema impresas y en pantalla (consultas,listados, etc.)

Page 12: BASES DE DATOS - … · Esquema de una Base de Datos: Cuando una base de Datos es diseñada interesa definiruna estructura para ésta

“.... es deseable que los informáticos habiliten la participación del T/A en esta etapa (diseño) antes de llegar a las etapas de desarrollo y prueba, de

modo que sea posible realizar los ajustes necesarios sin incurrir en los costos que implica el

avance del proyecto. Es posible que los informáticos le presenten al T/A el Modelo de Datos

del sistema, Tablas de decisión, Árboles de Decisión, etc. y su rol en este caso puede consistir

en sugerir mejoras al diseño del sistema”.

El rol del Técnico en Administración en el desarrollo de los sistemas de información

Page 13: BASES DE DATOS - … · Esquema de una Base de Datos: Cuando una base de Datos es diseñada interesa definiruna estructura para ésta

Introducción

Definición de base de datos

Conceptos básicos

Sistema de Gestión de Base de Datos (SGBD)

Conclusiones

Page 14: BASES DE DATOS - … · Esquema de una Base de Datos: Cuando una base de Datos es diseñada interesa definiruna estructura para ésta

DEFINICIÓN DE BASE DE DATOS (1)

“Base de Datos es un conjunto de datos relacionados entre sí y que tienen un significado implícito”.

La definición presentada anteriormente hace referencia a dos elementos para que un conjunto de datos constituya una Base de Datos:

1) Relaciones entre datos, tema que se trata en las próximas transparencias.

2) Significado implícito de los datos que se atribuye dependiendo del contexto en que se utilizan los mismos.

Por ejemplo, el dato fecha en una base de datos de ventas puede referirse a la fecha de emisión de las facturas, mientras que si la base de datos es de música quizás corresponda a la fecha en que se grabó un tema musical.

Page 15: BASES DE DATOS - … · Esquema de una Base de Datos: Cuando una base de Datos es diseñada interesa definiruna estructura para ésta

Archivos tradicionales y Bases de Datos

En un sistema de información se cuenta con dos enfoquesprincipales para definir el almacenamiento de los datos:

1. Archivos tradicionales. Consiste en almacenar los datosen archivos individuales, exclusivos para cada aplicaciónparticular. En este sistema los datos pueden serredundantes (repetidos innecesariamente) y laactualización de los archivos es más lenta que en una basede datos.

2. Base de datos. Es un almacenamiento de datosformalmente definido, controlado centralmente paraintentar servir a múltiples y diferentes aplicaciones.La basede datos es una fuente significativa de datos que soncompartidos por numerosos usuarios para diversasaplicaciones.

Page 16: BASES DE DATOS - … · Esquema de una Base de Datos: Cuando una base de Datos es diseñada interesa definiruna estructura para ésta

.

“Una base de datos tiene una fuente de la cual se derivan los datos, cierto

grado de interacción con los acontecimientos del mundo real y un público que está

activamente interesado en el contenido de la base de

datos”.

Ramez Elmasri y Shamkant B. Navathe

Page 17: BASES DE DATOS - … · Esquema de una Base de Datos: Cuando una base de Datos es diseñada interesa definiruna estructura para ésta

Introducción

Definición de bases de datos

Conceptos básicos

Sistema de Gestión de Base de Datos (SGBD)

Conclusiones

Page 18: BASES DE DATOS - … · Esquema de una Base de Datos: Cuando una base de Datos es diseñada interesa definiruna estructura para ésta

Resulta relevante para que el Técnico en Administración cumplasu rol como usuario de los sistemas o como integrante del equipode desarrollo que conozca algunos conceptos básicos vinculadosal tema Bases de Datos.

CONCEPTOS BÁSICOS

Datos

Entidades

Claves primarias y foráneas

Relaciones

Restricciones de integridad referencial

Metadatos

Page 19: BASES DE DATOS - … · Esquema de una Base de Datos: Cuando una base de Datos es diseñada interesa definiruna estructura para ésta

“Datos son hechos conocidos que puedenregistrarse y que tienen un significado implícito”.

Ejemplo:

Pueden constituir datos los nombres, números telefónicos y direcciones de personas que conocemos.

Page 20: BASES DE DATOS - … · Esquema de una Base de Datos: Cuando una base de Datos es diseñada interesa definiruna estructura para ésta

Una entidad es todo aquello de lo cual interesa guardar datos, por ejemplo: clientes, facturas, productos, empleados. En el Modelo de Entidad-Relación que se presenta, se observa que las entidades están formadas por atributos o campos referidos a

un mismo tema que interesa almacenar.

Entidades

CLIENTES cuenta con los atributos: Código de Cliente, Nombre, Apellido, Domicilio, Teléfono.

Page 21: BASES DE DATOS - … · Esquema de una Base de Datos: Cuando una base de Datos es diseñada interesa definiruna estructura para ésta

Cada entidad tiene una clave primaria o campo llave que identificaunívocamente al conjunto de datos.Cuando en una entidad figura la clave primaria de otra entidad, éstase denomina clave foránea.Las entidades se relacionan entre sí a través de las claves foráneas.

Claves Primarias y Claves Foráneas

CLAVES PRIMARIASCódigo de Cliente es la clave primariade Cliente. A cada cliente se le asocia uncódigo y a cada código le corresponde uncliente. Asimismo, Número de Factura yCódigo de Producto son claves primariasde Facturas y Productos respectivamente.

CLAVES FORÁNEAS

Son claves foráneas en Facturas Códigode Cliente y Código de Producto.Clientes se relaciona con Facturas através del Código de Cliente que figuraen ambas tablas y con Productosmediante el Código de producto.

Page 22: BASES DE DATOS - … · Esquema de una Base de Datos: Cuando una base de Datos es diseñada interesa definiruna estructura para ésta

Restricciones de integridad referencial

RESTRICCIONES DE INTEGRIDAD REFERENCIAL

-Código de Clientes en Facturas debe cumplir que exista en Clientes y que sea clave primaria

-Código de Producto Facturas debe cumplir que exista en Productos y que sea clave primaria

Page 23: BASES DE DATOS - … · Esquema de una Base de Datos: Cuando una base de Datos es diseñada interesa definiruna estructura para ésta

Retomando la Definición de Base de Datos (1), la cual señalaque ésta “...es un conjunto de datos relacionados entresí y que tienen un significado implícito”, se observa en laimagen que los datos de las tablas se relacionan a través delas claves y que éstos tienen el significado implícito que seles atribuye en dicho contexto.

Page 24: BASES DE DATOS - … · Esquema de una Base de Datos: Cuando una base de Datos es diseñada interesa definiruna estructura para ésta

Datos y Metadatos

Metadatos son datos acerca de los datos presentesen la base de datos.

Page 25: BASES DE DATOS - … · Esquema de una Base de Datos: Cuando una base de Datos es diseñada interesa definiruna estructura para ésta

Introducción

Conceptos básicos

Sistema de Gestión de Base de Datos (SGBD)

Conclusiones

Page 26: BASES DE DATOS - … · Esquema de una Base de Datos: Cuando una base de Datos es diseñada interesa definiruna estructura para ésta

SISTEMA DE GESTIÓN DE

BASES DE DATOS (SGDB)

Un sistema de gestión de bases de datos (SGBD; eninglés, Database Management System: DBMS) es unconjunto de programas que permite a los usuarioscrear y mantener una base de datos.

Si bien, no es imprescindible contar con un SGBD paraimplementar una base de datos, este software de usogeneral facilita el proceso de definir, construir ymanipular bases de datos para diversas aplicaciones.

Page 27: BASES DE DATOS - … · Esquema de una Base de Datos: Cuando una base de Datos es diseñada interesa definiruna estructura para ésta

Fuente: Ramez Elmasri y Shamkant B. Navathe

Entorno simplificado de un SGBD

En el esquema se observa que los

usuariosinteractúan con una aplicación (por ej.

un sistema integrado de gestión o un

paquete contable) que utiliza un SGBD para procesar las

consultas, el cual accede a los

metadatos y a la base de datoscorrespondiente.

Page 28: BASES DE DATOS - … · Esquema de una Base de Datos: Cuando una base de Datos es diseñada interesa definiruna estructura para ésta

Principales características del enfoque de Bases de Datos

En el enfoque de bases de datos se mantiene un único almacén de datos que se define una sola vez y al cual tienen acceso muchos usuarios.

Características:

1. Naturaleza autodescriptiva de los sistemas de base dedatos

2. Separación entre los programas y los datos, y abstracciónde los datos

3. Manejo de múltiples vistas de los datos

Page 29: BASES DE DATOS - … · Esquema de una Base de Datos: Cuando una base de Datos es diseñada interesa definiruna estructura para ésta

Principales características del enfoque de

Bases de Datos

1. Naturaleza autodescriptiva de los sistemas de base de datos

Tal como se visualizó en la parte inferior del esquema del Entorno simplificado de un Sistema Gestor de Base de Datosésta no solamente contiene la base de datos misma, sino que también incluye una definición o descripción completa de dicha base de datos.

Page 30: BASES DE DATOS - … · Esquema de una Base de Datos: Cuando una base de Datos es diseñada interesa definiruna estructura para ésta

Principales características del enfoque de Bases de Datos

Page 31: BASES DE DATOS - … · Esquema de una Base de Datos: Cuando una base de Datos es diseñada interesa definiruna estructura para ésta

3. Manejo de múltiples vistas de los datos

Cada usuario visualiza lo que le interesa en la base de datos, pudiendo acceder a subconjuntos de datos.

En el ejemplo de base de datos visto anteriormente, al departamento de Compras posiblemente le interese visualizar la tabla Productos y en ocasiones las de Facturas (para chequear bajas en el stock), pero no la que contiene los datos de los Clientes.

Principales características del enfoque de Bases de Datos

Page 32: BASES DE DATOS - … · Esquema de una Base de Datos: Cuando una base de Datos es diseñada interesa definiruna estructura para ésta

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:

Atomicity (Atomicidad: las transacciones son atómicas)

Consistency (Consistencia: una transacción transforma un estado consistente de la BD en otro)Isolation (Aislamiento: las transacciones están aisladas entre si)Durability (Durabilidad: después que una transacción ha sido confirmada ella persiste)

Page 33: BASES DE DATOS - … · Esquema de una Base de Datos: Cuando una base de Datos es diseñada interesa definiruna estructura para ésta

Esquema de una Base de Datos: Cuando una base de Datos esdiseñada interesa definir una estructura para ésta.

Esta estructura permanece “estática” durante un gran período detiempo, aunque puede sufrir modificaciones ocasionales

Instancia: Es la información que en un determinado instantedel tiempo posee la base de datos y que cambiapermanentemente (excepto en algunos tipos de bases de BDparticulares)

Page 34: BASES DE DATOS - … · Esquema de una Base de Datos: Cuando una base de Datos es diseñada interesa definiruna estructura para ésta

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?

Page 35: BASES DE DATOS - … · Esquema de una Base de Datos: Cuando una base de Datos es diseñada interesa definiruna estructura para ésta

Esquema de una Base de Datos: Cuando una base de Datos esdiseñada interesa definir una estructura para ésta.

Esta estructura permanece “estática” durante un gran período detiempo, aunque puede sufrir modificaciones ocasionales

Instancia: Es la información que en un determinado instantedel tiempo posee la base de datos y que cambiapermanentemente (excepto en algunos tipos de bases de BDparticulares)

Page 36: BASES DE DATOS - … · Esquema de una Base de Datos: Cuando una base de Datos es diseñada interesa definiruna estructura para ésta

Funciones y componentes principales de un SGBD

DDL: lenguaje de definición de datosDML: lenguaje de manipulación de datos

Procesador DDL

Procesador DML

Procesador Lenguaje Consulta

Esquemasexternos

Datosy

Metadatos

Base de datos

PeticionesDML planeadas

Peticionescompiladas

Peticionesoptimizadas

Optimizador

PeticionesDML No planeadas

Esquemas ytransformaciones

Manejador de transacciones

Manejador de almacenamiento

Page 37: BASES DE DATOS - … · Esquema de una Base de Datos: Cuando una base de Datos es diseñada interesa definiruna estructura para ésta

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 deoperaciones solicitadas por los usuarios, de tal manera que se llevena cabo de la manera más eficiente posible

Manejador de transacciones: Controla el acceso y laconcurrencia de operaciones

Page 38: BASES DE DATOS - … · Esquema de una Base de Datos: Cuando una base de Datos es diseñada interesa definiruna estructura para ésta

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

Page 39: BASES DE DATOS - … · Esquema de una Base de Datos: Cuando una base de Datos es diseñada interesa definiruna estructura para ésta

Manejador de almacenamiento tiene doscomponentes:

-Manejador de archivos recupera desde disco losbloques que contienen la información solicitada poruna transacción.

-Manejador de buffer mantiene en memoriaprincipal la información más usada y decide cuandollevar a disco alguno de sus bloques.

Page 40: BASES DE DATOS - … · Esquema de una Base de Datos: Cuando una base de Datos es diseñada interesa definiruna estructura para ésta

1. Reutilización de datos y programas

2. Control de redundancia

3. Estandarización ¿En qué sentido?

4. Consistencia (No hay redundancia)

5. Es posible equilibrar las cargas de los requerimientos (establecer prioridades)

Page 41: BASES DE DATOS - … · Esquema de una Base de Datos: Cuando una base de Datos es diseñada interesa definiruna estructura para ésta

6. Integridad (Se cumplen las reglas establecidas ¿Por quién?)

7. Seguridad

8. Rapidez de desarrollo

9. Mantenimiento y reingeniería: cambios en la estructura de datos sin cambiar los programas que los usan (hasta cierto punto)

Page 42: BASES DE DATOS - … · Esquema de una Base de Datos: Cuando una base de Datos es diseñada interesa definiruna estructura para ésta

1. Tamaño

2. Susceptibilidad a fallas (Discutible)

3. Complejidad en la recuperación a fallas (Discutible)

4. Puede llegar a trabajar en forma “lenta” debido a la cantidad de verificaciones que debe hacer

Page 43: BASES DE DATOS - … · Esquema de una Base de Datos: Cuando una base de Datos es diseñada interesa definiruna estructura para ésta

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 quese adaptasen a la nueva estructura de la base de datos.

Hay dos tipos: física y lógica

Page 44: BASES DE DATOS - … · Esquema de una Base de Datos: Cuando una base de Datos es diseñada interesa definiruna estructura para ésta

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

Page 45: BASES DE DATOS - … · Esquema de una Base de Datos: Cuando una base de Datos es diseñada interesa definiruna estructura para ésta

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

Page 46: BASES DE DATOS - … · Esquema de una Base de Datos: Cuando una base de Datos es diseñada interesa definiruna estructura para ésta

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é?

Page 47: BASES DE DATOS - … · Esquema de una Base de Datos: Cuando una base de Datos es diseñada interesa definiruna estructura para ésta

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

Page 48: BASES DE DATOS - … · Esquema de una Base de Datos: Cuando una base de Datos es diseñada interesa definiruna estructura para ésta

Introducción

Definición de base de datos

Conceptos básicos

Sistema de Gestor de Base de Datos (SGBD)

Conclusiones

Page 49: BASES DE DATOS - … · Esquema de una Base de Datos: Cuando una base de Datos es diseñada interesa definiruna estructura para ésta

CONCLUSIONES

El Técnico en Administración, dependiendo de sucapacitación puede ocupar varios roles relacionados conuna base de datos, siendo lo más habitual que sea unusuario de la misma que realiza una consulta o emite unlistado desde un sistema integrado de gestión (ERP) o unpaquete contable que almacena sus datos en una base dedatos.

Asimismo, puede integrar equipos multidisciplinarios dedesarrollo de sistemas de información, donde el temaadquiere singular relevancia. En la etapa de diseño sedefine dónde y cómo se almacenarán los datos delsistema para permitir el acceso a los mismos cuando seanecesario.

Page 50: BASES DE DATOS - … · Esquema de una Base de Datos: Cuando una base de Datos es diseñada interesa definiruna estructura para ésta

Es deseable que el Técnico en Administración, queintegre el equipo de trabajo junto con losinformáticos, participe intensamente en todas lasetapas, incluyendo el diseño del sistema.

En la actualidad el enfoque de bases de datos esextensamente utilizado por las ventajas quepresenta respecto a los archivos tradicionales.

En este contexto, resulta relevamente que elestudiante conozca los conceptos básicos vinculadosal tema, a fin de poder desempeñarse como usuarioo de poder interactuar adecuadamente en equipo dedesarrollo de los sistemas de información.

CONCLUSIONES (continuación)