Použití rozšířeného serveru historie Apache Sparku k ladění a diagnostice aplikací Apache Spark
Tento článek obsahuje pokyny k použití rozšířeného serveru historie Apache Sparku k ladění a diagnostice dokončených a spuštěných aplikací Apache Spark.
Přístup k serveru historie Apache Sparku
Server historie Apache Sparku je webové uživatelské rozhraní pro dokončené a spuštěné aplikace Spark. Webové uživatelské rozhraní Apache Sparku můžete otevřít z poznámkového bloku indikátoru průběhu nebo na stránce podrobností aplikace Apache Spark.
Otevření webového uživatelského rozhraní Sparku z poznámkového bloku indikátoru průběhu
Když se aktivuje úloha Apache Sparku, tlačítko pro otevření webového uživatelského rozhraní Sparku se v indikátoru průběhu nachází v možnosti Další akce . Vyberte webové uživatelské rozhraní Sparku a počkejte několik sekund a pak se zobrazí stránka uživatelského rozhraní Sparku.
Otevření webového uživatelského rozhraní Sparku ze stránky podrobností aplikace Apache Spark
Webové uživatelské rozhraní Sparku je také možné otevřít prostřednictvím stránky podrobností aplikace Apache Spark. Na levé straně stránky vyberte Centrum monitorování a pak vyberte aplikaci Apache Spark. Zobrazí se stránka podrobností aplikace.
U aplikace Apache Spark, jejíž stav je spuštěný, se na tlačítku zobrazí uživatelské rozhraní Sparku. Vyberte uživatelské rozhraní Sparku a zobrazí se stránka uživatelského rozhraní Sparku.
U aplikace Apache Spark, jejíž stav je ukončen, může být ukončen stav Zastaveno, Selhání, Zrušeno nebo Dokončeno. Tlačítko zobrazuje server historie Sparku. Vyberte server historie Sparku a zobrazí se stránka uživatelského rozhraní Sparku.
Karta Graf na serveru historie Apache Sparku
Vyberte ID úlohy, kterou chcete zobrazit. Potom výběrem možnosti Graph v nabídce nástrojů získáte zobrazení grafu úloh.
Přehled
Přehled úlohy můžete zobrazit v grafu vygenerovaných úloh. Ve výchozím nastavení graf zobrazuje všechny úlohy. Toto zobrazení můžete filtrovat podle ID úlohy.
Zobrazit
Ve výchozím nastavení je vybráno zobrazení Průběhu . Tok dat můžete zkontrolovat výběrem možnosti Číst nebo Zapisovat v rozevíracím seznamu Zobrazení .
Uzel grafu zobrazí barvy zobrazené v legendě heat mapy.
Přehrávání
Pokud chcete úlohu přehrát, vyberte Přehrávání. Pokud chcete zastavit, můžete kdykoli vybrat možnost Zastavit . Barvy úkolů zobrazují při přehrávání různé stavy:
Color | Význam |
---|---|
Zelený | Úspěšné: Úloha byla úspěšně dokončena. |
Orange | Opakování: Instance úkolů, které selhaly, ale nemají vliv na konečný výsledek úlohy. Tyto úlohy měly duplicitní instance nebo instance opakování, které mohou být později úspěšné. |
Modrý | Spuštěno: Úloha je spuštěná. |
Bílá | Čekání nebo přeskočení: Úloha čeká na spuštění nebo se fáze přeskočí. |
Červený | Nezdařilo se: Úloha se nezdařila. |
Následující obrázek znázorňuje zelené, oranžové a modré barvy stavu.
Následující obrázek znázorňuje zelené a bílé barvy stavu.
Následující obrázek znázorňuje červené a zelené barvy stavu.
Poznámka:
Server historie Apache Sparku umožňuje přehrávání pro každou dokončenou úlohu (ale neumožňuje přehrávání neúplných úloh).
Zoom
Pomocí posouvání myší můžete graf úloh přiblížit nebo oddálit, nebo vyberte Lupa, aby se vešla na obrazovku.
Popisy
Najetím myší na uzel grafu zobrazíte popis, když dojde k neúspěšným úkolům, a výběrem fáze otevřete stránku fáze.
Na kartě Graf úloh mají fáze popis a malou ikonu zobrazenou, pokud mají úkoly, které splňují následující podmínky:
Podmínka | Popis |
---|---|
Nerovnoměrná distribuce dat | Průměrná velikost > čtení dat u všech úkolů v této fázi * 2 a velikost čtení > dat 10 MB. |
Nerovnoměrná distribuce času | Průměrná doba > provádění všech úkolů v této fázi * 2 a doba > provádění 2 minuty. |
Popis uzlu grafu
Uzel grafu úloh zobrazí následující informace o jednotlivých fázích:
- ID
- Název nebo popis
- Celkový počet úkolů
- Čtení dat: součet velikosti vstupu a náhodného náhodného čtení
- Zápis dat: součet velikosti výstupu a velikost zápisu náhodného prohazování
- Doba provádění: čas mezi časem spuštění prvního pokusu a časem dokončení posledního pokusu
- Počet řádků: součet vstupních záznamů, výstupních záznamů, náhodné čtení záznamů a zahazování záznamů zápisu
- Průběh
Poznámka:
Ve výchozím nastavení uzel grafu úlohy zobrazuje informace z posledního pokusu o každou fázi (s výjimkou doby provádění fáze). Během přehrávání ale uzel grafu zobrazuje informace o každém pokusu.
Velikost dat čtení a zápisu je 1 MB = 1000 kB = 1000 × 1 000 bajtů.
Poskytnutí názorů
Pokud chcete poslat zpětnou vazbu k problémům, vyberte Zadat zpětnou vazbu.
Limit počtu fází
Pro důležité informace o výkonu je ve výchozím nastavení graf k dispozici pouze v případě, že má aplikace Spark méně než 500 fází. Pokud existuje příliš mnoho fází, dojde k selhání s chybou, která vypadá takto:
The number of stages in this application exceeds limit (500), graph page is disabled in this case.
Jako alternativní řešení použijte před spuštěním aplikace Spark tuto konfiguraci Sparku a zvyšte limit:
spark.ui.enhancement.maxGraphStages 1000
Všimněte si ale, že to může způsobit špatný výkon stránky a rozhraní API, protože obsah může být příliš velký, aby prohlížeč mohl načíst a vykreslit.
Prozkoumání karty Diagnostika na serveru historie Apache Sparku
Pokud chcete získat přístup na kartu Diagnostika, vyberte ID úlohy. Potom v nabídce nástrojů vyberte Diagnostika , abyste získali zobrazení diagnostiky úlohy. Karta Diagnostika zahrnuje nerovnoměrnou distribuci dat, nerovnoměrnou distribuci času a analýzu využití exekutoru.
Výběrem karet zkontrolujte nerovnoměrnou distribuci dat, nerovnoměrnou distribuci času a analýzu využití exekutoru.
Nerovnoměrná distribuce dat
Když vyberete kartu Nerovnoměrná distribuce dat, zobrazí se odpovídající zkosené úlohy na základě zadaných parametrů.
Zadat parametry – první část zobrazuje parametry, které se používají k detekci nerovnoměrné distribuce dat. Výchozí pravidlo je: čtení dat úkolů je větší než třikrát z průměrného čtení dat úkolu a čtení dat úkolu je větší než 10 MB. Pokud chcete definovat vlastní pravidlo pro zkosené úkoly, můžete zvolit parametry. Oddíly Zkosené fáze a šikmé znaky se odpovídajícím způsobem aktualizují.
Nerovnoměrná fáze – druhá část zobrazuje fáze, které mají nerovnoměrné úkoly, které splňují dříve zadaná kritéria. Pokud je ve fázi více než jeden zkosený úkol, zobrazí se v tabulce zkosené fáze jenom nejšikmější úkol (například největší data pro nerovnoměrnou distribuci dat).
Zkosený graf – Pokud je vybrán řádek v tabulce fáze nerovnoměrné distribuce, zobrazí se v grafu nerovnoměrné distribuce úkolů další podrobnosti o distribuci úkolů na základě času čtení a spuštění dat. Šikmé úkoly jsou označené červeně a normální úkoly jsou označené modře. Graf zobrazuje až 100 ukázkových úkolů a podrobnosti o úkolu se zobrazí v pravém dolním panelu.
Nerovnoměrná distribuce času
Na kartě Nerovnoměrná distribuce času se zobrazují nerovnoměrné úkoly na základě času provádění úkolu.
Zadat parametry – první část zobrazuje parametry, které se používají k detekci nerovnoměrné distribuce času. Výchozí kritéria pro detekci nerovnoměrné distribuce času: doba provádění úkolů je větší než třikrát průměrné doby provádění a doba provádění úkolů je větší než 30 sekund. Parametry můžete změnit podle svých potřeb. Nerovnoměrná fáze a zkosený graf zobrazují odpovídající fáze a informace o úkolech stejně jako karta Nerovnoměrná distribuce dat popsaná výše.
Vyberte Časová nerovnoměrná distribuce a potom se filtrovaný výsledek zobrazí v části Zkosené dílčí fáze podle parametrů nastavených v části Zadat parametry. Vyberte jednu položku v oddílu Zkosené dílčí fáze a odpovídající graf se v oddílu 3 zobrazí a podrobnosti úkolu se zobrazí v pravém dolním panelu.
Analýza využití exekutoru
Tato funkce je teď v prostředcích infrastruktury zastaralá. Pokud ho přesto chcete použít jako alternativní řešení, přejděte na stránku explicitním přidáním /executorusage za cestou /diagnostic v adrese URL, například takto: