1. el término NoSQL, acrónimo de “no solo SQL”, se refiere a las bases de datos no relacionales que almacenan datos en un formato no tabular, en lugar de hacerlo en tablas relacionales basadas en reglas, como lo hacen las bases de datos relacionales.
2. tipos
2.1. Bases de datos NoSQL
2.1.1. Son ideales para aplicaciones que requieren gran escala, confiabilidad y alta disponibilidad. Son flexibles, escalables y tienen un buen rendimiento, lo que las hace aptas para manejar grandes volúmenes de datos. Las bases de datos NoSQL almacenan los datos en su formato original, a diferencia de las bases de datos SQL que los almacenan de forma estructurada.
2.2. Bases de datos en memoria
2.2.1. Se caracterizan por su alto rendimiento, que se mide en la cantidad de operaciones de lectura y escritura que se realizan en un periodo de tiempo. Las bases de datos en memoria almacenan los datos en memoria, lo que permite tiempos de respuesta más rápidos.
3. El modelo de base de datos relacional ha sido durante las tres últimas décadas, y lo seguirá siendo, muy útil para aplicaciones tradicionales. La popularidad de los paquetes de bases de datos AMP (Servidor Apache HTTP, MySQL y PHP/Python/Perl), junto con las soluciones propietarias, garantiza la supervivencia de las bases de datos tradicionales, evidentemente, superiores a los modelos jerárquicos de archivos planos. El modelo relacional es normalmente fácil de comprender y analizar.
3.1. Las bases de datos analíticas que sirven para la gestión de los grandes volúmenes de datos (Big Data) se dividen en dos grandes categorías: bases de datos NoSQL y bases de datos “en memoria” (in memory).
3.2. Una base de datos NoSQL (“Not only SQL”) es la siguiente generación de bases de datos, que tiene las siguientes propiedades: no relacional, distribuida, código abierto (open source) y escalable horizontalmente: http://nosql-database.org/
3.3. • Las bases de datos NoSQL se clasifican en cuatro grandes categorías: clavevalor, grafos, documentos y tablas (BigTable)/columna
4. Para conseguir el rendimiento deseado, la computación “en memoria” se apoya en tres conceptos fundamentales:
4.1. Mantenimiento de los datos en la memoria para aumentar la velocidad de acceso a ellos.
4.2. Minimizar el movimiento de los datos para potenciar el concepto de almacenamiento en columna, compresión y ejecución de cálculos al nivel de base de datos.
4.3. Utilizar la técnica de “divide y vencerás” (divide and conquer): aprovechar (potenciar) la arquitectura multinúcleo de los modernos procesadores y de los servidores multiprocesador, mediante técnicas distribuidas que proporcionarán mejores resultados que un único servidor
5. Definiciones de bases de datos (Gartner
5.1. Base de datos.
5.1.1. Es una colección de datos que pueden estar en múltiples formatos y puede ser almacenada en algún medio (por ejemplo, unidades de disco duro, memoria flash, unidades de estado sólido (SSD) y/o DRAM).
5.2. DBMS (SGBD)
5.2.1. Es un sistema de software completo utilizado para definir crear, gestionar (administrar), actualizar y consultar una base de datos. De acuerdo a esta definición, Gartner resalta que los DBMS proporcionan interfaces a programas y herramientas independientes que soportan y gobiernan el rendimiento de una variedad de tipos de cargas concurrentes.