Colección de citas famosas - Colección de poesías - Implementación del almacenamiento de valores-clave (1): ¿Qué es el almacenamiento de valores-clave y por qué?

Implementación del almacenamiento de valores-clave (1): ¿Qué es el almacenamiento de valores-clave y por qué?

El almacenamiento de pares clave-valor es la forma organizativa más simple de base de datos. Básicamente, todos los lenguajes de programación tienen pares clave-valor almacenados en la memoria. El contenedor Map de C STL, el HashMap de Java y los tipos de diccionario de Python se almacenan en forma de pares clave-valor. El almacenamiento de pares clave-valor suele tener la siguiente interfaz, por ejemplo:

Get(key):? Obtenga algunos datos previamente almacenados bajo la etiqueta "clave" o informe un error si no hay datos bajo la "clave".

Establecer(clave,valor):? Guarde el "valor" en el espacio de almacenamiento debajo de la etiqueta "clave". Para que podamos acceder a él llamando a la misma "clave".

Suponiendo que haya algunos datos en "clave", se reemplazarán los datos antiguos.

Eliminar(clave):? Eliminar los datos almacenados bajo "clave".

La mayoría de las implementaciones de bajo nivel utilizan tablas hash o algún tipo de árbol autoequilibrado (como un árbol B o un árbol rojo-negro). A veces, los datos son demasiado grandes para caber en la memoria o deben mantenerse para evitar que el sistema falle por razones desconocidas. en estos casos. Debe utilizar un sistema de archivos.

El almacenamiento clave-valor es parte del movimiento NoSQL. NoSQL combina todos los sistemas de bases de datos que no utilizan el concepto de bases de datos relacionales.

La entrada NoSQL en Wikipedia proporciona un buen resumen de las características de estas bases de datos.

No utilice lenguaje de consulta SQL

Es posible que ACID (Atomicidad, Consistencia, Aislamiento y Durabilidad) no sea totalmente compatible.

Puede proporcionar una estructura distribuida tolerante a fallos.