Como se muestra en la ilustración anterior, podemos mapear fácilmente una entidad del mundo real a un hash redis. El comando HSET se usa para crear un nuevo hash y agregar pares de valor de campo."
El comando hdel
El comando HDEL se usa para eliminar uno o más pares de valor de campo de un hash redis almacenado en una clave dada. Dado que este comando acepta múltiples argumentos de campo, la complejidad del tiempo es directamente proporcional al número de campos que se eliminarán.
Sintaxis
HDEL HASH_KEY Field [campo ...]clave hash : La clave Redis del hash.
campo : El nombre del campo que desea eliminar.
Este comando da una respuesta entera que es el número de campos eliminados del hash especificado. Si ha especificado campos inexistentes, se ignorarán y no se contarán.
Además, siempre que la clave del hash no exista, el comando HDEL devolverá 0.
Caso de uso 01: eliminar los detalles del usuario no deseados
Supongamos un escenario en el que queremos almacenar miles de detalles de empleados de una empresa. Dado que los hashes redis están más optimizados de la memoria, es el candidato ideal para este tipo de trabajo.
Primero, vamos a crear un nuevo hash Employeedetails: ID: 1 Para almacenar los detalles de un empleado. Se utilizará el comando HSET.
hetSe empleeDetails: ID: 1 Empid 1 Nombre Jackhenry 40 SALARIO $ 50000A continuación, verificaremos que el hash se haya agregado con éxito. El comando hgetall se puede usar para consultar los detalles relacionados con una clave hash específica.
hgetall empleeedetails: ID: 1Digamos que la gerencia de la compañía pensó en la subcontratación del procesamiento de la nómina a una parte externa. Por lo tanto, el campo salarial en el hash Employeedetails: ID: 1 ya no es necesario.
Usemos el comando HDEL para eliminar el campo salarial del hash.
HDEL EmployeDetails: ID: 1 salarioEsto debería eliminar el campo salario y su valor.
Producción
Digamos que la compañía ha almacenado los detalles de los empleados en un hash separado almacenado en la clave EmpleeEleeave: ID: 1. Este hash contiene los siguientes detalles sobre un empleado.
Ahora la compañía pensó en eliminar algunos campos innecesarios de este hash. Dado que la razón de licencia y los campos de emergencia no son necesarios, usaremos el comando HDEL para eliminar esos dos campos a la vez.
HDEL EmployeEleeave: ID: 1 razón de emergenciaProducción
Como se esperaba, el comando devolvió 2, lo que significa que dos campos se han eliminado con éxito del hash EmpleeEleeave: ID: 1.
Intentemos eliminar un campo que no exista en el hash.
HDEL EmployeEleeave: ID: 1 Field1Devolvió 0, lo que significa que no pasó nada porque el Field1 no existe.
Siempre que especifique una clave hash que no exista, el comando HDEL devolverá 0, como se muestra en lo siguiente.
El comando HDEL es un comando muy simple para usar, y se puede usar para eliminar múltiples pares de valor de campo de un hash de manera eficiente.
Conclusión
En resumen, Redis Hashes puede contener una variedad de pares de valor de campo de cadena en memoria pequeña. Un hash puede almacenar más de cuatro mil millones de campos en una instancia de Redis. Por lo tanto, es una estructura de datos muy optimizada para la memoria que se utiliza en aplicaciones del mundo real que se ocupa de cientos de objetos. Como se discutió, siempre que necesite eliminar uno o más pares de valor de campo innecesarios de un hash redis, puede usar el comando HDEL. Funciona en o (n) complejidad del tiempo. En general, el comando HDEL es un comando muy útil para deshacerse de los campos no deseados en un hash redis almacenado en una clave dada.