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

Нещо като кеш на маркери и запитване към него, за да ги предложи да използват Redis

След гугъл много, намерих добра публикация за нещо, което отговаря на това, което исках тук в StackOverflow:

  • http://robots.thoughtbot.com/post/48851498400/redis-partial-word-match-you-auto-complete-me

Резюме...:

1. Създайте ключ-стойност за тагове

sadd mysite:tags "stackoverflow" "stack-exchange" "question" "about-redis"

2. Създайте индекс за всяка възможна комбинация

Да, например:

  • „s“
  • "st"
  • „sta“
  • ... и така нататък

    sadd mysite:tags:index:s 1 2

    sadd mysite:tags:index:st 1 2

    sadd mysite:tags:index:sta 1 2

    sadd mysite:tags:index:stack 1 2

    sadd mysite:tags:index:stacko 1

... и така нататък.

Става дума за добавяне на всички тагове, които започват с s ,ст ...

3. Използване на SORT за получаване на предложения за маркери:

sort mysite:tags:index:s by nosort get tags:*

Това ще изведе:

  • stackoverflow
  • обмяна на стек

Или...сортирайте mysite:tags:index:stack- по nosort get tags:*

...ще изведе:

  • обмяна на стек

Изглежда, че е добро решение!




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

  2. Разбиране на латентността с помощта на Redis-Cli

  3. Защо lua скрипт блокира redis-сървър?

  4. Натиснете към опашката на Laravel извън Laravel (NodeJS)

  5. Достъп до променлива извън redis конвейерна функция на Laravel