Správa dat orchestrace pomocí poskytovatelů úložiště

Když vytváříte pracovní postupy pomocí sady SDK Durabilní funkce nebo Durable Task SDK, vaše orchestrace musí někde ukládat svůj stav. Poskytovatelé úložiště to zvládnou tak, že uchovávají historii orchestrace, stav entity a interní zprávy do back-endu podle vašeho výběru. Díky tomuto odolnému úložišti jsou vaše pracovní postupy spolehlivé – můžou pozastavit, škálovat, restartovat a obnovit bez ztráty průběhu.

Durable Functions podporuje několik poskytovatelů back-endových úložišť. Nakonfigurujte aplikaci tak, aby používala jednu z následujících možností:

  • spravované Azure:
    • Durable Task Scheduler (doporučeno)
  • Úložiště BYO (Bring your own):
    • Azure Storage
    • Netherite
    • Microsoft SQL Server (MSSQL)

Poznámka:

V současné době nemůžete migrovat data z jednoho poskytovatele úložiště do jiného. Pokud chcete použít nového poskytovatele, vytvořte novou aplikaci nakonfigurovanou s novým poskytovatelem.

Sady SDK trvalých úloh používají jako svého poskytovatele úložiště spravovaný Plánovač úloh Azure , který poskytuje plně spravovaný back-end pro spolehlivou orchestraci pracovních postupů bez nutnosti údržby infrastruktury.

Plánovač úloh Durable

Durable Task Scheduler je plně spravovaný, vysoce výkonný back-endový poskytovatel navržený a vyvinutý ve spolupráci s Microsoft Research. Cílem je poskytnout co nejlepší uživatelské prostředí v aspektech, jako je správa, pozorovatelnost, výkon a zabezpečení.

Mezi klíčové výhody plánovače trvalých úloh patří:

  • Nižší režijní náklady na správu a provoz v porovnání s poskytovateli back-endu BYO
  • Řídicí panel pozorovatelnosti a správy
  • Podporuje nejvyšší propustnost všech back-endů dnes.
  • Podpora ověřování pomocí spravované identity

Stávající uživatelé sady SDK Durable Functions a Durable Task SDK můžou využívat plánovač beze změn kódu. Přečtěte si další informace o plánovači trvalých úloh a o tom, jak začít.

Ukázky pro Plánovač úloh Durable najdete na GitHub.

Azure Storage

Azure Storage je jedním z poskytovatelů úložiště "Přineste si vlastní" pro Durable Functions. Používá fronty, tabulky a objekty blob pro uchování stavu orchestrací a entit a pronájmy objektů blob ke správě oddílů. Poskytovatel Azure Storage je integrovaný do rozšíření Durable Functions a nemá žádné další závislosti.

Mezi klíčové výhody poskytovatele azure Storage patří:

  • Nevyžaduje se žádné nastavení – můžete použít účet úložiště, který byl pro vás vytvořen v rámci procesu nastavení aplikace funkcí.
  • Model fakturace bez serveru s nejnižšími náklady – Azure Storage má cenový model založený výhradně na spotřebě (více informací).
  • Nejlepší podpora nástrojů – Azure Storage nabízí místní emulaci napříč platformami a integruje se s Visual Studio, Visual Studio Code a nástroji Azure Functions Core Tools.
  • Nejvíce vyspělejší - Azure Storage byl původní a nejvíce bojově testovaný back-end úložiště pro Durable Functions.
  • Podpora použití identity místo tajných kódů pro připojení k poskytovateli úložiště

Poskytovatel Azure Storage nevyžaduje explicitní konfiguraci, odkazy na balíčky NuGet ani odkazy na sady rozšíření. Podrobné možnosti konfigurace, včetně připojení, autentizace založené na identitě a nastavení host.json, najdete v tématu poskytovatele Azure Storage pro Durable Functions.

Microsoft SQL Server (MSSQL)

Zprostředkovatel úložiště MSSQL zachová veškerý stav do databáze MSSQL. Je kompatibilní s místním i cloudovým nasazením SQL Serveru, včetně Azure SQL Database.

Mezi klíčové výhody poskytovatele úložiště MSSQL patří:

  • Odpojená prostředí jsou podporována; Při použití instalace SQL Server se nevyžaduje připojení Azure.
  • Přenosná napříč několika prostředími a cloudy, včetně prostředí hostovaných v Azure a v místních prostředích.
  • Silná konzistence dat umožňující zálohování/obnovení a přepnutí při selhání bez ztráty dat.
  • Nativní podpora vlastního šifrování dat (funkce SQL Serveru)
  • Integruje se se stávajícími databázovými aplikacemi prostřednictvím předdefinovaných uložených procedur.

Další informace o poskytovateli úložiště MSSQL:

Netherite

Poznámka:

Podpora pro použití úložného backendu Netherite s Durable Functions končí 31. března 2028. Doporučujeme vyhodnotit plánovač úloh Durable Task Scheduler pro úlohy, které aktuálně používají Netherite.

Back-end úložiště Netherite byl navržen a vyvinut společností Microsoft Research. Používá Azure Event Hubs a technologii databáze FASTER nad Azure Page Blobs.

Mezi klíčové výhody poskytovatele úložiště Netherite patří:

  • Vyšší propustnost s nižšími náklady v porovnání s jinými poskytovateli úložiště.
  • Podporuje optimalizaci výkonu podle ceny, což vám umožní podle potřeby vertikálně navýšit kapacitu výkonu.
  • Podporuje až 32 datových oddílů se skladovými položkami Event Hubs Basic a Standard.
  • Nákladově efektivnější než ostatní poskytovatelé pro úlohy s vysokou propustností.

Další informace o poskytovateli úložiště Netherite:

Porovnání poskytovatelů úložiště

Následující tabulka vám umožní pochopit významné kompromisy mezi různými podporovanými poskytovateli úložiště a rozhodnout se, který poskytovatel úložiště je pro vaše potřeby nejvhodnější.

funkce Plánovač úloh Durable Azure Storage MSSQL Netherite
Oficiální stav podpory ✅ Obecná dostupnost (GA) ✅ Obecná dostupnost (GA) ✅ Obecná dostupnost (GA) ✅ Obecná dostupnost (GA)
Externí závislosti N/A Účet služby Azure Storage (pro obecné účely v1) SQL Server 2019 nebo Azure SQL Database Azure Event Hubs
účet Azure Storage (pro obecné účely)
Možnosti místního vývoje a emulace Emulátor plánovače úloh Durable Azurite v3.12+ (pro různé platformy) SQL Server Developer Edition (podporuje Windows, Linux a Docker containers) Podporuje emulaci center úloh v paměti (další informace)
Konfigurace centra úloh Explicitní Explicitní Implicitní ve výchozím nastavení (další informace) Explicitní
Maximální propustnost Velmi vysoká Mírný Mírný Velmi vysoká
Maximální orchestrace/rozšíření entit (uzly) N/A 16 N/A 32
Maximální škálování aktivity (uzly) N/A N/A N/A 32
Podpora trvalých entit ✅ Plně podporovaná ✅ Plně podporovaná ⚠️ Podporováno s výjimkou použití rozhraní .NET Isolated ✅ Plně podporovaná
Podpora škálování KEDA 2.0
(další informace)
Již brzy! ❌ Nepodporováno ✅ Podporováno pomocí škálovače MSSQL (další informace) ❌ Nepodporováno
Podpora balíčků rozšíření (doporučeno pro aplikace, které nejsou založeny na .NET) Již brzy! ✅ Plně podporovaná ✅ Plně podporovaná ✅ Plně podporovaná
Konfigurovatelný poměr cena/výkon? Již brzy! ❌ Ne ✅ Ano (virtuální procesory SQL) ✅ Ano (Event Hubs TUs a CUs)
Podpora odpojeného prostředí Vyžadováno připojení k Azure ❌ Vyžadováno připojení k Azure ❌ ✅ Plně podporovaná Vyžadováno připojení k Azure ❌
Připojení založená na identitách ✅ Plně podporovaná ✅ Plně podporovaná ⚠️ Vyžaduje škálování řízené modulem runtime. ❌ Nepodporováno
Plán flexibilní spotřeby ✅ Plně podporovaná ✅ Plně podporovaná (viz poznámky) ✅ Plně podporovaná ❌ Nepodporováno

Další kroky

výkon a škálování Durable Functions