Del via


Brug den udvidede Apache Spark-oversigtsserver til at foretage fejlfinding og diagnosticere Apache Spark-programmer

Denne artikel indeholder en vejledning i, hvordan du bruger den udvidede Apache Spark-oversigtsserver til at foretage fejlfinding og diagnosticere fuldførte og kørende Apache Spark-programmer.

Få adgang til Apache Spark-oversigtsserveren

Apache Spark-oversigtsserveren er webbrugergrænsefladen til fuldførte og kørende Spark-programmer. Du kan åbne Apache Spark-brugergrænsefladen (UI) fra statusindikatornotesbogen eller siden med oplysninger om Apache Spark-programmet.

Åbn brugergrænsefladen i Spark-web fra notesbogen med statusindikator

Når et Apache Spark-job udløses, er knappen til at åbne Spark-webbrugergrænseflade inde i indstillingen Mere handling i statusindikatoren. Vælg Spark-webbrugergrænseflade , og vent et par sekunder, hvorefter siden med Spark-brugergrænsefladen vises.

Skærmbillede, der viser åbn brugergrænsefladen på Spark-webstedet fra notesbogen med statusindikator.

Åbn spark-webbrugergrænsefladen fra siden med oplysninger om Apache Spark-programmet

Brugergrænsefladen i Spark-web kan også åbnes via siden med oplysninger om Apache Spark-programmet. Vælg Overvåg til venstre på siden, og vælg derefter et Apache Spark-program. Detaljesiden for programmet vises.

Skærmbillede, der viser siden med oplysninger om spark-webbrugergrænsefladen fra siden med programdetaljer i Apache Spark.

For et Apache Spark-program, hvis status kører, viser knappen Spark-brugergrænsefladen. Vælg Spark UI , hvorefter siden med Brugergrænsefladen i Spark vises.

Skærmbillede, der viser knappen viser spark-brugergrænsefladen i kørselstilstand.

For et Apache Spark-program, hvis status er afsluttet, kan statussen stoppes, mislykkes, annulleres eller fuldføres. Knappen viser Spark-oversigtsserveren. Vælg Spark-oversigtsserver , hvorefter siden med Brugergrænsefladen i Spark vises.

Skærmbillede, der viser knappen viser spark-brugergrænsefladen i sluttilstanden.

Fanen Graph på Apache Spark-oversigtsserveren

Vælg job-id'et for det job, du vil have vist. Vælg derefter Graph i værktøjsmenuen for at få jobdiagramvisningen.

Oversigt

Du kan se en oversigt over dit job i den genererede jobgraf. Grafen viser som standard alle job. Du kan filtrere denne visning efter job-id.

Skærmbillede, der viser job-id'et for sparkprogrammet og jobdiagrammet.

Skærm

Statusvisningen er som standard valgt. Du kan kontrollere dataflowet ved at vælge Læs eller Skrevetrullelisten Vis .

Skærmbillede, der viser visning af spark-program og jobgraf.

Grafnoden viser de farver, der vises i heatmapforklaringen.

Skærmbillede, der viser heatmap for spark-program og jobgraf.

Afspilning

Hvis du vil afspille jobbet, skal du vælge Afspilning. Du kan når som helst vælge Stop for at stoppe. Opgavefarverne viser forskellige statusser, når der afspilles:

Color Betydning
Grøn Fuldført: Jobbet er fuldført.
Orange Forsøgt igen: Forekomster af opgaver, der mislykkedes, men som ikke påvirker det endelige resultat af jobbet. Disse opgaver havde duplikerede eller gentagne forekomster, der kan lykkes senere.
Blå Kører: Opgaven kører.
Hvid Venter eller sprunget over: Opgaven venter på at køre, eller fasen er sprunget over.
Rød Mislykket: Opgaven mislykkedes.

På følgende billede vises grønne, orange og blå statusfarver.

Skærmbillede, der viser spark-program- og jobgraffarveeksempel, der kører.

På følgende billede vises grønne og hvide statusfarver.

Skærmbillede, der viser spark-program- og jobgraffarveeksempel, spring over.

På følgende billede vises røde og grønne statusfarver.

Skærmbillede, der viser spark-program- og jobgraffarveeksempel, mislykket.

Bemærk

Apache Spark-oversigtsserveren tillader afspilning for hvert fuldført job (men tillader ikke afspilning for ufuldstændige job).

Zoom

Brug musen til at zoome ind og ud på jobgrafen, eller vælg Zoom for at tilpasse den, så den passer til skærmen.

Skærmbillede, der viser spark-program og jobgrafzo, så de passer.

Værktøjstip

Peg på grafnoden for at se værktøjstippet, når der er mislykkede opgaver, og vælg en fase for at åbne dens faseside.

Skærmbillede, der viser værktøjstip til spark-program og jobgraf.

Under fanen jobgraf vises der et værktøjstip i faserne, og der vises et lille ikon, hvis de har opgaver, der opfylder følgende betingelser:

Betingelse Beskrivelse
Dataforvrænget Den gennemsnitlige datalæsningsstørrelse > for datalæsning for alle opgaver i denne fase * 2 og datalæsningsstørrelsen > 10 MB.
Tidsforvrænget Den gennemsnitlige udførelsestid > for alle opgaver i denne fase * 2 og udførelsestid > 2 minutter.

Skærmbillede, der viser ikonet for skævhed i spark-program og jobgraf.

Beskrivelse af grafnode

Jobdiagramnoden viser følgende oplysninger om hver fase:

  • Id
  • Navn eller beskrivelse
  • Samlet opgavenummer
  • Læsning af data: summen af inputstørrelse og blandet læsestørrelse
  • Dataskrivning: summen af outputstørrelsen og størrelsen af shuffle-skrivninger
  • Udførelsestid: tiden mellem starttidspunktet for det første forsøg og afslutningstidspunktet for det sidste forsøg
  • Rækkeantal: summen af inputposter, outputposter, bland læseposter og blandede skriveposter
  • Status

Bemærk

Jobdiagramnoden viser som standard oplysninger fra det sidste forsøg på hver fase (undtagen tidspunktet for udførelse af fase). Under afspilningen viser grafnoden dog oplysninger om hvert forsøg.

Datastørrelsen for læsning og skrivning er 1 MB = 1000 KB = 1000 * 1000 byte.

Sende feedback

Send feedback med problemer ved at vælge Giv os feedback.

Skærmbillede, der viser feedback om spark-program og jobgraf.

Grænse for fasenummer

Af hensyn til ydeevnen er grafen som standard kun tilgængelig, når Spark-programmet har mindre end 500 faser. Hvis der er for mange faser, mislykkes det med en fejl som denne:

The number of stages in this application exceeds limit (500), graph page is disabled in this case.

Før du starter et Spark-program, skal du anvende denne Spark-konfiguration for at øge grænsen:

spark.ui.enhancement.maxGraphStages 1000

Men bemærk, at dette kan medføre dårlig ydeevne for siden og API'en, fordi indholdet kan være for stort til, at browseren kan hente og gengive.

Udforsk fanen Diagnosticering på Apache Spark-oversigtsserveren

Hvis du vil have adgang til fanen Diagnosticering, skal du vælge et job-id. Vælg derefter Diagnosticering i værktøjsmenuen for at få jobdiagnosticeringsvisningen. Fanen Diagnosticering indeholder Data skew, Time Skew og Executor Usage Analysis.

Kontrollér dataforvrængelse, tidsforvrængelse og analyse af eksekveringsanvendelse ved at vælge fanerne.

Skærmbillede, der viser fanen Forvrængede diagnosticeringsdata for sparkUI igen.

Dataforvrænget

Når du vælger fanen Dataforvrænge , vises de tilsvarende skæve opgaver baseret på de angivne parametre.

  • Angiv parametre – I det første afsnit vises parametrene, som bruges til at registrere dataforvrænget. Standardreglen er: Læsning af opgavedata er større end tre gange den gennemsnitlige læsning af opgavedata, og opgavedataene er mere end 10 MB. Hvis du vil definere din egen regel for skæve opgaver, kan du vælge dine parametre. Sektionerne Skæv fase og Skævt tegn opdateres tilsvarende.

  • Skæv fase – I det andet afsnit vises faser, som har skæve opgaver, der opfylder de tidligere angivne kriterier. Hvis der er mere end én skæv opgave i en fase, viser tabellen med skæve faser kun den mest skæve opgave (f.eks. de største data for dataforvrænget).

    Skærmbillede, der viser fanen Forvrængede diagnosticeringsdata for brugergrænsefladen.

  • Skævt diagram – Når der vælges en række i tabellen med skæve faser, viser skævt diagrammet flere oplysninger om opgavefordeling baseret på datalæsnings- og udførelsestid. De skæve opgaver er markeret med rødt, og de normale opgaver er markeret med blåt. Diagrammet viser op til 100 eksempelopgaver, og opgavedetaljerne vises i højre nederste panel.

    Skærmbillede, der viser et diagram med skråtstillet spark-brugergrænseflade for fase 10.

Tidsforvrænget

Under fanen Tidsforvrænget vises skæve opgaver baseret på opgavens udførelsestid.

  • Angiv parametre – I det første afsnit vises parametrene, som bruges til at registrere tidsforvrænget tid. Standardkriterierne for registrering af tidsforvrængelse er: Opgavens udførelsestid er større end tre gange den gennemsnitlige udførelsestid, og opgavens udførelsestid er større end 30 sekunder. Du kan ændre parametrene baseret på dine behov. Under Skæv fase og Skævt diagram vises de tilsvarende oplysninger om faser og opgaver på samme måde som fanen Dataforvrænget , der er beskrevet tidligere.

  • Vælg Tidsforvrænget, hvorefter filtreret resultat vises i sektionen Skæv fase i henhold til de parametre, der er angivet i afsnittet Angiv parametre. Vælg ét element i sektionen Skæv fase , derefter udarbejdes det tilsvarende diagram i sektion 3, og opgavedetaljerne vises i højre nederste panel.

    Skærmbillede, der viser afsnittet med tid til diagnosticering af spark-brugergrænseflade.

Besøgsanalyse af eksekvering

Denne funktion frarådes i Fabric nu. Hvis du stadig vil bruge dette som en løsning, skal du få adgang til siden ved eksplicit at tilføje "/executorusage" bag stien "/diagnosticering" i URL-adressen på følgende måde:

Skærmbillede, der viser, hvordan du ændrer URL-adressen.