NoSQL como término significa “no sólo SQL”. Es una familia de bases de datos que no se ajustan al estándar SQL de organización de datos y son una forma revolucionaria de almacenamiento de datos en aplicaciones web modernas. Mientras que las bases de datos SQL a menudo tienen modelos de datos inflexibles y a veces rígidos formados por columnas y tablas, unidos entre sí mediante claves foraneas, las bases de datos NoSQL a menudo no tienen un esquema fijo de ningún tipo. Por ejemplo, en las bases de datos orientadas a documentos los datos se almacenan en formato de documento, es decir JSON, y cada registro en la base de datos puede parecer completamente diferente al último.
Tipos de bases de datos NoSQL
Bases de datos orientadas a documentos
Este tipo de base de datos son un tipo de base de datos NoSQL que almacena datos en ‘documentos’. Estos documentos vienen en múltiples formatos que van desde HTML, XML y mucho más comúnmente JSON. Las bases de datos de documentos a menudo se ejecutan en un patrón de clave-valor, en el que la identificación de cada documento es la clave, y el cuerpo del documento es el valor. La consulta de bases de datos de documentos suele ser extremadamente eficiente en función del tiempo, dependiendo de cómo esté estructurada la base de datos. Muchos admiten una ideología de Map/Reduce y usan JavaScript simple para consultar datos. Algunos incluso tienen API completamente HTTP/REST.
Algunas bases de datos son:
- CouchDB
- MongoDB
- Riak
Bases de datos en memoria
Este tipo de base de datos están optimizadas para la velocidad almacenando y recuperando datos de la memoria de la computadora en lugar de recuperar datos del disco. Es sabido que las lecturas de memoria son más rápidas que las búsquedas en disco, pero muchas bases de datos en memoria ahora también tienen persistencia de disco. Sería el caso que todos los datos se perderían si se reiniciara la computadora, pero este tipo de base de datos solucionan esto utilizando métodos como la replicación, instantáneas de datos y registro de transacciones. La mayoría de las bases de datos en memoria usan almacenamiento de clave-valor.
Algunas bases de datos son:
- Memcached
- Redis
- Riak
- VoltDB
Bases de datos orientadas a gráficos
Este tipo de base de datos son exactamente como dice su nombre, los datos se almacenan en estructuras de gráficos y están optimizados para consultas rápidas y búsquedas. Las bases de datos de gráficos, a diferencia de otras bases de datos, contienen un puntero de almacenamiento para sus elementos adyacentes y, por lo tanto, no son necesarias las búsquedas de índice. Cada elemento de datos se denomina ‘Nodo’ y cada nodo contiene propiedades. Las conexiones entre cada nodo se conocen como ‘Edges’.
Algunas bases de datos son:
- InifiniteGraph
- Neo4J
- OrientDB
Bases de datos orientados a columnas
Este tipo de base de datos difieren de las bases de datos SQL, ya que en lugar de almacenar los datos de las tablas en filas, almacenan las tablas de datos en un formato de columna. El enfoque almacenamiento-columna tiene beneficios cuando se trata de cosas como consultar Ad-Hoc y agregar datos.
Algunas bases de datos son:
- Apache HBase
- Cassandra
- BigTable de Google
One thought on “Tipos de Bases de datos NoSQL”