Apache Cassandra es un DBMS NoSQL distribuido, de código abierto y disponible para el usuario que está diseñado para manejar grandes cantidades de datos en muchos servidores. Proporciona punto cero de falla. Cassandra ofrece soporte masivo para clústeres que abarcan múltiples centros de datos.
Hay algunas características masivas de Cassandra. Estas son algunas de las características que se describen a continuación:
- Distribuido:
cada Node en el clúster tiene el mismo rol. No hay duda de falla y el conjunto de datos se distribuye en el clúster, pero existe un problema: el maestro no está presente en cada Node para admitir la solicitud de servicio. - Admite replicación y replicación de múltiples centros de datos:
el factor de replicación viene con las mejores configuraciones en Cassandra. Cassandra está diseñado para tener un sistema distribuido, para la implementación de una gran cantidad de Nodes en múltiples centros de datos y otras características clave también. - Escalabilidad:
está diseñado para el rendimiento de r/w, aumenta gradualmente a medida que se agregan nuevas máquinas sin interrumpir otras aplicaciones. - Tolerancia a fallas: los
datos se almacenan y replican automáticamente para la tolerancia a fallas. Si un Node falla, se reemplaza en poco tiempo. - Compatibilidad con MapReduce:
admite la integración de Hadoop con la compatibilidad con MapReduce. También se admite Apache Hive y Apache Pig. - Lenguaje de consulta:
Cassandra ha introducido el CQL (Lenguaje de consulta de Cassandra). Es una interfaz simple para acceder a Cassandra.
Cassandra Query Language (CQL) :
CQL tiene una interfaz simple para acceder a Cassandra, también una alternativa para el SQL tradicional. CQL agrega una capa de abstracción para ocultar la implementación de la estructura y también proporciona la sintaxis nativa para las colecciones.
Por ejemplo, siga el ejemplo dado que muestra cómo crear un espacio de claves que incluya una familia de columnas en CQL 3.0-
CREATE KEYSPACE MyKeySpace WITH REPLICATION = { 'class' : 'SimpleStrategy', 'replication_factor' : 3 }; USE MyKeySpace; CREATE COLUMNFAMILY MyColumns (id text, Last text, First text, PRIMARY KEY(id)); INSERT INTO MyColumns (id, Last, First) VALUES ('1', 'Doe', 'John');
Consulta:
SELECT * FROM MyColumns;
Lo que da:
id | First | Last ----+-------+------ 1 | Ratul | Sarkar
(1 filas)
Algunos datos sobre Cassandra son los siguientes:
- Antes de las actualizaciones de las versiones de Cassandra, hasta Cassandra 1.0, Cassandra no era consistente en el nivel de fila, lo que significa insertar y actualizar la tabla. Puede afectar a la misma fila que se procesa aproximadamente al mismo tiempo y puede afectar a las columnas que no son clave de forma incoherente.
Cassandra 1.1 resolvió esto usando aislamiento de nivel de fila. - También se sabe que la eliminación de marcadores llamados Tombstones (fuente de Internet) provoca la degradación del rendimiento hasta niveles de consecuencias graves.
- Cassandra, esencialmente un híbrido entre un valor clave y un DBMS tabular organizado. Las tablas se pueden crear, eliminar y modificar en tiempo de ejecución sin bloquear actualizaciones y consultas.
- Una familia de columnas llamada tabla representa un RDBMS. Cada fila se identifica específicamente mediante una fila y una clave, un nombre, un valor, una marca de tiempo, etc. Una tabla en Cassandra es un mapa multidimensional alterado controlado por una clave. Más aplicaciones están especificadas por una familia de supercolumnas.
Publicación traducida automáticamente
Artículo escrito por RatulSarkar1 y traducido por Barcelona Geeks. The original can be accessed here. Licence: CCBY-SA