← All projects

IMDb

A complete decision-support solution on IMDb data: Python ETL, OLAP warehouse, Power BI and sentiment analysis.

  • Python
  • SQL Server
  • SSIS
  • Power BI
  • DAX
  • scikit-learn
  • PowerAMC

View the GitHub repository

Context

SAE5.C.01 of the BUT in Computer Science (2025-26, IUT d’Annecy). Starting from IMDb’s public flat files, the brief was to design an optimized SQL Server database and Power BI reports, then AI models able to assess a review from its text alone, all on a standard PC.

Team and my role

Group project, 5 people.

I took the lead on the project and handled the technical side.

Approach

  • Modeling: conceptual, logical and physical models in PowerAMC for a normalized, constrained OLTP schema.
  • ETL: multithreaded Python script with manual memory management and disk offloading to fit on a standard PC, followed by bulk loading with BCP.
  • Optimization: indexes on foreign keys and composite indexes, backed by execution plan analysis.
  • Decision support: move to a star schema loaded with SSIS, then Power BI reports.
  • AI: TF-IDF and linear models compared with 3-fold cross-validation, using a restricted hyperparameter grid to stay frugal.

Visuals

Facts and figures

7 TSV input files
Over 12 GB
processed by the ETL in 25 minutes
222M rows
OLTP and OLAP models
12 + 12 tables
join query after indexing
62 to 7 ms
polarity accuracy on 25,000 test reviews
90.2%
on the rating out of 10, with an R² of 0.657
MAE of 1.61
grade accuracy, with the Mixed class assigned by a rule
65%
OLAP Power BI report and its tooltips
5 + 3 pages

What I took away

The main challenges and lessons came from managing the project and from setting up the initial requirements.