Konfigurace prostředí Azure-SSIS Integration Runtime pro zajištění vysokého výkonu
PLATÍ PRO: Azure Data Factory Azure Synapse Analytics
Tip
Vyzkoušejte si službu Data Factory v Microsoft Fabric, řešení pro analýzy typu all-in-one pro podniky. Microsoft Fabric zahrnuje všechno od přesunu dat až po datové vědy, analýzy v reálném čase, business intelligence a vytváření sestav. Přečtěte si, jak začít používat novou zkušební verzi zdarma.
Tento článek popisuje, jak nakonfigurovat prostředí Azure-SSIS Integration Runtime (IR) pro zajištění vysokého výkonu. Prostředí Azure-SSIS IR umožňuje nasazovat a spouštět balíčky SSIS (SQL Server Integration Services) v Azure. Další informace o prostředí Azure-SSIS IR najdete v článku o prostředí Integration Runtime . Informace o nasazení a spouštění balíčků SSIS v Azure najdete v tématu "Lift and shift" úloh služby SQL Server Integration Services do cloudu.
Důležité
Tento článek obsahuje výsledky výkonu a pozorování z interního testování provedeného členy vývojového týmu služby SSIS. Vaše výsledky se můžou lišit. Před dokončením nastavení konfigurace proveďte vlastní testování, které ovlivňují náklady i výkon.
Vlastnosti ke konfiguraci
Následující část konfiguračního skriptu ukazuje vlastnosti, které můžete nakonfigurovat při vytváření prostředí Azure-SSIS Integration Runtime. Úplný skript a popis PowerShellu najdete v tématu Nasazení balíčků služby SQL Server Integration Services do Azure.
# If your input contains a PSH special character, e.g. "$", precede it with the escape character "`" like "`$"
$SubscriptionName = "[your Azure subscription name]"
$ResourceGroupName = "[your Azure resource group name]"
$DataFactoryName = "[your data factory name]"
# For supported regions, see https://azure.microsoft.com/global-infrastructure/services/?products=data-factory®ions=all
$DataFactoryLocation = "EastUS"
### Azure-SSIS integration runtime information - This is a Data Factory compute resource for running SSIS packages
$AzureSSISName = "[specify a name for your Azure-SSIS IR]"
$AzureSSISDescription = "[specify a description for your Azure-SSIS IR]"
# For supported regions, see https://azure.microsoft.com/global-infrastructure/services/?products=data-factory®ions=all
$AzureSSISLocation = "EastUS"
# For supported node sizes, see https://azure.microsoft.com/pricing/details/data-factory/ssis/
$AzureSSISNodeSize = "Standard_D8_v3"
# 1-10 nodes are currently supported
$AzureSSISNodeNumber = 2
# Azure-SSIS IR edition/license info: Standard or Enterprise
$AzureSSISEdition = "Standard" # Standard by default, while Enterprise lets you use advanced/premium features on your Azure-SSIS IR
# Azure-SSIS IR hybrid usage info: LicenseIncluded or BasePrice
$AzureSSISLicenseType = "LicenseIncluded" # LicenseIncluded by default, while BasePrice lets you bring your existing SQL Server license with Software Assurance to earn cost savings from Azure Hybrid Benefit (AHB) option
# For a Standard_D1_v2 node, up to 4 parallel executions per node are supported, but for other nodes, up to max(2 x number of cores, 8) are currently supported
$AzureSSISMaxParallelExecutionsPerNode = 8
# Custom setup info
$SetupScriptContainerSasUri = "" # OPTIONAL to provide SAS URI of blob container where your custom setup script and its associated files are stored
# Virtual network info: Classic or Azure Resource Manager
$VnetId = "[your virtual network resource ID or leave it empty]" # REQUIRED if you use Azure SQL Database with virtual network service endpoints/SQL Managed Instance/on-premises data, Azure Resource Manager virtual network is recommended, Classic virtual network will be deprecated soon
$SubnetName = "[your subnet name or leave it empty]" # WARNING: Please use the same subnet as the one used with your Azure SQL Database with virtual network service endpoints or a different subnet than the one used for your SQL Managed Instance
### SSISDB info
$SSISDBServerEndpoint = "[your server name or managed instance name.DNS prefix].database.windows.net" # WARNING: Please ensure that there is no existing SSISDB, so we can prepare and manage one on your behalf
# Authentication info: SQL or Azure Active Directory (AAD)
$SSISDBServerAdminUserName = "[your server admin username for SQL authentication or leave it empty for AAD authentication]"
$SSISDBServerAdminPassword = "[your server admin password for SQL authentication or leave it empty for AAD authentication]"
$SSISDBPricingTier = "[Basic|S0|S1|S2|S3|S4|S6|S7|S9|S12|P1|P2|P4|P6|P11|P15|…|ELASTIC_POOL(name = <elastic_pool_name>) for Azure SQL Database or leave it empty for SQL Managed Instance]"
AzureSSISLocation
AzureSSISLocation je umístění pracovního uzlu prostředí Integration Runtime. Pracovní uzel udržuje konstantní připojení k databázi katalogu SSIS (SSISDB) ve službě Azure SQL Database. Nastavte AzureSSISLocation na stejné umístění jako logický SQL server, který hostuje databázi SSISDB, což umožňuje prostředí Integration Runtime pracovat co nejefektivněji.
AzureSSISNodeSize
Data Factory, včetně Azure-SSIS IR, podporuje následující možnosti:
- Standard_A4_v2
- Standard_A8_v2
- Standard_D1_v2
- Standard_D2_v2
- Standard_D3_v2
- Standard_D4_v2
- Standard_D2_v3
- Standard_D4_v3
- Standard_D8_v3
- Standard_D16_v3
- Standard_D32_v3
- Standard_D64_v3
- Standard_E2_v3
- Standard_E4_v3
- Standard_E8_v3
- Standard_E16_v3
- Standard_E32_v3
- Standard_E64_v3
V neoficiálním interním testování technického týmu SSIS se zdá, že řada D je vhodnější pro spouštění balíčků SSIS než řada A.
- Poměr výkonu a ceny řady D je vyšší než řada A a poměr výkonu a ceny řady v3 je vyšší než řada v2.
- Propustnost pro řadu D je vyšší než řada A za stejnou cenu a propustnost pro řadu v3 je vyšší než řada v2 za stejnou cenu.
- Uzly řady v2 prostředí Azure-SSIS IR nejsou vhodné pro vlastní nastavení, proto místo toho použijte uzly řady v3. Pokud už uzly řady v2 používáte, co nejdříve přepněte na uzly řady v3.
- Řada E je velikostí virtuálních počítačů optimalizovaných pro paměť, která poskytuje vyšší poměr paměti k procesoru než jiné počítače. Pokud váš balíček vyžaduje hodně paměti, můžete zvážit volbu virtuálního počítače řady E.
Konfigurace pro rychlost spouštění
Pokud nemáte mnoho balíčků ke spuštění a chcete, aby se balíčky spouštějí rychle, použijte informace v následujícím grafu k výběru typu virtuálního počítače vhodného pro váš scénář.
Tato data představují jedno spuštění balíčku na jednom pracovním uzlu. Balíček načte 3 miliony záznamů se sloupci s křestním jménem a příjmením ze služby Azure Blob Storage, vygeneruje sloupec s úplným názvem a zapíše záznamy, které mají celé jméno delší než 20 znaků, do služby Azure Blob Storage.
Osa y je počet balíčků, které dokončily provádění v jedné hodině. Upozorňujeme, že se jedná pouze o výsledek testu jednoho balíčku využívajícího paměť. Pokud chcete znát propustnost balíčku, doporučujeme provést test sami.
Konfigurace pro celkovou propustnost
Pokud máte velké množství balíčků, které se mají spustit, a zajímá vás hlavně celková propustnost, použijte informace v následujícím grafu k výběru typu virtuálního počítače vhodného pro váš scénář.
Osa y je počet balíčků, které dokončily provádění v jedné hodině. Upozorňujeme, že se jedná pouze o výsledek testu jednoho balíčku využívajícího paměť. Pokud chcete znát propustnost balíčku, doporučujeme provést test sami.
AzureSSISNodeNumber
AzureSSISNodeNumber upravuje škálovatelnost prostředí Integration Runtime. Propustnost prostředí Integration Runtime je úměrná hodnotě AzureSSISNodeNumber. Nejprve nastavte hodnotu AzureSSISNodeNumber na malou hodnotu, monitorujte propustnost prostředí Integration Runtime a pak upravte hodnotu pro váš scénář. Informace o změně konfigurace počtu pracovních uzlů najdete v tématu Správa prostředí Azure-SSIS Integration Runtime.
AzureSSISMaxParallelExecutionsPerNode
Pokud už ke spouštění balíčků používáte výkonný pracovní uzel, může zvýšením hodnoty AzureSSISMaxParallelExecutionsPerNode zvýšit celkovou propustnost prostředí Integration Runtime. Pokud chcete zvýšit maximální hodnotu, musíte pomocí Azure PowerShellu aktualizovat AzureSSISMaxParallelExecutionsPerNode. Odpovídající hodnotu můžete odhadnout na základě nákladů na balíček a následujících konfigurací pracovních uzlů. Další informace najdete v tématu Velikosti virtuálních počítačů pro obecné účely.
Velikost | Virtuální procesory | Paměť: GiB | Dočasné úložiště (SSD): GiB | Maximální propustnost dočasného úložiště: IOPS / čtení v MB/s / zápis v MB/s | Maximální propustnost datových disků: IOPS | Max. počet síťových karet / Očekávaný výkon sítě (Mb/s) |
---|---|---|---|---|---|---|
Standard_D1_v2 | 0 | 3.5 | 50 | 3000 / 46 / 23 | 2 / 2×500 | 2 / 750 |
Standard_D2_v2 | 2 | 7 | 100 | 6000 / 93 / 46 | 4 / 4×500 | 2 / 1 500 |
Standard_D3_v2 | 4 | 14 | 200 | 12000 / 187 / 93 | 8 / 8×500 | 4 / 3 000 |
Standard_D4_v2 | 8 | 28 | 400 | 24000 / 375 / 187 | 16 / 16×500 | 8 / 6 000 |
Standard_A4_v2 | 4 | 8 | 40 | 4000 / 80 / 40 | 8 / 8×500 | 4 / 1 000 |
Standard_A8_v2 | 8 | 16 | 80 | 8000 / 160 / 80 | 16 / 16×500 | 8 / 2 000 |
Standard_D2_v3 | 2 | 8 | 50 | 3000 / 46 / 23 | 4 / 6x500 | 2 / 1 000 |
Standard_D4_v3 | 4 | 16 | 100 | 6000 / 93 / 46 | 8 / 12x500 | 2 / 2 000 |
Standard_D8_v3 | 8 | 32 | 200 | 12000 / 187 / 93 | 16 / 24x500 | 4 / 4000 |
Standard_D16_v3 | 16 | 64 | 400 | 24000 / 375 / 187 | 32/ 48x500 | 8 / 8000 |
Standard_D32_v3 | 32 | 128 | 800 | 48000 / 750 / 375 | 32 / 96x500 | 8 / 16 000 |
Standard_D64_v3 | 64 | 256 | 1600 | 96000 / 1000 / 500 | 32 / 192x500 | 8 / 30000 |
Standard_E2_v3 | 2 | 16 | 50 | 3000 / 46 / 23 | 4 / 6x500 | 2 / 1 000 |
Standard_E4_v3 | 4 | 32 | 100 | 6000 / 93 / 46 | 8 / 12x500 | 2 / 2 000 |
Standard_E8_v3 | 8 | 64 | 200 | 12000 / 187 / 93 | 16 / 24x500 | 4 / 4000 |
Standard_E16_v3 | 16 | 128 | 400 | 24000 / 375 / 187 | 32 / 48x500 | 8 / 8000 |
Standard_E32_v3 | 32 | 256 | 800 | 48000 / 750 / 375 | 32 / 96x500 | 8 / 16 000 |
Standard_E64_v3 | 64 | 432 | 1600 | 96000 / 1000 / 500 | 32 / 192x500 | 8 / 30000 |
Tady jsou pokyny pro nastavení správné hodnoty pro vlastnost AzureSSISMaxParallelExecutionsPerNode :
- Nastavte ji na malou hodnotu na první pohled.
- Zvyšte ji o malou částku, abyste zkontrolovali, jestli se zlepšila celková propustnost.
- Pokud celková propustnost dosáhne maximální hodnoty, zastavte zvýšení hodnoty.
SSISDBPricingTier
SSISDBPricingTier je cenová úroveň pro databázi katalogu SSIS (SSISDB) ve službě Azure SQL Database. Toto nastavení má vliv na maximální počet pracovních procesů v instanci IR, rychlost zařadí do fronty spuštění balíčku a rychlost načtení protokolu spuštění.
Pokud vás nezajímá rychlost spouštění balíčků ve frontě a načtení protokolu spouštění, můžete zvolit nejnižší cenovou úroveň databáze. Azure SQL Database s cenami Basic podporuje 8 pracovních procesů v instanci prostředí Integration Runtime.
Zvolte výkonnější databázi než Základní, pokud je počet pracovních procesů větší než 8 nebo počet jader je větší než 50. V opačném případě se databáze stane kritickým bodem instance prostředí Integration Runtime a celkový výkon se negativně projeví.
Pokud je úroveň protokolování nastavená na podrobnou, zvolte výkonnější databázi, například s3. Podle našeho neoficiálního interního testování může cenová úroveň s3 podporovat spouštění balíčků SSIS se 2 uzly, 128 paralelních počtů a podrobné úrovně protokolování.
Můžete také upravit cenovou úroveň databáze na základě informací o využití jednotek DTU (Database Transaction Unit ), které jsou k dispozici na webu Azure Portal.
Návrh pro vysoký výkon
Návrh balíčku SSIS pro spuštění v Azure se liší od návrhu balíčku pro místní spuštění. Místo kombinování více nezávislých úloh ve stejném balíčku je rozdělte do několika balíčků, abyste v prostředí Azure-SSIS IR efektivněji spouštět. Vytvořte pro každý balíček spuštění balíčku, aby nemuseli čekat, až se dokončí. Tento přístup přináší výhody škálovatelnosti prostředí Azure-SSIS Integration Runtime a zlepšuje celkovou propustnost.
Související obsah
Přečtěte si další informace o prostředí Azure-SSIS Integration Runtime. Viz Azure-SSIS Integration Runtime.
Váš názor
https://aka.ms/ContentUserFeedback.
Připravujeme: V průběhu roku 2024 budeme postupně vyřazovat problémy z GitHub coby mechanismus zpětné vazby pro obsah a nahrazovat ho novým systémem zpětné vazby. Další informace naleznete v tématu:Odeslat a zobrazit názory pro