This project was developed as part of an ETL challenge for beginners. The goal is to extract, transform, and load data from a CSV file into a local database. PostgreSQL was used in this project.
- Data extraction from a CSV file
- Data transformation with cleaning and standardization
- Data loading into a relational database (PostgreSQL)
- Full CRUD functionality via API with FastAPI
- Clone this repository:
git clone https://github.com/DaviMacielCavalcante/desafio_etl_begginer.git cd desafio_etl_begginer
- Install the dependencies from requirements.txt
pip install -r requirements.txt
- Install PostgreSQL on your machine.
- Create a .env file with the following variables
DATABASE_PORT = port your database is using
DATABASE_NAME = name of your database
DATABASE_USERNAME = user with access to the database
DATABASE_PASSWORD = user's password
DATABASE_URL = your database's address
- Run the script responsible for creating the database schema in PostgreSQL:
python criacao_tabelas.py
- Run the script responsible for the ETL pipeline
python main.py
- Watch the cool side of the Force in action::
Contributions are welcome! Please follow these guidelines:
- Fork the project.
- Create a branch for the feature you want to implement (git checkout -b my-new-feature).
- Commit your changes with meaningful messages (git commit -m 'Add new feature').
- Push to the created branch (git push origin my-new-feature).
- Open a pull request for review.
This project is licensed under the MIT License - see the LICENSE.md file for more details.
If you have any questions or issues, feel free to contact:
- Darth Davi โ๏ธ๐ก
- Prof. Artemisia Weyl
๐ฉโ๐ป Mentorโs GitHub: https://github.com/arteweyl
Through victory, my chains are broken.
The Force shall free me.