Джанго кеширует большой список

Мое приложение django работает с бинарными файлами размером 25 МБ. Каждый из них имеет около 100 000 «записей». 256 байтов каждый.

У меня уходит около 7 секунд, чтобы прочитать двоичный файл с диска и декодировать его с помощью модуля struct python. Я превращаю данные в список из примерно 100 000 элементов, где каждый элемент представляет собой словарь со значениями различных типов (float, string и т. Д.).

Мои представления django должны искать в этом списке. Очевидно, что 7 секунд это слишком долго.

Я пытался использовать низкоуровневый API-интерфейс кеширования django для кэширования всего списка, но это не сработало, потому что для любого отдельного кэшированного элемента существует ограничение максимального размера в 1 МБ. Я пытался кэшировать 100 000 элементов списка по отдельности, но это занимает намного больше 7 секунд - большую часть времени тратится на выборку элементов.

Есть ли удобный способ хранить большой список в памяти между запросами? Можете ли вы придумать другой способ кэширования объекта для использования моим приложением django?

Ответы на вопрос(2)

Ваш ответ на вопрос