Ut 1 Almacenamiento de La Informacion
Ut 1 Almacenamiento de La Informacion
Ut 1 Almacenamiento de La Informacion
Almacenamiento de la información.
1 de 55 28/11/2016 19:26
http://educacionadistancia.juntadeandalucia.es/cursos/blocks/recopila/r...
2 de 55 28/11/2016 19:26
http://educacionadistancia.juntadeandalucia.es/cursos/blocks/recopila/r...
1.- Introducción.
¿Te has preguntado alguna vez dónde y de qué manera se almacenan y
gestionan los datos que utilizamos diariamente? Si pensamos en cualquier
acción de nuestra vida cotidiana, o si analizamos la mayoría de los ámbitos
de actividad, nos encontramos que la utilización de las bases de datos está
ampliamente extendida. Éstas, y los datos contenidos en ellas, serán
imprescindibles para llevar a cabo multitud de acciones.
Suponemos que no es necesario que continuemos más para darnos cuenta de que casi todo lo que nos rodea, en
alguna medida, está relacionado con los datos, su almacenamiento y su gestión. El gran volumen de datos que
actualmente manejamos y sus innumerables posibilidades requieren de la existencia de técnicos perfectamente
formados y capaces de trabajar con ellos.
Este módulo profesional se centra en el estudio de las Bases de Datos y su uso en el desarrollo de aplicaciones.
En esta primera unidad comenzaremos conociendo los primeros sistemas basados en ficheros para el
almacenamiento y gestión de la información. Seguidamente, se desarrollarán los conceptos y definiciones básicas
relacionadas con las bases de datos, posteriormente analizaremos sus modelos y tipos, un poco más adelante,
podremos conocer las características y capacidades de los sistemas gestores de bases de datos y finalmente,
identificaremos las herramientas reales con las que llevar a cabo la gestión dichas bases.
3 de 55 28/11/2016 19:26
http://educacionadistancia.juntadeandalucia.es/cursos/blocks/recopila/r...
4 de 55 28/11/2016 19:26
http://educacionadistancia.juntadeandalucia.es/cursos/blocks/recopila/r...
Al llevar a cabo una primera informatización, se pasó de tener los datos en formato
papel a poder acceder a ellos de manera mucho más rápida a través del
ordenador. En ese momento, la informática adaptó sus herramientas para que los
elementos que el usuario maneja en el ordenador se parezcan a los que utilizaba
manualmente. Así en informática se sigue hablado de ficheros, formularios,
carpetas, directorios,...
La información debía ser trasladada desde el papel al formato digital y por lo general, era necesario almacenarla
para su posterior recuperación, consulta y procesamiento. De este modo, para llevar a cabo un tratamiento
eficiente de ésta era necesario establecer métodos adecuados para su almacenamiento. El elemento que permitió
llevar a cabo el almacenamiento de datos de forma permanente en dispositivos de memoria masiva fue el fichero
o archivo.
Fichero o archivo: conjunto de información relacionada, tratada como un todo y organizada de forma
estructurada. Es una secuencia de dígitos binarios que organiza información relacionada con un mismo
aspecto.
Los ficheros están formados por registros lógicos que contienen datos relativos a un mismo elemento u objeto
(por ejemplo, los datos de usuarios de una plataforma educativa). A su vez, los registros están divididos en
campos que contienen cada una de las informaciones elementales que forman un registro (por ejemplo, el nombre
del usuario o su dirección de correo electrónico).
Hemos de resaltar que los datos están almacenados de tal forma que se puedan añadir, suprimir, actualizar o
consultar individualmente en cualquier momento.
Como los ficheros suelen ser muy voluminosos, solo se pueden llevar a la memoria principal partes de ellos para
poder procesarlos. La cantidad de información que es transferida entre el soporte en el que se almacena el
fichero, y la memoria principal del ordenador, en una sola operación de lectura/grabación, recibe el nombre de
registro físico o bloque.
Normalmente en cada operación de lectura/grabación se transfieren varios registros del fichero, es decir un bloque
suele contener varios registros lógicos. Al número de registros que entran en un bloque se le conoce con el
nombre de factor de blocaje, y a esta operación de agrupar varios registros en un bloque se le llama bloqueo de
registros.
5 de 55 28/11/2016 19:26
http://educacionadistancia.juntadeandalucia.es/cursos/blocks/recopila/r...
a. Ficheros permanentes: contienen información relevante para una aplicación. Es decir, los datos
necesarios para el funcionamiento de ésta. Tienen un periodo de permanencia en el sistema amplio. Estos
se subdividen en:
Ficheros maestros: contienen el estado actual de los datos que pueden modificarse desde la
aplicación. Es la parte central de la aplicación, su núcleo. Podría ser un archivo con los datos de los
usuarios de una plataforma educativa.
Ficheros constantes: son aquellos que incluyen datos fijos para la aplicación. No suelen ser
modificados y se accede a ellos para realización de consultas. Podría ser un archivo con códigos
postales.
Ficheros históricos: contienen datos que fueron considerados como actuales en un periodo o
situación anterior. Se utilizan para la reconstrucción de situaciones. Podría ser un archivo con los
usuarios que han sido dados de baja en la plataforma educativa.
b. Ficheros temporales: Se utilizan para almacenar información útil para una parte de la aplicación, no para
toda ella. Son generados a partir de datos de ficheros permanentes. Tienen un corto periodo de existencia.
Estos se subdividen en:
Ficheros intermedios: almacenan resultados de una aplicación que serán utilizados por otra.
Ficheros de maniobras: almacenan datos de una aplicación que no pueden ser mantenidos en
memoria principal por falta de espacio.
Ficheros de resultados: almacenan datos que van a ser transferidos a un dispositivo de salida.
6 de 55 28/11/2016 19:26
http://educacionadistancia.juntadeandalucia.es/cursos/blocks/recopila/r...
Soportes de Acceso Directo a los datos (Por ejemplo: discos). Son los más empleados y el acceso a
los datos puede hacerse de forma directa, pudiendo colocarnos en la posición que nos interesa y leer a
partir de ella.
Soportes de Acceso Secuencial (Por ejemplo: cintas magnéticas). Se suelen usar en copias de
seguridad y si deseamos leer un dato que está en la mitad de la cinta, tendremos que leer todo lo que hay
hasta llegar a esa posición.
7 de 55 28/11/2016 19:26
http://educacionadistancia.juntadeandalucia.es/cursos/blocks/recopila/r...
Las distintas formas de organizar un fichero en un soporte de memoria o, lo que se conoce también por métodos
de acceso a los ficheros se detallan en el siguiente gráfico.
Las organizaciones secuencial, de acceso aleatorio o directo y de acceso indexado son las más comunes. En los
siguientes epígrafes se detallarán las características de cada uno de los métodos de acceso a los ficheros.
8 de 55 28/11/2016 19:26
http://educacionadistancia.juntadeandalucia.es/cursos/blocks/recopila/r...
Este tipo de ficheros pueden utilizar dispositivos o soportes no direccionables o de acceso secuencial, como son
las cintas magnéticas de almacenamiento de datos. También se utiliza en los CD de audio y los DVD de vídeo, en
los que la música o las imágenes se almacenan a lo largo de una espiral continua.
Los registros almacenados se identifican por medio de una información ubicada en uno de sus campos, a este
campo se le denomina clave o llave. Si se ordena un archivo secuencial por su clave, es más rápido realizar
cualquier operación de lectura o escritura.
9 de 55 28/11/2016 19:26
http://educacionadistancia.juntadeandalucia.es/cursos/blocks/recopila/r...
Campo clave: campo que permite identificar y localizar un registro de manera ágil y organizada.
Cada uno de los registros se guarda en una posición física, que dependerá del espacio disponible en memoria
masiva, de ahí que la distribución de los registros sea aleatoria dentro del soporte de almacenamiento. Para
acceder a la posición física de un registro se utiliza una dirección o índice, no siendo necesario recorrer todo el
fichero para encontrar un determinado registro.
A través de una transformación específica aplicada a la clave, se obtendrá la dirección física en la que se
encuentra el registro. Según la forma de realizar esta transformación, existen diferentes modos de acceso:
En el acceso directo la clave coincide con la dirección, debiendo ser numérica y comprendida dentro del rango de
valores de las direcciones. Es el método más rápido.
La medida básica de posicionamiento del puntero en el fichero es el byte, dependiendo del tipo de codificación de
caracteres que empleemos (Unicode , ANSI ) se utilizarán 1 o 2 bytes por carácter respectivamente.
Teniendo esto en cuenta, el puntero avanzará de uno en uno o de dos en dos bytes para poder leer o escribir cada
carácter.
Posicionamiento inmediato.
Registros de longitud fija.
Apertura del fichero en modo mixto, para lectura y escritura.
Permiten múltiples usuarios utilizándolos.
Los registros se borran colocando un cero en la posición que ocupan.
Permiten la utilización de algoritmos de compactación de huecos.
Los archivos se crean con un tamaño definido, es decir, con un máximo de registros establecido durante la
creación.
Esta organización sólo es posible en soportes direccionables.
Se usan cuando el acceso a los datos de un registro se hace siempre empleando la misma clave y la
velocidad de acceso a un registro es lo que más nos importa.
Permiten la actualización de los registros en el mismo fichero, sin necesidad de copiar el fichero.
Permiten realizar procesos de actualización en tiempo real.
10 de 55 28/11/2016 19:26
http://educacionadistancia.juntadeandalucia.es/cursos/blocks/recopila/r...
11 de 55 28/11/2016 19:26
http://educacionadistancia.juntadeandalucia.es/cursos/blocks/recopila/r...
Por tanto, existirá una zona de registros en la que se encuentran los datos del archivo y una zona de índices,
que contiene una tabla con las claves de los registros y las posiciones donde se encuentran los mismos. La tabla
de índices estará ordenada por el campo clave.
La tabla de índices será cargada en memoria principal para realizar en ella la búsqueda de la fila correspondiente a
la clave del registro a encontrar, obteniéndose así la dirección donde se encuentra el registro. Una vez localizada la
dirección, sólo hay que acceder a la zona de registros en el soporte de almacenamiento y posicionarnos en la
dirección indicada. Puesto que la tabla debe prever la inclusión de todas las direcciones posibles del archivo, su
principal inconveniente resulta determinar su tamaño y mantenerla ordenada por los valores de la clave.
El diseño del registro tiene que tener un campo, o combinación de campos, que permita identificar cada
registro de forma única, es decir, que no pueda haber dos registros que tengan la misma información en él.
A este campo se le llama campo clave y es el que va a servir de índice. Un mismo fichero puede tener
mas de un campo clave, pero al menos uno de ellos no admitirá valores duplicados y se le llama clave
primaria. A las restantes se les llama claves alternativas.
Permiten utilizar el modo de acceso secuencial y el modo de acceso directo para leer la información
guardada en sus registros.
Para acceder a este tipo de ficheros utilizando el modo de acceso directo se hace conociendo el contenido
del campo clave del registro que queremos localizar. Con esa información el sistema operativo puede
consultar el índice y conocer la posición del registro dentro del fichero.
Para acceder a este tipo de ficheros utilizando el modo de acceso secuencial los registros son leídos
ordenados por el contenido del campo clave, independientemente del orden en que se fueron grabando (el
orden lógico no es igual al orden físico), debido a que el acceso a los datos se hace a través del índice,
que para hacer más fácil la búsqueda de los registros, permanece siempre ordenado por el campo clave.
Solamente se puede grabar en un soporte direccionable.Por ejemplo, un disco magnético. Si esto no fuera
así, no podría emplear el acceso directo.
12 de 55 28/11/2016 19:26
http://educacionadistancia.juntadeandalucia.es/cursos/blocks/recopila/r...
En la tabla de índices, cada fila hace referencia a cada uno de los segmentos. La clave corresponde al
último registro y el índice apunta al registro inicial. Una vez que se accede al primer registro del segmento,
dentro de él se localiza (de forma secuencial) el registro buscado.
Esta organización es muy utilizada, tanto para procesos en los que intervienen pocos registros como para
aquellos en los que se maneja el fichero completo.
Permite el acceso secuencial. Esto es muy interesante cuando la tasa de actividad es alta. En el
acceso secuencial, además, los registros se leen ordenados por el campo clave.
Permite el acceso directo a los registros. Realmente emula el acceso directo, empleando para ello
las tablas de índices. Primero busca la clave en el área de índices y luego va a leer al área de datos
en la dirección que le indica la tabla.
Se pueden actualizar los registros en el mismo fichero, sin necesidad de crear un fichero nuevo de
copia en el proceso de actualización.
Ocupa mas espacio en el disco que los ficheros secuenciales, debido al uso del área de índices.
Solo se puede utilizar soportes direccionables.
Obliga a una inversión económica mayor, por la necesidad de programas y, a veces, hardware mas
sofisticado.
b. Ficheros de Acceso Calculado o Hash:
Cuando utilizamos ficheros indexados es necesario siempre tener que consultar una tabla para obtener la
dirección de almacenamiento a partir de la clave. La técnica del acceso calculado o hash, permite accesos
más rápidos, ya que en lugar de consultar una tabla, se utiliza una transformación o función matemática
(función de hashing) conocida, que a partir de la clave genera la dirección de cada registro del archivo. Si la
clave es alfanumérica, deberá previamente ser transformada en un número.
El mayor problema que presenta este tipo de ficheros es que a partir de diferentes claves se obtenga la
misma dirección al aplicar la función matemática o transformación. A este problema se le denomina
colisión, y las claves que generan la misma dirección se conocen por sinónimos. Para resolver este
problema se aplican diferentes métodos, como tener un bloque de excedentes o zona de sinónimos, o
crear un archivo de sinónimos, etc.
Módulo: La dirección será igual al resto de la división entera entre la clave y el número de registros.
Extracción: La dirección será igual a una parte de las cifras que se extraen de la clave.
Una buena transformación o función de hash, será aquella que produzca el menor número de colisiones. En
este caso hay que buscar una función, a ser posible biunívoca, que relacione los posibles valores de la
clave con el conjunto de números correlativos de dirección. Esta función consistirá en realizar una serie de
cálculos matemáticos con el valor de la clave hasta obtener un número entre 1 y n, siendo n el número de
direcciones que tiene el fichero.
13 de 55 28/11/2016 19:26
http://educacionadistancia.juntadeandalucia.es/cursos/blocks/recopila/r...
14 de 55 28/11/2016 19:26
http://educacionadistancia.juntadeandalucia.es/cursos/blocks/recopila/r...
15 de 55 28/11/2016 19:26
http://educacionadistancia.juntadeandalucia.es/cursos/blocks/recopila/r...
Como hemos visto anteriormente, los ficheros permiten organizar y memorizar conjuntos de datos del mismo tipo o
naturaleza con una determinada estructura, siendo un medio para el almacenamiento de los datos o resultados de
una aplicación específica. Pero si las aplicaciones, al ser diseñadas, deben depender directamente de sus
ficheros o archivos, se pierde independencia y surgen serios inconvenientes: como información duplicada,
incoherencia de datos, fallos de seguridad, etc.
Estos problemas debían ser solucionados, es cuando aparece el concepto de base de datos. Una base de datos
permitirá reunir toda la información relacionada en un único sistema de almacenamiento, pudiendo cualquier
aplicación utilizarla de manera independiente y ofreciendo una mejora en el tratamiento de la información, así como
una evolución para el desarrollo de aplicaciones.
La gestión de las bases de datos ha experimentado gran cantidad de cambios, partiendo de aplicaciones
especializadas hasta llegar a convertirse en el núcleo de los entornos informáticos modernos. Con la llegada de
Internet en los noventa, el número de usuarios de bases de datos creció exponencialmente, y aunque muchos de
ellos no sean conscientes de ello, el acceso a dichas bases forma parte de la vida cotidiana de muchos de
nosotros.
Conocer los sistemas que gestionan las bases de datos, sus conceptos fundamentales, el diseño, lenguajes y la
implementación de éstas, podemos considerarlo imprescindible para alguien que se está formando en el campo
de la informática.
16 de 55 28/11/2016 19:26
http://educacionadistancia.juntadeandalucia.es/cursos/blocks/recopila/r...
3.1.- Conceptos.
A finales de los setenta, la aparición de nuevas tecnologías de manejo de
datos a través de los sistemas de bases de datos supuso un considerable
cambio. Los sistemas basados en ficheros separados dieron paso a la
utilización de sistemas gestores de bases de datos, que son sistemas
software centralizados o distribuidos que ofrecen facilidades para la
definición de bases de datos, selección de estructuras de datos y búsqueda
de forma interactiva o mediante lenguajes de programación.
Base de datos: Es una colección de datos relacionados lógicamente entre sí, con una definición y
descripción comunes y que están estructurados de una determinada manera. Es un conjunto
estructurado de datos que representa entidades y sus interrelaciones, almacenados con la mínima
redundancia y posibilitando el acceso a ellos eficientemente por parte de varias aplicaciones y
usuarios.
La base de datos no sólo contiene los datos de la organización, también almacena una descripción de dichos
datos. Esta descripción es lo que se denomina metadatos, se almacena en el diccionario de datos o catálogo
y es lo que permite que exista independencia de datos lógica-física.
Entidades: objeto real o abstracto con características diferenciadoras de otros, del que se almacena
información en la base de datos. En una base de datos de una clínica veterinaria, posibles entidades
podrían ser: ejemplar, doctor, consulta, etc.
Atributos: son los datos que se almacenan de la entidad. Cualquier propiedad o característica de una
entidad puede ser atributo. Continuando con nuestro ejemplo, podrían ser atributos: raza, color, nombre,
número de identificación, etc.
Registros: donde se almacena la información de cada entidad. Es un conjunto de atributos que contienen
los datos que pertenecen a una misma repetición de entidad. En nuestro ejemplo, un registro podría ser:
2123056, Sultán, Podenco, Gris, 23/03/2009.
Campos: donde se almacenan los atributos de cada registro. Teniendo en cuenta el ejemplo anterior, un
campo podría ser el valor Podenco.
Las ventajas fundamentales que ofrece el uso de bases de datos se resumen a continuación:
Resumen textual alternativo
17 de 55 28/11/2016 19:26
http://educacionadistancia.juntadeandalucia.es/cursos/blocks/recopila/r...
3.2.- Usos.
Existen cuatro tipos de personas que pueden hacer uso de una base de
datos: el administrador, los diseñadores de la base de datos, los
programadores de aplicaciones y los usuarios finales.
Enumerar todos y cada uno de los campos donde se utilizan las bases de datos es complejo, aunque seguro que
quedarán muchos en el tintero, a continuación se recopilan algunos de los ámbitos donde se aplican.
18 de 55 28/11/2016 19:26
http://educacionadistancia.juntadeandalucia.es/cursos/blocks/recopila/r...
Telecomunicaciones: para guardar registros de llamadas realizadas, generar facturas mensuales, mantener
el saldo de las tarjetas telefónicas de prepago y almacenar información sobre las redes.
Medicina: información hospitalaria, biomedicina, genética, etc.
Justicia y Seguridad: delincuentes, casos, sentencias, investigaciones, etc.
Legislación: normativa, registros, etc.
Organismos públicos: datos ciudadanos, certificados, etc.
Sistemas de posicionamiento geográfico.
Hostelería y turismo: reservas de hotel, vuelos, excursiones, etc.
Ocio digital: juegos online, apuestas, etc.
Cultura: gestión de bibliotecas, museos virtuales, etc.
Etc.
19 de 55 28/11/2016 19:26
http://educacionadistancia.juntadeandalucia.es/cursos/blocks/recopila/r...
A continuación, se exponen los sistemas de almacenamiento de información más utilizados para el despliegue de
bases de datos, comenzaremos por aquellos en los que pueden alojarse bases de datos de tamaño pequeño y
mediano, para después analizar los sistemas de alta disponibilidad de grandes servidores.
Discos SATA:Es una interfaz de transferencia de datos entre la placa base y algunos dispositivos de
almacenamiento, como puede ser el disco duro, lectores y regrabadores de CD/DVD/BD, Unidades de
Estado Sólido u otros dispositivos. SATA proporciona mayores velocidades, mejor aprovechamiento
cuando hay varias unidades, mayor longitud del cable de transmisión de datos y capacidad para conectar
unidades al instante, es decir, insertar el dispositivo sin tener que apagar el ordenador. La primera
generación especifica en transferencias de 150 Megabytes por segundo, también conocida por SATA 150
MB/s o Serial ATA-150. Actualmente se comercializan dispositivos SATA II, a 300 MB/s, también conocida
como Serial ATA-300 y los SATA III con tasas de transferencias de hasta 600 MB/s.
Discos SCSI: Son interfaces preparadas para discos duros de gran capacidad de almacenamiento y
velocidad de rotación. Se presentan bajo tres especificaciones: SCSI Estándar (Standard SCSI), SCSI
Rápido (Fast SCSI) y SCSI Ancho-Rápido (Fast-Wide SCSI). Su tiempo medio de acceso puede llegar a 7
milisegundos y su velocidad de transmisión secuencial de información puede alcanzar teóricamente los 5
MB/s en los discos SCSI Estándares, los 10 MBps en los discos SCSI Rápidos y los 20 MBps en los
discos SCSI Anchos-Rápidos (SCSI-2). Un controlador SCSI puede manejar hasta 7 discos duros SCSI.
RAID: acrónimo de Redundant Array of Independent Disks o matriz de discos independientes, es un
contenedor de almacenamiento redundante. Se basa en el montaje en conjunto de dos o más discos
duros, formando un bloque de trabajo, para obtener desde una ampliación de capacidad a mejoras en
velocidad y seguridad de almacenamiento. Según las características que queramos primar, se establecen
distintos sistemas de RAID.
Sistemas NAS: Es el acrónimo de Network Attached Storage ó sistema de almacenamiento masivo en red.
Estos sistemas de almacenamiento permiten compartir la capacidad de almacenamiento de un computador
(Servidor) con ordenadores personales o servidores clientes a través de una red, haciendo uso de un
sistema operativo optimizado para dar acceso a los datos a través de protocolos de comunicación
específicos. Suelen ser dispositivos para almacenamiento masivo de datos con capacidades muy altas, de
varios Terabytes, generalmente superiores a los discos duros externos y además se diferencian de estos al
conectar por red.
Sistemas SAN: Acrónimo de Storage Area Network o red de área de almacenamiento.Se trata de una red
concebida para conectar servidores, matrices (arrays) de discos y librerías de soporte. La arquitectura de
este tipo de sistemas permite que los recursos de almacenamiento estén disponibles para varios
servidores en una red de área local o amplia. Debido a que la información almacenada no reside
directamente en ninguno de los servidores de la red, se optimiza el poder de procesamiento para
aplicaciones comerciales y la capacidad de almacenamiento se puede proporcionar en el servidor donde
más se necesite.
20 de 55 28/11/2016 19:26
http://educacionadistancia.juntadeandalucia.es/cursos/blocks/recopila/r...
21 de 55 28/11/2016 19:26
http://educacionadistancia.juntadeandalucia.es/cursos/blocks/recopila/r...
La clasificación tradicional de las bases de datos establece tres modelos de bases de datos: jerárquico, en red y
relacional. En la actualidad el modelo de bases de datos más extendido es el relacional. Aunque, hay que tener en
cuenta que dos de sus variantes (modelo de bases de datos distribuidas y orientadas a objetos) son las que se
más se están utilizando en los últimos tiempos.
En los siguientes epígrafes analizaremos cada uno de ellos, así como otros modelos de bases de datos
existentes.
22 de 55 28/11/2016 19:26
http://educacionadistancia.juntadeandalucia.es/cursos/blocks/recopila/r...
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 tal manera que existen nodos que contienen atributos o campos y que se relacionarán con
sus nodos hijos, pudiendo tener cada nodo más de un hijo, pero un nodo siempre tendrá un sólo padre.
Los datos de este modelo se almacenan en estructuras lógicas llamadas segmentos. Los segmentos se
relacionan entre sí utilizando arcos. La forma visual de este modelo es de árbol invertido, en la parte superior están
los padres y en la inferior los hijos.
Hoy en día, debido a sus limitaciones, el modelo jerárquico está en desuso. En el siguiente gráfico puedes
observar la estructura de almacenamiento del modelo jerárquico.
23 de 55 28/11/2016 19:26
http://educacionadistancia.juntadeandalucia.es/cursos/blocks/recopila/r...
El modelo en red organiza la información en registros (también llamados nodos) y enlaces. En los registros se
almacenan los datos, mientras que los enlaces permiten relacionar estos datos. 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 cualquier tipo de relación entre los datos, pero hace muy
complicado su manejo. Al no tener que duplicar la información se ahorra espacio de almacenamiento.
El sistema de gestión de información basado en el modelo en red más popular es el sistema IDMS.
24 de 55 28/11/2016 19:26
http://educacionadistancia.juntadeandalucia.es/cursos/blocks/recopila/r...
En el modelo relacional la base de datos es percibida por el usuario como un conjunto de tablas. Esta percepción
es sólo a nivel lógico, ya que a nivel físico puede estar implementada mediante distintas estructuras de
almacenamiento.
El modelo relacional utiliza tablas bidimensionales (relaciones) para la representación lógica de los datos y las
relaciones entre ellos. Cada relación (tabla) posee un nombre que es único y contiene un conjunto de columnas.
Se llamará registro, entidad o tupla a cada fila de la tabla y campo o atributo a cada columna de la tabla.
A los conjuntos de valores que puede tomar un determinado atributo, se le denomina dominio.
Una clave será un atributo o conjunto de atributos que identifique de forma única a una tupla.
A continuación puedes observar cómo es una relación con sus tuplas y atributos en el modelo relacional.
El lenguaje habitual para construir las consultas a bases de datos relacionales es SQL, Structured Query Language
o Lenguaje Estructurado de Consultas, un estándar implementado por los principales motores o sistemas de
gestión de bases de datos relacionales.
Durante su diseño, una base de datos relacional pasa por un proceso al que se conoce como normalización de
una base de datos.
25 de 55 28/11/2016 19:26
http://educacionadistancia.juntadeandalucia.es/cursos/blocks/recopila/r...
26 de 55 28/11/2016 19:26
http://educacionadistancia.juntadeandalucia.es/cursos/blocks/recopila/r...
El objetivo del modelo orientado a objetos es cubrir las limitaciones del modelo relacional. Gracias a este modelo
se incorporan mejoras como la herencia entre tablas, los tipos definidos por el usuario, disparadores almacenables
en la base de datos (triggers), soporte multimedia, etc.
Los conceptos más importantes del paradigma de objetos que el modelo orientado a objetos incorpora son:
Encapsulación - Propiedad que permite ocultar la información al resto de los objetos, impidiendo así
accesos incorrectos o conflictos.
Herencia - Propiedad a través de la cual los objetos heredan comportamiento dentro de una jerarquía de
clases.
Polimorfismo - Propiedad de una operación mediante la cual puede ser aplicada a distintos tipos de
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. Este modelo es considerado como el fundamento de las bases de datos de tercera
generación, siendo consideradas las bases de datos en red como la primera y las bases de datos relacionales
como la segunda generación. Aunque no han reemplazado a las bases de datos relacionales, si son el tipo de
base de datos que más está creciendo en los últimos años.
27 de 55 28/11/2016 19:26
http://educacionadistancia.juntadeandalucia.es/cursos/blocks/recopila/r...
a. Modelo Objeto-Relacional
Las bases de datos pertenecientes a este modelo, son un híbrido entre las bases del modelo relacional y el
orientado a objetos. El mayor inconveniente de las bases de datos orientadas a objetos radica en los
costes de la conversión de las bases de datos relacionales a bases de datos orientadas a objetos.
En una base de datos objeto-relacional (BDOR) siempre se busca obtener lo mejor del modelo relacional,
incorporando las mejoras ofrecidas por la orientación a objetos. En este modelo se siguen almacenando
tuplas, aunque la estructura de las tuplas no está restringida sino que las relaciones pueden ser definidas en
función de otras, que es lo que denominamos herencia directa.
El estándar en el que se basa este modelo es SQL99 . Este estándar ofrece la posibilidad de añadir a
las bases de datos relacionales procedimientos almacenados de usuario, triggers, tipos definidos por el
usuario, consultas recursivas, bases de datos OLAP, tipos LOB, ...
Otra característica a destacar es la capacidad para incorporar funciones que tengan un código en algún
lenguaje de programación como por ejemplo: SQL, Java, C, etc.
La gran mayoría de las bases de datos relacionales clásicas de gran tamaño, como Oracle, SQL Server,
etc., son objeto-relacionales.
Las bases de datos deductivas son también llamadas bases de datos lógicas, al basarse en lógica
matemática. Surgieron para contrarrestar las limitaciones del modelo relacional para la respuesta a
consultas recursivas y la deducción de relaciones indirectas entre los datos almacenados.
28 de 55 28/11/2016 19:26
http://educacionadistancia.juntadeandalucia.es/cursos/blocks/recopila/r...
29 de 55 28/11/2016 19:26
http://educacionadistancia.juntadeandalucia.es/cursos/blocks/recopila/r...
Como hemos visto, por cada modelo de datos se establecen sustanciales diferencias entre unas bases de datos y
otras, pero, ¿Esta es la única clasificación de las bases de datos existente? No, vamos a ver a continuación una
detallada descripción de los tipos de bases de datos teniendo en cuenta varios criterios.
30 de 55 28/11/2016 19:26
http://educacionadistancia.juntadeandalucia.es/cursos/blocks/recopila/r...
Para poder tratar la información contenida en las bases de datos se utilizan los sistemas gestores de bases de
datos o SGBD, también llamados DBMS (DataBase Management System), que ofrecen un conjunto de programas
que permiten acceder y gestionar dichos datos.
El objetivo fundamental de los SGBD es proporcionar eficiencia y seguridad a la hora de recuperar o insertar
información en las bases de datos. Estos sistemas están diseñados para la manipulación de grandes bloques de
información.
El SGBD permite a los usuarios la creación y el mantenimiento de una base de datos, facilitando la definición,
construcción y manipulación de la información contenida en éstas. Definir una base de datos consistirá en
especificar los tipos de datos, las estructuras y las restricciones que los datos han de cumplir a la hora de
almacenarse en dicha base. Por otro lado, la construcción de la base será el proceso de almacenamiento de datos
concretos en algún medio o soporte de almacenamiento que esté supervisado por el SGBD. Finalmente, la
manipulación de la base de datos incluirá la posibilidad de realización de consultas para recuperar información
específica, la actualización de los datos y la generación de informes a partir de su contenido.
El SGBD interacciona con otros elementos software existentes en el sistema, concretamente con el sistema
31 de 55 28/11/2016 19:26
http://educacionadistancia.juntadeandalucia.es/cursos/blocks/recopila/r...
operativo (SO). Los datos almacenados de forma estructurada en la base de datos son utilizados indistintamente
por otras aplicaciones, será el SGBD quien ofrecerá una serie de facilidades a éstas para el acceso y
manipulación de la información, basándose en las funciones y métodos propios del sistema operativo.
32 de 55 28/11/2016 19:26
http://educacionadistancia.juntadeandalucia.es/cursos/blocks/recopila/r...
6.1.- Funciones.
Un SGBD desarrolla tres funciones fundamentales como son las de descripción, manipulación y utilización de los
datos. A continuación se detallan cada una de ellas.
1. Función de descripción o definición: Permite al diseñador de la base de datos crear las estructuras
apropiadas para integrar adecuadamente los datos. Esta función es la que permite definir las tres
estructuras de la base de datos: Estructura interna, Estructura conceptual y Estructura externa. (Estos
conceptos se verán más adelante en el epígrafe sobre arquitectura del SGBD).
Esta función se realiza mediante el lenguaje de descripción de datos o DDL. Mediante ese lenguaje: se
definen las estructuras de datos,se definen las relaciones entre los datos y se definen las reglas
(restricciones) que han de cumplir los datos.
Se especificarán las características de los datos a cada uno de los tres niveles.
A nivel interno (estructura interna), se ha de indicar el espacio de disco reservado para la base de
datos, la longitud de los campos, su modo de representación (lenguaje para la definición de la
estructura externa).
A nivel conceptual (estructura conceptual), se proporcionan herramientas para la definición de las
entidades y su identificación, atributos de las mismas, interrelaciones entre ellas, restricciones de
integridad, etc.; es decir, el esquema de la base de datos (lenguaje para la definición de estructura
lógico global).
A nivel externo (estructura externa), se deben definir las vistas de los distintos usuarios a través del
lenguaje para la definición de estructuras externas. Además, el SGBD se ocupará de la
transformación de las estructuras externas orientadas a los usuarios a las estructuras conceptuales y
de la relación de ésta y la estructura física.
2. Función de manipulación: permite a los usuarios de la base buscar, añadir, suprimir o modificar los datos
de la misma, siempre de acuerdo con las especificaciones y las normas de seguridad dictadas por el
administrador. Se llevará a cabo por medio de un lenguaje de manipulación de datos (DML) que facilita
los instrumentos necesarios para la realización de estas tareas.
También se encarga de definir la vista externa de todos los usuarios de la base de datos o vistas
parciales que cada usuario tiene de los datos definidos con el DDL.
33 de 55 28/11/2016 19:26
http://educacionadistancia.juntadeandalucia.es/cursos/blocks/recopila/r...
34 de 55 28/11/2016 19:26
http://educacionadistancia.juntadeandalucia.es/cursos/blocks/recopila/r...
6.2.- Componentes.
Una vez descritas las funciones que un SGBD debe llevar a cabo, imaginarás que
un SGBD es un paquete de software complejo que ha de proporcionar servicios
relacionados con el almacenamiento y la explotación de los datos de forma
eficiente. Para ello, cuenta con una serie de componentes que se detallan a
continuación:
35 de 55 28/11/2016 19:26
http://educacionadistancia.juntadeandalucia.es/cursos/blocks/recopila/r...
6.3.- Arquitectura.
La arquitectura propuesta proporciona tres niveles de abstracción: nivel interno o físico, nivel lógico o
conceptual y nivel externo o de visión del usuario. A continuación se detallan las características de cada uno
de ellos:
Nivel interno o físico: En este nivel se describe la estructura física de la base de datos a través de un
esquema interno encargado de detallar el sistema de almacenamiento de la base de datos y sus métodos
de acceso. Es el nivel más cercano al almacenamiento físico. A través del esquema físico se indican, entre
otros, los archivos que contienen la información, su organización, los métodos de acceso a los registros,
los tipos de registros, la longitud, los campos que los componen, las unidades de almacenamiento, etc.
Nivel lógico o conceptual: En este nivel se describe la estructura completa de la base de datos a través
de un esquema que detalla las entidades, atributos, relaciones, operaciones de los usuarios y restricciones.
Los detalles relacionados con las estructuras de almacenamiento se ocultan, permitiendo realizar una
abstracción a más alto nivel.
Nivel externo o de visión del usuario: En este nivel se describen las diferentes vistas que los usuarios
percibirán de la base de datos. Cada tipo de usuario o grupo de ellos verá sólo la parte de la base de datos
que le interesa, ocultando el resto.
Para una base de datos, sólo existirá un único esquema interno, un único esquema conceptual y podrían existir
varios esquemas externos definidos para uno o varios usuarios.
Independencia lógica: Podemos modificar el esquema conceptual sin alterar los esquemas externos ni
los programas de aplicación.
Independencia física: Podemos modificar el esquema interno sin necesidad de modificar el conceptual o
el externo. Es decir, se puede cambiar el sistema de almacenamiento, reorganizar los ficheros, añadir
nuevos, etc., sin que esto afecte al resto de esquemas.
36 de 55 28/11/2016 19:26
http://educacionadistancia.juntadeandalucia.es/cursos/blocks/recopila/r...
37 de 55 28/11/2016 19:26
http://educacionadistancia.juntadeandalucia.es/cursos/blocks/recopila/r...
6.4.- Tipos.
¿Qué tipos de SGBD existen? Para responder a esta pregunta podemos realizar la
siguiente clasificación, atendiendo a diferentes criterios:
b. El segundo criterio de clasificación se centra en el número de usuarios a los que da servicio el sistema:
Monousuario: sólo atienden a un usuario a la vez, y su principal uso se da en los ordenadores
personales.
Multiusuario: entre los que se encuentran la mayor parte de los SGBD, atienden a varios usuarios
al mismo tiempo.
c. El tercer criterio se basa en el número de sitios en los que está distribuida la base de datos:
Centralizados: sus datos se almacenan en un solo computador. Los SGBD centralizados pueden
atender a varios usuarios, pero el SGBD y la base de datos en sí residen por completo en una sola
máquina.
Distribuidos (Homogéneos, Heterogéneos): la base de datos real y el propio software del
SGBD pueden estar distribuidos en varios sitios conectados por una red. Los sistemas
homogéneos utilizan el mismo SGBD en múltiples sitios. Una tendencia reciente consiste
en crear software para tener acceso a varias bases de datos autónomas preexistentes
almacenadas en sistemas distribuidos heterogéneos. Esto da lugar a los SGBD federados
o sistemas multibase de datos en los que los SGBD participantes tienen cierto grado de
autonomía local.
d. El cuarto criterio toma como referencia el coste. La mayor parte de los paquetes cuestan entre 10.000
y 100.000 euros. Los sistemas monousuario más económicos para microcomputadores cuestan entre 0 y
3.000 euros. En el otro extremo, los paquetes más completos cuestan más de 100.000 euros.
e. El quinto, y último, criterio establece su clasificación según el propósito:
Propósito General: pueden ser utilizados para el tratamiento de cualquier tipo de base de datos y
aplicación.
Propósito Específico: Cuando el rendimiento es fundamental, se puede diseñar y construir un
software de propósito especial para una aplicación específica, y este sistema no sirve para otras
aplicaciones. Muchos sistemas de reservas de líneas aéreas son de propósito especial y
pertenecen a la categoría de sistemas de procesamiento de transacciones en línea, que deben
atender un gran número de transacciones concurrentes sin imponer excesivos retrasos.
38 de 55 28/11/2016 19:26
http://educacionadistancia.juntadeandalucia.es/cursos/blocks/recopila/r...
Sistema muy extendido que se ofrece bajo dos tipos de licencia, comercial o
libre. Para aquellas empresas que deseen incorporarlo en productos privativos,
MYSQL deben comprar una licencia específica. Es Relacional, Multihilo, Multiusuario MySQL
y Multiplataforma. Su gran velocidad lo hace ideal para consulta de bases de
datos y plataformas web.
39 de 55 28/11/2016 19:26
http://educacionadistancia.juntadeandalucia.es/cursos/blocks/recopila/r...
40 de 55 28/11/2016 19:26
http://educacionadistancia.juntadeandalucia.es/cursos/blocks/recopila/r...
La alternativa a los sistemas gestores de bases de datos comerciales la encontramos en los SGBD de código
abierto o libres, también llamados Open Source. Son sistemas distribuidos y desarrollados libremente. En la
siguiente tabla se relacionan los cinco más utilizados actualmente, así como sus principales características y
enlaces a sus páginas web:
41 de 55 28/11/2016 19:26
http://educacionadistancia.juntadeandalucia.es/cursos/blocks/recopila/r...
Si nos preguntamos cómo es la arquitectura de un sistema de base de datos, hemos de saber que todo depende
del sistema informático que la sustenta. Tradicionalmente, la arquitectura centralizada fue la que se utilizó
inicialmente, aunque hoy en día es de las menos utilizadas.
Sistema de base de datos centralizado: Es aquella estructura en la que el SGBD está implantado en
una sola plataforma u ordenador desde donde se gestiona directamente, de modo centralizado, la
totalidad de los recursos. Es la arquitectura de los centros de proceso de datos tradicionales. Se basa
en tecnologías sencillas, muy experimentadas y de gran robustez.
Los sistemas de los años sesenta y setenta eran totalmente centralizados, como corresponde a los sistemas
operativos de aquellos años, y al hardware para el que estaban hechos: un gran ordenador para toda la empresa y
una red de terminales sin inteligencia ni memoria.
Se almacena completamente en una ubicación central, es decir, todos los componentes del sistema
residen en un solo computador o sitio.
No posee múltiples elementos de procesamiento ni mecanismos de intercomunicación como las bases de
datos distribuidas.
Los componentes de las bases de datos centralizadas son: los datos, el software de gestión de bases de
datos y los dispositivos de almacenamiento secundario asociados.
Son sistemas en los que su seguridad puede verse comprometida más fácilmente.
Ventajas Inconvenientes
Se evita la inconsistencia. Ya que si un hecho Cuando un sistema de bases de datos centralizado falla,
específico se representa por una sola entrada, la se pierde toda disponibilidad de procesamiento y sobre
no-concordancia de datos no puede ocurrir. todo de información confiada al sistema.
42 de 55 28/11/2016 19:26
http://educacionadistancia.juntadeandalucia.es/cursos/blocks/recopila/r...
Ventajas Inconvenientes
El procesamiento de los datos ofrece un mejor Los departamentos de sistemas retienen el control de
rendimiento. toda la organización.
Mantenimiento más barato. Mejor uso de los Los sistemas centralizados requieren un mantenimiento
recursos y menores recursos humanos. central de datos.
43 de 55 28/11/2016 19:26
http://educacionadistancia.juntadeandalucia.es/cursos/blocks/recopila/r...
La necesidad de integrar información de varias fuentes y la evolución de las tecnologías de comunicaciones, han
producido cambios muy importantes en los sistemas de bases de datos. La respuesta a estas nuevas
necesidades y evoluciones se materializa en los sistemas de bases de datos distribuidas.
Ventajas Inconvenientes
44 de 55 28/11/2016 19:26
http://educacionadistancia.juntadeandalucia.es/cursos/blocks/recopila/r...
Ventajas Inconvenientes
Desde una ubicación puede accederse a Existe una complejidad añadida que es necesaria para
información alojada en diferentes lugares. garantizar la coordinación apropiada entre los nodos.
Los costes son inferiores a los de las bases La inversión inicial es menor, pero el mantenimiento y
centralizadas. control puede resultar costoso.
Existe cierta tolerancia a fallos. Mediante la Dado que los datos pueden estar replicados, el control
replicación, si un nodo deja de funcionar el de concurrencia y los mecanismos de recuperación son
sistema completo no deja de funcionar. mucho más complejos que en un sistema centralizado.
45 de 55 28/11/2016 19:26
http://educacionadistancia.juntadeandalucia.es/cursos/blocks/recopila/r...
10.1.- Fragmentación.
Sabemos que en los sistemas de bases de datos distribuidas la información se
encuentra repartida en varios lugares. La forma de extraer los datos consultados
puede realizarse mediante la fragmentación de distintas tablas pertenecientes a
distintas bases de datos que se encuentran en diferentes servidores. El problema
de fragmentación se refiere al particionamiento de la información para distribuir
cada parte a los diferentes sitios de la red.
Pero hay que tener en cuenta el grado de fragmentación que se aplicará, ya que
éste es un factor determinamente a la hora de la ejecución de consultas. Si no
existe fragmentación, se tomarán las relaciones o tablas como la unidad de
fragmentación. Pero también puede fragmentarse a nivel de tupla (fila o registro) o
a nivel de atributo (columna o campo) de una tabla. No será adecuado un grado de
fragmentación nulo, ni tampoco un grado de fragmentación demasiado alto. El grado de fragmentación deberá
estar equilibrado y dependerá de las particularidades de las aplicaciones que utilicen dicha base de datos.
Concretando, el objetivo de la fragmentación es encontrar un nivel de particionamiento adecuado en el rango que
va desde tuplas o atributos hasta relaciones completas.
Cuando se lleva a cabo una fragmentación, existen tres reglas fundamentales a cumplir:
Completitud. Si una relación R se descompone en fragmentos R1, R2, ..., Rn, cada elemento de datos
que pueda encontrarse en R deberá poder encontrarse en uno o varios fragmentos Ri.
Reconstrucción. Si una relación R se descompone en una serie de fragmentos R1, R2, ..., Rn, la
reconstrucción de la relación a partir de sus fragmentos asegura que se preservan las restricciones
definidas sobre los datos.
Disyunción. Si una relación R se descompone verticalmente, sus atributos primarios clave normalmente se
repiten en todos sus fragmentos.
46 de 55 28/11/2016 19:26
http://educacionadistancia.juntadeandalucia.es/cursos/blocks/recopila/r...
47 de 55 28/11/2016 19:26
http://educacionadistancia.juntadeandalucia.es/cursos/blocks/recopila/r...
MySQL es un sistema gestor de bases de datos (SGBD, DBMS por sus siglas en inglés) muy conocido y
ampliamente usado por su simplicidad y notable rendimiento. Se ofrece como Software libre bajo licencia GNU
GPL. Esto le otorga como beneficios adicionales contar con un alto grado de estabilidad y un rápido desarrollo.
MySQL está disponible para múltiples plataformas. Entre las prestaciones que caracterizan MySQL tendríamos:
Desde esta página te podrás descargar MySQL Server para cualquier plataforma ya sea Windows, Linux,...
Un vez descargado, en este video podrás ver paso a paso como se realiza la instalación completa de MySQL
Server.
48 de 55 28/11/2016 19:26
http://educacionadistancia.juntadeandalucia.es/cursos/blocks/recopila/r...
Una vez instalado MySQL Server, podemos instalar también MySQL Workbench que es una herramienta visual de
diseño de bases de datos que integra desarrollo de software, Administración de bases de datos, diseño de bases
de datos, creación y mantenimiento para el sistema de base de datos MySQL.
Una vez descargado, en este video podrás ver como se crean tablas en MySQL Workbench
y en estos videos se puede ver como se crean las tablas utilizando el "Data Modeling" (Modelador de datos que
incluye Mysql Workbench) a partir del diagrama E-R.
49 de 55 28/11/2016 19:26
http://educacionadistancia.juntadeandalucia.es/cursos/blocks/recopila/r...
50 de 55 28/11/2016 19:26
http://educacionadistancia.juntadeandalucia.es/cursos/blocks/recopila/r...
Además de MySql Server una buena alternativa como sistema gestor de bases de datos y también de distribución
gratuita es Oracle Database Express Edition 11g Release2.
¿Qué es Oracle Database Express Edition 11g Release 2? Es un sistema de bases de datos libre para el
desarrollo, implementación y distribución. Es un sistema para la iniciación, con un consumo reducido de recursos,
basado en el producto Oracle Database 11g revisión 2. Su descarga es rápida y brinda un sistema de
administración sencillo. Es un buen sistema de iniciación para desarrolladores en PHP, Java, XML y aplicaciones
de código abierto, para administradores de bases de datos que necesitan una base de datos para su
adiestramiento e implementación, para proveedores independientes de software o hardware que desean una base
de datos inicial para distribuir libre de costes sus productos o para instituciones educativas o estudiantes que
necesitan una base de datos libre con la que completar su curriculum.
¿Por dónde empezamos? El primer paso que debemos dar es descargar el software necesario desde la página
oficial de Oracle. A través del siguiente enlace podrás acceder a la zona de descarga de Oracle Database Express
Edition 11g Release 2, regístrate, escoge el que se ajuste a tus necesidades y descárgalo en tu ordenador.
¿Cómo se realiza la instalación? Para llevar a cabo la instalación del software descargado, dependiendo de tu
sistema operativo, puedes visualizar alguno de los vídeos que te proponemos a continuación:
Instalación de Oracle Database Express Edition 11g Instalación de Oracle Database Express Edition 11g
Release 2 bajo Windows 7 (32 bits) Release 2 bajo Ubuntu 12.04 (64 bits)
51 de 55 28/11/2016 19:26
http://educacionadistancia.juntadeandalucia.es/cursos/blocks/recopila/r...
52 de 55 28/11/2016 19:26
http://educacionadistancia.juntadeandalucia.es/cursos/blocks/recopila/r...
53 de 55 28/11/2016 19:26
http://educacionadistancia.juntadeandalucia.es/cursos/blocks/recopila/r...
Autoría: Stockbyte.
Licencia: Uso educativo no comercial para plataformas públicas de Formación
Profesional a distancia.
Procedencia: CD-DVD Num. V43.
Autoría: TAKA@P.P.R.S.
Licencia: Creative Commons Attribution-Share Alike 2.0 Generic.
Procedencia: http://commons.wikimedia.org
/wiki/File:HP_MediaSmart_Server_EX490_008.jpg
Autoría: Stockbyte.
Licencia: Uso educativo no comercial para plataformas públicas de Formación
Profesional a distancia.
Procedencia: CD-DVD Num. V43.
54 de 55 28/11/2016 19:26
http://educacionadistancia.juntadeandalucia.es/cursos/blocks/recopila/r...
Autoría: Tael.
Licencia: Creative Commons Attribution-Share Alike 3.0 Unported, 2.5 Generic,
2.0 Generic and 1.0 Generic license.
Procedencia: http://commons.wikimedia.org/wiki/File:Dico.png
Autoría: Stockbyte.
Licencia: Uso educativo no comercial para plataformas públicas de Formación
Profesional a distancia.
Procedencia: CD-DVD Num. V07.
Autoría: Stockbyte.
Licencia: Uso educativo no comercial para plataformas públicas de Formación
Profesional a distancia.
Procedencia: CD-DVD Num. EP006.
Autoría: Oxyman.
Licencia: licencia de documentación libre GNU.
Procedencia: http://commons.wikimedia.org
/wiki/File:Open_door_button_1996_Stock.jpg?uselang=es
Autoría: Stockbyte.
Licencia: Uso educativo no comercial para plataformas públicas de Formación
Profesional a distancia.
Procedencia: CD-DVD Num. CD109.
55 de 55 28/11/2016 19:26