Menentukan apakah Tabel atau Prosedur Tersimpan Harus Di-Port ke OLTP Dalam Memori

Berlaku untuk:SQL ServerAzure SQL DatabaseAzure SQL Managed Instance

Laporan Analisis Performa Transaksi di SQL Server Management Studio membantu Anda mengevaluasi apakah OLTP Dalam Memori akan meningkatkan performa aplikasi database Anda. Laporan ini juga menunjukkan berapa banyak pekerjaan yang harus Anda lakukan untuk mengaktifkan OLTP Dalam Memori di aplikasi Anda. Setelah mengidentifikasi tabel berbasis disk ke port ke OLTP Dalam Memori, Anda dapat menggunakan Memory Optimization Advisor, untuk membantu Anda memigrasikan tabel. Demikian pula, Native Compilation Advisor akan membantu Anda memindahkan prosedur tersimpan ke prosedur tersimpan yang dikompilasi secara asli. Untuk informasi tentang metodologi migrasi, lihat OLTP Dalam Memori - Pola Beban Kerja Umum dan Pertimbangan Migrasi.

Laporan Analisis Performa Transaksi dijalankan langsung terhadap database produksi, atau database pengujian dengan beban kerja aktif yang mirip dengan beban kerja produksi.

Laporan dan penasihat migrasi membantu Anda menyelesaikan tugas-tugas berikut:

  • Analisis beban kerja Anda untuk menentukan hot spot di mana OLTP Dalam Memori berpotensi membantu meningkatkan performa. Laporan Analisis Performa Transaksi merekomendasikan tabel dan prosedur tersimpan yang akan mendapat manfaat paling banyak dari konversi ke OLTP Dalam Memori.

  • Membantu Anda merencanakan dan menjalankan migrasi ke OLTP Dalam Memori. Jalur migrasi dari tabel berbasis disk ke tabel yang dioptimalkan memori dapat memakan waktu. Memory-Optimization Advisor membantu Anda mengidentifikasi ketidakcocokan dalam tabel yang harus Anda hapus sebelum memindahkan tabel ke OLTP Dalam Memori. Memory-Optimization Advisor juga membantu Anda memahami dampak migrasi tabel ke tabel yang dioptimalkan memori pada aplikasi Anda.

    Anda dapat melihat apakah aplikasi Anda akan mendapat manfaat dari OLTP Dalam Memori, ketika Anda ingin merencanakan migrasi Anda ke OLTP Dalam Memori, dan setiap kali Anda bekerja untuk memigrasikan beberapa tabel dan prosedur tersimpan ke OLTP Dalam Memori.

    Penting

    Performa sistem database tergantung pada berbagai faktor, tidak semuanya dapat diamati dan diukur oleh pengumpul performa transaksi. Oleh karena itu, laporan analisis performa transaksi tidak menjamin perolehan performa aktual akan sesuai dengan prediksinya, jika ada prediksi yang dibuat.

Laporan Analisis Performa Transaksi dan penasihat migrasi diinstal sebagai bagian dari SQL Server Management Studio (SSMS) saat Anda memilih Alat Manajemen-Dasar atau Alat Manajemen-Tingkat Lanjut saat Anda menginstal SQL Server, atau saat Anda Mengunduh SQL Server Management Studio.

Laporan Analisis Performa Transaksi

Anda dapat membuat laporan analisis performa transaksi di Object Explorer dengan mengklik kanan database, memilih Laporan, lalu Laporan Standar, lalu Gambaran Umum Analisis Performa Transaksi. Database harus memiliki beban kerja aktif, atau menjalankan beban kerja terbaru, untuk menghasilkan laporan analisis yang bermakna.

Tabel

Laporan detail untuk tabel terdiri dari tiga bagian:

  • Bagian Statistik Pemindaian

    Bagian ini mencakup satu tabel yang memperlihatkan statistik yang dikumpulkan tentang pemindaian pada tabel database. Kolomnya adalah:

    • Persentase total akses. Persentase pemindaian dan pencarian pada tabel ini sehubungan dengan aktivitas seluruh database. Semakin tinggi persentase ini, semakin banyak tabel yang digunakan dibandingkan dengan tabel lain dalam database.

    • Statistik Pencarian/Statistik Pemindaian Rentang. Kolom ini merekam jumlah pencarian titik dan pemindaian rentang (pemindaian indeks dan pemindaian tabel) yang dilakukan pada tabel selama pembuatan profil. Rata-rata per transaksi adalah perkiraan.

  • Bagian Statistik Pertikaian

    Bagian ini menyertakan tabel yang memperlihatkan pertikaian pada tabel database. Untuk informasi selengkapnya mengenai kait dan kunci database, silakan lihat Arsitektur Penguncian. Kolomnya adalah sebagai berikut:

    • Persen dari total menunggu. Persentase latch dan kunci menunggu pada tabel database ini dibandingkan dengan aktivitas database. Semakin tinggi persentase ini, semakin banyak tabel yang digunakan dibandingkan dengan tabel lain dalam database.

    • Statistik Kait. Kolom ini merekam jumlah kait menunggu kueri yang melibatkan untuk tabel ini. Untuk informasi tentang kait, lihat Latching. Semakin tinggi angka ini, semakin banyak ketidakcocokan kait pada tabel.

    • Kunci Statistik. Grup kolom ini merekam jumlah akuisisi kunci halaman dan menunggu kueri untuk tabel ini. Untuk informasi selengkapnya tentang kunci, lihat Memahami Penguncian di SQL Server. Semakin banyak menunggu, semakin banyak pertikaian kunci pada tabel.

  • Bagian Kesulitan Migrasi

    Bagian ini mencakup tabel yang memperlihatkan kesulitan mengonversi tabel database ini ke tabel yang dioptimalkan memori. Peringkat kesulitan yang lebih tinggi menunjukkan lebih sulit untuk mengonversi tabel. Untuk melihat detail untuk mengonversi tabel database ini, silakan gunakan Memory Optimization Advisor.

Statistik pemindaian dan ketidakcocokan pada laporan detail tabel dikumpulkan dan dikumpulkan dari sys.dm_db_index_operational_stats (Transact-SQL).

Prosedur Tersimpan

Prosedur tersimpan dengan rasio waktu CPU yang tinggi untuk waktu yang berlalu adalah kandidat untuk migrasi. Laporan menunjukkan semua referensi tabel, karena prosedur tersimpan yang dikompilasi secara asli hanya dapat mereferensikan tabel yang dioptimalkan memori, yang dapat ditambahkan ke biaya migrasi.

Laporan detail untuk prosedur tersimpan terdiri dari dua bagian:

  • Bagian Statistik Eksekusi

    Bagian ini mencakup tabel yang menunjukkan statistik yang dikumpulkan tentang eksekusi prosedur tersimpan. Kolomnya adalah sebagai berikut:

    • Waktu Singgahan. Waktu rencana eksekusi ini di-cache. Jika prosedur tersimpan keluar dari cache paket dan masuk kembali, akan ada waktu untuk setiap cache.

    • Total Waktu CPU. Total waktu CPU yang digunakan prosedur tersimpan selama pembuatan profil. Semakin tinggi angka ini, semakin banyak CPU yang digunakan prosedur tersimpan.

    • Total Waktu Eksekusi. Jumlah total waktu eksekusi prosedur tersimpan yang digunakan selama pembuatan profil. Semakin tinggi perbedaan antara angka ini dan waktu CPU, semakin sedikit prosedur tersimpan yang menggunakan CPU.

    • Total Cache Terlewat. Jumlah cache yang terlewatkan (baca dari penyimpanan fisik) yang disebabkan oleh eksekusi prosedur tersimpan selama pembuatan profil.

    • Jumlah Eksekusi. Frekuensi prosedur tersimpan ini dijalankan selama pembuatan profil.

  • Bagian Referensi Tabel

    Bagian ini menyertakan tabel yang memperlihatkan tabel yang dirujuk oleh prosedur tersimpan ini. Sebelum mengonversi prosedur tersimpan menjadi prosedur tersimpan yang dikompilasi secara asli, semua tabel ini harus dikonversi ke tabel yang dioptimalkan memori, dan harus tetap berada di server dan database yang sama.

Statistik Eksekusi pada laporan detail prosedur tersimpan dikumpulkan dan dikumpulkan dari sys.dm_exec_procedure_stats (Transact-SQL). Referensi diperoleh dari sys.sql_expression_dependencies (Transact-SQL).

Untuk melihat detail tentang cara mengonversi prosedur tersimpan ke prosedur tersimpan yang dikompilasi secara asli, silakan gunakan Native Compilation Advisor.

Menghasilkan Daftar Periksa Migrasi OLTP Dalam Memori

Daftar periksa migrasi mengidentifikasi tabel atau fitur prosedur tersimpan yang tidak didukung dengan tabel yang dioptimalkan memori atau prosedur tersimpan yang dikompilasi secara asli. Pengoptimalan memori dan penasihat kompilasi asli dapat menghasilkan daftar periksa untuk satu tabel berbasis disk atau prosedur tersimpan T-SQL yang ditafsirkan. Dimungkinkan juga untuk membuat daftar periksa migrasi untuk beberapa tabel dan prosedur tersimpan dalam database.

Anda dapat membuat daftar periksa migrasi di SQL Server Management Studio dengan menggunakan perintah Hasilkan Daftar Periksa Migrasi OLTP Dalam Memori atau dengan menggunakan PowerShell.

Untuk menghasilkan daftar periksa migrasi menggunakan perintah UI

  1. Di Object Explorer, klik kanan database selain database sistem, klik Tugas, lalu klik Hasilkan Daftar Periksa Migrasi OLTP Dalam Memori.

  2. Dalam kotak dialog Hasilkan Daftar Periksa Migrasi OLTP Dalam Memori, klik Berikutnya untuk menavigasi ke halaman Konfigurasi Opsi Pembuatan Daftar Periksa. Pada halaman ini lakukan hal berikut.

    1. Masukkan jalur folder dalam kotak Simpan daftar centang ke .

    2. Verifikasi bahwa Hasilkan daftar periksa untuk tabel tertentu dan prosedur tersimpan dipilih.

    3. Perluas simpul Tabel dan Prosedur Tersimpan dalam kotak bagian.

    4. Pilih beberapa objek dalam kotak pilihan.

  3. Klik Berikutnya dan konfirmasikan bahwa daftar tugas cocok dengan pengaturan Anda di halaman Konfigurasi Opsi Pembuatan Daftar Periksa.

  4. Klik Selesai, lalu konfirmasikan bahwa laporan daftar periksa migrasi dibuat hanya untuk objek yang Anda pilih.

Anda dapat memverifikasi akurasi laporan dengan membandingkannya dengan laporan yang dihasilkan oleh alat Memory Optimization Advisor dan alat Native Compilation Advisor. Untuk informasi selengkapnya, lihat Memory Optimization Advisor dan Native Compilation Advisor.

Untuk menghasilkan daftar periksa migrasi menggunakan SQL Server PowerShell

  1. Di Object Explorer, klik database lalu klik Mulai PowerShell. Verifikasi bahwa perintah berikut muncul.

    PS SQLSERVER: \SQL\{Instance Name}\DEFAULT\Databases\{two-part DB Name}>  
    
  2. Masukkan perintah berikut.

    Save-SqlMigrationReport -FolderPath "<folder_path>"  
    
  3. Verifikasi hal berikut.

    • Jalur folder dibuat, jika belum ada.

    • Laporan daftar periksa migrasi dihasilkan untuk semua tabel dan prosedur tersimpan dalam database, dan laporan berada di lokasi yang ditentukan oleh folder_path.

Untuk menghasilkan daftar periksa migrasi menggunakan Windows PowerShell

  1. Mulai sesi Windows PowerShell yang ditingkatkan.

  2. Masukkan perintah berikut. Objek dapat berupa tabel atau prosedur tersimpan.

    [System.Reflection.Assembly]::LoadWithPartialName('Microsoft.SqlServer.SMO')  
    
    
    Save-SqlMigrationReport -Server "<instance_name>" -Database "<db_name>" -FolderPath "<folder_path1>"  
    
    
    Save-SqlMigrationReport -Server "<instance_name>" -Database "<db_name>" -Object <object_name> -FolderPath "<folder_path2>"  
    
    
  3. Verifikasi hal berikut.

    • Laporan daftar periksa migrasi dibuat untuk semua tabel dan prosedur tersimpan dalam database, dan laporan berada di lokasi yang ditentukan oleh folder_path.

    • Laporan daftar periksa migrasi untuk <object_name> adalah satu-satunya laporan di lokasi yang ditentukan oleh folder_path2.

Lihat Juga

Migrasi ke OLTP Dalam Memori