Location via proxy:   [ UP ]  
[Report a bug]   [Manage cookies]                

T1 Introduc

Descargar como doc, pdf o txt
Descargar como doc, pdf o txt
Está en la página 1de 13

1

TEMA1: INTRODUCCIÓN A LAS BASES DE DATOS

1. INTRODUCCIÓN.

2. VENTAJAS E INCONVENIENTES DE LAS BASES DE DATOS


FRENTE AL SITEMA TRADICIONAL DE FICHEROS.

3. CONCEPTO DE BASE DE DATOS.

4. OBJETIVOS DE UNA BASE DE DATOS.

5. ARQUITECTURA DE LAS BASES DE DATOS.

6. CONCEPTO Y PRINCIPALES FUNCIONES DEL SISTEMA DE


GESTIÓN DE BASES DE DATOS (SGBD).

6.1. CONCEPTO Y PRINCIPALES FUNCIONES DE UN SGBD.


6.2. COMPONENTES DE UN SGBD.

7. MODELOS DE BASES DE DATOS.

8. ARQUITECTURA CLIENTE SERVIDOR.


2

1.- INTRODUCCIÓN.

Actualmente, en el mundo empresarial se maneja una gran cantidad de datos, por


lo que se hace necesario disponer de medios hardware y software que permitan acceder
a la información de una manera rápida, sencilla y fiable.

Tradicionalmente, la información se almacenaba en conjuntos de ficheros. Estos


ficheros no guardaban ninguna relación entre sí, y los datos podían repetirse de unos a
otros, lo que suponía la existencia de información redundante y en algunos casos,
inconsistente. A veces se precisaba cambiar la estructura de los registros de algunos
ficheros, por ejemplo, para agregar nuevos campos a los registros. Esto implicaba que
todos los programas de aplicación que se servían de esos ficheros debían modificarse y
adaptarse, con la correspondiente pérdida de tiempo y dinero. Existía dependencia entre
los ficheros que almacenaban la información y los programas que utilizaban esos
ficheros.

A finales de los años sesenta surgieron las bases de datos. En una base de datos
se almacenan todos los datos que necesite una empresa, y los programas que manejen
esos datos no se han de preocupar del almacenamiento físico de los mismos: ningún
cambio en la estructura de los datos afectará a los programas de aplicación que los
utilicen. Veamos un ejemplo de una aplicación según el enfoque tradicional de ficheros
y según el enfoque de bases de datos.

 Enfoque tradicional:
Disponemos de un archivo maestro de alumnos que utilizan varios programas de
aplicación. El formato de registro es:

Nombre de Alumno Dirección Población Código Postal

Si necesitamos variar la estructura del registro añadiendo un campo más, por


ejemplo, el relativo a la fecha de nacimiento, tendríamos que cambiar toda la estructura
del fichero maestro y todos los programas que utilizan ese fichero.

 Enfoque de bases de datos:


Disponemos de una tabla (estructura de datos para una base relacional) con estas
columnas:

Nombre de Alumno Dirección Población Código Postal

Si añadimos una nueva columna a la tabla, por ejemplo, la referente al teléfono,


no afectará a los programas de aplicación que manejen esta tabla.

****************** figura 1 y figura 2 ******************

En las bases de datos existe una visión conceptual de los datos que no tiene por
qué ser la misma que la visión física de éstos. Es decir, existe una independencia de los
datos con respecto a los procedimientos que los utilizan, de modo que ningún cambio en
la estructura de datos afectará a los programas que los usen.
3

En las bases de datos, los datos se organizan y se mantienen en un conjunto


estructurado que no está diseñado para una aplicación concreta, sino que, por el
contrario, tiende a satisfacer las necesidades de información de toda la empresa,
necesidades que van cambiando con el paso del tiempo.

2.- VENTAJAS E INCONVENIENTES DEL SISTEMA


TRADICIONAL DE GESTIÓN DE FICHEROS.

Una vez vistos los dos ejemplos vamos a comentar las ventajas e inconvenientes
de las bases de datos frente a los ficheros.

Ventajas:

1. Independencia de los datos respecto a los programas y viceversa. Esto


implica que un cambio en los programas no afecte al diseño de la base de
datos y que un cambio en la base de datos no debe alterar los programas.
Con esta ventaja se consigue sin excesivos costes, la continua adaptación del
sistema de información a la evolución de las organizaciones. Hay que decir
que en la práctica dicha independencia no es absoluta. (******Poner un
ejemplo******).

2. Coherencia de los resultados. Debido a que la información de la base de


datos se recoge y almacena una sola vez, en los programas se utilizan los
mismos datos, por lo que los resultados de todos ellos son coherentes y
perfectamente comparables. Ej. Un mismo dato se encuentra almacenado en
dos fichero y al actualizarlo, sólo se hace en uno de ellos, habría una
incoherencia en ese dato.

3. Mejor disponibilidad de los datos para el conjunto de los usuarios. En las


bases de datos, cada usuario ya no es propietario de los datos, puesto que
éstos se comparten entre el conjunto de aplicaciones, existiendo una mejor
disponibilidad de los datos para todos los que tienen necesidad de ellos,
siempre que estén autorizados para su acceso.

4. Mejor documentación de la información. En el enfoque de fichero, los


datos se encuentran separados de su contenido semántico (documentación de
programas); los primeros se almacenan en ficheros y su descripción se hace
mediante programas. La documentación de los datos, la realiza el analista o
programador, y casi siempre resulta insuficiente e incluso inexistente. En las
bases de datos se incluyen no sólo los datos, sino también la semántica de los
mismos.

5. Mayor eficiencia en la recogida, validación e introducción de los datos


en el sistema. Al no existir apenas redundancias, los datos se recogen y
validan una sola vez, aumentando así el rendimiento de todo el proceso
previo al almacenamiento.

6. Reducción del espacio de almacenamiento. La desaparición de las


redundancias, así como la aplicación de técnicas de compactación, lleva en
4

los sistemas de bases de datos a una menor ocupación de almacenamiento


secundario. Aunque hay que tener en cuenta que los elementos del sistema
(diccionario, referencias, punteros, etc.) ocupan bastante espacio.

Inconvenientes:

1. Instalación costosa.

2. Personal especializado.

3. Implantación larga y difícil.

4. Falta de rentabilidad a corto plazo.

3.- CONCEPTO DE BASE DE DATOS.

Podemos definir una base de datos como un conjunto de datos interrelacionados


y almacenados sin redundancias perjudiciales o innecesarias, los cuales se caracterizan
por:
 Servir a una o varias aplicaciones de la mejor manera posible.

 Existir independencia entre los datos y los programas que los manejan.

En una base de datos, unos mismos datos se pueden utilizar por diferentes
aplicaciones y usuarios. La base de datos ha de permitir métodos para consultar datos,
incluir nuevos datos, modificarlos y eliminar los que ya no sirven. Por tanto, podemos
afirmar que en una base de datos se guarda información de dos tipos:

 Los datos del usuario. Son los datos de las aplicaciones de usuario.
Ej.: Datos de alumnos, Información sobre artículos, etc.

 Los datos del sistema. Son los datos que la base necesita para gestionarse a sí
misma.
Ej.: Datos de usuarios de las bases de datos: contraseña, privilegios, espacio
asignado.
Datos de archivos: identificación, tamaño, ubicación.

4.- OBJETIVOS DE LA ORGANIZACIÓN DE UNA BASE DE


DATOS.

Una base de datos, independientemente del modo en que esté organizada, debe
cumplir los siguientes objetivos para que sea considerada como tal:
5

1. Versatilidad para representar la información. Los datos podrán utilizarse


de múltiples maneras. Los usuarios que acceden a la b.d. utilizarán éstos de
diferentes formas, dependiendo de la información que necesiten. P.e. un
programador utilizará un conjunto de datos de distinto modo que un usuario
que necesite sólo realizar una consulta.

2. Desempeño. Las b.d. han de atender con la rapidez adecuada las peticiones
de datos que se hagan, según el uso que se vaya a hacer de ellos. P.e. en un
sistema diseñado para que lo usen operadores de terminales que reservan
plazas de avión, el tiempo de respuesta ha de ser de pocos segundos.

3. Redundancia mínima. En los sistemas de procesamiento de datos con


ficheros, existía un alto nivel de redundancia, lo que hacía que los datos
apareciesen repetidos en varios archivos, incrementando el coste de
almacenamiento y ocasionando inconsistencia de datos repetidos, ya que, en
un momento dado, podían tener valores diferentes. Un objetivo de las b.d. es
eliminar la redundancia, siempre que nos interese.

4. Capacidad de acceso. Los usuarios de bases de datos continuamente están


pidiendo información acerca de los datos almacenados. El sistema ha de
tener capacidad para responder inmediatamente. Esta capacidad depende de
la organización física de los datos, e. d. cuando se diseña una b.d. se debe
conseguir una capacidad de acceso rápido.

5. Integridad. Debido a que los datos de una b.d. son manejados por muchos
usuarios y de diferentes maneras, el sistema de base de datos ha de asegurar
que los datos que se almacenen sean los que se tienen que almacenar y no
otros. Además debe controlar también que los fallos producidos en el sistema
no destruyan los datos.

6. Seguridad y privacidad. La información almacenada en la b.d. es de gran


valor para la empresa. Esto explica la necesidad de disponer de
procedimientos que protejan los datos frente a fallos del sistema, evitando su
pérdida y facilitando su recuperación, o frente a usos indebidos o
intencionados por parte de personas no autorizadas.

7. Afinación. Con el tiempo el volumen de datos que necesita la empresa va


aumentando, por lo que la organización física de éstos ha de ser buena, y es
posible que haya que ajustarla para atender a las nuevas necesidades de
almacenamiento. La afinación hace referencia al ajuste de la organización
física de los datos con el objeto de mejorar la rapidez para acceder a ellos.

8. Independencia de los datos con los programas que los usan. Una b.d.
debe estar preparada para futuros cambios de los datos. Cuando se
introduzcan modificaciones en la organización física de los datos, no deben
afectar a los programas de aplicación que ya hay en uso. A esto se le llama
independencia física de los datos.
6

5. ARQUITECTURA DE LAS BASES DE DATOS.

Los usuarios finales de una base de datos no tienen la necesidad de saber cómo
están organizados y almacenados los datos. La b.d. debe presentar al usuario una
versión de los datos de tal manera que sea capaz de interpretarlos y manejarlos. ( *****
no necesita la misma información el programador que el usuario******* ).

Podemos distinguir tres niveles según la visión que se tenga de los datos en una
b.d.:

 Nivel interno. También se le llama esquema interno. Es la forma en que se


organizan los datos en el almacenamiento físico. En este nivel se debe
especificar tres aspectos fundamentales ( **** este nivel dependerá mucho
del SGBD que se utilice, pero lo normal es esto **** ):

1. Estrategia de almacenamiento. Aquí se debe incluir la asignación de


espacios de almacenamiento para el conjunto de datos, la estrategia que
ha sido utilizada para optimizar tiempos de respuesta y espacio de
memoria secundaria, el tratamiento de desbordamiento, etc.

2. Caminos de acceso. Aquí se incluye la especificación de claves, de


índices o punteros.

3. Otros varios. Técnicas de compresión de datos, de criptografiado, etc.

 Nivel conceptual. Este nivel se representa mediante el esquema conceptual.


Es la estructura lógica global del conjunto de datos de la empresa. En este
esquema no se tiene en cuenta la organización física ni los métodos de acceso,
sin embargo deberá incluirse la descripción de todos los datos e interrelaciones
entre éstos, así como las restricciones de integridad y de confidencialidad.

 Nivel externo. También se llama esquema externo. Es el nivel más cercano a


los usuarios. En él se representa la visión que tiene de la bd cada usuario o
grupo de usuarios en particular. Aquí deberá encontrarse reflejado sólo
aquellos datos e interrelaciones que necesite el correspondiente usuario.
También habrán de especificarse las restricciones de uso, como puede ser el
derecho a insertar o a borrar determinados datos o el acceso a los mismos, etc.

Para una bd específica hay un único esquema interno y conceptual, pero puede
haber tantos esquemas externos como exijan las diferentes aplicaciones, cada uno de
ellos definido para uno o varios usuarios.

*********************** figura 3 *****************************

Vamos a representar la arquitectura de una bd para un centro de estudios. Para ello


definimos un esquema interno, un esquema conceptual y uno externo.

*********************** figura 4 *****************************


7

6. SISTEMAS GESTORES DE BASES DE DATOS. ( S.G.B.D. )

6.1. CONCEPTO Y FUNCIONES DE UN SGBD.

Un SGBD es un conjunto coordinado de programas, procedimientos , lenguajes,


etc. que suministra tanto a usuarios no informáticos como a analistas, programadores o
al administrador, los medios necesarios para describir, recuperar y manipular los datos
almacenados en la base, manteniendo su integridad, confidencialidad y seguridad.

Las operaciones típicas que debe realizar un SGBD pueden resumirse en


aquellas que afectan a la totalidad de los datos y las que tienen lugar sobre registros
concretos. Éstas son:
A) Sobre el conjunto de la base.
 Creación.
 Reestructuración.
 Consulta a la totalidad.
B) Sobre registros concretos.
 Inserción.
 Borrado.
 Modificación.
 Consulta selectiva.

Las funciones esenciales de un SGBD son las de descripción, manipulación y


control o utilización.

1. Descripción o definición. Debe permitir especificar los datos, su estructura y las


relaciones que existen entre ellos. Esta función la realiza el Lenguaje de Definición
de Datos (LDD) propio de cada SGBD y debe proporcionar los medios para definir
los tres niveles de datos ( interno, conceptual y externo ), especificando las
características de los datos de cada nivel.
A nivel interno se debe indicar el espacio físico para los datos, tamaño y tipo
de datos. Además se deben poder definir caminos de acceso como punteros, índices,
etc.
A nivel conceptual y externo se deben definir entidades e identificadores,
indicar sus atributos, interrelaciones entre ellos, autorizaciones de acceso, etc.

2. Manipulación. Permite buscar , añadir, suprimir o modificar los datos


siguiendo siempre las normas de seguridad y especificaciones del administrador.
Esta función la realiza un Lenguaje de Manipulación de Datos ( LMD ).

3. Utilización o control. Esta función reúne los interfaces que necesitan los distintos
usuarios para comunicarse con la bd y proporciona un conjunto de procedimientos
que facilitan las tareas del administrador. En la mayoría de los SGBD existen
funciones de servicio, como cambiar la capacidad de los ficheros, obtener
estadísticas de utilización, cargar archivos, copias de seguridad, rearranque en caso
de caída del sistema y protección frente a accesos no autorizados. Esta función la
realiza el LCD.
************************** figura 5 ***********************
8

6.2. COMPONENTES DE UN SGBD.

Para realizar las funciones descritas anteriormente, el SGBD necesita además de


las herramientas sw, personal que gestione de manera adecuada la información
almacenada en la bd. Estos componentes son los siguientes:

 El gestor de la bd. Es un conjunto de programas transparentes al usuario que se


encargan de garantizar la privacidad, la seguridad, la integridad de los datos, el
acceso concurrente a ellos, así como de interaccionar con el sistema operativo. El
gestor es la unión entre los datos almacenados, los programas que manejan esos
datos y los usuarios. Cualquier operación que queramos realizar “contra” la bd ha de
estar procesada por el gestor.
El gestor almacena en el diccionario de datos la descripción de la bd, los
usuarios permitidos y las autorizaciones pertinentes. Existe un usuario administrador
encargado de centralizar estas tareas.

 El diccionario de datos ( DD ). El diccionario de datos puede considerarse como


“la bd del diseñador de bases de datos”, por tanto es una bd en la cual el diseñador
registra sus decisiones de diseño. El contenido del DD es “los datos que describen a
los datos de la bd” por este motivo, a veces, a los datos del diccionario se les conoce
con el nombre de metadatos.
Este diccionario debe contener todo lo que cualquier usuario quiera saber sobre
la bd:
 Las descripciones externa, conceptual e interna de la bd.
 Las transformaciones entre los tres niveles.
 Las restricciones sobre los datos.
 El acceso a los datos.
 Las descripciones de las cuentas de usuarios (accesos a la BD)
 Las autorizaciones de cada usuario.
 Los esquemas externos de cada programa, sus usuarios y qué
autorizaciones tienen.

 El Administrador de la bd (DBA o ABD). El DBA es una persona ( o grupo de


personas ) responsable de la seguridad y el control de los datos, los cuales pueden
ser utilizados por cualquiera que tenga autoridad para ello. Si un programador quiere
crear un nuevo objeto de bd o modificar la estructura de un objeto existente, debe
pedir autorización al administrador, que cederá los privilegios para que pueda
modificar las estructuras de datos de la manera que crea más conveniente para el
sistema. Las tareas que debe realizar el administrador son las siguientes:
 La definición del esquema conceptual de la bd mediante el uso de
sentencias DDL.
 La definición del esquema físico, e.d., de las estructuras de
almacenamiento de los datos y de los métodos de acceso.
 La definición de los subesquemas o visiones de usuario de la bd.
 La concesión de autorización para el acceso a los datos mediante la
asignación de privilegios a los usuarios.
 El mantenimiento de la seguridad de los datos almacenados en la bd a
través de la especificación de los procedimientos necesarios para
9

poner en marcha estrategias de recuperación de datos en caso de que


algún fallo dé lugar a su pérdida.
 El mantenimiento del esquema lógico y físico de la bd.

 Los lenguajes.Las distintas funciones que ha de cumplir un SGBD hacen necesario


disponer de diferentes tipos de lenguajes que permitan la comunicación con la bd.
Éstos son:

 Lenguaje de Definición de Datos (DDL). El Administrador de la bd debe


disponer de instrumentos para definir los datos con facilidad y precisión, así
como las distintas estructuras (niveles): interna, conceptual y externa. Un
DDL debe permitir lo sgte:

Para la estructura conceptual:

 Asignar nombres a campos, a registros, sus longitudes y


características.
 Relaciones entre datos.
 Indicar restricciones semánticas. ****P.e. un campo FECHA
el mes del 1al 12*****.

Para la estructura interna:

 Volúmenes.
 Crecimiento previsto.
 Tipo de registros más accedidos.

Para la estructura externa:

 Permitir recuperar o actualizar los datos de la bd. Al definir


una estructura externa hay que darle un nombre e indicar qué
datos y relaciones de la estructura conceptual se encuentran en
la misma.

Ej: Con la instrucción CREATE TABLE de lenguaje SQL, estaríamos creando


una tabla. Esta instrucción pertenece a la parte de DDL del lenguaje SQL.

 Lenguajes de manipulación de datos (DML). El lenguaje debe permitir la


posibilidad de referirse a determinados conjuntos de datos que cumplan
ciertas condiciones o criterio de selección. Al indicar el criterio de selección
y los datos a recuperar o actualizar, el SGBD se encarga de acceder al
soporte físico y recuperar o actualizar. SQL es un lenguaje de manipulación
de datos.

Ej: Con la instrucción INSERT, SELECT, UPDATE, etc. estamos insertando,


seleccionando o modificando los datos, e.d. son sentencias que pertenecen a la
parte de DML del lenguaje SQL.

 Lenguaje de Control de Datos (DCL). Se utiliza para controlar el acceso a


la información de la bd definiendo privilegios y tipos de acceso, así como
10

para el control de la seguridad de los datos. De esta tarea se encarga el


administrador. Algunas veces se considera el DCL como un sublenguaje del
DDL.

Ej: Las sentencias GRANT, REVOKE, etc. sirven para conceder o quitar
privilegios respectivamente. Estas sentencias pertenecen a la parte de
DDL del lenguaje SQL.

7. MODELOS DE BASES DE DATOS.

Una vez realizado el diseño conceptual de la bd, el esquema resultante ha de


traducirse a un modelo lógico de datos (*****cómo se representan*****). Los modelos
más difundidos son el modelo de datos jerárquico, el modelo en red y el modelo
relacional.

7.1. MODELO DE DATOS JERÁRQUICO.

Este modelo se sirve de árboles para la representación lógica de los datos. Un


árbol está compuesto por una jerarquía de elementos llamados nodos. El nivel más alto
11

de la jerarquía tiene un solo nodo que se llama raíz. Cada nodo representa un tipo de
registro llamado segmento con sus correspondientes campos.

El siguiente modelo representa un esquema jerárquico con cuatro segmentos y


tres niveles:

************************* figura 7 ***************************

En el segundo nivel hay dos segmentos que dependen del segmento raíz.
TAREA, que son las tareas realizadas por los departamentos y EMPLEADO, que
contiene los datos de los empleados. En el tercer nivel hay un segmento llamado HIJOS
que depende del segmento EMPLEADO.

En este modelo sólo existen relaciones 1:M que están representadas por las
ramas del árbol, e.d., un padre puede tener varios hijos, pero un hijo sólo puede tener un
padre.
Algunos inconvenientes del modelo jerárquico son los siguientes:

 No se permite más de una relación entre segmentos.


 No se admiten relaciones del tipo N:M.
 No se permite que un segmento hijo tenga más de un padre.
 El árbol se recorre en un cierto orden.
 Para acceder a cualquier segmento es necesario hacerlo por el segmento raíz.

7.2. MODELO DE DATOS EN RED.

Este modelo utiliza estructuras de datos en red, también conocidas como


estructuras plex. Las entidades se representan como nodos de la red, y las relaciones
como líneas que unen los nodos. En una estructura red cualquier componente puede
vincularse con cualquier otro. Es posible describirla en términos de padres e hijos, pero
a diferencia del modelo jerárquico, un hijo puede tener varios padres.

****************** figura 8 y figura 9 *********************************

El gran inconveniente de las bd en red es que modificar la estructura de la bd


implicaba su reconstrucción completa.

7.3. MODELO DE DATOS RELACIONAL.

Un SGBD de enfoque relacional utiliza tablas bidimensionales para la


representación lógica de los datos y las relaciones entre ellos.

Algunas de las ventajas del modelo relacional son las sgtes:


12

 Ofrece una visión conceptual sencilla del conjunto de datos


existentes en la bd.

 Puede entenderlo y utilizarlo cualquier usuario, no es preciso que sea


un experto informático.

 Los usuarios no necesitan saber dónde se encuentran físicamente los


datos.

 Se puede ampliar el esquema conceptual sin modificar los programas


de aplicación.

Un ejemplo de bd relacional es ORACLE.

8. ARQUITECTURA CLIENTE/SERVIDOR.

En un sistema cliente/servidor conectado a través de una RAL, generalmente, el


servidor es un gran ordenador que actúa como depósito de los datos y permite llevar a
cabo todas las funciones de un SGBD. Los clientes son estaciones de trabajo o PC que
solicitan servicios al servidor.

El sw que debe existir en una arquitectura cliente/servidor posee varios


componentes que se pueden asociar al cliente o al servidor. Son los siguientes:

 Sw de gestión de datos. Lleva a cabo la manipulación y gestión de datos


requeridos por las aplicaciones. Normalmente reside en el servidor.

 Sw de interacción con el usuario y presentación. Implementa las funciones


que se asocian a un interface gráfico de usuario. Suele residir en el cliente.

 Sw de desarrollo. Se usa para desarrollar aplicaciones. Suele residir en el


cliente.

Además de estos componentes, hay otros elementos sw que existen en el cliente


y en el sevidor. Se trata de sw de sistemas operativos en red, de aplicaciones de bd, de
comunicaciones, etc., que facilitan la conexión cliente/servidor.

La arquitectura cliente/servidor permite las configuraciones siguientes:

 Basada en anfitrión: la máquina cliente y la máquina servidora son la misma.


Los usuarios se conectan directamente a la máquina donde se encuentra la
bd. Oracle para pc’s.

 Cliente/servidor: la bd reside en una máquina servidora y los usuarios


acceden a la bd desde su máquina cliente a través de un red.
13

 Procesamiento distribuido: la bd está repartida en más de una máquina


servidora. Los usuarios no tienen por qué conocer la ubicación física de los
datos con los que trabajan y acceden simultáneamente a varios servidores.

*************figura 10****************

También podría gustarte