Você está na página 1de 15

bases de datos - tema 1.

introduccin a las bases de datos

TEMA 1. INTRODUCCIN A LAS BASES DE DATOS

En una base de datos, sin embargo, los datos se almacenan con el objeto de que sirvan para distintas aplicaciones y, al ser compartidos por stas, no existir redundancia. As, cuando una aplicacin actualice un dato, el resto de aplicaciones trabajarn sobre el dato modificado. Los resultados siempre sern coherentes.

Adems de la incoherencia en la informacin, la redundancia de los datos implica otros problemas, como la ocupacin extra de espacio de disco (al estar los mismos datos repetidos varias veces, ocuparn el doble, triple... El desarrollo de sistemas de bases de datos comienza en los aos 60 de espacio), y el aumento de tiempo de proceso al tener que repetirse los como alternativa a los sistemas basados en ficheros usados hasta entonces. mismos procedimientos de actualizacin en todos los ficheros. Los sistemas basados en ficheros presentan una serie de problemas que se Ejemplo: La empresa X, de venta de ordenadores, utiliza 3 intentan solventar con las bases de datos. aplicaciones distintas:
1 Qu es una Base de Datos?

Podemos definir una base de datos como una coleccin no redundante de datos que se pueden compartir entre diferentes aplicaciones. En los sistemas informticos tradicionales, basados en ficheros, los datos se almacenan en ficheros diseados especficamente para cada aplicacin. Aunque varias aplicaciones utilicen los mismos datos, los ficheros en que se encuentran no suelen ser compartidos entre ellas, por lo que el mismo dato puede aparecer repetido en dos o ms ficheros. Cuando una de las aplicaciones actualiza uno de esos datos redundantes, lo hace slo en su fichero, con lo que durante cierto tiempo pueden obtenerse distintos valores para el mismo dato, dependiendo del fichero que se consulte (es decir, se produce una incoherencia en la informacin).

Una aplicacin para el Departamento de Marketing, que almacena informacin sobre las campaas publicitarias de la empresa y la repercusin de dichas campaas sobre los clientes.

Aplicacin 1 (Dpto. Marketing)

Clientes 1

Aplicacin 2 (Dpto. Att. Cliente)

Clientes 2

Aplicacin 3 (Dpto. Ventas)

Clientes 3

1 - Curso 2011/2012

bases de datos - tema 1. introduccin a las bases de datos

Otra aplicacin para el Departamento de Atencin al Cliente, que gestiona la informacin sobre averas, reparaciones, servicio tcnico, etc, que la empresa ofrece a sus clientes.

que se han producido en el fichero del departamento de atencin al cliente. Esto implica tiempo extra de proceso.

Una ltima aplicacin para el Departamento de Ventas, en la que se guardan la informacin relativa a las ventas que la empresa realiza a los clientes (facturas).

Aplicacin 1 (Dpto. Marketing)

Es evidente que las tres aplicaciones deben trabajar con informacin relativa a los clientes (nombre, direccin, telfono, NIF o CIF....). Si las aplicaciones utilizan ficheros, cada aplicacin debe tener su propio fichero de clientes (Clientes 1, Clientes 2 y Clientes 3). PROBLEMAS

Aplicacin 2 (Dpto. Att. Cliente)

Clientes

1. Qu ocurrir si uno de los clientes de la empresa llama al Departamento de atencin al cliente indicando que desea cambiar su direccin de envo? El empleado del departamento de atencin al cliente recoger la nueva direccin a travs de la aplicacin usada en su departamento (Aplicacin 2). El fichero Clientes 2, por tanto ha Se dice que los sistemas tradicionales de ficheros son sistemas cambiado. Pero, los otros dos ficheros de clientes seguirn almacenando la direccin antigua, por lo que el Departamento de orientados al proceso, ya que en ellos, los datos estn subordinados a los Marketing y Ventas seguirn enviando la publicidad y las facturas a procesos o aplicaciones. La descripcin de los datos y relaciones entre ellos, se describen en los programas que hacen uso de ellos. la direccin antigua. Los datos son inconsistentes. Las bases de datos son sistemas orientados a los datos: los datos se 2. Si se supone que la empresa tiene 10.000 clientes y que la informacin de cada cliente ocupa 500 bytes. Cada fichero de almacenan de forma independiente de las aplicaciones. En una base de datos tambin se guarda informacin de los datos y las relaciones entre ellos, pero clientes ocupar 5 Mb. Como hay 3, se ocupan 15 Mb del disco. esta descripcin no se guarda en los programas, sino externamente a ellos. 3. Est claro que los ficheros del departamento de Marketing y Los datos son independientes de los programas, por lo que los mismos datos Ventas debern ser actualizados en algn momento con los cambios pueden ser usados por diferentes programas.
Curso 2011/2012 - 2

Aplicacin 3 (Dpto. Ventas)

B.D.

bases de datos - tema 1. introduccin a las bases de datos

Por ltimo, decir que los sistemas basados en ficheros presentan una falta de flexibilidad ante los cambios: Cualquier cambio en la estructura del 2 El sistema gestor de la base de datos fichero (por ejemplo, aumentar el tamao del campo Apellido o el tipo de datos del campo Edad), supone realizar muchos cambios en el programa (redefinir el tamao y tipo de datos de las variables, modificar la sentencia Para que un sistema de bases de datos tenga las caractersticas de lectura o escritura...). En una base de datos este tipo de cambios en las anteriores son necesarios dos elementos: estructuras de datos no suponen un cambio en los programas. Un software de gestin que facilite las operaciones sobre los datos y la comunicacin entre los usuarios y la bases de datos. Este software es el Sistema gestor de las base de datos (SGBD). Resumen: VENTAJAS DE LAS BASES DE DATOS 1. Independencia entre los datos y aplicaciones que los utilizan 2. Coherencia en los resultados obtenidos. Integridad y seguridad de los datos.

Un modelo de datos que permita estructurar y manipular los datos.


Un SGBD permite implementar un determinado modelo de datos.

El SGBD puede ser definido como conjunto de programas que 3. Posibilidad de acceso concurrente y recuperacin en caso de permiten que los usuarios describan, recuperen y manipulen eficazmente fallo. los datos almacenados en la base de datos, protegiendo dichos datos 4. Reduccin de tiempo de desarrollo de las aplicaciones. contra todas aquellas acciones, intencionadas o no, que los pueden 5. Menor espacio de almacenamiento corromper. 6. Menor tiempo de procesamiento 7. Flexibilidad ante los cambios. En una Base de Datos se pueden distinguir varios niveles de estructuracin o abstraccin de los datos. En principio, se pueden distinguir dos niveles claros: la estructura lgica, que se corresponde con la visin que tienen los usuarios de los datos (punto de vista del usuario) y una estructura fsica, o forma en que realmente estn almacenados dichos datos. El nivel lgico se divide en dos subniveles, surgiendo as una estructura a tres niveles definida por el grupo ANSI/SPARC, que es la ms extendida en la actualidad en los modelos de datos:

3 - Curso 2011/2012

bases de datos - tema 1. introduccin a las bases de datos

El nivel externo o esquema externo es la visin que tiene cada usuario de la base de datos, y en l, slo estarn reflejados aquellos datos que dicho usuario necesite. Como se aprecia en el grfico existirn tantos esquemas externos como visiones distintas tengan los usuarios de la base de datos. Un mismo esquema externo puede ser compartido por distintos usuarios.

Usuario 1 Usuario 2 Area de trabajo Usuario 3 Usuario 4 Usuario 5 Area de trabajo Area de trabajo Area de trabajo

El nivel conceptual o esquema conceptual o lgico es la visin global de todos los datos de la base de datos. En este nivel se incluir la descripcin de todos los datos y relaciones entre ellos. Representa la visin integrada de todos los usuarios.
El nivel interno o esquema fsico es la estructura de almacenamiento de la base de datos. Depende del tipo de SGBD concreto que se utilice. En este esquema se especifican los aspectos relativos al almacenamiento de los datos en disco y acceso a los mismos.

Nivel Externo

Area de trabajo

...

Esquema externo A

Esquema externo B

...

El SGBD es el encargado de posibilitar la definicin y manipulacin de la base de datos a estos tres niveles y de gestionar la interface (o comunicacin) entre niveles y con el usuario.

Nivel Conceptual

Correspondencia externa A / conceptual

Correspondencia externa B / conceptual


Esquema conceptual

Funciones de los SGBD

Correspondencia conceptual / interna

SGBD

Descripcin de los datos (DDL) Un SGBD debe permitir la descripcin de los distintos esquemas de la base de datos. El administrador de la base de datos es el encargado de especificar los elementos de datos que la forman, su estructura, interrelaciones, restricciones,... Para describir los esquemas, el SGDB debe aportar un lenguaje de definicin de datos (Data Definition Language o DDL). Algunos SGDB disponen de un lenguaje distinto para definir cada esquema, aunque en la mayora de ellos el lenguaje es el mismo.

Nivel Interno

Base de Datos almacenada

Curso 2011/2012 - 4

bases de datos - tema 1. introduccin a las bases de datos

La transformacin externa/conceptual, que permite hacer pasar los


Manipulacin de los datos (DML) El SGBD debe permitir que los usuarios de la base recuperen, inserten, modifiquen o eliminen datos de ella. datos desde su representacin en el nivel conceptual a la correspondiente a los distintos esquemas externos y viceversa.

Para poder efectuar automticamente la transformacin de datos de un nivel a otro, el SGBD debe conocer las correspondencias existentes entre Una base de datos sirve para almacenar datos y realizar operaciones con niveles, que estarn almacenadas junto a los esquemas en el diccionario de ellos. Estas operaciones se agrupan en cuatro: altas, bajas, modificaciones y la Base de Datos. consultas. El SGBD debe aportar un lenguaje para realizar estas operaciones y dicho lenguaje es el lenguaje de manipulacion de datos (data manipulation language o DML). Este lenguaje de manipulacin puede suele Ejemplo. En la figura que se muestra a continuacin se puede apreciar estar formado por un conjunto de sentencias (lenguaje husped) que son un ejemplo de transformacin de datos correspondiente a una Base de Datos admitidas dentro de un programa escrito en otro lenguaje (lenguaje anfitrin) relacional Postgre. El esquema interno estar constituido por los datos de propsito general (por ejemplo: C con sentencias SQL para el acceso a almacenados en unas estructuras lgicas propias de Postgre llamadas BD. En este caso C sera el lenguaje anfitrin y SQL el husped). TABLESPACES (fsicamente, un tablespace es un fichero o conjunto de ficheros). La vista conceptual de los datos corresponde a las tablas SOCIOS, ACTIVIDADES y ACTIVIDADES_SOCIOS. Ante cualquier referencia a un objeto conceptual, el SGBD debe realizar las correspondientes transformaciones entre esta representacin conceptual y la Transformacin de los datos representacin interna. La vista externa est representada por un objeto El SGBD es el responsable de realizar la correspondencia o denominado VISTA en el modelo relacional, en este caso transformacin entre los formatos de los datos correspondientes a los PRACTICANTES_TENIS. Las referencias realizadas por los usuarios a los distintos esquemas de la base de datos. datos de PRACTICANTES_TENIS sern transformadas por el SGBD a las En un SGBD que siga la propuesta de ANSI/SPARC, existirn dos correspondientes representaciones conceptual e interna. niveles de transformacin:

La transformacin conceptual/interna, que permite hacer pasar los


datos desde su representacin conceptual a su representacin interna y viceversa. 5 - Curso 2011/2012

bases de datos - tema 1. introduccin a las bases de datos

datos contra accesos no autorizados, manteniendo su privacidad.


ESQUEMA EXTERNO
PRACTICANTES_TENIS
Num_socio
1234 11000222 4565

Dni

Nombre
.... Juan Prez 78976545 Luis Daz .... ....

Los fallos que pueden afectar a la base de datos pueden ser fallos fsicos (de memoria principal, de disco...) , fallos lgicos (del S.O., de programa,...) o fallos humanos (intencionados o no). Al tratar la proteccin de los datos de una base, hay que referirse a los conceptos de seguridad, integridad y confidencialidad. Seguridad La seguridad de los datos consiste en la proteccin de la base de datos contra fallos lgicos o fsicos que destruyan los datos total o parcialmente. El origen de estos fallos puede ser variado (un incendio, fallo de disco, sabotaje...) y los instrumentos de proteccin van mucho ms all de los que puede proporcionar el SGBD (sistemas contra incendios, sistema tolerantes a fallos, sistemas de control de acceso fsico de los equipos, SAI,...). Ante cualquier tipo de fallo, el objetivo de la seguridad es mantener la consistencia de la BD. Vamos a ver un ejemplo: SALDO_CLIENTES

Transformacin conceptual-externa ESQUEMA CONCEPTUAL


SOCIOS
Num_socio
1234 11000222 9876

ACTIVIDADES
Nombre ... Cod_act Nom_act ...
Tenis G023 Judo .... Karate .... .... .... .... .... 1234

ACTIVIDADES_SOCIOS
Num_socio Cod_act ...
9876 A123 4565 G022 .... .... .... .... .... A123

DNI

89456745 Prez 78976545 Alvarez .... Luis Daz.... .... .... 4565 Juan .... Ins .... A123 .... G022

Transformacin conceptual-interna ESQUEMA INTERNO Tablespace A


ACTIVIDADES SOCIOS
Fichero 1 Fichero 2

Tablespace B

ACTIV_SOCIOS
Fichero 3

Proteccin de los datos

CUENTA

CLIENTE

SALDO

El SGBD debe proporcionar mecanismos que permitan proteger los datos contra fallos que los alteren y corrompan, haciendo que la base de datos quede en un estado inconsistente e inutilizada para cumplir el fin para el que fue creada. Estos mecanismos del SGBD deben proteger tambin los

123456 654321 ...

Luis Pardo Ins Prez ...

12.000 6.000 ...

Curso 2011/2012 - 6

bases de datos - tema 1. introduccin a las bases de datos

La tabla Saldo_clientes muestra el saldo actual de las cuentas de los clientes de un banco. Supongamos que se quiere llevar a cabo una operacin de traspaso de 6.000 de euros de la cuenta 123456 a la cuenta 654321. Los pasos que se han de realizar para llevar a cabo el traspaso seran los siguientes: a) Restar 6.000 del saldo de la cuenta 123456 b) Sumar 6.000 al saldo de la cuenta 654321.

operaciones que han de ejecutarse de forma atmica, es decir, o se realizan todas las operaciones que componen la transaccin, o no se realiza ninguna de ellas. De esta forma, en el ejemplo anterior, la operacin de traspaso sera una transaccin compuesta por dos operaciones. Si durante alguna de las dos operaciones, o entre ellas, se produce algn fallo que impidiera su terminacin, el SGBD automticamente deshara la primera y as la base de datos quedara en el estado inicial y, por tanto, consistente.

En cuanto a los fallos provocados por catstrofes (incendios, Pero, Qu ocurre si en el paso intermedio entre estas dos operaciones inundaciones...) o fallos irrecuperables de dispositivos fsicos (discos), la se produce un fallo de tensin elctrica? Se apagar el equipo y, cuando se nica solucin es utilizar mecanismos de Copias de seguridad (backup). vuelva a arrancar, el estado de la tabla ser el siguiente: La mayora de los SGBD aportan sus propios mecanismos para hacer copias de seguridad, aunque tambin se pueden utilizar paquetes independientes del SALDO_CLIENTES gestor.
CUENTA CLIENTE SALDO

123456 654321 ...

Luis Pardo Ins Prez ...

6.000 6.000 ...

Una copia de seguridad es una copia de toda la informacin de la base de datos (o parte de ella) cuya intencin es guardar la informacin en algn dispositivo de almacenamiento masivo (disco, CD o, habitualmente, cintas magnticas, por ser el dispositivo ms econmico) con la intencin de recuperarla cuando sea necesario. Existen dos tipos de copias de seguridad:
Completas: Cuando se copia en cinta todo el contenido de la base de datos. Se tarda mucho tiempo en hacer y ocupa mucho. Incrementales: Cuando se copia en cinta la informacin de la Base de datos que ha variado desde la ltima copia de seguridad completa.

Evidentemente, la BD ha quedado inconsistente. Este tipo de problemas se solucionan haciendo que el SGBD no considere operaciones individuales, sino conjuntos de operaciones que reciben el nombre de transacciones. Una transaccin es una secuencia de

7 - Curso 2011/2012

bases de datos - tema 1. introduccin a las bases de datos

Cada empresa define su propia poltica de backup en funcin de sus necesidades. Se pueden hacer copias de seguridad completas todos los das, Integridad pero se perdera mucho tiempo. Lo mejor suele ser alternar copias completas El objetivo de la integridad es lograr que los datos contenidos en la base con copias incrementales: por ejemplo, podramos hacer copias de seguridad sean correctos. Para ello, el SGBD debe detectar y corregir las operaciones completas una vez a la semana (por ejemplo, el domingo por la noche) y copias incrementales el resto de das (una copia incremental cada da por la incorrectas que introduzcan inconsistencias en la base de datos. noche). Es decir: El tipo de operacin ms frecuente que afecta a la integridad de los datos es el acceso concurrente a la base de datos.
Domingo Lunes Martes Mirc Jueves Viernes Sbado

Copia Completa

Copia Inc. 1

Copia Inc. 2

Copia Inc. 3

Copia Inc. 4

Copia Inc. 5

Copia Inc. 6

Ejemplo. Partiendo de la tabla SALDO_CLIENTES en el estado que se muestra, supongamos que, desde dos oficinas distintas del mismo banco, se efectan las siguientes operaciones: Oficina 1: Ingreso de 3.000 euros en la cuenta 123456

Si, por cualquier problema, se produce un error irrecuperable de disco, por ejemplo, el Jueves por la maana, Cmo recuperaramos la informacin de la base de datos?: Primero, volcaramos la copia completa del domingo anterior (que contiene todos los datos tal y como estaban el domingo.

Oficina 2: Traspaso de 6.000 euros de la cuenta 123456 a la cuenta 654321. Esta operacin se inicia un poco ms tarde que la primera. SALDO_CLIENTES
CUENTA CLIENTE SALDO

Luego, y en orden consecutivo, volcaramos las copias incrementales 1 a 3, con lo que la base de datos quedara en el estado en que se encontraba el mircoles por la noche.

Si el propio jueves, antes del error de disco, se haba modificado la informacin de la Base de Datos, los cambios del jueves no se recuperarn con las copias de seguridad.

123456 654321 ...

Luis Pardo Ins Prez ...

12.000 6.000 ...


Curso 2011/2012 - 8

bases de datos - tema 1. introduccin a las bases de datos

Los pasos para realizar cada una de las operaciones seran los El saldo final de la cuenta 123456 al final de las dos operaciones siguientes: debera ser 15.000, pero como la transaccin de la oficina 2 anula los cambios producidos por la transaccin 1, el saldo final es de 6.000, es decir, t Operacin oficina 1 Operacin oficina 2 inconsistente.
Ingreso de 3.000 en 123456 Traspaso de 6.000 de 123456 a 654321

Leer el saldo de la cuenta 123456 y copiarlo en el rea de trabajo (12.000) Sumar 3.000 al saldo del rea de Leer el saldo de la cuenta 123456 y copiarlo trabajo (15.000) en el rea de trabajo (12.000) Copiar el saldo resultante del rea Restar 6.000 al saldo del rea de trabajo de trabajo a la tabla (15.000) (6.000) Fin de la transaccin. Copiar el saldo resultante del rea de trabajo a la tabla (6.000) Resto de operaciones sobre la cuenta 654321. Fin de la transaccin.

El problema que se produce tiene su origen en el acceso concurrente (simultneo) a la tabla SALDO_CLIENTES desde dos terminales distintos: Cuando dos transacciones se solapan en el tiempo, prevalece la que termina ms tarde. Existen distintas tcnicas para evitar los problemas derivados de los accesos concurrentes. Una de ellas consiste en establecer un bloqueo sobre los datos que se estn modificando, de forma que, hasta que no finalice dicha modificacin, ningn otro proceso podr acceder a esos datos. Los bloqueos son gestionados automticamente por el SGBD. En el ejemplo anterior, se bloquearan los datos al iniciarse la transaccin de la oficina 1 y se levantara el bloqueo al terminar sta, de forma que la transaccin 2 actuara sobre un saldo de 15.000 euros y no 12.000 como ocurra sin bloqueo.

9 - Curso 2011/2012

bases de datos - tema 1. introduccin a las bases de datos t Operacin oficina 1 Ingreso de 3.000 en 123456 Operacin oficina 2 Traspaso de 6.000 de 123456 a 654321

Confidencialidad Este concepto alude a la proteccin de los datos contra el acceso de usuarios no autorizados. No slo se refiere al hecho de que los datos no puedan ser usados por usuarios ajenos a la empresa, sino que dentro de la propia empresa pueden existir usuarios con distintos permisos: usuarios que podrn consultar los datos pero no modificarlos, usuarios que pueden modificar datos existentes, pero no crear nuevos datos,.... El SGBD debe proteger los datos de los intentos de acceso de los usuarios que no tengan la autorizacin adecuada, pero es recomendable usar tambin otros mecanismos externos, como controles del S.O., controles de tipo fsico de acceso a las instalaciones,.. Los sistemas de confidencialidad aportados por los SGBD se basa en la creacin de usuarios. A dichos usuarios se les asigna una serie de permisos sobre los objetos (tablas) de la BD, llamados roles. Por ejemplo, el rol consulta_clientes podr consultar (y no modificar), los datos de la tabla clientes, pero no podr hacer nada con el resto de tablas. El rol admin_clientes, podr consultar y modificar todas las tablas de la B.D.
Utilidades de administracin

Leer el saldo de la cuenta 123456 y copiarlo en el rea de trabajo (12.000) BLOQUEO DE DATOS Sumar 3.000 al saldo del rea de trabajo Datos bloqueados. No puede empezar (15.000) Copiar el saldo resultante del rea de Datos bloqueados. No puede empezar trabajo a la tabla (15.000) Fin de la transaccin. DESBLOQUEO Datos bloqueados. No puede empezar

Leer el saldo de la cuenta 123456 y copiarlo en el rea de trabajo (15.000) Restar 6.000 al saldo del rea de trabajo (9.000) Copiar el saldo resultante del rea de trabajo a la tabla (9.000) Resto de operaciones sobre la cuenta 654321. Fin de la transaccin.

Los SGBD deben disponer de utilidades o programas diseados para facilitar al administrador de la base de datos las tareas de mantenimiento y seguridad de dicha base. Estos programas realizan funciones de modificacin del tamao de los ficheros, obtencin de estadsticas de utilizacin de las tablas, carga de ficheros, copias de seguridad, recuperacin tras la cada del sistema...
Curso 2011/2012 - 10

bases de datos - tema 1. introduccin a las bases de datos

Tipos de usuarios del SGBD.

El diccionario de la Base de Datos

En un sistema de bases de datos existen usuarios diferentes con necesidades diversas que deben ser satisfechas:

1. Usuarios finales La estructura de un SGBD est articulada alrededor del diccionario. Son aquellos usuarios con poco o ningn conocimiento informtico que Para que el SGBD pueda llevar a cabo las funciones descritas en el apartado anterior, es preciso disponer de los mecanismos que permitan el interactan con el sistema desde terminales o estaciones de trabajo. El almacenamiento de la definicin de los distintos esquemas de la base de acceso de estos usuarios a la base de datos se puede realizar a travs de: datos y de las correspondencias entre ellos. Es decir, el diccionario de datos Aplicaciones diseadas especficamente para atender las guarda los esquemas interno, externo y conceptual y las correspondencias necesidades del usuario. Por ejemplo, un empleado de la secretara entre ellos. Cada vez que se modifica alguno de los esquemas, dicha de un centro de enseanza utiliza una aplicacin que le permite modificacin se almacena en el diccionario para que la estructura de la base emitir distintos tipos de certificaciones acadmicas a partir de los de datos siempre est actualizada. datos de los alumnos almacenados en la base de datos. El usuario no conoce en absoluto la estructura de la base de datos, pero accede a En el diccionario tambin se registrarn las informaciones necesarias ella a travs de la aplicacin. para implementar la funcin de proteccin de datos. Un diccionario completo incluir, tambin, informacin del uso que las distintas Un lenguaje de manipulacin (DML) que permita al usuario aplicaciones y usuarios hacen de la base de datos, informacin del tipo de operaciones de consulta y actualizacin de informacin de la base de qu usuarios estn conectados a la base de datos, que aplicaciones hacen uso datos. En bases de datos relacionales, este lenguaje es el SQL pero su de qu datos, etc. uso exige, evidentemente, el conocimiento de dicho lenguaje y de la En el caso concreto de Oracle o Postgres, el diccionario de datos est implementado en forma de Base de Datos relacional, por lo que se dice que el diccionario es una Base de Datos que contiene informacin de la Base de Datos. estructura de la base de datos. No es adecuado para usuarios sin conocimientos informticos.
Utilidades de SGBD (o externos a l) que permiten hacer consultas y modificaciones a la base de datos sin necesidad de conocer un lenguaje de manipulacin. Estas utilidades estn basadas en mens y formularios. Un ejemplo de este tipo de utilidades es el interfaz de ventanas que aporta Microsoft Access.

11 - Curso 2011/2012

bases de datos - tema 1. introduccin a las bases de datos

2. Programadores de Aplicaciones

3. El administrador de la base de datos

Los programadores que desarrollan aplicaciones en entornos de base de En todo sistema de bases de datos existe la funcin del administrador de datos suelen tener a su alcance distintas posibilidades para realizar su la base de datos, o DBA (database administrator), que puede ser trabajo: desempeada por una o varias personas. Escribir sus programas en un lenguaje de tercera generacin (C, La responsabilidad del DBA es el diseo, creacin y mantenimiento de Pascal,...) en el que se intercalan sentencias en un lenguaje de la base de datos. manipulacin de datos (SQL). Al lenguaje de tercera generacin se le 1. En el diseo de la base de datos interviene el DBA, pero llama lenguaje anfitrin y al lenguaje de acceso a la BD husped. El tambin pueden intervenir otras personas de la organizacin, como lenguaje hesped se encargar de las funciones que involucren directivos, usuarios finales, analistas informticos... Para facilitar la operar sobre la Base de Datos, mientras que el lenguaje anfitrin se tarea de diseo, se usan las herramientas CASE. encarga del resto. 2. Para la creacin de la base de datos, el administrador usar los Utilizar generadores de pantallas o de informes, es decir, lenguajes de definicin de datos (DDL) del SGBD, mediante el que lenguajes de cuarta generacin (por ejemplo, Visual Basic), para se describirn los distintos esquemas (externos, conceptual e desarrollar las aplicaciones. Los generadores de pantallas e informes interno). permiten generar el cdigo y la parte visual de la aplicacin de una 3. Dentro del mantenimiento de la base de datos est incluida la forma rpida. Adems, estos lenguajes incluyen sentencias modificacin de su estructura, a cualquier nivel, cuando sea apropiadas para el acceso a la Base de Datos, por lo que no es necesario. Para ello tambin se usa el DDL. necesario utilizar un lenguaje husped.

Emplear nicamente el lenguaje de manipulacin de datos (DML), sin apoyo de ningn lenguaje anfitrin, para desarrollar los programas. Esta es una posibilidad real pero poco usada, ya que se obtiene una mayor eficiencia con cualquiera de las dos anteriores.

Curso 2011/2012 - 12

bases de datos - tema 1. introduccin a las bases de datos

Modelo de Datos.

La parte esttica del modelo constar de una serie de objetos con los En una base de datos se representa una parte del mundo real, con el objetivo de que dicha representacin pueda ser utilizada por distintas que representar las estructuras del mundo real. Estos objetos varan segn el aplicaciones actuales y futuras. Esta representacin de la parcela del mundo tipo de modelo que usemos. real objeto de inters se har de acuerdo con unas reglas, que varan de unas La parte dinmica de un modelo de datos estar constituida por un bases de datos a otras y que constituyen el modelo de datos. conjunto de operaciones definidas sobre los objetos de la parte esttica, que El universo del discurso es la parte o aspecto del mundo real que el permiten realizar operaciones sobre los datos. Habr operaciones que diseador toma en consideracin y que, tras el adecuado diseo, se plasmar permitirn consultar los datos, otras permitirn crear nuevos datos o borrar en una base de datos. Por ejemplo, en una empresa pueden tomarse en datos existentes... consideracin distintos universos del discurso, como el de gestin comercial, el de gestin de personal o el de gestin de productos. Todos tienen el Se distinguen tres generaciones en la evolucin de los modelos de datos mismo mundo real de referencia, la empresa, pero cada uno contempla como se ve en el siguiente diagrama: distintos aspectos del mismo. El estudio y la descripcin del universo del discurso se llevan a cabo con el apoyo de un conjunto de conceptos, reglas y convenciones que reciben el nombre de modelo de datos. Adems, en el universo del discurso es preciso distinguir entre las estructuras y los datos o valores que se almacenan en esas estructuras. Las primeras son propiedades estticas o que varan poco con el tiempo. Las segundas son dinmicas, es decir, varan con el tiempo. Todo modelo de datos tendr una parte esttica, que permitir representar las estructuras, y una parte dinmica, que permitir representar las propiedades dinmicas del universo de discurso. Asociado a la parte esttica del modelo, habr un lenguaje de definicin de datos (DDL) y asociado a la parte dinmica, existir un lenguaje de manipulacin de datos (DML). 13 - Curso 2011/2012 Primera generacin Segunda generacin Tercera generacin

En red

Relacional

Orientada a objetos

bases de datos - tema 1. introduccin a las bases de datos

Ejemplos de SGBD jerrquicos:


7 Tipos de SGBD.

IMS de IBM o SYSTEM 200

Todo SGBD se construye en base a un Modelo de Datos. Ejemplos de SGBD en red:

DBTG de CODASYL

Ejemplos de SGBD relacionales:

Oracle, Informix, MySQL, PostgreSQL, Sybase, MS Access,...

Los SGBD se clasifican en funcin del modelo de datos subyacente constituyendo las distintas familias de SGBD:

Curso 2011/2012 - 14

bases de datos - tema 1. introduccin a las bases de datos

Tema 1. Preguntas de repaso 1. Cules son las ventajas principales de empleo de SGBD para administrar los datos en aplicaciones que impliquen un amplio acceso a los datos? 2. Cundo se deben guardar los datos en SGBD en lugar de hacerlo en los archivos del sistema operativo y viceversa? 3. Explique las diferencias entre los niveles interno, conceptual y externo. 4. Qu son los modelos de datos? 5. Qu son las transacciones? Qu garantas ofrecen los SGBD con respecto a las transacciones? 6. Qu son los bloqueos de SGBD y por qu se emplean? 7. Identifquense los diferentes papeles de los administradores de bases de datos, los programadores de aplicaciones y los usuarios finales de las bases de datos. Quin necesita saber ms sobre los sistemas de bases de datos?

15 - Curso 2011/2012

Você também pode gostar