Есть ли способ запрограммировать запросы AWS Athena на выполнение каждые 15 минут? - PullRequest
1 голос
/ 23 апреля 2019

Я создал SQL-запрос в AWS Athena, но я хочу, чтобы он автоматически запускался каждые 15 минут без необходимости что-либо делать. Я знаю, что Lambda была бы полезна для этого, но у меня нет опыта программирования или Lambda, и я совершенно не знаю, как начать.

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

Спасибо!

Ответы [ 2 ]

0 голосов
/ 23 апреля 2019

Выполнение запроса каждые 15 минут абсолютно возможно. Для начала работы с Lambda в целом документация AWS великолепна. Из личного опыта я бы посоветовал вам взглянуть на что-то вроде Servereless Framework, чтобы сделать вашу жизнь проще. Обучающее руководство по AWS без сервера должно помочь вам начать работу и помочь вам управлять сборкой, развертыванием и вызовом вашей лямбды.

Пример конфигурации YAML для лямбды, запускаемой каждые 15 минут через Serverless Framework, которую вы будете использовать для сборки, развертывания и вызова

my_awesome_query:
    handler: src/my_query_lambda.run
    timeout: 270
    events:
      - schedule:
          rate: cron(0/15 * * * ? *)
          enabled: true
0 голосов
/ 23 апреля 2019

Опыт показывает, что запуск Python Lambda с использованием boto3 довольно прост, особенно для задач, подобных той, о которой вы упомянули.Вот пример кода , который самодостаточен и может помочь вам в разработке собственного.Единственное требование - установка boto3.

В документах есть учебное пособие, в котором подробно описано, как установить событие Cloudwatch, которое будет запускать вашу Lambda , а также включитьдокументы - это страница, объясняющая выражения Cron (ответственная за фактическое планирование вашего триггера), но я могу заранее сказать, что для триггера «каждые 15 минут» ваше выражение Cron может быть

cron(0/15 * * * ? *)
...