viernes, 14 de febrero de 2014

Arquitectura de Cassandra


Cassandra ha sido diseñada para manejar grandes volúmenes de datos a través de múltiples nodos  sin punto único de fallo. Su arquitectura está basada en el entendimiento de que los fallos del sistema y del hardware pueden fallar y lo hacen.  Cassandra soluciona el problema empleando un sistema distribuido punto a punto donde todos los nodos son los mismos y los datos son distribuidos a través de todos los nodos en el cluster. Cada nodo intercambia información a través del cluster cada segundo. Una confirmación de registro captura la actividad de escritura para asegurar la durabiidad de los datos.
Los datos se escriben en una estructura de memoria, llamada memtable , tabla de memoria, y entonces  se escriben a un fichero de dato llamado SSTable en disco una vez que la estructura de memoria está llena. Todas las escrituras son automáticamente particionadas y relpicadas a través del cluster.

Cassandra es una base de datos orientad a columnas. La arquitectura de Cassandra permite a un usuario autorizado conectarse a cualquier nodo en un centro de datos y acceder a los datos usando lenguaje CQL. Para que sea más fácil de usar Cassandra utiliza una sintaxis similar a SQL.

El cliente lee o escribe peticiones que pueden ir a cualquier nodo en el cluster. Cuando un cliente se conecta a un nodo con una petición, el nodo atiende como el coordinador para esa operación particular del cliente. El coordinador actúa como un proxy entre la aplicación del cliente y todos los nodos que poseen la información requerida. El coordinador determinará que nodo del anillo cogerá la petición basado en la configuración del cluster.

No hay comentarios:

Publicar un comentario