Sepertinya ini adalah hal sepele, namun hal ini sangat berpengaruh terhadap performance dari sebuah query.
Misalkan saya akan meng-eksekusi 2 buah query yang berbeda namun akan menghasilkan recordset yang sama pada tabel Production.TransactionHistory di database AdventureWorks yang sebelumnya saya coba tambahkan sebuah index pada field TransactionDate.
Query 1 (Q1):
select TransactionID,TransactionDate from Production.TransactionHistory
where DATEDIFF(day,TransactionDate,GETDATE())>0
Query 2 (Q2):
select TransactionID,TransactionDate from Production.TransactionHistory
where TransactionDate<GETDATE()
pada Q1 tampak didalam klausa WHERE menggunakan sebuah function DATEDIFF() sebagai salahsatu metoda pemfilteran datanya sedangkan pada Q2 saya tidak menggunakan function apapun.
Berikut ini adalah Execution Plan Result nya untuk Q1 :
dan ini adalah Execution Plan Result dari Q2 :
ternyata, query yang menggunakan Function dalam klausa where akan menerapkan Index Scan yang seperti kita ketahui bersama bahwa sql server akan melakukan scanning data pages mulai dari pages pertama hingga pages terakhir.
Sedangkan Index Seek akan melakukan Scanning data pages pada pages yang terseleksi sehingga proses pencariannya lebih baik dibandingkan dengan Index Scan.
Pada data kecil ini mungkin tidak begitu terasa efeknya, namun akan sangat terasa sekali bila kita bekerja dengan Very Large Database (VLDB)
Pada tanggal 10 April 2010 MUGI Banjarmasin diundang oleh kampus STMIK Banjarbaru untuk memberikan Seminar Pengenalan teknologi-teknologi terbaru Microsoft terhadap para dosen disana, jadi acara ini bersifat private hanya untuk para dosen kampus STMIK Banjarbaru.
Tujuan dari acara ini adalah untuk memberikan pengenalan terhadap teknologi-teknologi Microsoft yang terbaru dan diharapkan dapat menambah wawasan baru bagi rekan-rekan dosen disana.
Acara berlangsung dari Jam 10.00 Wita sampai dengan Jam 16.00 Wita. Materi yang disampaikan adalah :
- Pengenalan Komunitas MUGI oleh Suherman
- Pengenalan Data Spatial di SQL Server 2008 oleh Suherman
- Pengenalan Teknologi ASP.NET oleh Ferry Kurniawan
- Pengenalan Teknologi Windows Mobile oleh Ferry Kurniawan
Berikut ini adalah dokumentasinya :
Bahan presentasi Spatial di SQL Server 2008 dapat didownload disini
sedangkan dokumentasi lengkap ada disini http://www.facebook.com/album.php?aid=160424&id=756929894&l=9b3a0d40e3
Demikian laporan dari MUGI Banjarmasin. Salam dari MUGI Banjarmasin 