Brent Ozar tahu semua tentang melaju kencang – dia balapan mobil dan dia meningkatkan SQL Server dengan hasil kinerja database yang menakjubkan setiap hari. Dalam webcast-nya “Cara mengukur SQL Server”, untuk seri Hari Pelatihan Database Quest, Brent mengingatkan kita bahwa kinerja adalah tentang pengukuran.
Meningkatkan performa
Brent mengambil kesempatan untuk mempraktikkan jarak sosial dan mendandani bagian itu dengan mengenakan setelan balap dan helm lengkap. Dalam beberapa olok-olok pra-webcast, kami mengetahui bahwa dia harus memasang mikrofon ke helm dan menempelkan earbud ke telinganya! Tapi kita menyimpang. Webcast adalah tentang kinerja, dan ada banyak analogi mobil yang bisa digunakan.
Untuk meningkatkan kinerja SQL Server, premisnya adalah:
- Pilih metrik untuk fokus pada peningkatan
- Ukur kinerja sebelum dan sesudah melakukan perubahan terbatas (metode ilmiah dasar)
- Pahami saat Anda memiliki peralatan yang salah untuk apa yang ingin Anda capai
Metrik penyesuaian kinerja basis data
Sebuah diskusi panjang tentang truk Ford F150, Ford Fiestas dan beberapa kendaraan menarik lainnya menggambarkan bahwa ada berbagai cara untuk meningkatkan waktu yang dibutuhkan untuk melaju dari 0 hingga 60 mil per jam. Anda dapat mengurangi berat kendaraan, menambahkan mesin yang lebih besar, atau mulai membuang barang-barang yang tidak penting – seperti kaca depan. Akan ada kompromi antara kinerja dan utilitas. Basis data seperti ini – mereka sering dimuat ke bawah. Inilah saatnya penyetelan kinerja khusus diperlukan, yang memerlukan pengetahuan dan peningkatan metrik.
Brent berpendapat ada tiga metrik utama yang Anda perlukan untuk menyetel performa mobil dan database:bobot, tolok ukur kecepatan (seperti 0 hingga 60), dan seberapa keras mesin (server) bekerja.
Mengukur ukuran basis data
Berat untuk SQL Server diterjemahkan menjadi ukuran database total dan berapa banyak data yang Anda miliki. Ini biasanya diukur dalam gigabyte atau terabyte. Dari sekitar 1-150 GB, SQL Server Standard Edition sudah cukup. Dari 150-500 GB adalah beban yang mudah untuk Edisi Perusahaan. Di luar 500 GB, mulai menjadi masalah apakah itu data aktif dan bagaimana itu diakses. Dan, data OLTP lebih dari 1 TB bisa sangat menantang.
Melacak kecepatan kinerja
Tolok ukur kecepatan di mobil itu mudah – MPH. Untuk database, ini adalah permintaan batch per detik, tetapi ini perlu menjadi tren setiap jam selama periode waktu yang berbeda. Jelas, semakin banyak kueri yang ada, semakin lambat kinerjanya tergantung pada perangkat kerasnya.
Menilai beban kerja kueri
Terakhir, untuk memahami seberapa keras database bekerja, Anda perlu memahami kueri apa yang sedang berjalan dan apa yang menunggu dalam antrean. Ini akan memberi Anda rasio waktu tunggu – pada dasarnya berapa lama tugas menunggu yang lain selesai. Rasio waktu tunggu Anda akan dinyatakan sebagai jam waktu tunggu per jam (atau detik waktu tunggu per detik) – jangan campur unit pengukuran Anda. Ketika Anda memiliki pegangan yang baik pada statistik ini dari waktu ke waktu, Anda dapat melihat apa yang memengaruhi waktu tunggu, misalnya, jika ada lebih banyak atau lebih sedikit permintaan batch, kueri yang disetel lebih baik atau lebih buruk, dll. Kemudian, Anda dapat mengatasi masalah tersebut.
Tonton rekaman webinar sesuai permintaan untuk semua nasihat bijak dan humor Brent.