sql >> Databasteknik >  >> NoSQL >> Redis

Skriver du en fråga för att lägga till flera värden till en nyckel i REDIS-hashar?

Vad du kan göra, och jag såg det här på andra ställen förutom min kod, är att knappa in hashen med ett suffix. Du har förmodligen ett suffix som identifierar varje post, jag kommer att använda färgerna här:

VID INFÖRINGSTIDEN:

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

VID Frågetid:

/* 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

Du vill förmodligen använda primary key som suffix, eftersom detta bör vara tillgängligt för dig från relationsdatabasens poster. Du måste också underhålla uppsättningen medlemmar (t.ex. SREM Records:Ids red ), när du raderar hash-nycklar (t.ex. DEL Records:red ). Och kom också ihåg att Redis är riktigt bra som en förbättrad cache, du måste ställa in den väl för att bevara värden (och bibehålla prestanda med det).



  1. Hur använder man $elemMatch på aggregatets projektion?

  2. Är Mongodb Aggregation-ramverket snabbare än kartlägga/minska?

  3. Konfigurera varningar på MongoDB Metrics

  4. Ger Mongoose tillgång till tidigare värde på egendom i pre('save')?