Redis
 sql >> база данни >  >> NoSQL >> Redis

Как да използвам redis за съхранение на йерархични данни?

В Redis няма да съхранявате данните си в уникална структура от данни. Трябва да създадете множество структури от данни, като всяка се идентифицира с ключ.

Използвайте конвенция за именуване на вашите ключове:чрез пример site:<CITY>:buildings ще бъде набор, който съдържа списъка с идентификатори на сгради за даден сайт.

След това дефинирайте хешове за съхранение на описание на всяка сграда. Ключът за тези хешове може да бъде нещо като:building:<ID>

В хеша имате 2 члена:име и етажи. Стойността на етажите е уникалният идентификатор на набора, съдържащ списъка с идентификатори на етажите.

След това създайте последен набор за всеки етаж, за да съхранявате имената на стаите. Името на наборите може да бъде нещо като:floor:<ID> .

Съвети:

  • използвайте командата redis INCR за генериране на уникални идентификатори.
  • избягвайте твърде дългите ключове, ако възнамерявате да съхранявате много голям брой от тях (по-дългите ключове изискват повече памет)



  1. Redis
  2.   
  3. MongoDB
  4.   
  5. Memcached
  6.   
  7. HBase
  8.   
  9. CouchDB
  1. Главният винаги ли редис екземпляр с най-малък приоритет?

  2. Redis сентинел докер изображение / Dockerfile

  3. Блокиране на достъпа до ключа Redis (ServiceStack)

  4. Опит за разрешаване на зависимости:Промяна на .NET Standard Library към NET Core - Microsoft.Extensions.Primitives

  5. Как да извика функция след завършване на асинхронни функции вътре в цикъла?