хранение данных в redis через cron - PullRequest
0 голосов
/ 09 октября 2018

Я хочу сохранять данные в redis из панд через задание cron каждые 15 минут, и ниже мой код: -

Я беру данные в панды каждые 15 минут с кодом ниже и отправляю их в redisсловарь mydict2 через задание cron.

import sys
import pickle
import redis

r = redis.StrictRedis(host='localhost', port=6379, db=0)

test_dict1 = results_df.set_index('user')['ua'].T.to_dict()

p_mydict = pickle.dumps(test_dict1)
r.set('mydict2', p_mydict)

Я получаю один и тот же вывод снова и снова в ключе mydict2.По сути, я хочу хранить идентификаторы пользователей в течение всего месяца, а в конце месяца - уникальный счет.

Также я использую метод set, который может быть лучшим методом при условии, что у меня очень большой объем данных.

Может кто-нибудь помочь мне здесь.

1 Ответ

0 голосов
/ 10 октября 2018

Замените ниже

p_mydict = pickle.dumps(test_dict1)
r.set('mydict2', p_mydict)

на

    for k, v in test_dict1.items():
        r.hmset(k, {"ua" : v})
    print("Done adding stuff")

, и каждый ключ в вашем словаре будет ключом в Redis.

...