Rencana eksekusi

Meningkatkan Kinerja Kueri di SQL Server

Dean Smith

Founder, Atamai Analytics

Fase optimisasi

Fase optimisasi

Meningkatkan Kinerja Kueri di SQL Server

Fase optimisasi

Fase optimisasi dengan deskripsi

Parameter biaya yang dievaluasi mencakup:

  • Penggunaan prosesor
  • Penggunaan memori
  • Pembacaan halaman data
Meningkatkan Kinerja Kueri di SQL Server

Fase optimisasi

Fase optimisasi dan mesin eksekusi

Parameter biaya yang dievaluasi mencakup:

  • Penggunaan prosesor
  • Penggunaan memori
  • Pembacaan halaman data
Meningkatkan Kinerja Kueri di SQL Server

Informasi dari rencana eksekusi

Rencana eksekusi dapat memberi informasi tentang:

  • Apakah indeks digunakan
  • Jenis join yang digunakan
  • Lokasi dan biaya relatif dari:
    • kondisi filter
    • pengurutan
    • agregasi
Meningkatkan Kinerja Kueri di SQL Server

Perkiraan rencana eksekusi di SSMS

 

Perkiraan rencana eksekusi item toolbar SSMS

Meningkatkan Kinerja Kueri di SQL Server

Perkiraan rencana eksekusi di SSMS

 

Perkiraan rencana eksekusi item toolbar SSMS dengan tooltip

Meningkatkan Kinerja Kueri di SQL Server

Melihat rencana eksekusi di SSMS

Rencana eksekusi di SSMS

Meningkatkan Kinerja Kueri di SQL Server

Statistik operator

Statistik operator rencana eksekusi

Meningkatkan Kinerja Kueri di SQL Server

Membaca rencana eksekusi

Operator rencana eksekusi

Meningkatkan Kinerja Kueri di SQL Server

Contoh indeks

SELECT * 
FROM Customers
WHERE CustomerID = 'PARIS';

Operator pemindaian tabel

SELECT * 
FROM CustomersCI
WHERE CustomerID = 'PARIS';

Operator pencarian indeks terklaster

Meningkatkan Kinerja Kueri di SQL Server

Contoh operator Sort

SELECT FruitName, FruitType
FROM Fruits1

UNION

SELECT FruitName, FruitType
FROM Fruits2;

Rencana eksekusi dengan UNION

SELECT FruitName, FruitType
FROM Fruits1

UNION ALL

SELECT FruitName, FruitType
FROM Fruits2;

Rencana eksekusi dengan UNION ALL

Meningkatkan Kinerja Kueri di SQL Server

Rencana eksekusi yang sama?

SELECT * 
FROM Customers
WHERE CustomerID IN 
    (SELECT CustomerID 
     FROM Orders);

Rencana eksekusi IN dan EXISTS

SELECT * 
FROM Customers c
WHERE EXISTS
    (SELECT 1 
     FROM Orders o 
     WHERE c.CustomerID = o.CustomerID);

Rencana eksekusi IN dan EXISTS

Meningkatkan Kinerja Kueri di SQL Server

Ayo berlatih!

Meningkatkan Kinerja Kueri di SQL Server

Preparing Video For Download...