2016-04-27 3 views
-1

Я делаю игру с картографическими данными, хранящимися как плитки. Эти фрагменты не будут меняться более одного раза, поскольку данные, которые их генерируют, имеют версию, поэтому они являются статическими, как код сервера.Хранение большого статического набора данных

Поскольку они являются статичными, я думал об использовании базы данных SQLite в памяти RAM для их хранения. Однако, с количеством плиток в игре (может получить карту до 10 000x10 000), она может легко в конечном итоге взять гигабайты памяти для хранения, если она хранится в памяти (оценивается в 15 ГБ с 10 000 × 10 000 карта).

Я также подумал о создании sqlite db и просто версии, которая вместе с остальной частью кода. Но я беспокоюсь о параллельных чтениях.

Однако, я чувствую, что использование базы данных postgres для этой цели является излишним, поскольку данные не изменятся.

Каким будет принятый способ решения проблемы с данными?

+0

Что не подходит для файловой системы? –

ответ

-1

Я закончил тем, что шел с Redis в качестве общего решения этой проблемы, и, в частности приложения Redis Облака в Heroku, так как она позволяет использовать на свободном уровне ,

0

Похоже, что вы можете сохранить его в чем-то вроде S3 (в основном, использовать файлы, но выгружать их на службу, чтобы ваше приложение могло масштабироваться по горизонтали).

Вы можете управлять S3 непосредственно или через аддон как https://elements.heroku.com/addons/filepicker

Смежные вопросы