# Спроєктувала, реалізувала та адмініструвала 6 пайплайнів ETL/ELT, використовуючи Google BigQuery, MSSQL, PostgreSQL, Shell scripting, PL/pgSQL та Transact‑SQL, інтегрувавши дані для ефективної обробки через Python API.

2022 – 2024

**Ситуація.** Організації потрібно було консолідувати та обробляти великі обсяги структурованих даних із віддаленого сховища даних, розташованого за IPSec VPN. Ці дані мали критичне значення для роботи внутрішніх аналітичних дашбордів і зовнішніх Python API, якими користувалися клієнти й партнери.

**Завдання.** Мета полягала в тому, щоб спроєктувати, реалізувати та підтримувати набір надійних автоматизованих ETL/ELT‑пайплайнів для безпечного отримання, трансформації та завантаження даних у Google BigQuery, забезпечуючи точність даних, продуктивність і масштабованість у всіх системах.

**Дія.** Було спроєктовано, реалізовано та адміністровано 6 наскрізних ETL/ELT‑пайплайнів на основі кількох технологій, включно з Google BigQuery, MSSQL, PostgreSQL, Shell‑скриптами, PL/pgSQL та Transact‑SQL.

- Налагоджено захищені з'єднання з віддаленим сервером, захищеним IPSec VPN, для автоматизації отримання даних.
- Заплановано та виконано завантаження стиснутих архівів даних, що містили файли Parquet, CSV та .bak.
- Розроблено скрипти на Bash і Python для витягування та класифікації файлів за типом і схемою.
- Для файлів .bak резервні копії відновлювалися в локальному екземплярі MSSQL Server за допомогою робочих процесів RESTORE DATABASE, а цілісність схеми перевірялася.
- Завантажено структуровані дані в проміжні схеми в MSSQL і PostgreSQL за допомогою інструментів bcp, psql та SSIS, залежно від формату джерела.
- Написано модульні та придатні для повторного використання процедури PL/pgSQL і T‑SQL для очищення, нормалізації та збагачення даних відповідно до бізнес‑логіки.
- Експортовано впорядковані набори даних і таблиці в проміжні формати, стиснуто їх за допомогою gzip і безпечно передано в бакет Google Cloud Storage.
- Автоматизовано процеси завантаження та зіставлення схем у Google BigQuery за допомогою bq CLI та скриптів для завантаження даних на основі Python.

**Результат.** Ці автоматизовані пайплайни суттєво скоротили ручні витрати та час обробки — з понад 3 годин ручної роботи до менш ніж 20 хвилин наскрізно, водночас покращивши актуальність даних із щотижневої до щоденної синхронізації. Python API, що споживали ці дані, отримали приріст продуктивності на 30%, а покращена прозорість допомогла бізнес‑аналітикам швидше надавати інсайти зацікавленим сторонам. Рішення залишається масштабованим і легко розширюваним для підключення нових джерел даних у міру зростання бізнесу.

---

- Роль: Інженер даних
- Категорії: [Бази даних](https://engineer.company/uk/categories/databases/), [PostgreSQL](https://engineer.company/uk/categories/postgresql/), [SQL](https://engineer.company/uk/categories/sql/), [Сховища даних](https://engineer.company/uk/categories/data-warehousing/), [Інженерія даних](https://engineer.company/uk/categories/data-engineering/), [Пайплайни даних (ETL/ELT)](https://engineer.company/uk/categories/data-pipelines/), [Cloud](https://engineer.company/uk/categories/cloud/), [Автоматизація та CI/CD](https://engineer.company/uk/categories/automation/), [Мережі та VPN](https://engineer.company/uk/categories/networking/), [Python](https://engineer.company/uk/categories/python/)
- Послуги: [Backend- та API‑розробка](https://engineer.company/uk/services/backend-development/), [Проєктування та моделювання баз даних](https://engineer.company/uk/services/database-design/), [Розробка пайплайнів даних (ETL/ELT)](https://engineer.company/uk/services/data-pipeline-development/), [Проєктування сховищ даних](https://engineer.company/uk/services/data-warehousing/)

<https://engineer.company/uk/portfolio/designed-implemented-and-administered-6-etl-elt-pipelines-8/>
