Udostępnij za pośrednictwem


Doradca platformy Apache Spark w celu uzyskania porad dotyczących notesów w czasie rzeczywistym

Doradca platformy Apache Spark analizuje polecenia i kod uruchamiany przez platformę Apache Spark i wyświetla porady dotyczące uruchamiania notesu w czasie rzeczywistym. Doradca platformy Apache Spark ma wbudowane wzorce, które ułatwiają użytkownikom unikanie typowych błędów. Oferuje rekomendacje dotyczące optymalizacji kodu, przeprowadzania analizy błędów i lokalizowania głównej przyczyny awarii.

Porady wbudowane

Doradca Platformy Spark, narzędzie zintegrowane z platformą Impulse, udostępnia wbudowane wzorce do wykrywania i rozwiązywania problemów w aplikacjach platformy Apache Spark. W tym artykule wyjaśniono niektóre wzorce zawarte w narzędziu.

Możesz otworzyć okienko Ostatnie uruchomienia na podstawie typu potrzebnych porad.

Może zwracać niespójne wyniki w przypadku używania metody "randomSplit"

Niespójne lub niedokładne wyniki mogą być zwracane podczas pracy z metodą randomSplit . Przed użyciem metody randomSplit() użyj buforowania platformy Apache Spark (RDD).

Metoda randomSplit() jest równoważna wykonywaniu próbki() w ramce danych wiele razy. Gdzie poszczególne próbki pobierają, partycje i sortuje ramkę danych w partycjach. Rozkład danych między partycjami i kolejność sortowania jest ważny zarówno dla randomSplit() i sample(). W przypadku zmiany po ponownym pobraniu danych mogą występować duplikaty lub brakujące wartości w różnych podziałach. A ta sama próbka używająca tego samego nasion może generować różne wyniki.

Te niespójności mogą nie wystąpić w każdym uruchomieniu, ale aby całkowicie je wyeliminować, buforować ramkę danych, ponownie partycjonować kolumny lub stosować funkcje agregujące, takie jak groupBy.

Nazwa tabeli/widoku jest już używana

Widok już istnieje o tej samej nazwie co utworzona tabela lub tabela już istnieje o tej samej nazwie co utworzony widok. Gdy ta nazwa jest używana w zapytaniach lub aplikacjach, tylko widok zostanie zwrócony niezależnie od tego, który został utworzony jako pierwszy. Aby uniknąć konfliktów, zmień nazwę tabeli lub widoku.

Nie można rozpoznać wskazówki

spark.sql("SELECT /*+ unknownHint */ * FROM t1")

Nie można odnaleźć określonych nazw relacyjnych

Nie można odnaleźć relacji określonych w wskazówce. Sprawdź, czy relacje są poprawnie napisane i dostępne w zakresie wskazówki.

spark.sql("SELECT /*+ BROADCAST(unknownTable) */ * FROM t1 INNER JOIN t2 ON t1.str = t2.str")

Wskazówka w zapytaniu uniemożliwia zastosowanie innej wskazówki

Wybrane zapytanie zawiera wskazówkę, która uniemożliwia zastosowanie innej wskazówki.

spark.sql("SELECT /*+ BROADCAST(t1), MERGE(t1, t2) */ * FROM t1 INNER JOIN t2 ON t1.str = t2.str")

Włącz opcję "spark.advise.divisionExprConvertRule.enable", aby zmniejszyć propagację błędów zaokrąglania

To zapytanie zawiera wyrażenie z typem Podwójnym. Zalecamy włączenie konfiguracji "spark.advise.divisionExprvertRule.enable", co może pomóc zmniejszyć liczbę wyrażeń dzielenia i zmniejszyć propagację błędów zaokrąglania.

"t.a/t.b/t.c" convert into "t.a/(t.b * t.c)"

Włącz opcję "spark.advise.nonEqJoinConvertRule.enable", aby zwiększyć wydajność zapytań

To zapytanie zawiera czasochłonne sprzężenie ze względu na warunek "Or" w zapytaniu. Zalecamy włączenie konfiguracji "spark.advise.nonEqJoinConvertRule.enable", co może pomóc przekonwertować sprzężenie wyzwalane przez warunek "Or" na SMJ lub BHJ, aby przyspieszyć to zapytanie.

Środowisko użytkownika

Doradca platformy Apache Spark wyświetla porady, w tym informacje, ostrzeżenia i błędy w danych wyjściowych komórki notesu w czasie rzeczywistym.

  • Informacji Zrzut ekranu przedstawiający informacje.

  • Ostrzeżenie Zrzut ekranu przedstawiający ostrzeżenie.

  • Błąd Zrzut ekranu przedstawiający błędy.

Ustawienie doradcy platformy Spark

Ustawienie doradcy platformy Spark umożliwia wybranie, czy pokazać, czy ukryć określone typy porad platformy Spark zgodnie z potrzebami. Ponadto masz elastyczność włączania lub wyłączania usługi Spark Advisor dla notesów w obszarze roboczym na podstawie preferencji.

Możesz uzyskać dostęp do ustawień usługi Spark Advisor na poziomie notesu sieci szkieletowej, aby cieszyć się korzyściami i zapewnić wydajne środowisko tworzenia notesów.

Zrzut ekranu przedstawiający ustawienie doradcy platformy Spark.