sql >> Databasteknik >  >> NoSQL >> Redis

Redis scan count:Hur tvingar man SCAN att returnera alla nycklar som matchar ett mönster?

Med koden nedan kommer du att skanna det 1000 första objektet från markören 0

SCAN 0 MATCH "foo:bar:*" COUNT 1000 

Som ett resultat kommer du att få en ny markör att återkalla

SCAN YOUR_NEW_CURSOR MATCH "foo:bar:*" COUNT 1000

För att skanna 1000 nästa objekt. Sedan när du ökar COUNT från 1000 till 10000 och hämta data du skannar fler nycklar för att i ditt fall matcha fler nycklar.

För att skanna hela listan måste du återkalla SCAN tills markören ger som svar noll (dvs hela skanningen)

Använd INFO kommando för att få ditt antal nycklar som

db0:keys=YOUR_AMOUNT_OF_KEYS,expires=0,avg_ttl=0

Ring sedan

SCAN 0 MATCH "foo:bar:*" COUNT YOUR_AMOUNT_OF_KEYS


  1. Ska jag lagra JWT-tokens i redis?

  2. MongoDB dropIndex()

  3. redis bgsave misslyckades eftersom gaffeln inte kan allokera minne

  4. MongoDB pull array-element från en samling