Moduly runtime Azure Synapse

Fondy Apache Sparku v Azure Synapse používají moduly runtime ke spojení základních verzí komponent, jako jsou optimalizace Azure Synapse, balíčky a konektory s konkrétní verzí Apache Sparku. Každý modul runtime se pravidelně upgraduje tak, aby zahrnoval nová vylepšení, funkce a opravy. Při vytváření bezserverového fondu Apache Spark vyberte odpovídající verzi Apache Sparku. Na základě toho je fond předinstalovaný s přidruženými komponentami a balíčky modulu runtime.

Moduly runtime mají následující výhody:

  • Rychlejší časy spuštění relace
  • Otestovaná kompatibilita s konkrétními verzemi Apache Sparku
  • Přístup k oblíbeným, kompatibilním konektorům a opensourcovým balíčkům

Podporované verze modulu runtime Azure Synapse

Upozorňující

Oznámení o ukončení podpory pro modul runtime Azure Synapse pro Apache Spark 2.4 a Apache Spark 3.1

  • Od 29. září 2023 ukončí Azure Synapse oficiální podporu pro moduly Runtime Sparku 2.4.
  • Od 26. ledna 2024 ukončí Azure Synapse oficiální podporu pro moduly Runtime Sparku 3.1.
  • Po uplynutí těchto dat nebudeme řešit žádné lístky podpory související se Sparkem 2.4 nebo 3.1. Neexistuje žádný kanál verze pro chyby nebo opravy zabezpečení pro Spark 2.4 a 3.1. Využití Sparku 2.4 nebo 3.1 po datu ukončení podpory se provádí v jednom vlastním riziku. Důrazně nedoporučujeme jeho trvalé používání kvůli potenciálním obavám o zabezpečení a funkčnost.

Tip

Důrazně doporučujeme proaktivně upgradovat úlohy na novější verzi modulu runtime ga (například Azure Synapse Runtime pro Apache Spark 3.4 (GA)). Projděte si průvodce migrací Apache Sparku.

Následující tabulka uvádí název modulu runtime, verzi Apache Sparku a datum vydání podporovaných verzí modulu runtime Azure Synapse Runtime.

Název modulu runtime Datum vydání Fáze vydání Datum ukončení podpory Datum účinnosti ukončení podpory
Azure Synapse Runtime pro Apache Spark 3.4 21. listopadu 2023 GA (od 8. dubna 2024)
Azure Synapse Runtime pro Apache Spark 3.3 17. listopadu 2022 GA (od 23. února 2023) Q2/Q3 2024 Q1 2025
Azure Synapse Runtime pro Apache Spark 3.2 8. července 2022 Oznámení ukončení podpory 8. července 2023 8. července 2024
Azure Synapse Runtime pro Apache Spark 3.1 26. května 2021 Konec podpory 26. ledna 2023 26. ledna 2024
Azure Synapse Runtime pro Apache Spark 2.4 15. prosince 2020 Konec podpory 29. července 2022 29. září 2023

Fáze vydání modulu runtime

Úplný modul runtime pro životní cyklus Apache Sparku a zásady podpory najdete v modulu runtime Synapse pro životní cyklus Apache Sparku a možnosti podpory.

Opravy za běhu

Moduly runtime Azure Synapse pro opravy Apache Sparku se zahrnou měsíčně obsahující chyby, funkce a opravy zabezpečení základního modulu, jazykových prostředí, konektorů a knihoven Apache Sparku.

Poznámka:

  • Aktualizace údržby se automaticky použijí na nové relace pro daný bezserverový fond Apache Sparku.
  • Při používání nových verzí modulu runtime byste měli otestovat a ověřit, že vaše aplikace běží správně.

Důležité

Opravy zabezpečení Log4j 1.2.x

Opensourcová knihovna Log4j verze 1.2.x má několik známých cves (běžná ohrožení zabezpečení a expozice), jak je popsáno zde.

Ve všech modulech runtime fondu Synapse Spark jsme opravili jars Log4j 1.2.17, abychom zmírnit následující cvEs: CVE-2019-1751, CVE-2020-9488, CVE-2021-4104, CVE-2022-23302, CVE-2022-2330, CVE-2022-23307

Použitá oprava funguje odebráním následujících souborů, které jsou potřeba k vyvolání ohrožení zabezpečení:

  • org/apache/log4j/net/SocketServer.class
  • org/apache/log4j/net/SMTPAppender.class
  • org/apache/log4j/net/JMSAppender.class
  • org/apache/log4j/net/JMSSink.class
  • org/apache/log4j/jdbc/JDBCAppender.class
  • org/apache/log4j/chainsaw/*

I když se výše uvedené třídy nepoužívaly ve výchozích konfiguracích Log4j v Synapse, je možné, že na ní stále může záviset některá uživatelská aplikace. Pokud vaše aplikace potřebuje použít tyto třídy, použijte Správa knihovny k přidání zabezpečené verze Log4j do fondu Spark. Nepoužívejte Log4j verze 1.2.17, protože by to mohlo znovu narušovat chyby zabezpečení.

Zásady oprav se liší v závislosti na fázi životního cyklu modulu runtime:

  • Obecně dostupný modul runtime (GA): V hlavních verzích (tj. 3.x –> 4.x) neobdrží žádné upgrady. A upgraduje podverzi (tj. 3.x –> 3.y), pokud nedojde k žádnému vyřazení nebo regresním dopadům.

  • Modul runtime verze Preview: Pokud to není nezbytně nutné, upgrady hlavní verze se neupgradují. Podverze (3.x –> 3.y) se upgraduje, aby se do modulu runtime přidaly nejnovější funkce.

  • Modul runtime dlouhodobé podpory (LTS) se opravuje pouze s opravami zabezpečení.

  • Ukončení podpory oznámeného modulu runtime nebude obsahovat chyby a opravy funkcí. Opravy zabezpečení se backportují na základě posouzení rizik.

Migrace mezi verzemi Apache Sparku – podpora

Tato příručka poskytuje strukturovaný přístup pro uživatele, kteří chtějí upgradovat své úlohy Azure Synapse Runtime pro úlohy Apache Sparku z verzí 2.4, 3.1, 3.2 nebo 3.3 na nejnovější verzi GA, například 3.4. Upgrade na nejnovější verzi umožňuje uživatelům využívat vylepšení výkonu, nové funkce a vylepšená bezpečnostní opatření. Je důležité si uvědomit, že přechod na vyšší verzi může vyžadovat úpravy stávajícího kódu Sparku kvůli nekompatibilitě nebo zastaralým funkcím.

Krok 1: Vyhodnocení a plánování

  • Kompatibilita posouzení: Začněte kontrolou průvodců migrací Apache Sparku, abyste identifikovali případné nekompatibility, zastaralé funkce a nová rozhraní API mezi vaší aktuální verzí Sparku (2.4, 3.1, 3.2 nebo 3.3) a cílovou verzí (např. 3.4).
  • Analýza základu kódu: Pečlivě prozkoumejte kód Sparku a identifikujte použití zastaralých nebo upravených rozhraní API. Věnujte zvláštní pozornost dotazům SQL a uživatelem definovaným funkcím (UDF), které můžou být ovlivněny upgradem.

Krok 2: Vytvoření nového fondu Sparku pro testování

  • Vytvoření nového fondu: V Azure Synapse přejděte do části Fondy Sparku a nastavte nový fond Sparku. Vyberte cílovou verzi Sparku (např. 3.4) a nakonfigurujte ji podle vašich požadavků na výkon.
  • Konfigurace fondu Sparku: Ujistěte se, že jsou všechny knihovny a závislosti v novém fondu Sparku aktualizované nebo nahrazené, aby byly kompatibilní se Sparkem 3.4.

Krok 3: Migrace a testování kódu

  • Migrace kódu: Aktualizujte kód tak, aby vyhovoval novým nebo revidovaným rozhraním API v Apache Sparku 3.4. To zahrnuje řešení zastaralých funkcí a přijetí nových funkcí, jak je podrobně popsáno v oficiální dokumentaci k Apache Sparku.
  • Testování ve vývojovém prostředí: Otestujte aktualizovaný kód ve vývojovém prostředí v Azure Synapse, ne místně. Tento krok je nezbytný pro identifikaci a opravu všech problémů před přechodem do produkčního prostředí.
  • Nasazení a monitorování: Po důkladném testování a ověření ve vývojovém prostředí nasaďte aplikaci do nového fondu Spark 3.4. Je důležité monitorovat aplikaci za účelem jakéhokoli neočekávaného chování. Využijte monitorovací nástroje dostupné ve službě Azure Synapse, abyste mohli sledovat výkon vašich aplikací Spark.

Otázka: Jaké kroky byste měli provést při migraci z verze 2.4 na verzi 3.X?

Odpověď: Projděte si průvodce migrací Apache Sparku.

Otázka: Při pokusu o upgrade modulu runtime fondu Spark pomocí rutiny PowerShellu, když jsou připojené knihovny, došlo k chybě.

Odpověď: Nepoužívejte rutinu PowerShellu, pokud máte ve svém pracovním prostoru Synapse nainstalované vlastní knihovny. Místo toho postupujte takto:

  1. Znovu vytvořte fond Sparku 3.3 od základů.
  2. Downgrade aktuálního fondu Sparku 3.3 na verzi 3.1, odeberte všechny připojené balíčky a pak upgradujte znovu na verzi 3.3.