Dizajniranje Optimizovanih Strategija

Modul 2 - Lekcija 2

⏱️ Trajanje: ~3 časa 📚 Nivo: Napredni 🎯 Praktični primjeri: 6

📖 Od osnova do majstorstva

U prethodnoj lekciji smo vidjeli da Non-clustered indeksi pomažu u pronalaženju redova. Međutim, ako moramo "skakati" nazad u tabelu da bismo dobili vrijednosti drugih kolona

Ključni Koncepti

Detaljno objašnjenje u punom tutorijalu.

📖 Pogledaj Detaljno Objašnjenje →

📦 Included Columns: Eliminacija Key Lookup-a

Included Columns nam omogućavaju da dodamo ne-ključne kolone u Leaf Level Non-clustered indeksa. Ove kolone se ne koriste za sortiranje stabla, ali su prisutne

📖 Pogledaj Detaljno Objašnjenje →

🎯 Filtered Indexes: Precizno targetiranje

Zašto indeksirati milione redova za kolonu IsProcessed ako nas zanimaju samo neobrađeni redovi (kojih je možda 1%)? Filtered Index koristi WHERE klauzulu pri kreiranju

📖 Pogledaj Detaljno Objašnjenje →

📊 Održavanje i Index Usage Statistics

Gomilanje indeksa koje niko ne koristi je tihi ubica baze (usporava svaki INSERT/UPDATE). Kao developer, morate znati koji indeksi su "mrtav teret".

📖 Pogledaj Detaljno Objašnjenje →

🧙‍♂️ Database Engine Tuning Advisor (DTA)

SQL Server ima ugrađenog "AI savjetnika" koji može analizirati vaše upite i predložiti idealnu strategiju indeksiranja.

📖 Pogledaj Detaljno Objašnjenje →

🎯 Praktična Vježba: Uništavanje Key Lookup-a

Upit SELECT Email, Position FROM Employees WHERE LastName = 'Hodžić' je spor uprkos indeksu na LastName.

📖 Pogledaj Detaljno Objašnjenje →

✅ Zaključak

Današnja lekcija vas je uvela u svijet naprednog query tuninga:

📖 Pogledaj Detaljno Objašnjenje →