Získání doporučení Azure k migraci databáze SQL Server (Preview)

Rozšíření Azure SQL Migration pro Azure Data Studio vám pomůže posoudit požadavky na databázi, získat doporučení skladové položky správné velikosti pro prostředky Azure a migrovat databázi SQL Server do Azure.

Naučte se používat toto sjednocené prostředí a shromažďovat data o výkonu ze zdrojové SQL Server instance, abyste získali doporučení Azure správné velikosti pro vaše cíle Azure SQL.

Přehled

Před migrací na Azure SQL můžete pomocí rozšíření SQL Migration v Nástroji Azure Data Studio generovat doporučení správné velikosti (Preview) pro Azure SQL Database, Azure SQL Managed Instance a SQL Server v cílech Azure Virtual Machines. Tento nástroj vám pomůže shromáždit data o výkonu ze zdrojové instance SQL (spuštěné v místním prostředí nebo jiném cloudu) a doporučí konfiguraci výpočetních prostředků a úložiště podle potřeb vašich úloh.

Diagram představuje pracovní postup pro doporučení Azure v rozšíření Azure SQL Migration pro Azure Data Studio:

Diagram znázorňující pracovní postup procesu doporučení skladové položky

Poznámka

Posouzení a funkce doporučení Azure v rozšíření Azure SQL Migration pro Azure Data Studio podporuje instance zdrojového SQL Server spuštěné ve Windows nebo Linuxu.

Požadavky

Pokud chcete začít s doporučeními Azure (Preview) pro migraci databáze SQL Server, musíte splňovat následující požadavky:

Podporované zdroje a cíle

Doporučení Azure je možné generovat pro následující SQL Server verze:

  • SQL Server 2008 a novější verze jsou podporované ve Windows nebo Linuxu.
  • SQL Server spuštěné v jiných cloudech se můžou podporovat, ale přesnost výsledků se může lišit.

Doporučení Azure je možné generovat pro následující cíle Azure SQL:

  • Databáze Azure SQL
    • Řady hardwaru: Řada Standard (Gen5)
    • Úrovně služby: Pro obecné účely, Pro důležité obchodní informace, Hyperscale
  • Spravovaná instance Azure SQL
    • Řady hardwaru: Řada Standard (Gen5), Premium, Premium optimalizovaná pro paměť
    • Úrovně služby: Pro obecné účely, Pro důležité obchodní informace
  • SQL Server na virtuálním počítači Azure
    • Families virtuálních počítačů: Pro obecné účely, optimalizováno pro paměť
    • Řadu úložišť: SSD úrovně Premium

Shromažďování dat o výkonu

Před generováním doporučení je potřeba shromáždit data o výkonu ze zdrojové SQL Server instance. Během tohoto kroku shromažďování dat se dotazuje několik dynamických systémových zobrazení (DMV) z vaší instance SQL Server za účelem zachycení charakteristik výkonu vaší úlohy. Nástroj každých 30 sekund zaznamenává metriky, včetně využití procesoru, paměti, úložiště a vstupně-výstupních operací, a ukládá čítače výkonu místně do vašeho počítače jako sadu souborů CSV.

Úroveň instance

Tato data o výkonu se shromažďují jednou za instanci SQL Server:

Dimenze výkonu Popis Zobrazení dynamické správy (DMV)
SqlInstanceCpuPercent Množství procesoru, které proces SQL Server používal, v procentech sys.dm_os_ring_buffers
PhysicalMemoryInUse Celková paměťová stopa procesu SQL Server sys.dm_os_process_memory
MemoryUtilizationPercentage využití paměti SQL Server sys.dm_os_process_memory

úrovni databáze

Dimenze výkonu Popis Zobrazení dynamické správy (DMV)
DatabaseCpuPercent Celkové procento procesoru využité databází sys.dm_exec_query_stats
CachedSizeInMb Celková velikost mezipaměti používané databází v megabajtech sys.dm_os_buffer_descriptors

Úroveň souboru

Dimenze výkonu Popis Zobrazení dynamické správy (DMV)
ReadIOInMb Celkový počet megabajtů načtených z tohoto souboru sys.dm_io_virtual_file_stats
WriteIOInMb Celkový počet megabajtů zapsaných do tohoto souboru sys.dm_io_virtual_file_stats
NumOfReads Celkový počet čtení vydaných pro tento soubor sys.dm_io_virtual_file_stats
NumOfWrites Celkový počet zápisů vydaných pro tento soubor sys.dm_io_virtual_file_stats
ReadLatency Latence vstupně-výstupních operací čtení u tohoto souboru sys.dm_io_virtual_file_stats
WriteLatency Latence zápisu vstupně-výstupních operací u tohoto souboru sys.dm_io_virtual_file_stats

Aby bylo možné vygenerovat doporučení, vyžaduje se minimálně 10 minut shromažďování dat, ale pokud chcete přesně posoudit zatížení, doporučujeme spouštět shromažďování dat po dostatečně dlouhou dobu, abyste zachytili využití ve špičce i mimo špičku.

Pokud chcete zahájit proces shromažďování dat, začněte připojením ke zdrojové instanci SQL v nástroji Azure Data Studio a pak spusťte průvodce migrací SQL. V kroku 2 vyberte Získat doporučení Azure. Vyberte "Shromáždit údaje o výkonu nyní" a vyberte složku na vašem počítači, kam se shromážděná data uloží.

Snímek obrazovky znázorňující podokno průvodce pro shromažďování dat o výkonu pro doporučení skladové položky

Důležité

Proces shromažďování dat běží 10 minut, aby se vygenerovalo první doporučení. Proces shromažďování dat je důležité zahájit, když vaše aktivní databázové úlohy odrážejí využití, které je podobné jako v produkčních scénářích.

Po vygenerování prvního doporučení můžete pokračovat ve spuštění procesu shromažďování dat a zpřesnit doporučení. Tato možnost je užitečná zejména v případě, že se vzory využití v průběhu času mění.

Proces shromažďování dat začne, jakmile vyberete Spustit. Každých 10 minut se shromážděné datové body agregují a maximální, střední hodnota a rozptyl každého čítače se zapíšou na disk do sady tří souborů CSV.

Ve vybrané složce se obvykle zobrazí sada souborů CSV s následujícími příponami:

  • SQLServerInstance_CommonDbLevel_Counters.csv: Obsahuje statická konfigurační data týkající se rozložení souboru databáze a metadat.
  • SQLServerInstance_CommonInstanceLevel_Counters.csv: Obsahuje statická data o hardwarové konfiguraci instance serveru.
  • SQLServerInstance_PerformanceAggregated_Counters.csv: Obsahuje agregovaná data o výkonu, která se často aktualizují.

Během této doby nechte Azure Data Studio otevřené, ale můžete pokračovat v dalších operacích. Proces shromažďování dat můžete kdykoli zastavit tak, že se vrátíte na tuto stránku a vyberete Zastavit shromažďování dat.

Generování doporučení správné velikosti

Pokud jste již shromáždili data o výkonu z předchozí relace nebo jste používali jiný nástroj (například Database Migration Assistant), můžete importovat jakákoli existující data o výkonu výběrem možnosti Už mám data o výkonu. Pokračujte výběrem složky, do které jsou uložená data o výkonu (tři .csv soubory), a výběrem možnosti Spustit zahajte proces doporučení.

Snímek obrazovky znázorňující podokno pro import dat o výkonu pro doporučení skladové položky

Poznámka

První krok průvodce migrací SQL vás vyzve k výběru sady databází k posouzení. Jedná se o jediné databáze, které se při procesu doporučení budou brát v úvahu.

Proces shromažďování dat o výkonu však shromažďuje čítače výkonu pro všechny databáze ze zdrojové SQL Server instance, nejen těch, které byly vybrány.

To znamená, že dříve shromážděná data o výkonu je možné použít k opakovanému vygenerování doporučení pro jinou podmnožinu databází zadáním jiného seznamu v kroku 1.

Parametry doporučení

Existuje několik konfigurovatelných nastavení, která můžou mít vliv na vaše doporučení.

Snímek obrazovky znázorňující část parametrů doporučení

Vyberte možnost Upravit parametry a upravte tyto parametry podle svých potřeb.

Snímek obrazovky znázorňující různé parametry doporučení

  • Faktor škálování:
    Tato možnost umožňuje poskytnout vyrovnávací paměť, která se použije pro každou dimenzi výkonu. Tato možnost řeší problémy, jako jsou sezónní využití, krátká historie výkonu a pravděpodobné zvýšení budoucího využití. Pokud například zjistíte, že požadavek na procesor se čtyřmi virtuálními jádry má faktor škálování 150 %, skutečný požadavek na procesor je šest virtuálních jader.

    Výchozí objem faktoru škálování je 100 %.

  • Procentuální využití:
    Percentil datových bodů, které se mají použít jako data výkonu, se agreguje.

    Výchozí hodnota je 95. percentil.

  • Povolení funkcí ve verzi Preview:
    Tato možnost umožňuje doporučit konfigurace, které ještě nemusí být obecně dostupné všem uživatelům ve všech oblastech.

    Tato možnost je ve výchozím nastavení vypnutá.

  • Povolit elastické doporučení:

    Tato možnost používá alternativní model doporučení, který využívá přizpůsobenou profilaci ceny a výkonu pro stávající zákazníky v cloudu.

    Tato možnost je ve výchozím nastavení vypnutá.

Důležité

Pokud zavřete Azure Data Studio, proces shromažďování dat se ukončí. Data, která byla shromážděna do tohoto okamžiku, se uloží do vaší složky.

Pokud zavřete Azure Data Studio, zatímco probíhá shromažďování dat, použijte k restartování shromažďování dat některou z následujících možností:

  • Znovu otevřete Azure Data Studio a naimportujte datové soubory, které jsou uložené v místní složce. Pak ze shromážděných dat vygenerujte doporučení.
  • Znovu otevřete Azure Data Studio a znovu spusťte shromažďování dat pomocí průvodce migrací.

Minimální oprávnění

K dotazování potřebných systémových zobrazení pro shromažďování dat o výkonu jsou pro SQL Server přihlášení použité pro tuto úlohu vyžadována specifická oprávnění. Pomocí následujícího skriptu můžete vytvořit uživatele s minimálním oprávněním pro posouzení a shromažďování dat o výkonu:

-- 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];

Nepodporované scénáře a omezení

  • Doporučení Azure nezahrnují odhady cen, protože tato situace se může lišit v závislosti na oblasti, měně a slevách, jako je Zvýhodněné hybridní využití Azure. Pokud chcete získat odhady cen, použijte cenovou kalkulačku Azure nebo vytvořte hodnocení SQL ve službě Azure Migrate.
  • Doporučení pro Azure SQL Database s nákupním modelem založeným na jednotkách DTU se nepodporují.
  • V současné době se doporučení Azure pro bezserverovou výpočetní úroveň a elastické fondy služby Azure SQL Database nepodporují.
  • V současné době se doporučení Azure pro SQL Server na virtuálním počítači Azure s využitím SSD úrovně Premium v2 nepodporují.

Řešení potíží

  • Negenerovala se žádná doporučení.
    • Pokud nebyla vygenerována žádná doporučení, může tato situace znamenat, že nebyly identifikovány žádné konfigurace, které by plně splňovaly požadavky na výkon vaší zdrojové instance. Pokud chcete zjistit důvody, proč byla diskvalifikována konkrétní velikost, úroveň služby nebo řada hardwaru:
      • Přístup k protokolům z Azure Data Studia tak, že přejdete do nápovědy > Zobrazit všechny příkazy > Otevřít složku protokolů rozšíření.
      • Přejděte na Microsoft.mssql > SqlAssessmentLogs > open SkuRecommendationEvent.log.
      • Protokol obsahuje trasování všech potenciálních konfigurací, které byly posouzeny, a důvod, proč byla nebo nebyla považována za oprávněnou konfiguraci: Snímek obrazovky s protokolem doporučení skladové položky.
    • Zkuste znovu vygenerovat doporučení s povoleným elastickým doporučením . Tato možnost používá alternativní model doporučení, který využívá individuální profilaci ceny a výkonu pro stávající zákazníky v cloudu.

Další kroky