Вы рассмотрели абстракцию Ваших данных обработки транзакций из Ваших аналитических данных обработки так, чтобы они могли оба быть специализированы для соответствия их уникальным требованиям?
основная идея, являющаяся этим, у Вас есть одна версия данных, которые регулярно изменяются, это было бы стороной обработки транзакций и требует тяжелой нормализации и легких индексов так, чтобы операции записи были быстры. Вторая версия данных структурирована для аналитической обработки и имеет тенденцию быть менее нормализованной и в большей степени индексированной для быстрых операций создания отчетов.
Данные, структурированные вокруг аналитической обработки, обычно создаются вокруг методологии куба организации хранилищ данных, состоявшей из таблиц фактов, которые представляют стороны куба и таблиц измерений, которые представляют края куба.
settings.py - это подходящее место для этого. Settings.py, как и любой другой модуль, загружается один раз. По-прежнему существует проблема, связанная с тем, что модуль должен быть импортирован один раз для каждого процесса, поэтому стиль возрождения веб-сервера (например, apache) перезагружает его один раз для каждого рассматриваемого экземпляра. Для mod_python это будет один раз для каждого процесса. для mod_wsgi это, скорее всего, будет только один раз, если вам не нужно перезапускать
tl; dr модули импортируются один раз, даже если используются несколько операторов импорта. поместите его в settings.py
settings.py предназначен для настроек Django; можно помещать туда свои собственные настройки, но использование его для произвольных структур данных, не относящихся к конфигурации, не является хорошей практикой.
Просто поместите его в модуль, которому он логически принадлежит, и он будет запускаться только один раз для каждого экземпляра . Если вы хотите гарантировать, что модуль загружается при запуске, а не при первом использовании в дальнейшем, импортируйте этот модуль из вашего __ init __. Py
верхнего уровня, чтобы принудительно загрузить его немедленно.