Sdílet prostřednictvím


Vysoká V/V fáze Sparku

Dále se znovu podívejte na vstupně-výstupní statistiky nejdelší fáze:

Vstup/Výstup Dlouhá fáze

Co je vysoký I/O?

Kolik dat musí být ve sloupci V/V, které se má považovat za vysoké? Pokud to chcete zjistit, začněte nejprve nejvyšším číslem v libovolném z daných sloupců. Pak zvažte celkový počet jader procesoru, které máte u všech našich pracovníků. Obecně platí, že každé jádro může číst a zapisovat přibližně 3 MB za sekundu.

Vydělte svůj největší V/V sloupec počtem pracovních jader clusteru, poté výsledek vydělte dobou trvání v sekundách. Pokud je výsledek kolem 3 MB, jste pravděpodobně omezeni vstupně-výstupními operacemi. To by byla vysoká vstupně-výstupní propustnost.

Vysoký vstup

Pokud vidíte, že do vaší fáze vstupuje velké množství dat, znamená to, že trávíte spoustu času čtením dat. Nejprve určete, jaká data tato fáze čte. Viz Identifikace nákladného čtení vDAG Sparku .

Jakmile identifikujete konkrétní data, tady je několik přístupů k urychlení čtení:

  • Použijte Delta.
  • Zkuste Photon. To může pomoci hodně s rychlostí čtení, zejména pro široké tabulky.
  • Zpřístupněte dotaz selektivněji, aby nemusel číst tolik dat.
  • Přehodnoťte rozložení dat, aby vynechání dat bylo efektivnější.
  • Pokud čtete stejná data vícekrát, použijte mezipaměť Delta.
  • Pokud provádíte spojení, zvažte pokus o zprovoznění DFP.

Vysoký výkon

Pokud vidíte hodně výstupu z vaší etapy, znamená to, že věnujete hodně času zápisování dat. Tady je několik přístupů k řešení tohoto:

  • Přepisujete velké množství dat? Přečtěte si Jak zjistit, jestli Spark přepisuje data ke kontrole. Pokud přepisujete velké množství dat:
    • Zjistěte, jestli máte sloučení , které potřebuje optimalizaci.
    • Pomocí vektorů odstranění označte existující řádky jako odebrané nebo změněné bez přepsání souboru Parquet.
  • Pokud ještě není, povolte Photon. Photon může hodně pomoci s rychlostí zápisu.

Vysoké míchání

Pokud nejste obeznámeni s náhodném prohazování, je čas naučit se.

Žádné vysoké I/O

Pokud v žádném ze sloupců nevidíte vysoký vstup/výstup, musíte prozkoumat více do hloubky. Vizte fázi Slow Spark s malými vstupně-výstupními operacemi.