Está en la página 1de 45

BASES DE DATOS I

Maestra en Desarrollo de Software

Qu es un sistema ?
Conjunto articulado de componentes o subsistemas ideados para alcanzar un objetivo, que sirve como integracin y comunicacin orientado hacia la toma de decisiones

Elementos de un sistema
se define como el resultado de procesar la entrada, es el Se encarga de la bsqueda, recopilacin e de tener todas las producto que el usuario ve y debe introduccin de los datos necesariosnecesarios para caractersticas y elementos para poder ser realizar los procesos utilizado en forma eficiente por las reas que lo solicitan

ENTRADA

PROCESO

SALIDA

Procedimientos automatizados que La salida de un tiene lugar al aplicar los sistemas de sistema puede ser la entrada a otro sistema informacin

Analicemos un sistema de nuestro cuerpo


El alimento hecho lquido sale del estomago para entrar enalimentos el intestino La primer entrada son los delgado. La entrada del estomago es la salida de que metemos en la boca la boca, o sea, el bolo alimenticio Y as sucesivamente, cada uno de los sistemas cumple su objetivo y en conjunto cumplen con el objetivo del sistema digestivo, el cual es obtener los nutrientes de los alimentos.

Laestomago boca se encarga de triturar los El El cual se seencarga encarga de deabsorber disolver alimentos, agregndole en el todos bolo los connutrientes los jugos gstricos que elel cuerpo proceso saliva, para formar el bolo convirtiendo a lquido necesita. los alimentos alimenticio, el cual es la salida

Hagamos un poquito de historia


Anteriormente los sistemas de computo que se realizaban se basaban en archivos secuenciales, es decir archivos en los cuales la informacin se guardaba sin ordenar y sin ninguna relacin unos de otros.

El uso de los archivos secuenciales presenta algunas desventajas en el manejo de gran volumen de datos, como son:

Proceso de actualizacin Consulta o registro de informacin

Qu es una base de datos


Conjunto

de datos estructurados relacionados y almacenados en un soporte fsico.

Disminucin de la redundancia Compartir datos Posibilidad de aplicar restricciones de seguridad. Posibilidad de mantener la integridad

Disminuir la redundancia

El hecho de que en una base de datos, prcticamente, no se repita la informacin, se debe a las relaciones entre las diferentes tablas que conforman la base de datos.

Compartir los datos

Es obvio que la propiedad que los datos puedan ser compartidos sea una caracterstica de las bases de datos.

Seguridad

La seguridad que permiten los diferentes DBMS. Es variada ya que en algunos se puede poner una contrasea a la base de datos en general o realizar las cuentas de usuario estableciendo las diferentes operaciones que pueden realizar cada usuario sobre la base de datos.

Integridad

Dos pasos importantes en el diseo de las tablas son la identificacin de valores vlidos para una columna y la determinacin de cmo forzar la integridad de los datos en la columna. La integridad de datos pertenece a una de las siguientes categoras:

Integridad de entidad Integridad de dominio Integridad referencial

Integridad

De entidad
La integridad de entidad define una fila como entidad nica para una tabla determinada. Por ejemplo, si se especifica para un empleado el valor de identificador de 123, la base de datos no debe permitir que ningn otro empleado tenga el mismo valor de identificador

De dominio
La integridad de dominio viene dada por la validez de las entradas para una columna determinada. Si tiene una columna employee_rating para la que se prevean valores entre 1 y 5, la base de datos no debe aceptar valores fuera de ese intervalo.

Integridad

Referencial
Se basa en las relaciones entre claves externas y claves principales o entre claves externas y claves exclusivas. La integridad referencial garantiza que los valores de clave sean coherentes en las distintas tablas. Para conseguir esa coherencia, es preciso que no haya referencias a valores inexistentes y que, si cambia el valor de una clave, todas las referencias a ella se cambien en consecuencia en toda la base de datos.

De acuerdo con la 4 ventajas anteriores demos una nueva definicin de una base de datos
Coleccin de datos interrelacionados, almacenados en conjunto
sin redundancias perjudiciales. Su finalidad es la de servir a una aplicacin o ms, de la mejor manera posible.

Los datos se almacenan de forma que resulten independientes


de los programas que los usan. Se emplean mtodos bien determinados para incluir datos nuevos y para modificar o extraer los datos almacenados.

Caractersticas de las bases de datos

Usuario 2 Usuario 3 Usuario 1

BASE DE DATOS

Concepto de dato e informacin


Dato: Hechos aislados y en bruto, los cuales situados en un
contexto significativo mediante una o varias operaciones de procesamiento, permiten tener deducciones relacionadas con la

evaluacin e identificacin de personas, cosas o eventos.

MATRICULA NOMBRE MODELO COLOR


Ijole Bueno Matrcula??? mano pos, quedamos ya ,me De doy quien igual o ta Bueno como que ya se va aclarando el asunto, ya me da qu?, difcil Ser no adivinar crees??.... de un alumno, de que un una pequea idea producto que se puede Alumno, vehculo, estamos vehculo, algn hablando, producto, pero si en tratar de una evento, por proceso, me puedo particular?? nocosa pos dar o quien una idea sabe.
que ni modos que una persona tenga modelo

Concepto de dato e informacin


Informacin: Es el conjunto de datos que sufren un proceso
manual o automatizado cuyo objetivo es dar a conocer algo a una o a un grupo de personas.

MATRICULA NOMBRE MODELO COLOR DML-8726 NEON 1999 ROJO

Aaaaaahhh no pos asi ya se entiende de que estamos hablando, verda.

Componentes de un sistema de Base de Datos


DATOS:
Una base de datos se compone de datos

almacenados que son utilizados por los sistemas de una

Organizacin.

HARDWARE:

Se

refiere

los

dispositivos

de

almacenamiento donde reside la base de datos, as como los dispositivos perifricos.

Componentes de un sistema de Base de Datos


DBMS:
Conjunto de programas cada uno de los cuales es responsable de una tarea especfica sobre la base de datos.

SOFTWARE:

APLICACIONES:

Realizados para el manejo de la informacin almacenada en la base de datos.

Componentes de un sistema de Base de Datos


DBA:
Administrador de la Base de Datos.

Programador de Aplicaciones: Se encarga de

USUARIOS:

realizar los diferentes programas que sern usados para el manejo de la informacin

Usuario

final: Usa las


desarrolladas

aplicaciones por el PA.

El Sistema Manejador de Bases de Datos (DBMS)


Conjunto de rutinas de software interrelacionadas, es decir, un conjunto de programas, cada uno de los cuales es encargado de realizar una tarea especfica sobre la base de datos.
Sus principales funciones son: Crear y organizar la DB Establecer y mantener las trayectorias de acceso a la DB de tal forma que los datos pueden ser accesados rpidamente. Manejar los datos de acuerdo a las peticiones de los usuarios. Registrar el uso de la DB Respaldo y recuperacin Control de concurrencia Seguridad e integridad

El Sistema Manejador de Bases de Datos (DBMS)


Algunos DBMS actuales

LENGUAJES DEL DBMS


Lenguaje de Definicin de Datos
El DDL (Data Definition Language) permite definir, hablando en trminos de bases de datos relacionales, la estructura de la misma base de datos, esto permitiendo la creacin, modificacin, eliminacin de: tablas, campos, relaciones, ndices, etc

Lenguaje de Definicin de Almacenamiento


El SDL (Storage Definition Lanuage) en los DBMS anteriores se permita especificar la forma en que fsicamente se almacenaba la informacin de la base de datos.

LENGUAJES DEL DBMS


Lenguaje de Definicin de Vistas
El VDL (View Definition Language) nos permite definir las vistas que tendr la informacin de la base de datos, es decir, la manera en que ser vista la informacin por los usuarios. En la actualidad es muy comn hacer uso de un DBMS y un lenguaje de programacin visual para desarrollar las vistas de la base de datos.

Lenguaje de Manipulacin de Datos


Una vez se han compilado (depurado) los esquemas de la DB y que en esta se ha introducido informacin, los usuarios requerirn algn mecanismo para manipularla. Las operaciones de manipulacin ms comunes son la obtencin, la insercin, la eliminacin y la modificacin de la informacin. El DBMS ofrece un Lenguaje de Manipulacin de Datos (DML: Data Manipulation Language) para estos fines.

El funcionamiento del DBMS, interrelacin con el Sistema Operativo Programadores de


Aplicaciopes Usuarios espordicos

Personal del DBA

Programas de Aplicacin

Enunciados del DDL

Ordenes privilegiadas

Consulta Interactiva

Precompilador Compilador del lenguaje anfitrin

Compilador de Consultas

INSTRUCCIONES DEL DML

TRANSACCIONES COMPILADAS (PROGRAMADAS)

Compilador de DDL

Catlogo del sistema / Diccionario de datos

ejecucin Procesador de Base de Datos en tiempo de ejecucin

Compilador de DML

ejecucin

ejecucin

Gestor de Datos almacenados

Subsistemas de control de concurrencia / Respaldo / Recuperacin

BASE DE DATOS ALMACENADA

Mdulo gestor de datos almacenados

Controla el acceso a la informacin almacenada en el disco. Las lneas punteadas y los crculos rotulados A, B, C, D y E en la figura ilustran accesos que estn bajo el control de este gestor de datos almacenados. Este ltimo puede emplear servicio bsicos del OS para transferir los datos de bajo nivel entre el disco y la memoria principal del computador, pero controla otros aspectos de la transferencia de datos, como el manejo de las reas de almacenamiento intermedio (buffers) en la memoria principal. Una vez que los datos estn en dicho almacenamiento intermedio,

otros mdulos del DBMS podrn procesarlos.

Compilador del DDL

Procesa las definiciones de esquemas, especificadas en el DDL, y almacena las descripciones (metadatos) en el catalogo del DBMS. El catalogo contiene informacin como los nombres de los archivos y de los elementos de informacin, los detalles de almacenamiento de cada archivo, la informacin de correspondencia entre los esquemas y las restricciones.

El procesador de la base de datos en tiempo de ejecucin


Se encarga de los accesos a la DB durante la ejecucin; recibe
operaciones de obtencin o de actualizacin y las ejecuta sobre la base de datos. El acceso al disco se tiene mediante el gestor de datos almacenados.

El compilador de consultas
Maneja las consultas de alto nivel que se introducen
interactivamente. Analiza la sintaxis y el contenido de las consultas y luego genera llamadas al procesador en tiempo de ejecucin para atender la solicitud.

El Precompilador

Extrae ordenes en DML de un programa de aplicacin escrito en un lenguaje de programacin anfitrin. Estas rdenes se envan al compilador de DML para convertirlas en cdigo objeto para el acceso a la base de datos, y el resto del programa se enva al compilador del lenguaje anfitrin. El cdigo objeto de las rdenes

en DML y el resto del programa se enlazan, formando una


transaccin programada cuyo cdigo ejecutable incluye llamadas al procesador de la base de datos durante el tiempo de ejecucin.

NIVEL DE ABSTRACCION DE UNA BASE DE DATOS


Abstraccin a tres niveles ANSI / SPARC

VISTA 1

VISTA 2

...

VISTA n

Nivel Externo

ESQUEMA CONCEPTUAL

Nivel Conceptual

ESQUEMA INTERNO

Nivel Interno

ANSI/X3/SPARC es un grupo de estudio del Standard Planning and Requirements Committee (SPARC) del ANSI (American National Standards Institute), dentro del Comit X3, que se ocupa de ordenadores e informtica. La situacin del Grupo de Estudio sobre Sistemas de Gestin de Bases de Datos en el ANSI y su relacin con ISO (International Standards Organization)

Abstraccin a tres niveles ANSI / SPARC


Nivel Interno (Fsico)

Esta formado por las vistas de almacenamiento (la forma en la que se almacenan los datos). Es una representacin a bajo nivel de toda la base de

datos.

Abstraccin a tres niveles ANSI / SPARC


Nivel conceptual

Se trata de la representacin de los datos realizada por la organizacin, que recoge las vistas parciales de los

requerimientos de los
diferentes usuarios y las aplicaciones posibles. Se configura como visin organizativa total, e incluye la definicin de datos y las relaciones entre ellos.

Abstraccin a tres niveles ANSI / SPARC


Nivel externo (vistas de los usuarios)

Est formado por las vistas individuales de cada uno de los usuarios, es decir, como percibe el usuario la base de datos. ste es el nivel en el que trabaja el usuario

individual. Los usuarios puede ser


o bien programadores de aplicaciones o bien usuarios finales.

INDEPENDENCIA DE DATOS
La capacidad de modificar una definicin de un esquema en un nivel inferior siguiente se llama independencia de datos, hay dos niveles de independencia de datos:

Independencia fsica
Es la capacidad de modificar el esquema fsico sin tener que alterar el esquema conceptual. Tal vez sea preciso modificar el esquema interno por la necesidad de reorganizar ciertos archivos fsicos a fin de mejorar el rendimiento de las operaciones de obtencin o actualizacin

VISTA 1

VISTA 2

...

VISTA n

Nivel Externo

ESQUEMA CONCEPTUAL

Nivel Conceptual

ESQUEMA INTERNO

Nivel Interno

Independencia lgica
Es la capacidad de modificar el esquema conceptual sin tener que alterar los esquemas externos ni los programas de aplicacin. Las modificaciones en el nivel conceptual son necesarias siempre que se altera la estructura lgica de la base de datos

VISTA 1

VISTA 2

...

VISTA n

Nivel Externo

ESQUEMA CONCEPTUAL

Nivel Conceptual

ESQUEMA INTERNO

Nivel Interno

La independencia lgica es ms difcil de lograr, ya que los programas de aplicacin estn estrechamente ligados a la estructura de la informacin a la que accesan.

EL ADMINISTRADOR DE DATOS Y EL ADMINISTRADOR DE LA BASE DE DATOS

Uno de los activos ms valiosos de toda empresa

Es indispensable contar con una persona que conozca la informacin, y las necesidades de la empresa en este aspecto, en un nivel gerencial superior.

El administrador de datos es por lo general, un gerente.

El alcance de la actividad de la Administracin de Datos es la organizacin completa (empresa, institucin u otro organismo).

El tcnico que pone en prctica las decisiones del administrador de datos es el DBA. El alcance queda restringido a una Base de Datos en particular y a los sistemas que los procesan.

Las siglas DBA suelen utilizarse para designar tanto la funcin Administracin de Datos como al titulo del puesto administrador de Base de Datos. Un Administrador de Base de Datos de tiempo completo normalmente tiene aptitudes tcnicas para el manejo del sistema en cuestin, adems, son cualidades deseables nociones de administracin, manejo de personal e incluso un cierto grado de diplomacia. La caracterstica ms importante que debe poseer es un conocimiento profundo de las polticas y normas de la empresa as como el criterio de la empresa para aplicarlas en un momento dado

LAS FUNCIONES DEL DBA


Administracin de la estructura de la Base de Datos:

hasta

para

ayudando

Diseo inicial

Poner en prctica

Controlar y administrar sus requerimientos

Evaluar alternativas

En los casos de grandes aplicaciones de tipo organizacional, el DBA es un gerente que supervisa el trabajo del personal de diseo de la BD.

LAS FUNCIONES DEL DBA


Administracin de la estructura de la Base de Datos: Los requerimientos van modificndose, se encuentran nuevas formas o mtodos para lograr los objetivos; la tecnologa de la BD se va modificando y los DBMS se actualizan. Las modificaciones en las estructuras o procedimientos de BD requieren de una cuidadosa administracin.

participa

Para asegurar

El DBA

En el desarrollo de procedimientos y controles

La calidad y la alta integridad de la BD

LAS FUNCIONES DEL DBA


Implicaciones por la modificacin de los esquemas: Las solicitudes de modificacin son inevitables.

nuevos requerimientos comprensin inadecuada de los mismos


En cualquier caso, debern efectuarse modificaciones en relacin con toda la comunidad de la BD, ya que el impacto de tales alteraciones ser resentido por ms de una aplicacin. En algunos casos, pueden darse modificaciones que presentan efectos negativos para algunos usuarios; estos casos debern ser tratados esgrimiendo como argumento los beneficios globales que sern obtenidos de tales alteraciones.

LAS FUNCIONES DEL DBA


Documentacin

Es de suma importancia saber que modificaciones han sido efectuadas, como fueron realizada y cuando fueron establecidas. Una modificacin sobre la estructura de la BD pudiera ocasionar un error que no apareciera a corto plazo; una vez que este surja, sin la documentacin adecuada sobre las modificaciones realizadas, l diagnostico resultara extremadamente complicado.
Si se utilizan procedimientos de prueba formatos de pruebas y mtodos de registro estandarizados, el registro de los resultados de la prueba no consumir tiempo excesivo. Comnmente el tiempo de la documentacin es tedioso y esto ocasiona que algunos DBA tienden a reducir o abreviar la informacin que se registra en ella e incluso llegan a desatenderla. Cuando ocurre un siniestro, la documentacin completa y organizada puede ser la diferencia entre resolver o no un problema de extrema importancia y en la mayora de los casos, que implica costos cuantiosos a la empresa.

LAS FUNCIONES DEL DBA


Administracin de la actividad de datos:

Aunque el DBA protege la informacin, no la procesa. El DBA no es usuario del sistema, en consecuencia, no administra valores de datos; el DBA administra actividad de los datos y la informacin. Dado que la BD es un recurso compartido, el DBA debe proporcionar estndares, guas de accin, procedimientos de control y la documentacin necesaria para garantizar que los usuarios trabajan en forma cooperativa y complementaria al procesar datos en la BD. Como es de suponerse, existe una gran actividad al interior de un DBMS. La concurrencia de mltiples usuarios requieren de estandarizar los procesos de operacin; el DBA es responsable de tales especificaciones y de asegurarse que estas lleguen a quienes concierne. Todo el mbito de la BD se rige por estndares, desde la forma como se capture la informacin (tipo, longitud, formato), como es procesada y presentada. El nivel de estandarizacin alcanza hasta los aspectos ms internos de la BD; como s accesa a un archivo, como se determinan los ndices primarios y auxiliares, la foliacin de los registros y dems.

COMO ELEGIR EL DBMS ADECUADO


Adems de las funciones anteriores el DBS es el encargado de analizar y seleccionar el DBMS para el almacenamiento de la base de datos, por lo que debe tomar en cuenta las siguientes consideraciones: Numero de usuarios, aunado con Numero de transacciones

COMO ELEGIR EL DBMS ADECUADO


Cantidad de datos a almacenar

Consistencia de la informacin

COMO ELEGIR EL DBMS ADECUADO


Presupuesto

Experiencia propia o externa

TEMAS DE EXPOSICION
El diccionario de datos diccionario de recursos de informacin Sistemas de ndices para archivos de bases de datos El proceso de Normalizacin