Dapatkan rekomendasi Azure untuk memigrasikan database SQL Server Anda
Artikel
Ekstensi Migrasi Azure SQL untuk Azure Data Studio membantu Anda menilai persyaratan database Anda, mendapatkan rekomendasi SKU berukuran tepat untuk sumber daya Azure, dan memigrasikan database SQL Server Anda ke Azure.
Pelajari cara menggunakan pengalaman terpadu ini, mengumpulkan data performa dari instans SQL Server sumber Anda untuk mendapatkan rekomendasi Azure berukuran tepat untuk target Azure SQL Anda.
Gambaran Umum
Sebelum bermigrasi ke Azure SQL, Anda dapat menggunakan ekstensi Migrasi SQL di Azure Data Studio untuk membantu Anda menghasilkan rekomendasi berukuran tepat untuk Azure SQL Database, Azure SQL Managed Instance, dan SQL Server pada target Azure Virtual Machines. Alat ini membantu Anda mengumpulkan data performa dari instans SQL sumber Anda (menjalankan lokal atau cloud lainnya), dan merekomendasikan konfigurasi komputasi dan penyimpanan untuk memenuhi kebutuhan beban kerja Anda.
Diagram menyajikan alur kerja untuk rekomendasi Azure di ekstensi Azure SQL Migration untuk Azure Data Studio:
Catatan
Penilaian dan fitur rekomendasi Azure di ekstensi Migrasi Azure SQL untuk Azure Data Studio mendukung instans SQL Server sumber yang berjalan di Windows atau Linux.
Prasyarat
Untuk mulai menggunakan rekomendasi Azure untuk migrasi database SQL Server, Anda harus memenuhi prasyarat berikut:
Rekomendasi Azure dapat dihasilkan untuk versi SQL Server berikut:
SQL Server 2008 dan versi yang lebih baru di Windows atau Linux didukung.
SQL Server yang berjalan di cloud lain mungkin didukung, tetapi akurasi hasil mungkin bervariasi
Rekomendasi Azure dapat dihasilkan untuk target Azure SQL berikut:
Azure SQL Database
Keluarga perangkat keras: Seri standar (Gen5)
Tingkat layanan: Tujuan Umum, Bisnis Kritis, Hyperscale
Azure SQL Managed Instance
Keluarga perangkat keras: Seri standar (Gen5), seri Premium, seri Premium yang dioptimalkan memori
Tingkat layanan: Tujuan Umum, Bisnis Penting
SQL Server di Azure Virtual Machine
Keluarga VM: Tujuan umum, dioptimalkan memori
Keluarga penyimpanan: SSD Premium
Pengumpulan data performa
Sebelum rekomendasi dapat dihasilkan, data performa perlu dikumpulkan dari instans SQL Server sumber Anda. Selama langkah pengumpulan data ini, beberapa tampilan sistem dinamis (DMV) dari instans SQL Server Anda dikueri untuk menangkap karakteristik performa beban kerja Anda. Alat ini menangkap metrik termasuk penggunaan CPU, memori, penyimpanan, dan IO setiap 30 detik, dan menyimpan penghitung kinerja secara lokal ke komputer Anda sebagai satu set file CSV.
Tingkat instans
Data performa ini dikumpulkan sekali per instans SQL Server:
Dimensi performa
Deskripsi
Tampilan Manajemen Dinamis (DMV)
SqlInstanceCpuPercent
Jumlah CPU yang digunakan proses SQL Server, sebagai persentase
sys.dm_os_ring_buffers
PhysicalMemoryInUse
Jejak memori keseluruhan proses SQL Server
sys.dm_os_process_memory
MemoryUtilizationPercentage
Pemanfaatan memori SQL Server
sys.dm_os_process_memory
Tingkat database
Dimensi performa
Deskripsi
Tampilan Manajemen Dinamis (DMV)
DatabaseCpuPercent
Persentase total CPU yang digunakan oleh database
sys.dm_exec_query_stats
CachedSizeInMb
Ukuran total dalam Megabyte cache yang digunakan oleh database
sys.dm_os_buffer_descriptors
Tingkat file
Dimensi performa
Deskripsi
Tampilan Manajemen Dinamis (DMV)
ReadIOInMb
Jumlah total megabyte yang dibaca dari file ini
sys.dm_io_virtual_file_stats
WriteIOInMb
Jumlah total megabyte yang ditulis ke file ini
sys.dm_io_virtual_file_stats
NumOfReads
Jumlah total bacaan yang dikeluarkan pada file ini
sys.dm_io_virtual_file_stats
NumOfWrites
Jumlah total penulisan yang dikeluarkan pada file ini
sys.dm_io_virtual_file_stats
ReadLatency
Latensi baca IO pada file ini
sys.dm_io_virtual_file_stats
WriteLatency
Latensi tulis IO pada file ini
sys.dm_io_virtual_file_stats
Minimal 10 menit pengumpulan data diperlukan sebelum rekomendasi dapat dihasilkan, tetapi untuk menilai beban kerja Anda secara akurat, disarankan agar Anda menjalankan pengumpulan data selama durasi yang cukup lama untuk menangkap penggunaan puncak dan di luar puncak.
Untuk memulai proses pengumpulan data, mulailah dengan menyambungkan ke instans SQL sumber Anda di Azure Data Studio, lalu luncurkan wizard Migrasi SQL. Pada langkah 2, pilih "Dapatkan rekomendasi Azure". Pilih "Kumpulkan data performa sekarang" dan pilih folder di komputer Anda tempat data yang dikumpulkan akan disimpan.
Proses pengumpulan data berjalan selama 10 menit untuk menghasilkan rekomendasi pertama. Penting untuk memulai proses pengumpulan data saat beban kerja database aktif Anda mencerminkan penggunaan yang mirip dengan skenario produksi Anda.
Setelah rekomendasi pertama dibuat, Anda dapat terus menjalankan proses pengumpulan data untuk menyempurnakan rekomendasi. Opsi ini sangat berguna jika pola penggunaan Anda bervariasi dari waktu ke waktu.
Proses pengumpulan data dimulai setelah Anda memilih Mulai. Setiap 10 menit, titik data yang dikumpulkan dikumpulkan dan maksimum, rata-rata dan varians setiap penghitung akan ditulis ke disk ke satu set tiga file CSV.
Anda biasanya melihat sekumpulan file CSV dengan akhiran berikut di folder yang dipilih:
SQLServerInstance_CommonDbLevel_Counters.csv: Berisi data konfigurasi statis tentang tata letak dan metadata file database.
SQLServerInstance_CommonInstanceLevel_Counters.csv: Berisi data statis tentang konfigurasi perangkat keras instans server.
SQLServerInstance_PerformanceAggregated_Counters.csv: Berisi data performa agregat yang sering diperbarui.
Selama waktu ini, biarkan Azure Data Studio terbuka, meskipun Anda dapat melanjutkan operasi lain. Kapan saja, Anda dapat menghentikan proses pengumpulan data dengan kembali ke halaman ini dan memilih Hentikan pengumpulan data.
Hasilkan rekomendasi berukuran tepat
Jika Anda telah mengumpulkan data performa dari sesi sebelumnya, atau menggunakan alat lain (seperti Asisten Migrasi Database), Anda dapat mengimpor data performa yang ada dengan memilih opsi Saya sudah memiliki data performa. Lanjutkan untuk memilih folder tempat data performa Anda (tiga file .csv) disimpan dan pilih Mulai untuk memulai proses rekomendasi.
Langkah salah satu wizard Migrasi SQL meminta Anda untuk memilih sekumpulan database yang akan dinilai, dan ini adalah satu-satunya database yang akan dipertimbangkan selama proses rekomendasi.
Namun, proses pengumpulan data performa mengumpulkan penghitung kinerja untuk semua database dari instans SQL Server sumber, bukan hanya yang dipilih.
Ini berarti bahwa data performa yang dikumpulkan sebelumnya dapat digunakan untuk berulang kali meregenerasi rekomendasi untuk subset database yang berbeda dengan menentukan daftar yang berbeda pada langkah pertama.
Parameter rekomendasi
Ada beberapa pengaturan yang dapat dikonfigurasi yang dapat memengaruhi rekomendasi Anda.
Pilih opsi Edit parameter untuk menyesuaikan parameter ini sesuai dengan kebutuhan Anda.
Faktor skala:
Opsi ini memungkinkan Anda menyediakan buffer untuk diterapkan ke setiap dimensi performa. Opsi ini menyurati masalah seperti penggunaan musiman, riwayat performa singkat, dan kemungkinan peningkatan penggunaan di masa mendatang. Misalnya, jika Anda menentukan bahwa persyaratan CPU empat vCore memiliki faktor skala 150%, persyaratan CPU yang sebenarnya adalah enam vCore.
Volume faktor skala default adalah 100%.
Pemanfaatan persentase:
Persentil poin data yang akan digunakan sebagai data performa dikumpulkan.
Nilai defaultnya adalah persentil ke-95.
Aktifkan fitur pratinjau:
Opsi ini memungkinkan konfigurasi direkomendasikan yang mungkin belum tersedia secara umum untuk semua pengguna di semua wilayah.
Opsi ini dinonaktifkan secara default.
Aktifkan rekomendasi elastis:
Opsi ini menggunakan model rekomendasi alternatif yang menggunakan pembuatan profil performa harga yang dipersonalisasi terhadap pelanggan di cloud yang ada.
Opsi ini dinonaktifkan secara default.
Proses pengumpulan data berakhir jika Anda menutup Azure Data Studio. Data yang dikumpulkan hingga titik tersebut disimpan di folder Anda.
Jika Anda menutup Azure Data Studio saat pengumpulan data sedang berlangsung, gunakan salah satu opsi berikut untuk memulai ulang pengumpulan data:
Buka kembali Azure Data Studio dan impor file data yang disimpan di folder lokal Anda. Kemudian, buat rekomendasi dari data yang dikumpulkan.
Buka kembali Azure Data Studio dan mulai pengumpulan data lagi dengan menggunakan wizard migrasi.
Izin minimum
Untuk mengkueri tampilan sistem yang diperlukan untuk pengumpulan data performa, izin tertentu diperlukan untuk login SQL Server yang digunakan untuk tugas ini. Anda dapat membuat pengguna dengan hak istimewa minimum untuk penilaian dan pengumpulan data performa menggunakan skrip berikut:
-- Create a login to run the assessment
USE master;
GO
CREATE LOGIN [assessment]
WITH PASSWORD = '<STRONG PASSWORD>';
-- Create user in every database other than TempDB and model and provide minimal read-only permissions
EXECUTE sp_MSforeachdb '
USE [?];
IF (''?'' NOT IN (''TempDB'',''model''))
BEGIN TRY
CREATE USER [assessment] FOR LOGIN [assessment]
END TRY
BEGIN CATCH
PRINT ERROR_MESSAGE()
END CATCH';
EXECUTE sp_MSforeachdb '
USE [?];
IF (''?'' NOT IN (''tempdb'',''model''))
BEGIN TRY
GRANT SELECT ON sys.sql_expression_dependencies TO [assessment]
END TRY
BEGIN CATCH
PRINT ERROR_MESSAGE()
END CATCH';
EXECUTE sp_MSforeachdb '
USE [?];
IF (''?'' NOT IN (''tempdb'',''model''))
BEGIN TRY
GRANT VIEW DATABASE STATE TO [assessment]
END TRY
BEGIN CATCH
PRINT ERROR_MESSAGE()
END CATCH';
-- Provide server level read-only permissions
GRANT SELECT ON sys.sql_expression_dependencies TO [assessment];
GRANT SELECT ON sys.sql_expression_dependencies TO [assessment];
GRANT EXECUTE ON OBJECT::sys.xp_regenumkeys TO [assessment];
GRANT VIEW DATABASE STATE TO assessment;
GRANT VIEW SERVER STATE TO assessment;
GRANT VIEW ANY DEFINITION TO assessment;
-- Provide msdb specific permissions
USE msdb;
GO
GRANT EXECUTE ON [msdb].[dbo].[agent_datetime] TO [assessment];
GRANT SELECT ON [msdb].[dbo].[sysjobsteps] TO [assessment];
GRANT SELECT ON [msdb].[dbo].[syssubsystems] TO [assessment];
GRANT SELECT ON [msdb].[dbo].[sysjobhistory] TO [assessment];
GRANT SELECT ON [msdb].[dbo].[syscategories] TO [assessment];
GRANT SELECT ON [msdb].[dbo].[sysjobs] TO [assessment];
GRANT SELECT ON [msdb].[dbo].[sysmaintplan_plans] TO [assessment];
GRANT SELECT ON [msdb].[dbo].[syscollector_collection_sets] TO [assessment];
GRANT SELECT ON [msdb].[dbo].[sysmail_profile] TO [assessment];
GRANT SELECT ON [msdb].[dbo].[sysmail_profileaccount] TO [assessment];
GRANT SELECT ON [msdb].[dbo].[sysmail_account] TO [assessment];
-- USE master;
-- GO
-- EXECUTE sp_MSforeachdb 'USE [?]; BEGIN TRY DROP USER [assessment] END TRY BEGIN CATCH SELECT ERROR_MESSAGE() END CATCH';
-- DROP LOGIN [assessment];
Skenario dan batasan yang tidak didukung
Rekomendasi Azure tidak menyertakan perkiraan harga, karena situasi ini mungkin bervariasi tergantung pada wilayah, mata uang, dan diskon seperti Azure Hybrid Benefit. Untuk mendapatkan perkiraan harga, gunakan Kalkulator Harga Azure, atau buat penilaian SQL di Azure Migrate.
Rekomendasi untuk Azure SQL Database dengan model pembelian berbasis DTU tidak didukung.
Saat ini, rekomendasi Azure untuk tingkat komputasi tanpa server Azure SQL Database dan Kumpulan Elastis tidak didukung.
Pecahkan masalah
Tidak ada rekomendasi yang dihasilkan
Jika tidak ada rekomendasi yang dihasilkan, situasi ini dapat berarti bahwa tidak ada konfigurasi yang diidentifikasi yang dapat sepenuhnya memenuhi persyaratan performa instans sumber Anda. Untuk melihat alasan mengapa ukuran, tingkat layanan, atau keluarga perangkat keras tertentu didiskualifikasi:
Akses log dari Azure Data Studio dengan masuk ke Bantuan > Tampilkan Semua Perintah > Buka Folder Log Ekstensi
Navigasi ke Microsoft.mssql SqlAssessmentLogs > > terbuka SkuRecommendationEvent.log
Log berisi jejak setiap konfigurasi potensial yang dinilai dan alasan mengapa itu /tidak dianggap sebagai konfigurasi yang memenuhi syarat:
Coba regenerasi rekomendasi dengan rekomendasi elastis diaktifkan. Opsi ini menggunakan model rekomendasi alternatif, yang menggunakan pembuatan profil performa harga yang dipersonalisasi terhadap pelanggan di cloud yang ada.
Pelajari beberapa alat penilaian yang memfasilitasi migrasi database ke Azure, termasuk ekstensi Migrasi Azure SQL untuk Azure Data Studio, Azure Migrate, dan Asisten Migrasi Data.