Мы создаем решение для хранилища данных в Google BigQuery, используя Apache Airflow для переноса таблиц MySQL в облако. У меня есть ежедневные передачи и запуск извлечения данных постепенно, используя
MySQLToGoogleCloudStorageOperator =>
GoogleCloudStorageTBigQueryOperator
с этим битом в .sql:
WHERE timestamp BETWEEN '{{ macros.ds_add(ds, -1) }}' AND '{{ ds }}'
Работает отлично, но у нас есть одна таблица, которую мы хотели бы обновлять ЕЖЕМЕСЯЧНО, 10-го числа каждого месяца, но при этом извлекали данные за весь предыдущий месяц - так что при запуске с датой выполнения 2019-03-10 мы хотим получить
timestamp BETWEEN '2019-02-01 00:00:00' AND '2019-03-01 00:00:00'
и так далее. Какой самый лучший и простой способ сделать это?