sql >> Databasteknik >  >> NoSQL >> Redis

Hur använder man redis för att lagra hierarkisk data?

I Redis kommer du inte att lagra din data i en unik datastruktur. Du måste skapa flera datastrukturer, var och en identifieras med en nyckel.

Använd en konvention för att namnge dina nycklar:med exempel site:<CITY>:buildings kommer att vara en uppsättning som innehåller listan över byggnads-ID för en given plats.

Definiera sedan hash för att lagra varje byggnadsbeskrivning. Nyckeln för dessa hash kan vara något i stil med:building:<ID>

I hashen har du 2 medlemmar:namn och våningar. Golvvärde är det unika ID:t för uppsättningen som innehåller listan med våningsidentifierare.

Skapa sedan en sista uppsättning för varje våning för att lagra rumsnamnen. Namnet på uppsättningarna kan vara något i stil med:floor:<ID> .

Tips:

  • använd kommandot redis INCR för att generera unika ID:n.
  • undvik för långa nycklar om du tänker lagra ett mycket stort antal av dem (längre nycklar kräver mer minne)



  1. Enkel schemaläggning av underhållsfönster i dina databaskluster

  2. Finns det något sätt att atomiskt uppdatera två samlingar i MongoDB?

  3. MongoDB 'count()' är väldigt långsam. Hur förfinar/arbetar vi med det?

  4. Hur undviker man transparent_hugepage/defrag-varning från mongodb?