Una base de datos de valor clave es una estrategia de almacenamiento no relacional NoSQL en la que los registros se almacenan como una serie de claves (el identificador) y valores (el valor del identificador). Los pares clave-valor pueden ser un número o cadena simple, o un valor podría ser un objeto como una imagen o datos geoespaciales. Las aplicaciones de alto volumen que requieren respuestas rápidas se benefician de las bases de datos de valor clave.
¿Qué son las tiendas de valor clave?
Las bases de datos relacionales almacenan datos en tablas, pero una relación clave-valor es una serie de claves y valores. La clave es el identificador único que se utiliza para consultar el valor correcto en la base de datos. Por ejemplo, el precio de un producto podría almacenarse con “precio” como clave y “12.00” como valor. Algunas aplicaciones utilizan almacenamientos de valor clave para metadatos que luego pueden utilizarse para consultar información adicional en bases de datos relacionales más grandes u otras bases de datos no relacionales.
El almacenamiento de una serie de pares clave-valor hace que las consultas sean más rápidas, por lo que las aplicaciones que necesitan respuestas rápidas y asistencia a millones de usuarios pueden beneficiarse al usar una base de datos clave-valor. El almacenamiento de valor clave también es beneficioso cuando las empresas necesitan almacenar metadatos simples para vincularse a silos de datos adicionales más grandes. Algunas empresas utilizan pares clave-valor para conjuntos de datos simples en los que millones de solicitudes llegan a la base de datos, pero solo unos pocos valores deben devolverse por consulta.
Almacenamientos de valor clave en acción
Las aplicaciones que consultan conjuntos de datos pequeños pueden beneficiarse de la velocidad de un almacenamiento de valor clave. Por ejemplo, supongamos que tiene una fuente de redes sociales utilizada por millones de usuarios. Los usuarios actualizan constantemente su alimentación y la aplicación muestra los cinco hilos principales de su alimentación. Podría almacenarse un par clave-valor con la última publicación y enlace a la publicación.
Las aplicaciones en tiempo real también se benefician de los almacenes de valor clave en acción. Debido a que los almacenamientos de valor clave devuelven datos rápidamente, las aplicaciones con marcadores o actualizaciones de segundo a segundo los utilizan. Por ejemplo, un código bursátil que muestra el valor más reciente de una acción en particular requiere actualizaciones de visualización cada segundo. Se puede utilizar una base de datos de valor clave para estas consultas.
Ejemplos de bases de datos de valor clave
Almacenamientos de valor clave frente a bases de datos relacionales
Las bases de datos relacionales tradicionales aún tienen su propósito en las aplicaciones convencionales. Una base de datos relacional almacena valores en una estrategia similar a una tabla. Un solo registro tiene varias columnas y cada columna tiene un valor asignado. Los desarrolladores asignan un identificador único a cada registro, para que la información pueda asociarse con el registro correcto. Por ejemplo, un identificador de cliente único vincula el nombre y la dirección del cliente. El nombre y la dirección en este ejemplo son dos columnas, y la información del cliente, incluido el identificador único, el nombre y la dirección, es un único registro.
Las tiendas de valor clave asocian una única clave de identificación única con un valor. El valor puede ser más que un simple número o cadena. Los almacenamientos de valor clave pueden asignar un objeto a un único identificador de clave, por lo que los desarrolladores no se limitan a datos básicos. También se puede usar una combinación de claves para recuperar datos específicos.
Elegir la tienda de valor clave adecuada
Las aplicaciones que utilizan almacenamientos de valor clave necesitan respuestas rápidas, así que busque una base de datos que ofrezca almacenamiento en caché en memoria. Los datos utilizados con frecuencia pueden almacenarse en caché en la memoria, lo que significa que el motor de la base de datos no necesita buscar datos en un disco, recuperarlos y luego transferirlos a la aplicación solicitante. Debido a que las tiendas de valor clave realizan acciones de lectura y escritura rápidas y continuas, el almacenamiento en caché es óptimo para el rendimiento.
Los grandes requisitos de almacenamiento de datos pueden beneficiarse de la partición y distribución de datos. La distribución horizontal permite a los administradores mejorar el rendimiento al agregar nodos al clúster de bases de datos. Hay varias estrategias de partición disponibles, como hashing y sharding. Elija una estrategia que se adapte a sus preferencias de infraestructura y administrador.
Mejores prácticas para la implementación de la tienda de valor clave
Ya sea que decida implementar una tienda de valor clave en las instalaciones o en la nube, debe seguir algunas de las mejores prácticas para preservar el rendimiento. Es posible que al principio no note problemas de rendimiento, pero a menudo se presentan después de que la base de datos crece y aumenta la cantidad de usuarios de aplicaciones. Algunas de las mejores prácticas:
Use claves primarias compuestas para optimizar las consultas en rango.
Use una clave de clasificación para consultas en rango.
Use una clave de fragmento para el almacenamiento distribuido.
En los ejemplos anteriores, las mejores prácticas son necesarias para el rendimiento. El rendimiento es fundamental para una base de datos de valor clave para que pueda admitir aplicaciones en tiempo real. Los datos en caché también mejorarán el rendimiento, por lo que debe elegir un motor de base de datos compatible.
Conclusiones
Si tiene una aplicación de alto volumen que solicita datos que se pueden almacenar como un par clave-valor, un almacenamiento clave-valor podría ser la mejor opción. La velocidad es un factor fundamental en estas bases de datos, así que elija una que almacene datos en caché en la memoria y ofrezca un método de hash distribuido o sharding. Puede trabajar con bases de datos en las instalaciones o en la nube, pero si está buscando una solución, Pure Storage ofrece soluciones de almacenamiento que se adaptan a su empresa.