Mempercepat dan menyelaraskan kinerja

Selesai

Memahami opsi Anda untuk mempercepat dan menyetel performa untuk Azure SQL adalah kunci untuk melaju lebih jauh dalam memberikan performa yang konsisten. Ini termasuk memahami cara menskalakan kapasitas CPU, meningkatkan kinerja I/O, mengonfigurasi memori dan pekerja, meningkatkan latensi aplikasi, dan menerapkan praktik terbaik standar untuk penyetelan SQL Server.

Skala kapasitas CPU

Anda mungkin perlu menskalakan jumlah CPU untuk kebutuhan sumber daya Anda. Untuk lingkungan di tempat, ini akan mengharuskan Anda untuk mengonfigurasi ulang VM, mengubah perangkat keras, dan bahkan memigrasikan database Anda. Azure SQL memungkinkan Anda melakukan ini tanpa migrasi dari pihak Anda. Anda dapat menggunakan portal, T-SQL, Azure CLI, atau API REST untuk menskalakan jumlah vCores Anda ke atas atau ke bawah untuk penyebaran Anda.

Downtime biasanya diperlukan, tetapi ini bisa sangat cepat untuk Azure SQL Database tanpa migrasi. Penerapan hyperscale memungkinkan Anda untuk meningkatkan dalam waktu konstan terlepas dari ukuran data, dan penyebaran Tanpa Server memungkinkan penghitungan otomatis berdasarkan permintaan CPU.

Catatan

Penskalaan Azure SQL Managed Instance dapat memakan waktu yang signifikan, tetapi tidak memerlukan migrasi apa pun.

Kinerja I/O

Kinerja I/O dapat sangat penting bagi aplikasi database. Azure SQL mengabstraksi Anda dari penempatan file fisik, tetapi ada metode untuk memastikan Anda mendapatkan kinerja I/O yang Anda butuhkan.

Input/output per detik (IOPS) mungkin penting bagi aplikasi Anda. Pastikan Anda telah memilih tingkat layanan dan vCore yang tepat untuk kebutuhan IOPS Anda. Pahami cara mengukur IOPS untuk kueri Anda di tempat jika Anda melakukan migrasi ke Azure. Jika Anda memiliki batasan pada IOPS, Anda mungkin melihat I/O panjang menunggu. Dalam model pembelian vCore, Anda dapat meningkatkan vCore atau pindah ke Business Critical atau Hyperscale jika Anda tidak memiliki cukup IOPS. Untuk beban kerja produksi, saat menggunakan DTU, sebaiknya pindah ke tingkat Premium.

Latensi I/O adalah komponen kunci lain untuk kinerja I/O. Untuk latensi I/O yang lebih cepat untuk Azure SQL Database, pertimbangkan Business Critical atau Hyperscale. Untuk latensi I/O yang lebih cepat untuk SQL Managed Instance, pindah ke Business Critical atau menambah ukuran file atau jumlah file untuk database. Meningkatkan latensi log transaksi mungkin mengharuskan Anda menggunakan transaksi multistatement.

Menambah memori atau pekerja

Memiliki cukup memori atau pekerja mungkin penting untuk aplikasi dan penyebaran Anda. Untuk Azure SQL Database, tingkatkan vCores untuk batas memori atau pekerja yang lebih tinggi. Untuk SQL Managed Instance, tingkatkan vCores untuk batas memori yang lebih tinggi. Saat ini, SQL Managed Instance juga mendukung peningkatan pekerja dengan "benang pekerja maks."

Meningkatkan latensi aplikasi

Meskipun Anda mengonfigurasi penerapan untuk semua kebutuhan sumber daya Anda, aplikasi mungkin menimbulkan masalah kinerja latensi. Pastikan untuk mengikuti praktik terbaik ini dengan aplikasi Azure SQL:

  • Gunakan tipe sambungan pengalihan, bukan proksi.
  • Optimalkan aplikasi "cerewet" dengan menggunakan prosedur yang disimpan, atau dengan membatasi jumlah perjalanan pulang pergi kueri melalui teknik seperti batch.
  • Optimalkan transaksi dengan mengelompokkannya, dibandingkan dengan transaksi singleton.

Menyetel seperti itu adalah SQL Server

Azure SQL masih SQL Server. Hampir tidak pernah ada pengganti untuk memastikan Anda menyetel kueri SQL Server Anda dan melihat yang berikut ini:

  • Desain indeks yang tepat
  • Menggunakan batch
  • Dapatkan prosedur tersimpan
  • Membuat parameter kueri untuk menghindari terlalu banyak kueri ad hoc yang di-cache
  • Pemrosesan menghasilkan aplikasi Anda dengan cepat dan benar

Pada latihan berikutnya, Anda akan mengambil masalah performa dari latihan pertama dan meningkatkannya dengan menskalakan CPU untuk Azure SQL.