Примечание.
Для доступа к этой странице требуется авторизация. Вы можете попробовать войти или изменить каталоги.
Для доступа к этой странице требуется авторизация. Вы можете попробовать изменить каталоги.
Советник Apache Spark анализирует команды и код, выполняемые Apache Spark, и отображает советы в режиме реального времени для выполнения блокнотов. Помощник по Apache Spark имеет встроенные шаблоны, помогающие пользователям избежать распространенных ошибок. Он предлагает рекомендации по оптимизации кода, выполняет анализ ошибок и находит первопричину сбоев.
Встроенные советы
Помощник Spark, интегрированный с Импульсом, предоставляет встроенные шаблоны для обнаружения и устранения проблем в приложениях Apache Spark. В этой статье описываются некоторые шаблоны, включенные в средство.
Вы можете открыть панель "Последние запуски " на основе нужных рекомендаций.
Может возвращать несогласованные результаты при использовании randomSplit
Несогласованные или неточные результаты могут быть возвращены при работе с методом randomSplit . Используйте кэширование Apache Spark (RDD) перед использованием метода randomSplit().
Метод randomSplit() эквивалентен выполнению sample() на DataFrame несколько раз. Каждый пример повторно выбирает, разбивает на разделы и сортирует ваш кадр данных внутри разделов. Распределение данных между секциями и порядком сортировки важно как для randomSplit(), так и для sample(). Если что-либо изменится при повторной выборке данных, это может привести к появлению дублирующихся или отсутствующих значений в разбиениях. Один и тот же образец данных с использованием одинакового начального значения может приводить к различным результатам.
Эти несоответствия могут происходить не во всех запусках, но для их полного устранения кэшируйте кадр данных, выполните перераспределение на столбцах или примените агрегатные функции, такие как groupBy.
Имя таблицы или представления уже используется
Представление уже существует с тем же именем, что и созданная таблица, или таблица уже существует с тем же именем, что и созданное представление. Если это имя используется в запросах или приложениях, будет возвращено только представление, независимо от того, какое из них было создано первым. Чтобы избежать конфликтов, переименуйте таблицу или представление.
Не удалось распознать подсказку
spark.sql("SELECT /*+ unknownHint */ * FROM t1")
Не удается найти указанное имя отношения
Не удалось найти реляционные отношения, указанные в указании. Убедитесь, что реляционные отношения правильно написаны и доступны в пределах указания.
spark.sql("SELECT /*+ BROADCAST(unknownTable) */ * FROM t1 INNER JOIN t2 ON t1.str = t2.str")
Указание в запросе предотвращает применение другого указания
Выбранный запрос содержит подсказку, которая предотвращает применение другого указания.
spark.sql("SELECT /*+ BROADCAST(t1), MERGE(t1, t2) */ * FROM t1 INNER JOIN t2 ON t1.str = t2.str")
Включите spark.advise.divisionExprConvertRule.enable, чтобы уменьшить распространение ошибок округления.
Этот запрос содержит выражение с двойным типом. Рекомендуется включить конфигурацию spark.advise.divisionExprConvertRule.enable, которая может помочь уменьшить выражения деления и уменьшить распространение ошибок округления.
"t.a/t.b/t.c" convert into "t.a/(t.b * t.c)"
Включите spark.advise.nonEqJoinConvertRule.enable, чтобы повысить производительность запросов.
Этот запрос содержит ресурсоёмкое связывание из-за условия "ИЛИ" в запросе. Рекомендуется включить конфигурацию spark.advise.nonEqJoinConvertRule.enable, которая может помочь преобразовать соединение, активируемое условием "Or" в SMJ или BHJ, чтобы ускорить этот запрос.
Резервное выполнение в Spark на основе JVM
Если движок нативного выполнения включен, и план выполнения ячейки записной книжки содержит операторы, которые нельзя перенести на нативный путь, Помощник Spark отображает предупреждение в реальном времени в выходных данных ячейки. Оповещение указывает, что выполнение вернулось в Spark на основе JVM и помогает определить причину, например неподдерживаемые операторы, типы данных или конфигурации. Чтобы устранить обходной путь, просмотрите план запроса для неподдерживаемых операций и скорректируйте свою логику для использования поддерживаемых операторов, или убедитесь, что spark.native.enabled правильно задано для вашего определения задания Spark или записной книжки.
Взаимодействие с пользователем
Помощник Apache Spark отображает советы, включая сведения, предупреждения и ошибки, в ячейке записной книжки в режиме реального времени.
Настройка консультанта Spark
Параметр помощника Spark позволяет выбрать, следует ли отображать или скрывать определенные типы советов Spark в соответствии с вашими потребностями. Кроме того, вы можете включить или отключить Spark Advisor для записных книжек в рабочей области согласно вашим предпочтениям.
Вы можете получить доступ к настройкам Помощника по Spark на уровне записной книжки Fabric, чтобы воспользоваться его преимуществами и обеспечить продуктивное создание записных книжек.