Какая технология хранения Azure для данных прогноза погоды - PullRequest
0 голосов
/ 17 мая 2019

Я хотел бы получить несколько советов / советов по поводу правильной технологии, чтобы выбрать некоторые данные прогноза для технологий Azure. Моя команда и я ежедневно собираем некоторые данные прогноза погоды из различных источников и сохраняем их в хранилище файлов Azure. Формат файлов «grib2», который является стандартным форматом данных прогноза погоды. Мы можем извлечь данные из этих файлов "grib2", используя скрипт Python, работающий на виртуальной машине Azure.

Теперь у нас есть несколько файлов, которые представляют сотни гигабайт данных для хранения, и я изо всех сил пытаюсь найти, какое хранилище данных с использованием технологий Azure наилучшим образом соответствует нашим потребностям с точки зрения практичности и стоимости.
Сначала мы начали использовать Azure Table Storage, потому что это дешевое решение, но я читал во многих постах, что он немного старый и не очень приспособлен к нашему решению, так как, например, он не допускает более 1000 энтитов на запрос и не агрегирует данные.

Я подумал об использовании Azure SQL db, но кажется, что это может очень быстро стать очень дорогим.
Я также рассмотрел технологии Azure Data Lake Storage Gen2 (и HDinsight), но мне не очень удобно с этими хранилищами больших двоичных объектов, и я не могу точно сказать, может ли это соответствовать моим потребностям с точки зрения практичности и «легко ли запрашивать» ,

К настоящему времени мы просто планируем достичь этого:

1) Извлечение данных из файлов grib2 благодаря скрипту python, запущенному на виртуальной машине Azure.
2) Вставьте преобразованные данные в [хранилище Azure].
3) Запросите [хранилище Azure] из службы машинного обучения Azure или локального сценария R (например)
4) Вставьте вычисленные данные в [хранилище Azure]

где технология [Azure Storage] должна определить.

Спасибо за любую помощь или совет, спасибо.

1 Ответ

2 голосов
/ 17 мая 2019

Несколько вещей, которые я бы увидел здесь:

  1. Чтобы сохранить загруженные файлы в необработанном формате (в вашем случае - grib2), либо поместите их в старое доброе хранилище BLOB-объектов Azure. Дешевое хранилище именно для ваших нужд.
  2. Используйте Azure Databricks для загрузки данных из учетной записи хранения и распаковки их в память. (питон или скала)
  3. Загрузите данные в память - все еще в Databricks - чтобы выполнить вывод ML. Вы также можете использовать SparkR, если действительно хотите.
  4. Хранить вычисленные файлы в обслуживающем слое. Это действительно зависит от того, что вы хотите сделать с этим позже. Часто база данных SQL Azure является очевидным выбором. Существует собственный соединитель Spark , который эффективно записывает данные из блоков данных в базу данных SQL.

Помимо использования Databricks в качестве среды логического вывода, он также является хорошим выбором для обучения ML (например, с использованием Azure ML Service).

...