Академический Документы
Профессиональный Документы
Культура Документы
1. Introduccin
Te has preguntado alguna vez dnde y de qu manera se almacenan y gestionan los datos que utilizamos diariamente? Si pensamos en cualquier accin de nuestra vida cotidiana, o si analizamos la mayora de los mbitos de actividad, nos encontramos que la utilizacin de las bases de datos est ampliamente extendida. stas, y los datos contenidos en ellas, sern imprescindibles para llevar a cabo multitud de acciones. Crees que no es para tanto? Piensa en las siguientes situaciones: Cuando seleccionamos nuestro canal favorito en la TDT. Al utilizar la agenda del mvil para realizar una llamada telefnica. Cuando operamos en el cajero automtico. Al solicitar un certificado en un organismo pblico. Cuando acudimos a la consulta del mdico. Al inscribirnos en un curso, plataforma OnLine, etc. Si utilizas un GPS. Cuando reservamos unas localidades para un evento deportivo o espectculo. Si consumimos ocio digital. Cuando consultamos cualquier informacin en Internet. (Bibliotecas, enciclopedias, museos, etc.) Al registrarte en una pgina de juegos OnLine, redes sociales o foros. Incluso, si tienes coche, puede ser que ste incorpore alguna base de datos.
Suponemos que no es necesario que continuemos ms para darnos cuenta de que casi todo lo que nos rodea, en alguna medida, est relacionado con los datos, su almacenamiento y su gestin. El gran volumen de datos que actualmente manejamos y sus innumerables posibilidades requieren de la existencia de tcnicos perfectamente formados y capaces de trabajar con ellos. Este mdulo 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 gestin de la informacin. Seguidamente, se desarrollarn los conceptos y definiciones bsicas relacionadas con las bases de datos, posteriormente analizaremos sus modelos y tipos, un poco ms adelante, podremos conocer las caractersticas y capacidades de los sistemas gestores de bases de datos y finalmente, identificaremos las herramientas reales con las que llevar a cabo la gestin dichas bases.
La informacin deba ser trasladada desde el papel al formato digital y por lo general, era necesario almacenarla para su posterior recuperacin, consulta y procesamiento. De este modo, para llevar a cabo un tratamiento eficiente de sta era necesario establecer mtodos 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 informacin relacionada, tratada como un todo y organizada de forma estructurada. Es una secuencia de dgitos binarios que organiza informacin relacionada con un mismo aspecto.
Los ficheros estn formados por registros lgicos 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 estn divididos en campos que contienen cada una de las informaciones elementales que forman un registro (por ejemplo, el nombre del usuario o su direccin de correo electrnico). Hemos de resaltar que los datos estn almacenados de tal forma que se puedan aadir, 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 informacin que es transferida entre el soporte en el que se almacena el fichero, y la memoria principal del ordenador, en una sola operacin de lectura/grabacin, recibe el nombre de registro fsico o bloque. Normalmente en cada operacin de lectura/grabacin se transfieren varios registros del fichero, es decir un bloque suele contener varios registros lgicos. Al nmero de registros que entran en un bloque se le conoce con el nombre de factor de blocaje, y a esta operacin de agrupar varios registros en un bloque se le llama bloqueo de registros.
Ficheros intermedios: almacenan resultados de una aplicacin que sern utilizados por otra. Ficheros de maniobras: almacenan datos de una aplicacin 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.
EJERCICIO
Supongamos una aplicacin informtica para gestionar una biblioteca, existir un fichero con el catlogo de libros disponibles, otro con las editoriales, otro con informacin sobre libros que se han quedado obsoletos, etc. A cul de los siguientes tipos correspondera el fichero que almacena las editoriales? a) Fichero maestro. b) Fichero constante. c) Fichero intermedio.
Por tanto, se distinguen dos tipos de soportes para el almacenamiento de datos: Soportes de Acceso Directo a los datos (Por ejemplo: discos). Son los ms empleados y el acceso a los datos puede hacerse de forma directa, pudiendo colocarnos en la posicin que nos interesa y leer a partir de ella. Soportes de Acceso Secuencial (Por ejemplo: cintas magnticas). 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 posicin.
PARA SABER MS Conoce ms sobre las caractersticas de cintas y discos a travs de los enlaces que te proponemos: Texto del enlace: Cintas magnticas de almacenamiento de datos. URL: http://es.wikipedia.org/wiki/Cinta_magn%C3%A9tica_de_almacenamiento_de_datos Ttulo: Caractersticas y tipos de cintas magnticas de almacenamiento de datos. Texto del enlace: Discos magnticos. URL: http://infoevolucion.blogspot.com.es/2009/01/los-discos-magneticos.html Ttulo: Caractersticas de los discos magnticos (discos duros y flexibles). Texto del enlace: Discos pticos. URL: http://es.wikipedia.org/wiki/Disco_%C3%B3ptico Ttulo: Caractersticas y tipos de discos pticos. Texto del enlace: Tecnologa de los discos pticos. URL: http://www.consumer.es/web/es/tecnologia/hardware/2006/01/26/148862.php Ttulo: Tecnologa de los discos pticos. Texto del enlace: Discos magneto-pticos. URL: http://es.wikipedia.org/wiki/Disco_magneto-%C3%B3ptico Ttulo: Caractersticas y tipos de discos magneto-pticos.
Las distintas formas de organizar un fichero en un soporte de memoria o, lo que se conoce tambin por mtodos de acceso a los ficheros se detallan en el siguiente esquema: Mtodos de acceso: Secuencial Encadenado Secuencial indexado Directo Acceso directo Acceso indexado Acceso calculado (Hash)
Las organizaciones secuencial, de acceso aleatorio o directo y de acceso indexado son las ms comunes. En los siguientes epgrafes se detallarn las caractersticas de cada uno de los mtodos de acceso a los ficheros.
En el acceso directo la clave coincide con la direccin, debiendo ser numrica y comprendida dentro del rango de valores de las direcciones. Es el mtodo ms rpido. La medida bsica de posicionamiento del puntero en el fichero es el byte, dependiendo del tipo de codificacin de caracteres que empleemos (Unicode, ANSI) se utilizarn 1 o 2 bytes por carcter respectivamente. Teniendo esto en cuenta, el puntero avanzar de uno en uno o de dos en dos bytes para poder leer o escribir cada carcter. Otras caractersticas fundamentales de los ficheros de acceso directo o aleatorio son: Posicionamiento inmediato. Registros de longitud fija. Apertura del fichero en modo mixto, para lectura y escritura. Permiten mltiples usuarios utilizndolos. Los registros se borran colocando un cero en la posicin que ocupan. Permiten la utilizacin de algoritmos de compactacin de huecos. Los archivos se crean con un tamao definido, es decir, con un mximo de registros establecido durante la creacin. Esta organizacin slo 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 ms nos importa. Permiten la actualizacin de los registros en el mismo fichero, sin necesidad de copiar el fichero. Permiten realizar procesos de actualizacin en tiempo real.
EJERCICIO
En los ficheros de acceso directo los registros siempre se encuentran en posiciones contiguas dentro del soporte de almacenamiento. Verdadero o Falso?
Las caractersticas ms relevantes de un fichero indexado, son las siguientes: El diseo del registro tiene que tener un campo, o combinacin de campos, que permita identificar cada registro de forma nica, es decir, que no pueda haber dos registros que tengan la misma informacin 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 informacin 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 informacin el sistema operativo puede consultar el ndice y conocer la posicin del registro dentro del fichero. Para acceder a este tipo de ficheros utilizando el modo de acceso secuencial los registros son ledos ordenados por el contenido del campo clave, independientemente del orden en que se fueron grabando (el orden lgico no es igual al orden fsico), debido a que el acceso a los datos se hace a travs del ndice, que para hacer ms fcil la bsqueda de los registros, permanece siempre ordenado por el campo clave. Solamente se puede grabar en un soporte direccionable. Por ejemplo, un disco magntico. Si esto no fuera as, no podra emplear el acceso directo.
b) Ficheros de Acceso Calculado o Hash: Cuando utilizamos ficheros indexados es necesario siempre tener que consultar una tabla para obtener la direccin de almacenamiento a partir de la clave. La tcnica del acceso calculado o hash, permite accesos ms rpidos, ya que en lugar de consultar una tabla, se utiliza una transformacin o funcin matemtica (funcin de hashing) conocida, que a partir de la clave genera la direccin de cada registro del archivo. Si la clave es alfanumrica, deber previamente ser transformada en un nmero. El mayor problema que presenta este tipo de ficheros es que a partir de diferentes claves se obtenga la misma direccin al aplicar la funcin matemtica o transformacin. A este problema se le denomina colisin, y las claves que generan la misma direccin se conocen por sinnimos. Para resolver este problema se aplican diferentes mtodos, como tener un bloque de excedentes o zona de sinnimos, o crear un archivo de sinnimos, etc. Para llevar a cabo la transformacin existen multitud de mtodos, siendo algunos: Mdulo: La direccin ser igual al resto de la divisin entera entre la clave y el nmero de registros. Extraccin: La direccin ser igual a una parte de las cifras que se extraen de la clave.
Una buena transformacin o funcin de hash, ser aquella que produzca el menor nmero de colisiones. En este caso hay que buscar una funcin, a ser posible biunvoca, que relacione los posibles valores de la clave con el conjunto de nmeros correlativos de direccin. Esta funcin consistir en realizar una serie de clculos matemticos con el valor de la clave hasta obtener un nmero entre 1 y n, siendo n el nmero de direcciones que tiene el fichero.
EJERCICIO
En un fichero con acceso calculado: a) Se utiliza la direccin como clave. b) Hay una tabla en la que est cada clave con la direccin del registro correspondiente. c) La direccin se obtiene a partir de la clave mediante un algoritmo.
c) Volatilidad: mide la cantidad de inserciones y borrados que se efectan en un fichero. Para determinar la volatilidad es necesario conocer: Tasa de renovacin: es el tanto por ciento de registros renovados en cada tratamiento del fichero, respecto al nmero total de registros contenidos en l. Frecuencia de renovacin: es el nmero de veces que se accede al fichero para renovarlo en un periodo de tiempo fijo.
d) Crecimiento: es la variacin de la capacidad del fichero y se mide con la tasa de crecimiento, que es el porcentaje de registros en que aumenta el fichero en cada tratamiento.
EJERCICIO
La volatilidad de un fichero es un parmetro que indica: a) La variacin del volumen del fichero. b) La cantidad de veces que se abre o cierra el fichero. c) El peso de los procesos de insercin y borrado en dicho fichero (frecuencia de renovacin).
10
3. Bases de datos
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 aplicacin especfica. Pero si las aplicaciones, al ser diseadas, deben depender directamente de sus ficheros o archivos, se pierde independencia y surgen serios inconvenientes: como informacin duplicada, incoherencia de datos, fallos de seguridad, etc. Estos problemas deban ser solucionados, es cuando aparece el concepto de base de datos. Una base de datos permitir reunir toda la informacin relacionada en un nico sistema de almacenamiento, pudiendo cualquier aplicacin utilizarla de manera independiente y ofreciendo una mejora en el tratamiento de la informacin, as como una evolucin para el desarrollo de aplicaciones. La gestin de las bases de datos ha experimentado gran cantidad de cambios, partiendo de aplicaciones especializadas hasta llegar a convertirse en el ncleo de los entornos informticos modernos. Con la llegada de Internet en los noventa, el nmero 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 diseo, lenguajes y la implementacin de stas, podemos considerarlo imprescindible para alguien que se est formando en el campo de la informtica.
3.1. Conceptos
A finales de los setenta, la aparicin de nuevas tecnologas de manejo de datos a travs de los sistemas de bases de datos supuso un considerable cambio. Los sistemas basados en ficheros separados dieron paso a la utilizacin de sistemas gestores de bases de datos, que son sistemas software centralizados o distribuidos que ofrecen facilidades para la definicin de bases de datos, seleccin de estructuras de datos y bsqueda de forma interactiva o mediante lenguajes de programacin. Llegados a este punto, te preguntars... Qu es una base de datos? Base de datos: Es una coleccin de datos relacionados lgicamente entre s, con una definicin y descripcin comunes y que estn estructurados de una determinada manera. Es un conjunto estructurado de datos que representa entidades y sus interrelaciones, almacenados con la mnima redundancia y posibilitando el acceso a ellos eficientemente por parte de varias aplicaciones y usuarios. La base de datos no slo contiene los datos de la organizacin, tambin almacena una descripcin de dichos datos. Esta descripcin es lo que se denomina metadatos, se almacena en el diccionario de datos o catlogo y es lo que permite que exista independencia de datos lgica-fsica. Una base de datos constar de los siguientes elementos: Entidades: objeto real o abstracto con caractersticas diferenciadoras de otros, del que se almacena informacin en la base de datos. En una base de datos de una clnica veterinaria, posibles entidades podran ser: ejemplar, doctor, consulta, etc. Atributos: son los datos que se almacenan de la entidad. Cualquier propiedad o caracterstica de una entidad puede ser atributo. Continuando con nuestro ejemplo, podran ser atributos: raza, color, nombre, nmero de identificacin, etc. Registros: donde se almacena la informacin de cada entidad. Es un conjunto de atributos que contienen los datos que pertenecen a una misma repeticin de entidad. En nuestro ejemplo, un registro podra ser: 2123056, Sultn, Podenco, Gris, 23/03/2009. Campos: donde se almacenan los atributos de cada registro. Teniendo en cuenta el ejemplo anterior, un campo podra ser el valor Podenco.
11
Las ventajas fundamentales que ofrece el uso de bases de datos se resumen a continuacin: Independencia de los datos y los programas. El usuario tiene una visin abstracta de los datos, sin necesidad de ningn conocimiento sobre la implementacin de los ficheros de datos, ndices, etc. . Menor redundancia. No hace falta tanta repeticin de datos. Slo se indica la forma en la que se relacionan los datos. Integridad de los datos. Mayor dificultad de perder los datos o de realizar incoherencias con ellos. Mayor seguridad en los datos. Al permitir limitar el acceso a los usuarios. Cada tipo de usuario podr acceder a unas cosas. Datos ms documentados. Gracias a los metadatos que permiten describir la informacin de la base de datos. Menor espacio de almacenamiento. Gracias a una mejor estructuracin de los datos y menos duplicidades. Comparticin de los datos. Los datos deben poder ser accedidos por varios usuarios simultneamente, teniendo previstos procedimientos para salvaguardar la integridad de los mismos
3.2. Usos
Ya sabemos lo que es una base de datos y sus caractersticas principales, pero es necesario conocer quien las usa y para qu. Quin utiliza las bases de datos? Existen cuatro tipos de personas que pueden hacer uso de una base de datos: el administrador, los diseadores de la base de datos, los programadores de aplicaciones y los usuarios finales. Tipo El administrador Funciones y caractersticas Es la persona encargada de la creacin o implementacin fsica de la base de datos. Es quien escoge los tipos de ficheros, los ndices que hay que crear, la ubicacin de stos, etc. En general, es quien toma las decisiones relacionadas con el funcionamiento fsico del almacenamiento de informacin. Siempre teniendo en cuenta las posibilidades del sistema de informacin con el que trabaje. Junto a estas tareas, el administrador establecer la poltica de seguridad y de acceso para garantizar el menor nmero de problemas. Son las personas encargadas de disear cmo ser la base de datos. Llevarn a cabo la identificacin de los datos, las relaciones entre ellos, sus restricciones, etc. Para ello han de conocer a fondo los datos y procesos a representar en la base de datos. Si estamos hablando de una empresa, ser necesario que conozcan las reglas de negocio en la que esta se mueve. Para obtener un buen resultado, el diseador de la base de datos debe implicar en el proceso a todos los usuarios de la base de datos, tan pronto como sea posible.
Los diseadores
Los programadores de Una vez diseada y construida la base de datos, los programadores se encargarn de aplicaciones implementar los programas de aplicacin que servirn a los usuarios finales. Estos programas de aplicacin ofrecern la posibilidad de realizar consultas de datos, insercin, actualizacin o eliminacin de los mismos. Para desarrollar estos programas se utilizan lenguajes de tercera o cuarta generacin. Los usuarios finales Son los clientes finales de la base de datos. Al disear, implementar y mantener la base de datos se busca cumplir los requisitos establecidos por el cliente para la gestin de su informacin.
Para qu se utilizan las bases de datos? Enumerar todos y cada uno de los campos donde se utilizan las bases de datos es complejo, aunque seguro que quedarn muchos en el tintero, a continuacin se recopilan algunos de los mbitos donde se aplican. Banca: informacin de clientes, cuentas, transacciones, prstamos, etc.
12
Lneas areas: informacin de clientes, horarios, vuelos, destinos, etc. Universidades: informacin de estudiantes, carreras, horarios, materias, etc. Transacciones de tarjeta de crdito: para comprar con tarjetas de crdito y la generacin de los extractos mensuales. Telecomunicaciones: para guardar registros de llamadas realizadas, generar facturas mensuales, mantener el saldo de las tarjetas telefnicas de prepago y almacenar informacin sobre las redes. Medicina: informacin hospitalaria, biomedicina, gentica, etc. Justicia y Seguridad: delincuentes, casos, sentencias, investigaciones, etc. Legislacin: normativa, registros, etc. Organismos pblicos: datos ciudadanos, certificados, etc. Sistemas de posicionamiento geogrfico. Hostelera y turismo: reservas de hotel, vuelos, excursiones, etc. Ocio digital: juegos online, apuestas, etc. Cultura: gestin de bibliotecas, museos virtuales, etc. Etc.
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 Slido u otros dispositivos. SATA proporciona mayores velocidades, mejor aprovechamiento cuando hay varias unidades, mayor longitud del cable de transmisin de datos y capacidad para conectar unidades al instante, es decir, insertar el dispositivo sin tener que apagar el ordenador. La primera generacin especifica en transferencias de 150 Megabytes por segundo, tambin conocida por SATA 150 MB/s o Serial ATA-150. Actualmente se comercializan dispositivos SATA II, a 300 MB/s, tambin 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 rotacin. Se presentan bajo tres especificaciones: SCSI Estndar (Standard SCSI), SCSI Rpido (Fast SCSI) y SCSI Ancho-Rpido (Fast-Wide SCSI). Su tiempo medio de acceso puede llegar a 7 milisegundos y su velocidad de transmisin secuencial de informacin puede alcanzar tericamente los 5 MB/s en los discos SCSI Estndares, los 10 MBps en los discos SCSI Rpidos y los 20 MBps en los discos SCSI Anchos-Rpidos (SCSI-2). Un controlador SCSI puede manejar hasta 7 discos duros SCSI. RAID: acrnimo 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 ms discos duros, formando un bloque de trabajo, para obtener desde una ampliacin de capacidad a mejoras en velocidad y seguridad de almacenamiento. Segn las caractersticas que queramos primar, se establecen distintos sistemas de RAID. Sistemas NAS: Es el acrnimo 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 travs de una red, haciendo uso de un sistema operativo optimizado para dar acceso a los datos a travs de protocolos de comunicacin especficos. Suelen ser dispositivos para almacenamiento masivo de datos con capacidades muy altas, de varios Terabytes, generalmente superiores a los discos duros externos y adems se diferencian de estos al conectar por red.
13
Sistemas SAN: Acrnimo de Storage Area Network o red de rea de almacenamiento. Se trata de una red concebida para conectar servidores, matrices (arrays) de discos y libreras de soporte. La arquitectura de este tipo de sistemas permite que los recursos de almacenamiento estn disponibles para varios servidores en una red de rea local o amplia. Debido a que la informacin 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 ms se necesite.
PARA SABER MS
Puedes ampliar ms informacin sobre algunos de los sistemas de almacenamiento vistos, adems de tendencias y curiosidades en almacenamiento, a travs de los siguientes enlaces: Texto del enlace: Sistemas RAID. URL: http://es.wikipedia.org/wiki/RAID Ttulo: RAID. Texto del enlace: Sistemas NAS. URL: http://www.ideasgeek.net/2010/05/12/nas-dispositivo-de-almacenamiento-externo-masivo-conectado-por-red/ Ttulo: NAS. Texto del enlace: Sistemas SAN. URL: https://tihuilo.wordpress.com/2010/05/27/sistemas-de-almacenamiento/ Ttulo: SAN. Texto del enlace: Almacenamiento de datos de Oracle. (En Ingls) URL: http://www.oracle.com/technetwork/server-storage/general/3d-demos-333955.html Ttulo: Vdeos en tres dimensiones sobre almacenamiento de Oracle. Texto del enlace: Tendencias: Bases de datos en la nube. URL:http://databaseandtech.wordpress.com/2009/06/22/fusion-tables-google-trae-la-base-de-datos-a-la-nube-delinternet/ Ttulo: Bases de datos en la nube. Texto del enlace: Curiosidad: Dnde guarda Google todos sus datos? URL:http://www.cosasquecontar.com/2011/04/bigtable-como-google-almacena-los-datos/ Ttulo: Dnde guarda Google todos sus datos?
14
DEBES CONOCER
Conoce las caractersticas generales y graba en tu memoria fotogrfica los grficos que representan a cada uno de los modelos expuestos en el siguiente artculo: Texto del enlace: Los diferentes modelos de bases de datos. URL: http://es.kioskea.net/contents/bdd/bddtypes.php3 Ttulo: Modelos de bases de datos.
PARA SABER MS
Si deseas completar tus conocimientos a cerca de este modelo, te proponemos los siguientes enlaces: Texto del enlace: El modelo jerrquico. URL: http://es.wikipedia.org/wiki/Modelo_jer%C3%A1rquico Ttulo: Caractersticas del modelo de datos jerrquico.
Texto del enlace: El enfoque jerrquico. URL: http://ddd.uab.cat/pub/elies/elies_a2000v9/4-2-1.htm Ttulo: El enfoque jerrquico.
15
El modelo Jerrquico es un modelo muy rgido en el que las diferentes entidades se organizan en niveles mltiples, de acuerdo a una estricta relacin padre/hijo, de manera que un padre puede tener ms de un hijo, todos ellos localizados en el mismo nivel, y un hijo nicamente puede tener un padre situado en el nivel inmediatamente superior al suyo. Como puedes ver en el grfico anterior, la estructura representa las relaciones padre/hijo y las despliega en forma de rbol invertido. De esta manera un padre tiene un hijo o varios, y un hijo slo podr tener un padre.
Ejemplo: Codasyl
PARA SABER MS
Si deseas completar tus conocimientos a cerca de este modelo, te proponemos los siguientes enlaces: Texto del enlace: El modelo en red. URL: http://es.wikipedia.org/wiki/Modelo_de_red Ttulo: Caractersticas del modelo de datos en red. Texto del enlace: El enfoque en red. URL: http://ddd.uab.cat/pub/elies/elies_a2000v9/4-2-2.htm Ttulo: Caractersticas del enfoque en red.
16
relaciones entre ellos. Cada relacin (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. Las tablas deben cumplir una serie de requisitos: Todos los registros son del mismo tipo. La tabla slo puede tener un tipo de registro. No existen campos o atributos repetidos. No existen registros duplicados. No existe orden en el almacenamiento de los registros. Cada registro o tupla es identificada por una clave que puede estar formada por uno o varios campos o atributos. A continuacin puedes observar cmo es una relacin 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 estndar implementado por los principales motores o sistemas de gestin de bases de datos relacionales. Durante su diseo, una base de datos relacional pasa por un proceso al que se conoce como normalizacin de una base de datos.
PARA SABER MS
Si deseas completar tus conocimientos a cerca de este modelo, te proponemos el siguiente enlace: Texto del enlace: El modelo relacional. URL: http://es.wikipedia.org/wiki/Modelo_relacional Ttulo: Caractersticas del modelo relacional. La normalizacin de bases de datos relacional consiste en definir las reglas que determinan las dependencias entre los datos de una base de datos relacional. Si definimos esta relacin o dependencia entre los elementos de una determinada base de datos de la manera ms sencilla posible, conseguiremos que la cantidad de espacio necesario para guardar los datos sea el menor posible y la facilidad para actualizar la relacin sea la mayor posible. Es decir, optimizaremos su funcionamiento. El proceso de normalizacin tiene una gran relevancia en el diseo de bases de datos. En futuras unidades de trabajo se abordarn las tcnicas para llevar a cabo esta optimizacin.
17
Los conceptos ms importantes del paradigma de objetos que el modelo orientado a objetos incorpora son: Encapsulacin - Propiedad que permite ocultar la informacin al resto de los objetos, impidiendo as accesos incorrectos o conflictos. Herencia - Propiedad a travs de la cual los objetos heredan comportamiento dentro de una jerarqua de clases. Polimorfismo - Propiedad de una operacin mediante la cual puede ser aplicada a distintos tipos de objetos.
Desde la aparicin de la programacin 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 generacin, siendo consideradas las bases de datos en red como la primera y las bases de datos relacionales como la segunda generacin. Aunque no han reemplazado a las bases de datos relacionales, si son el tipo de base de datos que ms est creciendo en los ltimos aos.
PARA SABER MS
Si deseas completar tus conocimientos a cerca de este modelo, te proponemos el siguiente enlace: Texto del enlace: El modelo orientado a objetos. URL: http://es.wikipedia.org/wiki/Base_de_datos_orientada_a_objetos Ttulo: Caractersticas del modelo orientado a objetos.
18
Otra caracterstica a destacar es la capacidad para incorporar funciones que tengan un cdigo en algn lenguaje de programacin como por ejemplo: SQL, Java, C, etc. La gran mayora de las bases de datos relacionales clsicas de gran tamao, como Oracle, SQL Server, etc., son objetorelacionales. b) Bases de datos XML Debido a las limitaciones de la tecnologa de bases de datos relacionales estn surgiendo nuevas clases de bases de datos como son las bases de datos XML. Estas bases de datos almacenan los datos estructurados como XML sin la necesidad de traducir los datos a una estructura relacional o de objeto. Podemos distinguir entre: Bases de datos nativas XML. Consiste en un modelo lgico para documentos XML. El Sistema Gestor de Base de Datos correspondiente almacena y recupera documentos de acuerdo a dicho modelo. Productos ejemplo de esa filosofa son: eXist, Apache Xindice, Berkeley dbXML. Bases de datos compatibles con XML (XML-enabled): son bases de datos, generalmente objetorelacionales, que admiten entradas de datos en forma de XML y proporcionan salidas en este mismo formato. Podemos citar productos como: Oracle, DB2 (Viper), Las bases de datos XML nativas permiten trabajar con XQL (eXtensible Query Language), el cul sirve un propsito similar a SQL en una base de datos relacional.
Otros tipos de bases de datos son: las bases de datos deductivas, multidimensionales, transaccionales y documentales.
19
Aseguran la integridad de los datos. Facilitan el acceso a los datos, aportando rapidez y evitando la prdida de datos. Aumentan la seguridad y privacidad de los datos. Mejoran la eficiencia. Permiten compartir datos y accesos concurrentes. Facilitan el intercambio de datos entre distintos sistemas. Incorporan mecanismos de copias de seguridad y recuperacin para restablecer la informacin en caso de fallos en el sistema.
El SGBD interacciona con otros elementos software existentes en el sistema, concretamente con el sistema 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 manipulacin de la informacin, basndose en las funciones y mtodos propios del sistema operativo.
6.1. Funciones
Un SGBD desarrolla tres funciones fundamentales como son las de descripcin, manipulacin y utilizacin de los datos. A continuacin se detallan cada una de ellas. a) Funcin de descripcin o definicin: Permite al diseador de la base de datos crear las estructuras apropiadas para integrar adecuadamente los datos. Esta funcin es la que permite definir las tres estructuras de la base de datos: Estructura interna, Estructura conceptual y Estructura externa. (Estos conceptos se vern ms adelante en el epgrafe sobre arquitectura del SGBD). Esta funcin se realiza mediante el lenguaje de descripcin 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 especificarn las caractersticas 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 representacin (lenguaje para la definicin de la estructura externa). A nivel conceptual (estructura conceptual), se proporcionan herramientas para la definicin de las entidades y su identificacin, atributos de las mismas, interrelaciones entre ellas, restricciones de integridad, etc.; es decir, el esquema de la base de datos (lenguaje para la definicin de estructura lgico global).
20
A nivel externo (estructura externa), se deben definir las vistas de los distintos usuarios a travs del lenguaje para la definicin de estructuras externas. Adems, el SGBD se ocupar de la transformacin de las estructuras externas orientadas a los usuarios a las estructuras conceptuales y de la relacin de sta y la estructura fsica.
b) Funcin de manipulacin: permite a los usuarios de la base buscar, aadir, 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 manipulacin de datos (DML) que facilita los instrumentos necesarios para la realizacin de estas tareas. Por manipulacin de datos entenderemos: La recuperacin de informacin almacenada en la base de datos, lo que se conoce como consultas. La insercin de informacin nueva en la base de datos. El borrado de informacin de la base de datos. La modificacin de informacin almacenada en la base de datos. c) Funcin de control: permite al administrador de la base de datos establecer mecanismos de proteccin de las diferentes visiones de los datos asociadas a cada usuario, proporcionando elementos de creacin y modificacin de dichos usuarios. Adicionalmente, incorpora sistemas para la creacin de copias de seguridad, carga de ficheros, auditora, proteccin de ataques, configuracin del sistema, etc. El lenguaje que implementa esta funcin es el lenguaje de control de datos o DCL. Y a travs de qu lenguaje podremos desarrollar estas funciones sobre la base de datos? Lo haremos utilizando el Lenguaje Estructurado de Consultas (SQL: Structured Query Language). Este lenguaje proporciona sentencias para realizar operaciones de DDL, DML y DCL. SQL fue publicado por el ANSI en 1986 (American National Standard Institute) y ha ido evolucionando a lo largo del tiempo. Adems, los SGBD suelen proporcionar otras herramientas que complementan a estos lenguajes como generadores de formularios, informes, interfaces grficas, generadores de aplicaciones, etc.
6.2. Componentes
Una vez descritas las funciones que un SGBD debe llevar a cabo, imaginars que un SGBD es un paquete de software complejo que ha de proporcionar servicios relacionados con el almacenamiento y la explotacin de los datos de forma eficiente. Para ello, cuenta con una serie de componentes que se detallan a continuacin:
1. Lenguajes de la base de datos. Cualquier sistema gestor de base de datos ofrece la posibilidad de utilizar
lenguajes e interfaces adecuadas para sus diferentes tipos de usuarios. A travs de los lenguajes se pueden especificar los datos que componen la BD, su estructura, relaciones, reglas de integridad, control de acceso, caractersticas fsicas y vistas externas de los usuarios. Los lenguajes del SGBD son: Lenguaje de Definicin de los Datos (DDL), Lenguaje de Manejo de Datos (DML) y Lenguaje de Control de Datos (DCL). 2. El diccionario de datos. Descripcin de los datos almacenados. Se trata de informacin til para los programadores de aplicaciones. Es el lugar donde se deposita la informacin sobre la totalidad de los datos que forman la base de datos. Contiene las caractersticas lgicas de las estructuras que almacenan los datos, su nombre, descripcin, contenido y organizacin. En una base de datos relacional, el diccionario de datos aportar informacin sobre: Estructura lgica y fsica de la BD. Definicin de tablas, vistas, indices, disparadores, procedimientos, funciones, etc. Cantidad de espacio asignado y utilizado por los elementos de la BD. Descripcin de las restricciones de integridad. Informacin sobre los permisos asociados a cada perfil de usuario. Auditora de acceso a los datos, utilizacin, etc.
21
3. El gestor de la base de datos. Es la parte de software encargada de garantizar el correcto, seguro, ntegro y
eficiente acceso y almacenamiento de los datos. Este componente es el encargado de proporcionar una interfaz entre los datos almacenados y los programas de aplicacin que los manejan. Es un intermediario entre el usuario y los datos. Es el encargado de garantizar la privacidad, seguridad e integridad de los datos, controlando los accesos concurrentes e interactuando con el sistema operativo.
4. Usuarios de la base de datos. En los SGBD existen diferentes perfiles de usuario, cada uno de ellos con una
serie de permisos sobre los objetos de la BD. Generalmente existirn:
El administrador de la base de datos o Database Administrator (DBA), que ser la persona o conjunto de ellas encargadas de la funcin de administracin de la base de datos. Tiene el control centralizado de la base de datos y es el responsable de su buen funcionamiento. Es el encargado de autorizar el acceso a la base de datos, de coordinar y vigilar su utilizacin y de adquirir los recursos software y hardware que sean necesarios. Los usuarios de la base de datos, que sern diferentes usuarios de la BD con diferentes necesidades sobre los datos, as como diferentes accesos y privilegios. Podemos establecer la siguiente clasificacin:
Administradores. Diseadores. Programadores. Usuarios finales: simples, avanzados. 5. Herramientas de la base de datos. Son un conjunto de aplicaciones que permiten a los administradores la gestin de la base de datos, de los usuarios y permisos, generadores de formularios, informes, interfaces grficas, generadores de aplicaciones, etc.
6.3. Arquitectura
Un SGBD cuenta con una arquitectura a travs de la que se simplifica a los diferentes usuarios de la base de datos su labor. El objetivo fundamental es separar los programas de aplicacin de la base de datos fsica. Encontrar un estndar para esta arquitectura no es una tarea sencilla, aunque los tres estndares que ms importancia han cobrado en el campo de las bases de datos son ANSI/SPARC/X3, CODASYL y ODMG (ste slo para las bases de datos orientadas a objetos). Tanto ANSI (EEUU), como ISO (Resto del mundo), son el referente en cuanto a estandarizacin de bases de datos, conformando un nico modelo de bases de datos. La arquitectura propuesta proporciona tres niveles de abstraccin: nivel interno o fsico, nivel lgico o conceptual y nivel externo o de visin del usuario. A continuacin se detallan las caractersticas de cada uno de ellos: Nivel interno o fsico: En este nivel se describe la estructura fsica de la base de datos a travs de un esquema interno encargado de detallar el sistema de almacenamiento de la base de datos y sus mtodos de acceso. Es el nivel ms cercano al almacenamiento fsico. A travs del esquema fsico se indican, entre otros, los archivos que contienen la informacin, su organizacin, los mtodos de acceso a los registros, los tipos de registros, la longitud, los campos que los componen, las unidades de almacenamiento, etc. Nivel lgico o conceptual: En este nivel se describe la estructura completa de la base de datos a travs 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 abstraccin a ms alto nivel. Nivel externo o de visin del usuario: En este nivel se describen las diferentes vistas que los usuarios percibirn de la base de datos. Cada tipo de usuario o grupo de ellos ver slo la parte de la base de datos que le interesa, ocultando el resto.
Para una base de datos, slo existir un nico esquema interno, un nico esquema conceptual y podran existir varios esquemas externos definidos para uno o varios usuarios.
22
Gracias a esta arquitectura se consigue la independencia de datos a dos niveles: Independencia lgica: Podemos modificar el esquema conceptual sin alterar los esquemas externos ni los programas de aplicacin. Independencia fsica: 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, aadir nuevos, etc., sin que esto afecte al resto de esquemas.
6.4. Tipos
Qu tipos de SGBD existen? Para responder a esta pregunta podemos realizar la siguiente clasificacin, atendiendo a diferentes criterios:
a) El primer criterio que se suele utilizar es por el modelo lgico en que se basan. Actualmente, el modelo
lgico que ms se utiliza es el relacional. Los modelos en red y jerrquico han quedado obsoletos. Otro de los modelos que ms extensin est teniendo es el modelo orientado a objetos. Por tanto, en esta primera clasificacin tendremos: Modelo Jerrquico. Modelo de Red. Modelo Relacional. Modelo Orientado a Objetos.
b) El segundo criterio de clasificacin se centra en el nmero de usuarios a los que da servicio el sistema:
Monousuario: slo 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.
23
c) El tercer criterio se basa en el nmero 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 mquina. Distribuidos (Homogneos, Heterogneos): la base de datos real y el propio software del SGBD pueden estar distribuidos en varios sitios conectados por una red. Los sistemas homogneos utilizan el mismo SGBD en mltiples sitios. Una tendencia reciente consiste en crear software para tener acceso a varias bases de datos autnomas preexistentes almacenadas en sistemas distribuidos heterogneos. Esto da lugar a los SGBD federados o sistemas multibase de datos en los que los SGBD participantes tienen cierto grado de autonoma 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 ms econmicos para microcomputadores cuestan entre 0 y 3.000 euros. En el otro extremo, los paquetes ms completos cuestan ms de 100.000 euros.
24
7. SGBD comerciales
Actualmente, en el mercado de software existen multitud de sistemas gestores de bases de datos comerciales. En este epgrafe se desglosan las caractersticas fundamentales de los ms importantes y extendidos hasta la fecha. Pero, como podrs observar, la eleccin de un SGBD es una decisin muy importante a la hora de desarrollar proyectos. A veces, el sistema ms avanzado, el mejor segn los entendidos, puede no serlo para el tipo de proyecto que estemos desarrollando. Hemos de tener en cuenta qu volumen de carga debe soportar la base de datos, qu sistema operativo utilizaremos como soporte, cul es nuestro presupuesto, plazos de entrega, etc. A travs de la siguiente tabla se exponen los SGBD comerciales ms utilizados y sus caractersticas ms relevantes: SGBD Descripcin URL ORACLE Reconocido como uno de los mejores a nivel mundial. Es Texto del enlace: Oracle multiplataforma, confiable y seguro. Es Cliente/Servidor. URL:http://www.oracle.com/us/product Basado en el modelo de datos Relacional. De gran potencia, s/database/product-editionsaunque con un precio elevado hace que slo se vea en 066501.html?ssSourceSiteId=ocomes empresas muy grandes y multinacionales. Ofrece una versin gratuita Oracle Database 10g Express Edition. Sistema muy extendido que se ofrece bajo dos tipos de licencia, comercial o libre. Para aquellas empresas que deseen incorporarlo en productos privativos, deben comprar una licencia especfica. Es Relacional, Multihilo, Multiusuario y Multiplataforma. Su gran velocidad lo hace ideal para consulta de bases de datos y plataformas web. Texto del enlace: MySQL URL: http://www.mysql.com/
MYSQL
DB2
Multiplataforma, el motor de base de datos relacional integra Texto del enlace: DB2 XML de manera nativa, lo que IBM ha llamado pureXML, URL: que permite almacenar documentos completos para realizar http://www.ibm.com/developerworks/ss operaciones y bsquedas de manera jerrquica dentro de a/downloads/im/udbexp/ ste, e integrarlo con bsquedas relacionales.
INFORMIX Otra opcin de IBM para el mundo empresarial que necesita Texto del enlace: Informix un DBMS sencillo y confiable. Es un gestor de base de datos URL:http://wwwrelacional basado en SQL. Multiplataforma. Consume menos 01.ibm.com/software/es/data/informix/d recursos que Oracle, con utilidades muy avanzadas respecto iscover-informix/index.html a conectividad y funciones relacionadas con tecnologas de Internet/Intranet, XML, etc. Microsoft SQL SERVER Sistema Gestor de Base de Datos producido por Microsoft. Texto del enlace: Microsoft SQL Server Es relacional, slo funciona bajo Microsoft Windows, utiliza 2008. arquitectura Cliente/Servidor. Constituye la alternativa a URL:http://www.microsoft.com/spain/s otros potentes SGBD como son Oracle, PostgreSQL o ql/2008/overview.aspx MySQL.
Un DBMS con bastantes aos en el mercado, tiene 3 Texto del enlace: Sybase versiones para ajustarse a las necesidades reales de cada URL: empresa. Es un sistema relacional, altamente escalable, de http://www.sybase.es/products/database alto rendimiento, con soporte a grandes volmenes de datos, management/adaptiveserverenterprise transacciones y usuarios, y de bajo costo. Otros SGBD comerciales importantes son: DBASE, ACCESS, INTERBASE y FOXPRO.
SYBASE
25
8. SGBD libres
La alternativa a los sistemas gestores de bases de datos comerciales la encontramos en los SGBD de cdigo abierto o libres, tambin llamados Open Source. Son sistemas distribuidos y desarrollados libremente. En la siguiente tabla se relacionan los cinco ms utilizados actualmente, as como sus principales caractersticas y enlaces a sus pginas web: SGBD MySQL Descripcin Es un sistema de gestin de base de datos relacional, multihilo y multiusuario con ms de seis millones de instalaciones. Distribuido bajo dos tipos de licencias, comercial y libre. Multiplataforma, posee varios motores de almacenamiento, accesible a travs de mltiples lenguajes de programacin y muy ligado a aplicaciones web. URL Texto del enlace: MySQL URL: http://www.mysql.com/
PostgreSQL
Sistema Relacional Orientado a Objetos. Considerado como la Texto del enlace: PostGreSQL base de datos de cdigo abierto ms avanzada del mundo. URL: http://www.postgresql.org Desarrollado por una comunidad de desarrolladores que trabajan de forma desinteresada, altruista, libre y/o apoyados por organizaciones comerciales. Es multiplataforma y accesible desde mltiples lenguajes de programacin. Sistema Gestor de Base de Datos relacional, multiplataforma, Texto del enlace: Firebird con bajo consumo de recursos, excelente gestin de la URL: http://www.firebirdsql.org/ concurrencia, alto rendimiento y potente soporte para diferentes lenguajes.
Firebird
Apache Derby Sistema Gestor escrito en Java, de reducido tamao, con Texto del enlace: Apache Derby soporte multilenguaje, multiplataforma, altamente portable, URL: http://db.apache.org/derby/ puede funcionar embebido o en modo cliente/servidor. SQLite Sistema relacional, basado en una biblioteca escrita en C que interactua directamente con los programas, reduce los tiempos de acceso siendo ms rpido que MySQL o PostGreSQL, es multiplataforma y con soporte para varios lenguajes de programacin. Texto del enlace: SQLite URL: http://www.sqlite.org
26
Un SGBDD desarrollar su trabajo a travs de un conjunto de sitios o nodos, que poseen un sistema de procesamiento de datos completo con una base de datos local, un sistema de gestor de bases de datos e interconcetados entre s. Si estos nodos estn dispersos geogrficamente se internocetarn a travs de una red de rea amplia o WAN, pero si se encuentran en edificios relativamente cercanos, pueden estar interconectados por una red de rea local o LAN. Este tipo de sistemas es utilizado en: organizaciones con estructura descentralizada, industrias de manufactura con mltiples sedes (automocin), aplicaciones militares, lineas areas, cadenas hoteleras, servicios bancarios, etc.
10.1. Fragmentacin
Sabemos que en los sistemas de bases de datos distribuidas la informacin se encuentra repartida en varios lugares. La forma de extraer los datos consultados puede realizarse mediante la fragmentacin de distintas tablas pertenecientes a distintas bases de datos que se encuentran en diferentes servidores. El problema de fragmentacin se refiere al particionamiento de la informacin para distribuir cada parte a los diferentes sitios de la red. Pero hay que tener en cuenta el grado de fragmentacin que se aplicar, ya que ste es un factor determinamente a la hora de la ejecucin de consultas. Si no existe fragmentacin, se tomarn las relaciones o tablas como la unidad de fragmentacin. Pero tambin 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 fragmentacin nulo, ni tampoco un grado de fragmentacin demasiado alto. El grado de fragmentacin deber estar equilibrado y depender de las particularidades de las aplicaciones que utilicen dicha base de datos. Concretando, el objetivo de la fragmentacin es encontrar un nivel de particionamiento adecuado en el rango que va desde tuplas o atributos hasta relaciones completas.
27
Cuando se lleva a cabo una fragmentacin, existen tres reglas fundamentales a cumplir: Completitud. Si una relacin 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. Reconstruccin. Si una relacin R se descompone en una serie de fragmentos R1, R2, ..., Rn, la reconstruccin de la relacin a partir de sus fragmentos asegura que se preservan las restricciones definidas sobre los datos. Disyuncin. Si una relacin R se descompone verticalmente, sus atributos primarios clave normalmente se repiten en todos sus fragmentos.
Existen tres tipos de fragmentacin: Fragmentacin horizontal: La fragmentacin horizontal se realiza sobre las tuplas de la relacin, dividiendo la relacin en subrelaciones que contienen un subconjunto de las tuplas que alberga la primera. Existen dos variantes de la fragmentacin horizontal: la primaria y la derivada. Fragmentacin vertical: La fragmentacin vertical, en cambio, se basa en los atributos de la relacin para efectuar la divisin. Una relacin R produce fragmentos R1, R2, , Rr, cada uno de los cuales contiene un subconjunto de los atributos de R as como la llave primaria de R. El objetivo de la fragmentacin vertical es particionar una relacin en un conjunto de relaciones ms pequeas de manera que varias de las aplicaciones de usuario se ejecutarn sobre un fragmento. En este contexto, una fragmentacin ptima es aquella que produce un esquema de fragmentacin que minimiza el tiempo de ejecucin de las consultas de usuario. La fragmentacin vertical es ms complicada que la horizontal, ya que existe un gran nmero de alternativas para realizarla. Fragmentacin Hbrida o mixta: Podemos combinar ambas, utilizando por ello la denominada fragmentacin mixta. Si tras una fragmentacin vertical se lleva a cabo otra horizontal, se habla de la fragmentacin mixta (HV - Horizontal-Vertical). Para el caso contrario, estaremos ante una fragmentacin (VH - Vertical-Horizontal). Para representar los dos tipos de fragmentacin, se utilizan los rboles.
EJERCICIO
Una base de datos almacenada entre distintos computadores conectados en red, de forma que unos tienen acceso a los datos de otros, se dice que: a) Utiliza un modelo jerrquico. b) Es de tipo distribuido con fragmentacin. c) Utiliza un modelo en red.
10.2. Replicacin
La replicacin es fundamentalmente til para mejorar la disponibilidad de los datos. El caso ms extremo es la replicacin en todos los sitios de la misma copia de la BD, que tambin es el caso que: ofrece mayor disponibilidad puede reducir considerablemente la eficiencia en operaciones de actualizacin (puesto que debe realizarse en todas y cada una de las Bds y puede acarrear problemas de integridad) En el extermo opuesto tenemos la no replicacin, en la que cada fragmento est en un sitio, en cuyo caso son disjuntos salvo las claves en fragmentos verticales, es lo que se denomina reparto no redundante. Entre ambos extremos se da una amplia gama de posibilidades que queda descrita en lo que se denomina esquema de replicacin. Todo ello se describe en el catlogo de replicaicn, dndese indica que objetos son replicados, donde est la rplica y cmo se propagan las actualizaciones. BIBLIOGRAFA.Materiales FP a Distancia
28