ClubEnsayos.com - Ensayos de Calidad, Tareas y Monografias
Buscar

Arquitectura De BDD

ensayon10 de Julio de 2013

7.055 Palabras (29 Páginas)621 Visitas

Página 1 de 29

ARQUITECTURAS DE LOS SISTEMAS DE BASES DE DATOS

La arquitectura de un sistema de bases de datos está influenciada en gran medida por el

Sistema informático subyacente en el que se ejecuta.

El procesamiento paralelo dentro de una computadora permite acelerar las actividades

del sistema de base de datos, proporcionando a las transacciones unas respuestas más

rápidas así como la capacidad de ejecutar más transacciones por segundo. Las consultas

pueden procesarse de manera que se explote el paralelismo ofrecido por el sistema

informático subyacente. La necesidad del procesamiento paralelo de consultas ha conducido

al desarrollo de los sistemas de bases de datos paralelos.

• La distribución de datos a través de las distintas sedes o departamentos de una organización

permite que estos datos residan donde han sido generados o donde son más necesarios,

pero continuar siendo accesibles desde otros lugares o departamentos diferentes. El

hecho de guardar varias copias de la base de datos en diferentes sitios permite que puedan

continuar las operaciones sobre la base de datos aunque algún sitio se vea afectado

por algún desastre natural como una inundación, un incendio o un terremoto. Se han desarrollado

los sistemas distribuidos de bases de datos para manejar datos distribuidos geográfica

o administrativamente a lo largo de múltiples sistemas de bases de datos.

18.1. ARQUITECTURAS CENTRALIZADAS Y CLIENTE-SERVIDOR

Los sistemas de bases de datos centralizados son aquellos que se ejecutan en un único sistema informático sin interaccionar con ninguna otra computadora.

18.1.1. Sistemas centralizados

Una computadora moderna de propósito general consiste en una o unas pocas unidades centrales de procesamiento y un número determinado de controladores para los dispositivos que se encuentran conectados a través de un bus común, Las UCP y los controladores de dispositivos pueden ejecutarse concurrentemente compitiendo así por el acceso a la memoria. La memoria caché reduce la disputa.

Un sistema monousuario típico es una unidad de sobremesa utilizada por una única persona que dispone de una sola UCP, de uno o dos discos fijos y que trabaja con un sistema operativo que sólo permite un único usuario, no tienen control de concurrencia, recuperación primitiva o no existe , no admite SQL Sistema multiusuario típico tiene más discos y más memoria, puede disponer de varias UCP y trabaja con un sistema operativo multiusuario. Se encarga de dar servicio a un gran número de usuarios que están conectados al sistema a través de terminales.

Paralelismo de grano grueso, disponiendo de unos pocos procesadores (normalmente dos o cuatro) que comparten la misma memoria principal. Las bases de datos que se ejecutan en tales máquinas habitualmente no dividen una consulta simple entre los distintos procesadores, sino que ejecuta cada consulta en un único procesador posibilitando la concurrencia de varias consultas. Así, estos sistemas permiten ejecutar un mayor número de transacciones por segundo.

paralelas de grano fino tienen un gran número de procesadores y los sistemas de bases de datos que se ejecutan sobre ellas intentan hacer paralelas las tareas simples.

18.1.2. Sistemas cliente-servidor

los sistemas centralizados actúan hoy como sistemas servidores que satisfacen las peticiones generadas por los sistemas clientes.

Funcionalidad e una base de datos se divide en:

El sistema subyacente gestiona el acceso a las estructuras, la evaluación y optimización de consultas, el control de concurrencia y la recuperación. La parte visible al usuario de un sistema de base de datos está formado por herramientas como formularios, diseñadores de informes y facilidades gráficas de interfaz de usuario. Las herramientas de desarrollo de aplicaciones se utilizan para construir interfaces de usuario; proporcionan herramientas gráficas que se pueden utilizar para construir interfaces sin programar ej. PowerBuilder.

llamada a procedimientos remotos para transacciones para conectar los clientes con el servidor.

18.2. ARQUITECTURAS DE SISTEMAS SERVIDORES

• Los sistemas servidores de transacciones, también llamados sistemas servidores de consultas, proporcionan una interfaz a través de la cual los clientes pueden enviar peticiones para realizar una acción que el servidor ejecutará y cuyos resultados se devolverán al cliente.

Los sistemas servidores de datos permiten a los clientes interaccionar con los servidores realizando peticiones de lectura o modificación de datos en unidades tales como archivos o páginas.

18.2.1. Estructura de procesos del servidor de transacciones

• Procesos servidor: son procesos que reciben consultas del usuario (transacciones), las ejecutan, y devuelven los resultados.

• Proceso gestor de bloqueos: este proceso implementa una función de gestión de bloqueos que incluye concesión de bloqueos, liberación de bloqueos y detección de interbloqueos.

• Proceso escritor de bases de datos: hay uno o más procesos que vuelcan al disco los bloques de memoria intermedia modificados de forma continua.

• Proceso escritor del registro: este proceso genera entradas del registro en el almacenamiento estable a partir de la memoria intermedia del registro.

• Proceso punto de revisión: este proceso realiza periódicamente puntos de revisión.

• Proceso monitor de proceso: este proceso observa otros procesos y, si cualquiera de ellos falla, realiza acciones de recuperación para el proceso,

exclusión mutua se puede implementar por medio de funciones del sistema operativo llamadas semáforos.

instrucción atómica comprueba una posición de la memoria y la establece a uno automáticamente.

18.2.2. Servidores de datos

Los sistemas servidores de datos se utilizan en redes de área local en las que se alcanza una alta velocidad de conexión entre los clientes y el servidor, las máquinas clientes son comparables al servidor en cuanto a poder de procesamiento y se ejecutan tareas de cómputo intensivo.

Se denomina preextracción a la acción de buscar y enviar elementos antes de que sea estrictamente necesario.

• Bloqueo. La concesión del bloqueo de los elementos de datos que el servidor envía a los clientes la realiza habitualmente el propio servidor.

*Caché de datos. Los datos que se envían al cliente en favor de una transacción se pueden alojar en una caché del cliente incluso una vez completada la transacción, si dispone de suficiente espacio de almacenamiento libre. Las transacciones sucesivas en el mismo cliente pueden hacer uso de los datos en caché. Sin embargo, se presenta el problema de la coherencia de caché: si una transacción encuentra los datos en la caché, debe asegurarse de que esos datos están al día,

*Caché de bloqueos. Los bloqueos también pueden ser almacenados en la memoria caché del cliente si la utilización de los datos está prácticamente dividida entre los clientes, de manera que un cliente rara vez necesita datos que están siendo utilizados por otros clientes.

si un cliente solicita un bloqueo al servidor, éste debe comunicar a todos los bloqueos sobre el elemento de datos que se encuentren en las memorias caché de otros clientes

18.3. SISTEMAS PARALELOS

Los sistemas paralelos mejoran la velocidad de procesamiento y de E/S mediante la utilización de UCP y discos en paralelo.

Para medir el rendimiento de los sistemas de bases de datos existen dos medidas principales: (1) la productividad, número de tareas que pueden completarse en un intervalo de tiempo determinado, y (2) el tiempo de respuesta, cantidad de tiempo que necesita para completar una única tarea a partir del momento en que se envíe.

18.3.1. Ganancia de velocidad y ampliabilidad

La ganancia de velocidad se refiere a la ejecución en menos tiempo de una tarea dada mediante el incremento del grado de paralelismo. La ampliabilidad se refiere al manejo de transacciones más largas mediante el incremento del grado de paralelismo. Un sistema paralelo tiene una ganancia de velocidad lineal si la ganancia de velocidad es N cuando el sistema más grande tiene N veces más recursos. Si la ganancia de velocidad es menor que N se dice que el sistema tiene una ganancia de velocidad sublineal.

En la ampliabilidad por lotes aumenta el tamaño de la base de datos, y las tareas son trabajos más largos cuyos tiempos de ejecución dependen del tamaño de la base de datos.

• En la ampliabilidad de transacciones aumenta la velocidad con la que se envían las transacciones a

la base de datos y el tamaño de la base de datos crece proporcionalmente a la tasa de transacciones.

Factores en contra del paralelismo: Costes de inicio. En una operación paralela compuesta por miles de procesos el tiempo de inicio puede llegar a ser mucho mayor que el tiempo real de procesamiento, lo que influye negativamente la ganancia de velocidad.

• Interferencia. Como los procesos que se ejecutan en un sistema paralelo acceden con frecuencia a

recursos compartidos, pueden sufrir un cierto retardo como consecuencia de la interferencia de cada

nuevo proceso en la competencia con los procesos existentes por el acceso a los recursos más comunes.

•Sesgo. Al dividir cada tarea en un cierto número de pasos paralelos se reduce el tamaño del paso medio.

18.3.2. Redes de interconexión

Tipos de redes de interconexión:

• Bus. Todos los componentes

...

Descargar como (para miembros actualizados) txt (46 Kb)
Leer 28 páginas más »
Disponible sólo en Clubensayos.com