Про це оголошення
Що це робить
Це об'єднує системи, які ви зараз використовуєте, як-от базу даних зі сховищем даних, CRM з інструментом звітності, API з електронною таблицею або кілька з них одночасно. Перенесення рядків під час стандартної роботи не викликає складнощів; справжнє випробування настає на сороковий день, коли о 2:00 ночі закінчується термін дії токена автентифікації, у вихідній таблиці з'являється нове поле, що допускає значення null, або пакетне перенесення переривається на півдорозі.
Як це влаштовано
Видобування, завантаження та трансформація виконуються як окремі етапи, оскільки кожен із них може завершитися помилкою з різних причин і потребує власного механізму повторних спроб. Видобування відстежує курсор або водяний знак (watermark), щоб перезапуск відновлював процес із місця зупинки, а не дублював записи. Завантаження відбувається всередині транзакції для кожного пакета: це означає, що переривання залишає цільову систему в узгодженому стані, а не частково оновленою. Правила трансформації зберігаються у версіонованому SQL або Python, а не у візуальному конструкторі, читати який згодом стає складно.
Кожен запуск генерує маніфест із докладним описом прочитаних, записаних і відхилених рядків разом із причиною кожного відхилення. Натуральний ключ у парі з хешем гарантує ідемпотентність процесу, тобто повторний запуск минулого завдання не завдасть шкоди. Зміни у вихідних схемах виявляються до того, як вони порушать процес завантаження, генеруючи сповіщення замість непомітного збою.
Що ви отримуєте
- Код конвеєра, зафіксований у вашому власному репозиторії та протестований на зразку ваших реальних даних.
- Механізм планування, що відповідає вашому стеку: cron, таймер systemd, Airflow або Prefect.
- Моніторинг і сповіщення, що охоплюють кількість рядків, збої та відхилення затримки.
- Інструкція (runbook), яка пояснює повторне відтворення, заповнення історичних даних і підключення нового джерела даних.
Що нам потрібно від вас
Доступ лише для читання до вихідної та цільової систем, робочий зразок даних і графік, який дійсно потрібен вашому бізнесу, а не надмірно амбітний.
Терміни та оновлення
Початкова функціональна версія зазвичай готова протягом п’яти днів і містить тестовий запуск у проміжному середовищі для вашої перевірки перед розгортанням у робочому середовищі. Оновлення надаються у вигляді коротких письмових нотаток на кожному етапі замість зустрічей, а рішення, що впливають на ваші дані (наприклад, тривалість зберігання, вікна заповнення та обробка відхилених рядків), фіксуються для використання в майбутньому. Якщо надійності не вдається досягти у дозволений час, вас буде повідомлено завчасно, щоб змінити план, а не виявляти проблеми під час запуску.
Ця розробка надається як єдиний пакет із фіксованою ціною, виконується в один етап із можливістю одного доопрацювання та строком виконання у 14 днів. Вам потрібно буде надати домен, до якого застосовується замовлення, і технічне завдання.