Как развернуть веб-приложение, которому необходим регулярный доступ к большим файлам данных - PullRequest
1 голос
/ 30 апреля 2020

Я пытаюсь развернуть написанное мной веб-приложение, но я застрял с одним элементом. Большая часть этого - просто приложение Angular, которое взаимодействует с базой данных MongoDB, и это нормально. Я застрял в том, что мне нужен локальный доступ для чтения около 10 Гб файлов (цифровые модели рельефа geoTiff) - они не меняются и разбиваются на 500 или около того файлов. Каждый раз, когда моему приложению требуются географические c отметки, ему нужно найти нужный файл, прочитать нужный бит файлов, вернуть данные - чем быстрее, тем лучше. Повторюсь, я не обслуживаю эти файлы, а просто читаю данные из них.

В процессе разработки эти файлы находятся на моей машине, и у меня нет проблем, но файлы кажутся слишком большими для объединения в Angular приложение (не хватает памяти), и слишком велико, чтобы включить его в любую папку ресурсов бэкэнда. Я рассмотрел две безсерверные облачные хостинговые платформы (GCP и Heroku), каждая из которых ограничивает размер развертываемых файлов до 1 Гб (если я правильно помню). Я подумывал об использовании облачного хранилища для файлов, но меня беспокоит отрицательная производительность, поскольку каждый раз, когда мне нужен файл, его нужно будет загружать из облака в приложение. Единственное решение, которое я могу придумать, - это использовать службу на основе виртуальных машин, такую ​​как Google Compute, и использовать службу API для получения запросов от приложения и доставки необходимых данных, но я надеялся, что это может быть более совмещенным (не в последнюю очередь потому, что это решение стоит дороже $$) ...

Я новичок в развертывании, поэтому любые советы приветствуются.

1 Ответ

0 голосов
/ 01 мая 2020

Загрузка данных в ГИС БД, например PostGIS . Затем приложение запросит эту БД вместо локальных растровых файлов.

...