Поддерживать в памяти большой словарь для Django-Python?

У меня есть большой парный дамп ключ-значение, который мне нужно найти для моего веб-приложения django-Python.

Итак, у меня есть следующие варианты:

  • Сохранить как дамп jsonи загрузить его как python dict.
  • Сохраните его в dump.pyи импортируйте из него словарь.
  • Используйте некоторые целевые системы для этой проблемы: [ Они действительно предназначены для этого варианта использования? ]
    • Кэш памяти
    • Redis
    • Любой другой вариант?

Какой сверху путь правильный?

Как вы будете сравнивать memcache и Redis?

Обновление:

  • Мой словарь занимает около 5 МБи со временем будет увеличиваться.
  • Использование Redis/Memcache увеличивает нагрузку на каждый раз при обращении к сокету, поэтому dump.pyбудет лучше, так как потребуется время, чтобы загрузить его в память, но после этого он будет выполнять только работу с памятью. поиск.

  • Мой словарь нужно обновлять каждый день, учитывая, что dump.pyбудет проблемой, так как нам нужно перезапустить django-сервер для перезагрузки, где, как я полагаю, это отразится на лету в Redis и memcache.

  • Систему наподобие redisиспользуют только в том случае, когда у вас большой объем данных и вам приходится очень часто выполнять поиск, в этом случае сокет создает накладные расходы, так как же нам добиться преимущества?

Поделитесь, пожалуйста, своим опытом!

10
задан Yugal Jindle 15 May 2012 в 09:01
поделиться