Skip to content

YuriiBalandiuk/Technological_practice

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

18 Commits
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

In Ukrainian - Технологічна практика

Опис проєкту

Проєкт реалізує ETL-пайплайн для автоматичного завантаження даних із CSV-файлів у базу даних PostgreSQL з використанням Apache Airflow. Основна мета – автоматизувати процес обробки та зберігання даних, а також розробити аналітичні запити для подальшого аналізу.


Завдання

  • Розробка ETL-пайплайну
    Завантаження та трансформація даних із CSV у базу даних PostgreSQL;

  • Налаштування DAG в Apache Airflow
    Створення Directed Acyclic Graph (DAG) для автоматизації запуску ETL процесу;

  • Нормалізація JSON-даних
    Обробка JSON-даних із нормалізованим збереженням у таблиці бази даних, структурованих за третьою нормальною формою (3NF);

  • Розробка аналітичних запитів PostgreSQL
    Використання агрегатних функцій, JOIN та CTE для отримання необхідних даних;

  • Командна робота через GitHub
    Організація командної роботи через GitHub: створення репозиторію, коміти, pull-requests, документація.


Технології

  • Python
  • Psycopg2
  • Pandas
  • Jupyter Notebook
  • Pre-commit hooks
  • Docker
  • Apache Airflow
  • PostgreSQL
  • Git & GitHub

In English - Technological Practice

Project Description

This project implements an ETL pipeline for automatically loading data from CSV files into a PostgreSQL database using Apache Airflow.
The main goal is to automate the process of data processing and storage, as well as to develop analytical queries for further analysis.


Objectives

  • ETL Pipeline Development
    Load and transform data from CSV files into a PostgreSQL database;

  • DAG Configuration in Apache Airflow
    Create a Directed Acyclic Graph (DAG) to automate the ETL process;

  • JSON Data Normalization
    Process JSON data and store it in a normalized structure in the database using the Third Normal Form (3NF);

  • Development of PostgreSQL Analytical Queries
    Use aggregate functions, JOINs, and CTEs to extract meaningful insights from the data;

  • Team Collaboration via GitHub
    Organize collaborative work via GitHub: repository setup, commits, pull requests, and documentation.


Technologies

  • Python
  • Psycopg2
  • Pandas
  • Jupyter Notebook
  • Pre-commit hooks
  • Docker
  • Apache Airflow
  • PostgreSQL
  • Git & GitHub

Releases

No releases published

Packages

 
 
 

Contributors