Могу ли я использовать AWS для загрузки, хранения и вычислений?

298
Mooncrater

Есть мой проект, который требует около 1,2 ТБ данных для загрузки из Интернета и запуска сценариев поверх него, чтобы преобразовать их в какой-то другой конечный результат. Итак, я вижу три проблемы здесь:

  1. Загрузка: я не могу загрузить этот объем данных с моего ноутбука из-за низкой скорости загрузки.
  2. Хранение: загруженные файлы должны храниться где-то. Опять же, на моем ноутбуке недостаточно памяти для этого (учитывая, что он может загружать файлы волшебным образом)
  3. Обработка: После загрузки и сохранения мне нужно запустить сценарии над файлами, чтобы получить конечный результат. Учитывая огромный размер ввода, это не может быть сделано моим ноутбуком, в нормальное время.

Поэтому я вижу только AWS в качестве опции. Я рассмотрел некоторые из предлагаемых ими продуктов, и на первый взгляд кажется, что часть обработки может быть выполнена с помощью продукта под названием EC2 (Elastic Cloud Computing), а хранение может быть выполнено с помощью продукта S3, масштабируемого место хранения.

Я не смог найти ничего, что соответствовало бы моим требованиям для загрузки .

Итак, могу ли я использовать вышеуказанное решение, чтобы также загрузить данные?

0
Этот вопрос кажется немного более широким (я удалил слишком открытые вопросы), но я предполагаю, что вы имеете в виду * обработку * можно выполнять с помощью экземпляров EC2 (а не хранилища)? Поскольку экземпляры EC2 являются «обычными» серверами, работающими под управлением некоторых ОС, вы должны использовать их для запуска сценария, который загружает данные в корзину S3. slhck 5 лет назад 1
@slhck Отредактировано. Спасибо за комментарий! Mooncrater 5 лет назад 0

1 ответ на вопрос

4
slhck

Экземпляры EC2 - это в основном обычные серверы, на которых установлена ​​операционная система, которая позволяет не только выполнять задачи обработки данных, но и выполнять любые другие действия, такие как загрузка, особенно если загрузка является сложной задачей.

Вы должны настроить экземпляр EC2, который постоянно монтирует корзину S3 в операционную систему, а затем создать сценарий (например, сценарий оболочки), который регулярно или почти регулярно загружает данные и сохраняет их в корзине.

Еще более простым вариантом будет использование AWS Lambda для загрузки на S3 без необходимости раскручивать сервер EC2, что означает, что вы можете выполнять обработку независимо, а также избегать необходимости сначала передавать данные на сервер, а затем на S3 ,

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

Что касается использования экземпляра EC2 для загрузки данных в S3, см. [Здесь] (https://datascience.stackexchange.com/questions/5589/downloading-a-large-dataset-on-the-web-directly-into-aws -s3) для примера. slhck 5 лет назад 0