Идея и рекомендации по сквозному решению AWS - PullRequest
0 голосов
/ 15 апреля 2019

Я хочу создать сквозную автоматизированную систему, которая состоит из следующих шагов:

  • Получение данных из источника в посадочную корзину AWS S3 с использованием AWS Lambda
  • Выполнение некоторого задания преобразования с использованием AWS Lambda и сохранение в обработанном сегменте AWS S3
  • Запуск команды копирования Redshift с использованием AWS Lambda для передачи преобразованных / обработанных данных из AWS S3 в AWS Redshift

Исходя из вышеизложенного, я завершил извлечение данных, преобразование данных и запуск команды ручного копирования из Redshift с помощью инструмента запросов SQL.

Сомнения:

  • Я слышал, что AWS CloudWatch можно использовать для планирования / автоматизации, но никогда не работал над этим. Итак, если я хочу выполнить описанные выше шаги в упрощенной форме, как это сделать?
  • Должен ли я использовать лямбду для запуска операторов копирования и вставки? Или есть лучшие сервисы AWS, чтобы сделать то же самое?
  • Любые другие предложения, касающиеся других Сервисов AWS и подобных им, приветствуются.

Ограничение: хотите, чтобы как можно больше задач было без сервера (кроме семантического уровня Redshift).

1 Ответ

1 голос
/ 15 апреля 2019

CloudWatch:

Здесь вы можете использовать CloudWatch Alarms или Events .

С помощью сигналов тревоги вы можете реагировать на любой показатель вашей системы (например, загрузка ЦП, IOPS диска, количество вызовов Lambda и т. Д.), Когда он пересекает некоторый порог, и когда этот сигнал тревоги активируется, вызывайте лямбда-функция (или отправка уведомления SNS и т. д.) для выполнения задачи.

С событиями вы можете использовать выражение cron или какое-либо событие службы AWS (например, изменение состояния экземпляра EC2, уведомление SNS и т. Д.), Чтобы затем запустить другую службу (например, Lambda), чтобы вы могли, например, запустить какая-то операция очистки через лямбду по регулярному расписанию или создание моментального снимка тома EBS, когда его экземпляр выключен.

Лямбда сама по себе является очень мощным инструментом и должна позволять вам программировать достойную функцию копирования / вставки на языке, с которым вы знакомы. AWS также имеет несколько репозиториев GitHub с множеством примеров, см., Например, примеры без серверов и много примеров . Могут быть и другие службы, которые могут работать для вас в вашем конкретном случае, но часть силы Lambda заключается в ее гибкости.

...