Una transacción es una secuencia de una o más operaciones
agrupadas como una unidad. El inicio y el final de la transacción definen los
puntos de consistencia de la base de datos. Si una acción de la transacción no
se puede ejecutar, entonces ninguna acción dentro de la secuencia que conforma
la transacción tendrá efecto.
La operación COMMIT señala el término exitoso de la transacción: le dice al
manejador de transacciones que se ha finalizado con éxito una unidad lógica de
trabajo, que la base de datos esta (o debería estar) de nuevo en un estado
consistente, y que se pueden hacer permanentes todas las modificaciones
efectuadas por esa unidad de trabajo.
La operación ROLLBACK, en cambio, señala el término no exitoso de la
transacción: le dice al manejador de transacciones que algo salió mal, que la
base de datos podría estar en un estado inconsistente y que todas las
modificaciones efectuadas hasta el momento por la unidad lógica de trabajo
deben retroceder o anularse.
Ventajas
- Refleja una
estructura organizacional - los fragmentos de la base de datos se ubican
en los departamentos a los que tienen relación.
- Autonomía
local - un departamento puede controlar los datos que le pertenecen.
- Disponibilidad
- un fallo en una parte del sistema solo afectará a un fragmento, en lugar
de a toda la base de datos.
- Rendimiento
- los datos generalmente se ubican cerca del sitio con mayor demanda,
también los sistemas trabajan en paralelo, lo cual permite balancear la
carga en los servidores.
- Economía -
es más barato crear una red de muchas computadoras pequeñas, que tener una
sola computadora muy poderosa.
- Modularidad
- se pueden modificar, agregar o quitar sistemas de la base de datos
distribuida sin afectar a los demás sistemas (módulos).
Desventajas
- Complejidad - Se debe
asegurar que la base de datos sea transparente, se debe lidiar con varios
sistemas diferentes que pueden presentar dificultades únicas. El diseño de
la base de datos se tiene que trabajar tomando en cuenta su naturaleza
distribuida.
- Economía - la complejidad y la infraestructura necesaria
implica que se necesitará una mayor mano de obra.
- Seguridad - se debe trabajar en la seguridad de la infraestructura
así como cada uno de los sistemas.
- Integridad - Se vuelve difícil mantener la integridad, aplicar
las reglas de integridad a través de la red puede ser muy caro en términos
de transmisión de datos.
- Falta de experiencia - las bases
de datos distribuidas son un campo relativamente nuevo y poco común por lo
cual no existe mucho personal con experiencia o conocimientos adecuados.
- Carencia de estándares - aún no
existen herramientas o metodologías que ayuden a los usuarios a convertir
un DBMS centralizado en un DBMS distribuido.
- Diseño de la base de datos se vuelve más complejo -
además de las dificultades que generalmente se encuentran al diseñar una
base de datos, el diseño de una distribuida debe considerar la
fragmentación, replicación y ubicación de los fragmentos en sitios
específicos.

No hay comentarios:
Publicar un comentario