Az Apache Spark History Server kiterjesztett funkcióinak használata Spark-alkalmazások hibakereséséhez és diagnosztizálásához
Ez a cikk bemutatja, hogyan használhatja az Apache Spark History Server kiterjesztett funkcióit a befejezett vagy futó Spark-alkalmazások hibakeresésére és diagnosztizálására. A bővítmény tartalmaz egy Adat lapot, egy Gráf lapot és egy Diagnosztikát . Az Adatok lapon ellenőrizheti a Spark-feladat bemeneti és kimeneti adatait. A Graph lapon ellenőrizheti az adatfolyamot, és lejátszhatja a feladatdiagramot. A Diagnosztikák lapon az Adateltérés, az Időeltérés és a Végrehajtó kihasználtsága elemzési funkcióit tekintheti meg.
Hozzáférés kérése a Spark-előzmények kiszolgálójához
A Spark-előzmények kiszolgálója a kész és futó Spark-alkalmazások webes felhasználói felülete. Megnyithatja az Azure Portalról vagy egy URL-címről.
Nyissa meg a Spark History Server webes felhasználói felületét az Azure Portalon
Nyissa meg a Spark-fürtöt az Azure Portalon. További információ: Fürtök listázása és megjelenítése.
A Fürt irányítópultjai között válassza a Spark-előzménykiszolgálót. Amikor a rendszer kéri, adja meg a Spark-fürt rendszergazdai hitelesítő adatait.
az Azure Portalon." border="true":::
A Spark History Server webes felhasználói felületének megnyitása URL-cím alapján
Nyissa meg a Spark-előzménykiszolgálót a következő helyre való tallózással https://CLUSTERNAME.azurehdinsight.net/sparkhistory
, ahol a CLUSTERNAME a Spark-fürt neve.
A Spark History Server webes felhasználói felülete a következő képhez hasonló lehet:
Az Adatok lap használata a Spark-előzmények kiszolgálójában
Válassza ki a feladatazonosítót, majd az eszköz menüjében válassza az Adatok lehetőséget az adatnézet megtekintéséhez.
Az egyes fülek kiválasztásával tekintse át a bemeneteket, kimeneteket és táblázatműveleteket .
Másolja az összes sort a Másolás gombra kattintva.
Mentse az összes adatot . CSV-fájl a csv gombra kattintva.
Az adatok kereséséhez írja be a kulcsszavakat a Keresés mezőbe. A keresési eredmények azonnal megjelennek.
Jelölje ki az oszlopfejlécet a táblázat rendezéséhez. A további részletek megjelenítéséhez válassza a pluszjelet egy sor kibontásához. Jelölje ki a mínuszjelet egy sor összecsukásához.
Töltsön le egyetlen fájlt a jobb oldalon található Részleges letöltés gombra kattintva. A kijelölt fájl helyileg lesz letöltve. Ha a fájl már nem létezik, ez egy új lapot nyit meg a hibaüzenetek megjelenítéséhez.
Másolja ki a teljes elérési utat vagy a relatív elérési utat a Teljes elérési út másolása vagy a Relatív elérési út másolása lehetőség kiválasztásával, amely a letöltési menüből bontható ki. Az Azure Data Lake Storage-fájlok esetében válassza a Megnyitás az Azure Storage Explorerben lehetőséget az Azure Storage Explorer elindításához, és keresse meg a mappát a bejelentkezés után.
Ha egy oldalon túl sok sor van megjelenítve, a táblázat alján található oldalszámokat választva navigálhat.
További információkért vigye az egérmutatót a Spark-alkalmazás adatai melletti kérdőjelre, vagy válassza ki a kérdőjelet az elemleírás megjelenítéséhez.
Ha visszajelzést szeretne küldeni a problémákról, válassza a Visszajelzés küldése lehetőséget.
A Graph lap használata a Spark-előzménykiszolgálón
Válassza ki a feladatazonosítót, majd az eszközmenü Gráf elemét a feladatdiagram megtekintéséhez. Alapértelmezés szerint a gráf az összes feladatot megjeleníti. Szűrje az eredményeket a Feladatazonosító legördülő menü használatával.
A folyamat alapértelmezés szerint ki van jelölve. Ellenőrizze az adatfolyamot a Megjelenítés legördülő menü Olvasás vagy Írás parancsával.
Az egyes tevékenységek háttérszíne egy hőtérképnek felel meg.
Color Leírás Zöld A feladat sikeresen befejeződött. Narancssárga A feladat sikertelen volt, de ez nem befolyásolja a feladat végeredményét. Ezek a feladatok ismétlődő vagy újrapróbálkozó példányokkal rendelkeznek, amelyek később sikeresek lehetnek. Kék A feladat fut. Fehér A feladat futásra vár, vagy a szakasz kihagyva. Piros A feladat meghiúsult. A kihagyott szakaszok fehér színben jelennek meg.
Feljegyzés
A lejátszás befejezett feladatokhoz érhető el. Válassza a Lejátszás gombot a feladat visszajátszásához. Állítsa le a feladatot bármikor a leállítás gomb kiválasztásával. Amikor egy feladat visszajátszott, minden tevékenység szín szerint jeleníti meg az állapotát. A nem teljes feladatok lejátszása nem támogatott.
Görgessen a feladatdiagram nagyításához vagy kicsinyítéséhez, vagy válassza a Nagyítás lehetőséget, hogy elférjen a képernyőn.
Ha a feladatok sikertelenek, vigye az egérmutatót a gráfcsomópontra az elemleírás megtekintéséhez, majd válassza ki a szakaszt egy új lapon való megnyitásához.
A Spark-alkalmazás és a Feladatdiagram lapon a szakaszok elemleírásokat és kis ikonokat fognak megjeleníteni, ha a feladatok megfelelnek az alábbi feltételeknek:
Adateltérés: Az adatolvasás átlagos > adatolvasási mérete az ebben a fázisban lévő összes tevékenységhez * 2 , az adatolvasás mérete > pedig 10 MB.
Időeltérés: Az ebben a szakaszban lévő összes tevékenység végrehajtási idejének > átlagos végrehajtási ideje * 2 és végrehajtási idő > 2 perc.
A feladatdiagram csomópontja a következő információkat jeleníti meg az egyes fázisokról:
ID (Azonosító)
Név vagy leírás
Tevékenység teljes száma
Adatolvasás: a bemeneti méret és az elegyítés olvasási méretének összege
Adatírás: a kimeneti méret és a shuffle írási méret összege
Végrehajtási idő: az első kísérlet kezdő időpontja és az utolsó kísérlet befejezési ideje közötti idő
Sorszám: a bemeneti rekordok, a kimeneti rekordok, az olvasmány-olvasási rekordok és az elegyítési írási rekordok összege
Előrehaladás
Feljegyzés
Alapértelmezés szerint a feladatgráf csomópont az egyes fázisok utolsó kísérletéből származó információkat jeleníti meg (kivéve a fázisvégrehajtási időt). A lejátszás során azonban a feladatgráf csomópont minden egyes kísérletről információkat jelenít meg.
Feljegyzés
Adatolvasási és adatírási méretek esetén 1 MB = 1000 KB = 1000 * 1000 bájtot használunk.
Küldjön visszajelzést a problémákról a Visszajelzés küldése lehetőséget választva.
A Spark-előzmények kiszolgáló Diagnosztikák lapjának használata
Válassza ki a feladatazonosítót, majd az eszköz menüjében válassza a Diagnosztika lehetőséget a feladatdiagnosztika nézet megtekintéséhez. A Diagnosztika lap tartalmazza az adateltérés, az időeltérés és a végrehajtói használat elemzését.
Tekintse át az adateltérést, az időeltérést és a végrehajtói használat elemzését a fülek kiválasztásával.
Egyenetlen adateloszlás
Válassza az Adateltérés lapot. A megfelelő ferde tevékenységek a megadott paraméterek alapján jelennek meg.
Paraméterek megadása
A Paraméterek megadása szakasz megjeleníti azokat a paramétereket, amelyek az adateltérés észlelésére szolgálnak. Az alapértelmezett szabály a következő: A tevékenységadatok olvasása nagyobb, mint az átlagosan beolvasott tevékenységadatok háromszorosa, és a tevékenységadatok olvasása több mint 10 MB. Ha saját szabályt szeretne definiálni a ferde tevékenységekhez, kiválaszthatja a paramétereket. A Ferde szakasz és a Ferde diagram szakaszok ennek megfelelően frissülnek.
Ferde szakasz
A Ferde szakasz szakasz olyan szakaszokat jelenít meg, amelyekben a megadott feltételeknek megfelelő tevékenységek eltérőek. Ha egy fázisban egynél több ferde tevékenység található, a Ferde szakasz szakasz csak a leginkább ferde tevékenységet jeleníti meg (vagyis az adateltérés legnagyobb adatait).
Ferde diagram
Amikor kijelöl egy sort a Ferde fázis táblában, a Ferde diagram további tevékenységelosztási adatokat jelenít meg az adatok olvasási és végrehajtási ideje alapján. A ferde tevékenységek pirossal, a normál tevékenységek kék színnel vannak megjelölve. A teljesítmény szempontjából a diagram legfeljebb 100 mintatevékenységet jelenít meg. A feladat részletei a jobb alsó panelen jelennek meg.
Időeltérés
Az Időeloszlás lap a tevékenységek végrehajtási ideje alapján jeleníti meg a ferde tevékenységeket.
Paraméterek megadása
A Paraméterek megadása szakasz megjeleníti azokat a paramétereket, amelyek az időeltérés észlelésére szolgálnak. Az alapértelmezett szabály a következő: A tevékenység végrehajtási ideje az átlagos végrehajtási idő háromszorosa, a tevékenység végrehajtási ideje pedig 30 másodpercnél hosszabb. A paramétereket igény szerint módosíthatja. A Ferde szakasz és a Ferde diagram a megfelelő fázisokat és tevékenységeket jeleníti meg, ugyanúgy, mint az Adateltérés lapon.
Amikor az Időeltérés lehetőséget választja, a szűrt eredmény a Ferde fázis szakaszban jelenik meg a Paraméterek megadása szakaszban megadott paramétereknek megfelelően. Amikor kiválaszt egy elemet a Ferde fázis szakaszban, a megfelelő diagram a harmadik szakaszban lesz megrajzolt, a tevékenység részletei pedig a jobb alsó panelen jelennek meg.
Végrehajtói használatelemzési grafikonok
A Végrehajtó használati gráfja megjeleníti a feladat tényleges végrehajtói lefoglalási és futtatási állapotát.
A Végrehajtók kihasználtságának elemzése lehetőséget választva a rendszer négy különböző görbét készít a végrehajtók használatára vonatkozóan: lefoglalt végrehajtók, futó végrehajtók, tétlen végrehajtók és maximális végrehajtópéldányok. Minden hozzáadott vagy végrehajtó által eltávolított esemény növeli vagy csökkenti a lefoglalt végrehajtókat. További összehasonlításért tekintse meg az esemény ütemtervét a Feladatok lapon.
Válassza a szín ikont a megfelelő tartalom kijelöléséhez vagy kijelölésének megszüntetéséhez az összes piszkozatban.
GYIK
Hogyan visszatérni a közösségi verzióra?
A közösségi verzióra való visszatéréshez hajtsa végre az alábbi lépéseket.
Nyissa meg a fürtöt az Ambariban.
Lépjen a Spark2>konfigurációihoz.
Válassza ki az egyéni spark2 alapértelmezett értékeket.
Válassza a Tulajdonság hozzáadása ...lehetőséget.
Adja hozzá a spark.ui.enhancement.enabled=false értéket, majd mentse.
A tulajdonság most hamis értékre van állítva.
A konfiguráció mentéséhez válassza a Mentés lehetőséget.
Válassza a Spark2 lehetőséget a bal oldali panelen. Ezután az Összegzés lapon válassza a Spark2 Előzménykiszolgáló lehetőséget.
A Spark Előzménykiszolgáló újraindításához kattintson a Spark2 Előzménykiszolgáló jobb oldalán található Start gombra, majd válassza az Újraindítás lehetőséget a legördülő menüből.
Frissítse a Spark History Server webes felhasználói felületét. Visszaáll a közösségi verzióra.
Hogyan feltölteni egy Spark History Server-eseményt, hogy problémaként jelentse?
Ha hibát tapasztal a Spark History Serverben, tegye az alábbi lépéseket az esemény jelentéséhez.
Az esemény letöltéséhez válassza a Letöltés lehetőséget a Spark History Server webes felhasználói felületén.
Válassza a Visszajelzés küldése lehetőséget a Spark-alkalmazás & Job Graph oldalról.
Adja meg a hiba címét és leírását. Ezután húzza a .zip fájlt a szerkesztési mezőbe, és válassza az Új probléma elküldése lehetőséget.
Hogyan .jar fájl frissítése gyorsjavítási forgatókönyvben?
Ha gyorsjavítással szeretne frissíteni, használja a következő szkriptet, amely frissít spark-enhancement.jar*
.
upgrade_spark_enhancement.sh:
#!/usr/bin/env bash
# Copyright (C) Microsoft Corporation. All rights reserved.
# Arguments:
# $1 Enhancement jar path
if [ "$#" -ne 1 ]; then
>&2 echo "Please provide the upgrade jar path."
exit 1
fi
install_jar() {
tmp_jar_path="/tmp/spark-enhancement-hotfix-$( date +%s )"
if wget -O "$tmp_jar_path" "$2"; then
for FILE in "$1"/spark-enhancement*.jar
do
back_up_path="$FILE.original.$( date +%s )"
echo "Back up $FILE to $back_up_path"
mv "$FILE" "$back_up_path"
echo "Copy the hotfix jar file from $tmp_jar_path to $FILE"
cp "$tmp_jar_path" "$FILE"
"Hotfix done."
break
done
else
>&2 echo "Download jar file failed."
exit 1
fi
}
jars_folder="/usr/hdp/current/spark2-client/jars"
jar_path=$1
if ls ${jars_folder}/spark-enhancement*.jar 1>/dev/null 2>&1; then
install_jar "$jars_folder" "$jar_path"
else
>&2 echo "There is no target jar on this node. Exit with no action."
exit 0
fi
Használat
upgrade_spark_enhancement.sh https://${jar_path}
Példa
upgrade_spark_enhancement.sh https://${account_name}.blob.core.windows.net/packages/jars/spark-enhancement-${version}.jar
A bash-fájl használata az Azure Portalról
Indítsa el az Azure Portalt, majd válassza ki a fürtöt.
Végezzen el egy szkriptműveletet az alábbi paraméterekkel.
Tulajdonság Érték Szkript típusa -Egyéni Név UpgradeJar Bash-szkript URI https://hdinsighttoolingstorage.blob.core.windows.net/shsscriptactions/upgrade_spark_enhancement.sh
Csomóponttípus(ok) Vezető, feldolgozó Paraméterek https://${account_name}.blob.core.windows.net/packages/jars/spark-enhancement-${version}.jar
Ismert problémák
A Spark History Server jelenleg csak a Spark 2.3-hoz és a 2.4-hez működik.
Az RDD-t használó bemeneti és kimeneti adatok nem jelennek meg az Adatok lapon.
Következő lépések
- Apache Spark-fürt erőforrásainak kezelése a HDInsighton
- Az Apache Spark beállításainak konfigurálása
Javaslatok
Ha bármilyen visszajelzése van, vagy bármilyen problémát tapasztal az eszköz használatakor, küldjön egy e-mailt a (hdivstool@microsoft.com) címre.