Относно тази обява
Какво прави
Това свързва системите, които използвате в момента, като например база данни с хранилище за данни, CRM с инструмент за отчети, API с електронна таблица или няколко от тях в комбинация. Прехвърлянето на редове при стандартна работа е лесно; истинският тест е какво се случва на четиридесетия ден, когато токенът за автентикация изтече в 2:00 ч. през нощта, в изходната таблица се появи ново поле с възможност за нулеви стойности (nullable) или груповият трансфер прекъсне по средата.
Как е изградено
Извличането, зареждането и трансформацията се поддържат като отделни фази, тъй като всяка от тях може да се провали по различни причини и изисква собствен механизъм за повторен опит. Извличането следва курсор или воден знак (watermark), за да се гарантира, че при рестартиране процесът продължава оттам, където е спрял, вместо да дублира записи. Зареждането се извършва в рамките на трансакция за всяка партида, което означава, че евентуално прекъсване оставя целевата система в съгласувано състояние, а не частично актуализирана. Правилата за трансформация се съхраняват във версия-контролиран SQL или Python вместо във визуален редактор, който по-късно става труден за разчитане.
Всяко изпълнение генерира манифест с подробни данни за прочетените редове, записаните редове, отхвърлените редове и причината за всяко отхвърляне. Естествен ключ, комбиниран с хеш, гарантира, че процесът е идемпотентен, което означава, че повторното изпълнение на минала задача не нанася щети. Промените в схемите на източника се засичат, преди да нарушат зареждането, като генерират предупреждение вместо тихо прекъсване на работата.
Какво получавате
- Код на конвейера (pipeline), качен във вашето собствено хранилище и тестван с извадка от вашите реални данни.
- Механизъм за планиране, подходящ за вашия технологичен стек - cron, таймер на systemd, Airflow или Prefect.
- Мониторинг и известия, обхващащи брой редове, грешки и отклонения в латентността.
- Оперативно ръководство (runbook), обясняващо повторното пускане, ретроспективното попълване (backfill) и интегрирането на нов източник на данни.
Какво ни е необходимо от вас
Достъп за четене до изходните и целевите системи, работеща извадка от данните и графикът, от който бизнесът ви действително се нуждае, а не прекалено амбициозен такъв.
Срокове и актуализации
Първоначална функционална версия обикновено е готова в рамките на пет дни, като съдържа тестово изпълнение (staging) за вашия преглед преди пускането в реална среда. Актуализациите се предоставят под формата на кратки писмени бележки на всеки етап, а не чрез срещи, като изборите, влияещи на вашите данни - като например съхранение, прозорци за ретроспективно попълване и обработка на отхвърлени редове - се записват за бъдещи справки. Ако надеждността не може да бъде постигната в рамките на допустимото време, ще бъдете информирани достатъчно рано, за да промените плана, вместо да откривате проблеми при самото стартиране.
Тази разработка се предоставя като единичен пакет с фиксирана цена, завършен на един етап с включена една ревизия, в срок за изпълнение от 14 дни. Ще трябва да предоставите домейна, за който се отнася поръчката, както и вашето задание.