Introduccion de bases de datos 09 feb 2015

55
Capítulo Introducción al procesamiento de bases de datos

Transcript of Introduccion de bases de datos 09 feb 2015

1Capítulo

Introducción al procesamiento de bases

de datos

2

Introducción al procesamiento de bases de datos

La expansión de Internet y el desarrollo de la tecnología en las bases de datos, permite que las aplicaciones de Internet sean mucho mas que un simple folleto publicitario que caracterizó a las primeras aplicaciones.“ El diseño y desarrollo de bases de datos implica arte e

ingeniería”Ya que la comprensión de los requerimientos del usuario y su traducción en diseños de bases de datos eficaces es un proceso artístico, y trasformar esos diseños en bases de datos físicas con plena funcionalidad y de alto rendimiento, es un proceso de ingeniería.

3

Propósito de una base de datos

El propósito es ayudar a las personas a dar seguimiento en sus actividades.Las aplicaciones clásicas de una base de datos se refiere al seguimiento de artículos como por ejemplo: ordenes, clientes, empleos, empleados, llamadas telefónicas, u cualquier otro aspecto de interés para las personas de negocios.

4

Definición de una BD

Una Base de Datos es un conjunto autodescriptivo de registros integrados

Es decir que contiene una descripción de supropia estructura. Llamada diccionario de datos (directorio de datos o metadatos)

5

Una Base de Datos es un conjunto autodescriptivo de registros integrados

Una BD = archivos+ metadatos+ índices + metadatos de aplicaciones

Definición de una BD

6

Comparación de aplicaciones de bases de datos

Tipo Número típico de Usuarios concurrentes

Tamaño común de la base de datos

Personal 1 Menos de 10 Megabytes

Grupo de trabajo Menos de 25 Menos de 100 Megabytes

Organizacional Cientos a miles Mas de 1 Trillón de bytes

Internet Cientos a miles Ilimitado

7

Definición de base de datosUna base de datos es un conjunto autodescriptivo de registros integrados.

“Es autodescriptiva porque contiene además de los datos fuente del usuario, una descripción de su propia estructura” (Diccionario de datos o Directorio de datos o Metadatos)

La característica autodescriptiva es importante, ya que fomentan la independencia de los datos / programas.

8

BASE DE DATOS

Aparecen en los inicios de los 60´s, para expresar un conjunto de datos relacionados entre si, los cuales están estructurados de tal forma que sea fácil acceder a ellos automáticamente, y a la ves son independientes de los programas que los gestionan.

Datos

PROGRAMAS

Información

Registro

Campo

Tabla /oArchivo

DBMS

Una base de datos es un conjunto de registros integrados.

Base de Datos

9

BASE DE DATOS

Tabla

Registro

Campo Caracteres

Base de Datos

10

Componentes principales de un sistema de base de datos

Datos: son la base de datos propiamente dicha. Una base de datos se constituye con datos almacenados y utilizados por los sistemas de una organización particular.

Hardware: se refiere a los dispositivos de almacenamiento en donde reside la base de datos.

Software: es un conjunto de programas que se conoce como un sistema manejador de base de datos (DBMS). Este sistema maneja todas las solicitudes formuladas por los usuarios a la base de datos.

Usuarios: las personas que crean, administran y hacen uso de la base de datos que existen.

11Clases de usuarios en la base de datos

1- El programador de aplicaciones: quien crea programas de aplicación que utilizan la base de datos.2- El usuario final: quien accede a la base de datos por medio de un lenguaje de consulta o programas de aplicación.3- Administrador de la base de datos (DBA): Quien es responsable del desarrollo, operación y mantenimiento de la base de datos y de sus aplicaciones.

12

Administrador de la base de datos

Es quien se encarga de definir y controlar las bases de datos corporativas, que además proporciona asesoría a los usuarios y ejecutivos que la requieran.

Algunas funciones incluyen: Administración de la base de datos Control de procesos repetitivos Administración de los derechos y responsabilidades del procesamiento Desarrollo de seguridad de la base de datos Servicios de recuperación de la base de datos Administración del DBMS Mantenimiento Apoyar y asesorar durante el proceso de adquisición del DBMS Proporcionar asesoría técnica a analistas y programadores que desarrollan aplicaciones para la bases de datos.

13

Que es un sistema de Base de Datos

Es básicamente un sistema computarizado para guardar registros, en donde su finalidad general es almacenar datos y permitir a los usuarios crear, recuperar y actualizar información con base en peticiones.Comprende los

cuatro componentes principales

14

Componente: DatosLos sistemas de bases de datos están disponibles en maquinas que van desde las computadoras personales más pequeños hasta las computadoras mainframe más grandes.

Procesamiento de Archivos

Integración de los Datos

Monousuario

Multiusuario

15

En general los datos de la base de datos en un sistema grande serán tanto integrados como compartidos.

Componente: Datos

16Sistemas de Procesamiento de Archivos

Los primeros Sistemas de Información comerciales almacenaban grupos de registros en archivos separados y eran llamados Sistemas de Procesamiento de Archivos.

17

Relación de los Programas de Aplicaciones y los Archivos

Archivo deX

Aplicación del Proceso

XUsuario

18Sistemas de Procesamiento de Archivos

Estos sistemas representaban una significativa mejora sobre los sistemas manuales de registro, pero tienen las siguientes limitaciones:Datos separados y aisladosDuplicación de datosDependencia del programa de aplicación

Archivos incompatiblesDificultad de representar los datos como los ve el usuario

19

Procesamiento Procesamiento dede

ClientesClientes

Archivode

Clientes

Procesamiento Procesamiento dede

PréstamosPréstamosArchivode

Préstamos

UsuarioUsuario del Archivo de Clientes

UsuarioUsuario del Archivo de Préstamos

Por cada préstamo se guarda la informacióndel cliente correspondiente: Redundancia

Un poco de historia …

20Sistema de Procesamiento de Bases de Datos

La tecnología de las Bases de Datos se desarrolló para superar las limitaciones de los Sistemas de Procesamiento de Archivos.

Los programas de procesamiento de archivos acuden a los archivos de los datos almacenados.

Los programas de procesamiento de base de datos acuden al DBMS para acceder los datos almacenados.

21

Relación de los Programas de aplicaciones y los DBMS

22

… Antes

Empleados Clientes

Inventario

Ventas Cuentas

Dpto. Personal Dpto. Ventas Dpto. Contabilidad

BASE DE DATOS

DBMS EmpleadosClientesVentas

InventarioCuentas

… Ahora

AplicaciónDe personalAplicación

VentasAplicación

Contabilidad

Comparación…..PROCESAMIENTO DE ARCHIVOS

23

Sistemas de Procesamiento de Bases de Datos

Tiene las siguientes características:Datos integradosMenos duplicación de datosIndependencia programa/datosFácil representación de la vista de datos de los usuarios

24

Datos que contiene la Base de Datos

Datos del UsuarioMetadatosÍndicesMetadatos de Aplicación.

25

Datos de Usuario

26

Metadatos

27

Índices

28

Metadatos de Aplicación

29

Sistema Administrador de la base de datos (DBMS)

30

Los sistemas de gestión de bases de datos ( SGBD o DBMS ) organizan y estructuran los datos de tal modo que puedan ser recuperados y manipulados por usuarios y programas de aplicación.

ACCESS

DBMS1. Jerárquica2. Red3. Relacional4. Orientada a Objetos5. Objetos Relacional

Estructura de la base de datos

31

Tipos de base de datosJerárquicas: En ellas se organiza la información se organiza con un jerarquía en la que la relación entre las entidades de este modelo siempre es del tipo padre / hijo. De esta forma hay una serie de nodos que contendrán atributos y que se relacionarán con nodos hijos de forma que puede haber más de un hijo para el mismo padre (pero un hijo sólo tiene un padre).

Las entidades de este modelo se llaman segmentos y los atributos campos. La forma visual de este modelo es de árbol invertido, en la parte superior están los padres y en la inferior los hijos

32

Tipos de base de datosEn red: Se trata de un modelo que se utilizó durante mucho tiempo. Organiza la información en registros y enlaces. Los registros representan las entidades del modelo entidad / relación. En los registros se almacenan los datos utilizando atributos. Los enlaces permiten relacionar los registros de la base de datos.

El modelo en red más aceptado es el llamado codasyl, que durante mucho tiempo se ha convertido en un estándar.

Las bases de datos en red son parecidas a las jerárquicas sólo que en ellas puede haber más de un padre. En este modelo se pueden representar perfectamente relaciones varios a varios. Pero su dificultad de manejo y complejidad hace que se estén abandonando

completamente.

33

Tipos de base de datosRelacionales

Los datos se muestran en forma de tablas y relaciones. Este es el modelo que se comenta en el presente documento. De hecho es el claramente más popular.

34

Tipos de base de datosOrientadas a objetos:Desde la aparición de la programación orientada a objetos (POO u OOP) se empezó a pensar en bases de datos adaptadas a estos lenguajes. En estos lenguajes los datos y los procedimientos se almacenan juntos. Esta es la idea de las bases de datos orientadas a objetos.A través de esta idea se intenta que estas bases de datos consiguen arreglar laslimitaciones de las relacionales. Por ejemplo el problema de la herencia, tipos definidos por el usuario, disparadores almacenables en la base de datos, soporte multimedia...Se supone que son las bases de datos de tercera generación (la primera fue las bases de datos en red y la segunda las relacionales), lo que significa que el futuro parece estar a favor de estas bases de datos. Pero siguen sin reemplazar a las relacionales (aunque cada vez hay más).Su modelo conceptual se suele diseñar en UML y el lógico en ODMG 3.0

35

Estructura Orientada a Objetos

Se considera como una de las tecnologías claves de una nueva generación de aplicaciones multimedia que se basan en la Web.

36

Tipos de base de datosObjeto Relacionales Tratan de ser un híbrido entre el modelo relacional y el orientado a objetos. El problema de las bases de datos orientadas a objetos es que requieren reinvertir de nuevo para convertir las bases de datos. En las bases de datos objeto relacionales se intenta conseguir una compatibilidad relacional dando la posibilidad de integrar mejoras de la orientación a objetos.

Estas bases de datos se basan en el estándar SQL 99 que dictó las normas para estas bases de datos. En ese estándar se añade a las bases relacionales la posibilidad de almacenar procedimientos de usuario, triggers, tipos definidos por el usuario, consultas recursivas, bases de datos OLAP,...

Las últimas versiones de la mayoría de las grandes bases de datos relacionales (Oracle, SQL Server, Informix, ...) son objeto relacionales.

37

Una Base de Datos es un modelo de un modelo

Es decir, es un modelo del modelo del usuario

Varían en su nivel de detalleEl grado de detalle que debe incorporarse en una BD depende de la información deseada, y el criterio principal para definir el nivel de detalle es el nivel de detalle que imagina el usuario

38Historia del Procesamiento de Bases de Datos

Contexto organizacionalSistemas de procesamiento de archivos (limitaciones)

Incremento en el volúmen de datosLa tecnología de BD ofrece la promesa de solución a tales problemasPero inicialmente tenía muchas fallas: las aplicaciones eran dificiles de desarrollar, eran lentas y poco confiables, vulnerabilidad

De modo gradual la situación mejoró

39

El Modelo Relacional

En 1970, E. F. Codd publicó un artículo en el que aplicaba los conceptos de el álgebra relacional a los problemas de almacenar enormes cantidades de datos.

En muy pocos años condujo a la definición de las Bases de Datos Relacionales

40

Ventajas del modelo Relacional

Los datos se almacenan como tablas y las relaciones entre las filas y las tablas son visibles en los datos

Permite a los usuarios obtener información de las BD sin asistencia de sistemas profesionales de administración de información

En los anteriores productos de DBMS almacenaban las relaciones en datos de sistemas como son los índices

En los modelos relacionales el usuario sólo debe especificar cuáles registros quiere procesar. En los anteriores dependía mucho de los profesionales de sistemas

41

Resistencia al Modelo Relacional

Requieren más recursos (costoso, lento)

Este modelo les parecía extraño a los programadores

42

Productos DBMS para Microcomputadoras

En 1979 Ashton-Tate introdujo el dBase II y lo denominó un DBMS relacional. Fue comprado por Borland y desarrollaron el dBase III Plus que es un auténtico DBMS y el dBase IV que es un DBMS Relacional

Oracle, Focus e Ingres empezaron a trasladar sus productos de las macro a las microcomputadoras

DBMS desarrollados especialmente para micros: Paradox, Revelation, MDNS, Helix

Productos con interfaces gráficas de usuario agradables: Access de MS y Paradox de Borland

43

Aplicaciones de BD Cliente/Servidor

Con una Macro o Minicomputadora, solo el CPU participa en el procesamiento de las aplicaciones

De mediados a finales de los 80 se desarrollan las redes LAN donde pueden contribuir simultáneamente varios CPU

Esto condujo a un nuevo estilo de procesamiento de BD multiusuario llamado aquitectura de base de datos Cliente/Servidor

44

Aplicaciones de BD Cliente/Servidor

La aquitectura de base de datos Cliente/Servidor

45

Procesamiento distribuido de Bases de Datos

Las bases de datos distribuidas permiten que las Bases de Datos personales, de grupos de trabajo y de organizaciones se combinen en sistemas integrados pero distribuidos, sin embargo se tienen varios problemas aún no resueltos (seguridad y control)

46

Procesamiento distribuido de Bases de Datos

La esencia de las BD distribuidas es que todos los datos de la organización están dispersos en varias computadoras: micros, Servidores LAN y macrocomputadoras, que se comunican a medida que procesan la BD

El objetivo de los sistemas distribuidos de BD son hacer que cada usuario sienta que es el único usuario de los datos de la organización y proporcionar la misma consistencia, precisión y oportunidad que tendría si nadie más estuviera usando la BD distribuida.

47

La base de datos distribuida sirve para compartir información, las cuales no están almacenada totalmente en un solo lugar físico y se comunican por enlaces de comunicaciones a través de una red de computadoras dispersas geográficamente. La base de distribuidas se utilizan cada vez mas en la misma medida en que se usan las arquitecturas de cliente- servidor.

Existen dos modalidades para crear base de datos distribuidos

Fragmentar la base de datos: consiste en instalar en cada computadora solo la parte que se usara con mas frecuencia en la zona geográfica y el resto de los datos deberán ser transportados por la red de comunicación.

Replica de base de datos: consiste en realizar una copia total e instalar en cada una de las computadoras de la organización.

48

Procesamiento distribuido de Bases de Datos

49

Los DBMS orientados a objetos ODBMS

A finales de los 80 empezó a usarse un nuevo estilo de programación llamado programación orientada a objetos (OOP)

Como consecuencia evolucionó una nueva categoría de productos DBMS denominada Sistemas de Base de Datos Orientados a Objetos (OODBMS)

50

ConclusiónLos componentes de una aplicación de Base de datos son:La Base de DatosLos Sistemas de Administración de la Base de Datos (DBMS)

Los programas de aplicaciónLas partes de una Base de Datos son:

Los Datos del usuarioEl Diccionario de DatosLos datos significativosLos Datos de la aplicación

51

Globalización de la información: permite a los diferentes usuarios considerar la información como un recurso corporativo que carece de dueños específicos.

Eliminación de información redundante: con frecuencia los sistemas de aplicación desarrollados a través de archivos convencionales son dueños de sus propios archivos, de tal suerte que si dos sistemas de aplicación requieren la misma información es muy posible que ésta se duplique.

52

Eliminación de información incongruente: este efecto tiene relación con el concepto anterior. Si existen dos o más archivos con la misma información, los cambios que se hagan a éstos deberán hacerse a todas la copias.

Permite compartir información: esta característica es una consecuencia de lo antes expuesto, ya que varios sistemas o usuarios pueden utilizar la misma entidad.

53

Permite mantener la integridad de la información: la integridad de la información es una de las cualidades altamente deseable y tiene por objeto que sólo se almacene la información correcta.

Independencia de datos: implica una división entre programas y datos; es decir, se pueden hacer cambios a la información que contiene la base de datos o tener acceso a la base de datos de diferente manera, sin hacer cambios en las aplicaciones o en los programas.

54

Es el software o conjunto de programas que permiten crear y operar una base de datos; un conjunto de programas que se encargan de manejar la creación y todos los accesos a las bases de datos. Mediante el DBMS se hace la definición de los datos, es decir, se especifican los tipos de datos a almacenar; también se efectúa la carga de información e incluye mo9dulos para realizar consultas, actualizar y generar informes.

Sistema Administrador de Base de Datos (DBMS)

55

Creación y definición de la

estructura lógica de la

base de datos.

Consultar y actualizacion

es de la información.

Diseño de aplicaciones

para el usuario.

Mecanismos de seguridad y control de usuarios e

información.

Definición de datos

Manipulación de datos

Generador de

aplicación

Administración de datos

Base de

datos

MOTOR

DBMS

Sistema Administrador de Base de Datos (DBMS)