Skip to content

Repository files navigation

🚀 Enterprise Data Engineering & AI/ML Learning Stack

Python Package Manager Linter Testing

Acest repository nu este un simplu set de exerciții de cod, ci o arhitectură de producție completă, decuplată pe straturi logice și testată automat. Proiectul a fost conceput ca un simulator de nivel Enterprise pentru stăpânirea conceptelor avansate de alocare a memoriei, vectorizare hardware și pipeline-uri industriale.


📈 Cifre de Performanță (Memory Benchmarking)

În cadrul modulului de optimizare am rulat un benchmark pe 50 de milioane de înregistrări pentru a măsura impactul alegerii tipurilor de date asupra memoriei RAM:

Structură / Tip de Date Spațiu RAM Ocupat Impact Computațional
Listă Nativă Python ~1800.00 MB Lentă (Overhead de obiect PyObject, Cache Misses)
NumPy int64 (Implicit) ~381.50 MB Rapidă (Contiguă, alocare în rafală)
NumPy int16 (Optimizat) 95.37 MB Ultra-rapidă (SIMD paralel, max Cache Hits)

📂 Harta Proiectului (Decuplarea pe Straturi)

Cap. 4 Np&Pd/
│
├── 📂 .vscode/                    # Developer Experience (DX) Workspace
│   └── 📄 settings.json           # Izolează automat directoarele cache din Explorer
│
├── 📂 s13_s14_numpy/              # STRATUL 1: NumPy Fundamentals & Core Memory
│   ├── 📄 __init__.py
│   └── 📄 teorie_si_exercitii.py  # Gestiune Shape, Axe, Strides și nditer in-place
│
├── 📂 s15_algebra_ai/             # STRATUL 2: Algebră Liniară Computațională & AI
│   ├── 📄 __init__.py
│   └── 📄 algebra_si_modele.py    # linalg.solve, Dot product, ReLU matricial vectorizat
│
├── 📂 s16_s17_pandas/             # STRATUL 3: Data Wrangling & Enterprise Pipelines
│   ├── 📄 __init__.py
│   └── 📄 manipulare_si_analiza.py# Groupby Complexes, Merges Optimizate, Arhitecturi ETL
│
├── 📂 study/                      # STRATUL 4: Laborator de Cercetare & Profiling
│   ├── 📄 numpy_reference.py
│   └── 📄 profile_memory.py       # Scriptul de Memory Benchmark (Studiul de caz 50M)
│
├── 📂 tests/                      # STRATUL 5: Automatizare, QA & Regresie pe Date
│   ├── 📄 __init__.py
│   └── 📄 test_pipeline.py        # Asertări automate cu PyTest (Idempotență & NaN checks)
│
├── 📄 .gitignore                  # Protecția repository-ului împotriva fișierelor reziduale
├── 📄 GLOSAR.md                   # Glosar premium de termeni tehnici unificați
├── 📄 INTREBARI_INTERVIU.md       # Simulator tehnic cu 40 de întrebări de elită (NTT DATA Checklist)
├── 📄 main.py                     # Orchestratorul central al sistemului (Main Runner)
└── 📄 MANUAL_NUMPY_PANDAS.md      # Manualul teoretic premium consolidat pas-cu-pas

💡 Notă de Arhitectură (Configurarea Workspace-ului .vscode): Proiectul include o configurare .vscode/settings.json optimizată pentru standardele comerciale. Aceasta aplică o regulă de filtrare vizuală (files.exclude) care maschează automat folderele cache reziduale (__pycache__, .pytest_cache, .ruff_cache) din panoul Explorer. Fișierele sunt generate în continuare în fundal de către interpretor pentru optimizarea execuției, însă izolarea lor din interfața grafică elimină zgomotul vizual din editor și previne comiterea lor accidentală în Git.


📅 Strategia de Învățare (Sprint de Pregătire Tehnică)

Proiectul este structurat ciclic, oferind o corelare directă între conceptele hardware din memorie, implementarea lor în cod curat și validarea automată prin teste:

Etapă / Fokus Fișiere de Studiat (Cod + Teorie) Concepte Cheie de Demonstrat la Interviu
Etapa 1: Micro-Alocare s13_s14_numpy/teorie_si_exercitii.py
MANUAL_NUMPY_PANDAS.md (Cap. 1)
Management RAM, eliminarea overhead-ului PyObject, adresare contiguă, Strides și Cache Lines.
Etapa 2: AI Computațional s15_algebra_ai/algebra_si_modele.py
MANUAL_NUMPY_PANDAS.md (Cap. 2)
Execuția hardware paralelă a modelelor Deep Learning (Forward Pass, ReLU, BLAS/LAPACK) fără bucle for.
Etapa 3: Pandas Wrangling s16_s17_pandas/manipulare_si_analiza.py
MANUAL_NUMPY_PANDAS.md (Cap. 3)
Design pattern de Pipeline Funcțional Pur, optimizări Hash Join și prevenirea exploziei de memorie (Memory Explosion).
Etapa 4: Simulator & QA tests/test_pipeline.py
INTREBARI_INTERVIU.md (Toate cele 40 Q)
Conceptul de Idempotență, testarea regresiei pe date cu pytest, automatizare cu ruff și cele 40 de scenarii de elită.

🔄 Fluxul de Date în Arhitectura Proiectului

  [ Hardcore NumPy ]             [ Algebră & AI ]              [ Enterprise Pandas ]
 ┌──────────────────┐           ┌────────────────┐            ┌─────────────────────┐
 │  int16 / RAM     │           │  Linear Solve  │            │  Indexare .loc/.iloc│
 │  Cache Lines     │ ────────> │  Dot Product   │ ─────────> │  Groupby & Merges   │
 │  SIMD / Views    │           │  ReLU Matrix   │            │  Vectorized .str    │
 └──────────────────┘           └────────────────┘            └─────────────────────┘
          │                                                              │
          ▼                                                              ▼
 ┌──────────────────┐                                         ┌─────────────────────┐
 │  study/          │                                         │  s16_s17_pandas/    │
 │  profile_memory  │ <── [Măsurare vs Validare Automată] ──> │  pipeline_etl       │
 └──────────────────┘                                         └─────────────────────┘
                                                                         │
                                                                         ▼
                                                              ┌─────────────────────┐
                                                              │  tests/             │
                                                              │  pytest / ruff      │
                                                              └─────────────────────┘

⚡ Instalare rapidă și Execuție cu uv

Proiectul folosește uv, cel mai rapid manager de pachete din ecosistemul Python (scris în Rust).

1. Sincronizarea mediului virtual și a dependențelor

uv sync

2. Rularea Pipeline-ului Central (ETL & AI Forward Pass)

uv run main.py

3. Rularea Suitei de Teste Automate (QA)

uv run pytest -v

4. Scanarea Statică a Calității Codului (PEP 8)

uv run ruff check .

About

No description, website, or topics provided.

Resources

Stars

0 stars

Watchers

0 watching

Forks

Releases

Packages

Contributors

Languages