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