sql >> Databasteknik >  >> NoSQL >> Redis

Varför finns det NYCKEL- och ARGV-matriser när man anropar Redis Lua-skript?

Alla dina frågor besvaras på EVAL sida, men eftersom du frågade...:

Vad är skillnaden?

KEYS används för att skicka nyckelnamn medan ARGS borde vara för något annat. Detta är inte exakt genomdrivet (dvs. de flesta gånger skulle du vara okej att blanda dem) men kan leda till potentiella problem om det inte följs.

Hur behandlar Redis värden i KEYS-matrisen?

Innehållet i KEYS kontrolleras för att verifiera att alla nycklar är tillgängliga för Redis-biten som kör skriptet. Denna mekanism är på plats för att tillåta körning av skript i en Redis-klusterdistribution.

Vad händer om jag i mitt skript måste använda nycklar som genereras dynamiskt vid körning?

Se tidigare svar - det är möjligt men du skulle gå emot rekommendationerna. Ditt skript kommer att vara säkert att köra endast på en fristående Redis-instans och eftersom detta beteende inte är specificerat kan det gå sönder i framtida utgåvor.




  1. Varför använda Redis istället för MongoDb för cachelagring?

  2. Vilken version av MongoDB är installerad på Ubuntu

  3. fråga i mongo Shell ger SyntaxError:missing :after property

  4. Få senast infogade dokument-ID i MongoDB med Java-drivrutin