Това, което бихте могли да направите, и видях това на други места, освен моя код, е да въведете хеша с помощта на суфикс. Вероятно имате суфикс, който идентифицира всеки запис, ще използвам цветовете тук:
ПРИ ВМЕСВАНЕ:
HMSET Records:red Prod_Color "Red" Prod_Count 12 Prod_Price 300 Prod_Info "In Stock"
HMSET Records:blue Prod_Color "Blue" Prod_Count 8 Prod_Price 310 Prod_Info "In Stock"
/* For each HMSET above, you issue SADD */
SADD Records:Ids red
SADD Records:Ids blue
В ВРЕМЕ НА ЗАЯВКА:
/* If you want to get all products, you first get all members */
SMEMBERS Records:Ids
/* ... and then for each member, suppose its suffix is ID_OF_MEMBER */
HGETALL Records:ID_OF_MEMBER
/* ... and then for red and blue (example) */
HGETALL Records:red
HGETALL Records:blue
Вероятно искате да използвате primary key
като суфикс, тъй като това трябва да ви е достъпно от записите на релационната база данни. Също така трябва да поддържате набора от членове (напр. SREM Records:Ids red
), при изтриване на хеш ключове (напр. DEL Records:red
). И също така не забравяйте, че Redis е наистина добър като подобрен кеш, трябва да го настроите добре, за да запази стойностите (и да поддържате производителността с това).