Arquitectura De BDD
Enviado por ensayon • 10 de Julio de 2013 • 7.055 Palabras (29 Páginas) • 595 Visitas
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
...