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

Как да съхранявате сложен вложен JSON в Redis с помощта на Python

Не можете да направите това директно, но за щастие има нов Redis модул, наречен RedisJSON, който прави точно това, от което се нуждаете, и също така има хубаво Python свързване. Можете да стартирате Docker контейнер на RedisJSON или да използвате Redis 4.0+, след това да изтеглите/компилирате и инсталирате RedisJSON и да конфигурирате Redis да го зарежда, като добавя команди за JSON манипулация.

Позволява ви да съхранявате JSON документи в Redis и след това да извличате или променяте конкретен елемент в дървото на документа, без да извличате (или дори вътрешно анализирате) документа. Неговият Python клиент дори ви позволява да съхранявате python dicts и автоматично да ги преобразува в JSON.

ReJSON модул:http://redisjon.io

Клиент на Python:https://pypi.python.org/pypi/rejson

Пример:

from rejson import Client, Path

rj = Client(host='localhost', port=6379)

# Set the key `obj` to some object
obj = {
    'answer': 42,
    'arr': [None, True, 3.14],
    'truth': {
        'coord': 'out there'
    }
}
rj.jsonset('obj', Path.rootPath(), obj)

# Get something
print 'Is there anybody... {}?'.format(
    rj.jsonget('obj', Path('.truth.coord'))
)


  1. Redis
  2.   
  3. MongoDB
  4.   
  5. Memcached
  6.   
  7. HBase
  8.   
  9. CouchDB
  1. Публикуване/абониране на Redis:вижте за кои канали сте абонирани в момента

  2. Как да използвате Redis с Python

  3. Разбиране на кеширането на Laravel:Cache фасада и Redis

  4. Как да се свърже отново Redis клиент след рестартиране/мащабиране на Redis сървър

  5. Mongodb пресичане с времеви диапазон