Uživatelské rozhraní Apache Sparku zobrazuje nesprávný počet úloh

Problém

Kontrolujete počet aktivních úloh Apache Spark v clusteru v uživatelském rozhraní Spark, ale číslo je příliš vysoké, aby bylo přesné.

Pokud cluster restartujete, počet úloh zobrazených v uživatelském rozhraní Spark je nejprve správný, ale v čase dojde k neobvyklému vysokému zvětšení.

Příčina

Uživatelské rozhraní Spark není vždy přesné pro velké nebo dlouhotrvající clustery z důvodu výpadků událostí. Uživatelské rozhraní Spark vyžaduje, aby po dokončení aktivní úlohy věděly ukončovací položky. Pokud úloha tuto položku neobjeví kvůli chybám nebo neočekávané chybě, může se stát, že se úloha přestane spouštět, ale v uživatelském rozhraní Spark se nesprávně zobrazuje jako aktivní.

Řešení

Uživatelské rozhraní Spark byste neměli používat jako zdroj pravdy pro aktivní úlohy v clusteru.

Metoda sc.statusTracker().getActiveJobIds() v rozhraní Spark API je spolehlivý způsob, jak sledovat počet aktivních úloh.

Další informace najdete v dokumentaci ke sledování stavu Sparku .