# data[].attributes.body
Las bases de datos distribuidas o Distributed Database Management System (DDBMS) se caracterizan por almacenar la información en varias computadoras conectadas entre sí, a las cuáles el usuarios puede acceder desde cualquier sitio como si se tratara de una red local.

# data[].attributes.headline
Caracteristicas de una Base de Datos Distribuida

# data[].attributes.subject
Caracteristicas de una Base de Datos Distribuida

# data[].attributes.body
Está formada por varias computadoras, a las cuales se les denomina nodos.

Los nodos se comunican entre sí mediante una red de comunicaciones.

Cada uno de los ordenadores que forman parte de la red tiene autonomía local.

Tiene un funcionamiento independiente de su localización.

Se realizan continuas transacciones de información entre nodos.

# data[].attributes.body
Permiten trabajar a cada nodo de la red con autonomía local

Aumentan la disponibilidad, confiabilidad y eficiencia en el acceso a la información.

Se pueden expandir de forma indefinida en función de las necesidades de la empresa u organización.

Permiten la escalabilidad sin necesidad de grandes inversiones.

Los recursos se comparten entre nodos, de manera que se puede acceder a toda la información desde cualquier sitio.

# data[].attributes.body
Resulta más difícil establecer mecanismos para controlar el acceso a los datos y garantizar la seguridad.

Los errores en la red pueden tener graves consecuencias para la privacidad de la información.

Es un sistema más complejo de implementar.

Conseguir una transparencia óptima puede suponer un importante gasto de tiempo y dinero.

Falta de experiencia y ausencia de estándares en el desarrollo e implementación de estas bases de datos.

Posibles problemas de rendimiento o fiabilidad derivados del punto anterior.

# data[].attributes.body
Para que se pueda dar una transacción de información en una base de datos distribuida es necesario que los agentes se comuniquen mediante mensajes de red, asegurando que se respeta la atomicidad en el proceso. Para ello se requiere lo siguiente:

Un agente raíz o sitio de origen de la transacción. Es el que inicia la transacción de datos cuando el usuario ejecuta una aplicación.

Este agente raíz es también el encargado de garantizar las propiedades de la transacción distribuida, como BEGIN-TRANSACTION, COMMIT O ROLLBACK.

# data[].attributes.body
Una base de datos en memoria o in-memory (IMDB, por sus siglas en inglés) se basa en un sistema de gestión de bases de datos que almacena toda la información directamente en la memoria RAM de uno o más ordenadores. El uso de una RAM tiene una ventaja decisiva: las bases de datos en memoria cuentan con una velocidad de acceso mucho más rápida que las memorias tradicionales y, por lo tanto, una transmisión de los datos más eficiente.

# data[].attributes.headline
¿Qué procesos se producen cuando se utilizan bases de datos en memoria?

# data[].attributes.subject
¿Qué procesos se producen cuando se utilizan bases de datos en memoria?

# data[].attributes.body
1. Inicio de la base de datos: cuando se inicia la base de datos, el sistema carga todos los datos del disco duro a la memoria RAM. Esto significa que no es necesario cargar ningún dato mientras la base de datos está en ejecución.

2. Cotejo de los datos modificados: si los datos cambian, la base de datos los ajusta a intervalos regulares.

3. Copias de seguridad del registro de transacciones: los cambios actuales se registran en los registros de transacciones. Si se produce un error, la base de datos se puede restaurar al momento anterior de que se hubiera producido el error. Este proceso se denomina "rollforward".

4. Tratamiento de los datos: los datos se procesan según el principio AKID (atomicidad, consistencia, aislamiento y durabilidad) al igual que con las bases de datos tradicionales. Este principio describe las propiedades que han de tener los procesos en los sistemas de gestión de bases de datos.

5. Replicación de la base de datos: el proceso copia continuamente los datos a un ordenador o servidor para realizar copias de seguridad.