Примечание.
Для доступа к этой странице требуется авторизация. Вы можете попробовать войти или изменить каталоги.
Для доступа к этой странице требуется авторизация. Вы можете попробовать изменить каталоги.
В этой статье описываются текущие ограничения бессерверных вычислений для записных книжек и заданий. Он начинается с обзора наиболее важных аспектов, а затем содержит полный список ограничений.
Поддержка языка и API
- R не поддерживается.
- Поддерживаются только API Spark Connect. API-интерфейсы Spark RDD не поддерживаются.
- Spark Connect, который используется бессерверными вычислениями, откладывает анализ и разрешение имен во время выполнения, что может изменить поведение кода. См . статью "Сравнение Spark Connect с классической версией Spark".
- ANSI SQL — это значение по умолчанию при написании SQL. Чтобы отключить режим ANSI, установите для
spark.sql.ansi.enabledзначениеfalse. - При создании DataFrame из локальных данных с помощью
spark.createDataFrameразмеров строк не может превышать 128 МБ.
Доступ к данным и хранилище
- Для подключения к внешним источникам данных необходимо использовать каталог Unity. Используйте внешние местоположения для доступа к облачному хранилищу.
- Доступ к DBFS ограничен. Вместо этого используйте тома каталога Unity или файлы рабочей области .
- Координаты Maven не поддерживаются.
- Глобальные временные представления не поддерживаются. Если требуется передача данных между сеансами, Databricks рекомендует использовать временные представления сеанса или создавать таблицы.
Пользовательские функции
- Определяемые пользователем функции (UDFS) не могут получить доступ к Интернету. Из-за этого команда CREATE FUNCTION (внешний) не поддерживается. Databricks рекомендует использовать CREATE FUNCTION (SQL и Python) для создания UDF.
- Пользовательский код, такой как UDF,
mapиmapPartitions, не должен превышать 1 ГБ в использовании памяти. - Нельзя использовать Scala UDF внутри функций высшего порядка.
Пользовательский интерфейс и ведение журнала
- Пользовательский интерфейс Spark недоступен. Вместо этого используйте профиль запроса для просмотра сведений о запросах Spark. См. раздел Профиль запроса.
- Журналы Spark недоступны. Пользователи имеют доступ только к журналам приложений на стороне клиента.
Доступ к сети и рабочей области
- Доступ между рабочими областями разрешен только в том случае, если рабочие области находятся в одном регионе, а в целевой рабочей области не настроены IP ACL или фронтальная PrivateLink.
- Службы контейнеров Databricks не поддерживаются.
Ограничения потоковой передачи
Бессерверные вычисления поддерживают следующие структурированные триггеры потоковой передачи:
-
Trigger.AvailableNow(). Databricks рекомендует этот режим триггера для бессерверных вычислений. -
Trigger.Once(). Этот устаревший режим поддерживается, но не рекомендуется.
Следующие триггеры не поддерживаются в бессерверных вычислениях:
-
Trigger.Continuous(interval). -
Trigger.ProcessingTime(interval).- По умолчанию, если вы не указываете режим триггера, Apache Spark задает для триггера значение
Trigger.ProcessingTime("0 seconds"). Необходимо задать поддерживаемый триггер для бессерверных вычислений.
- По умолчанию, если вы не указываете режим триггера, Apache Spark задает для триггера значение
Если вы пытаетесь использовать неподдерживаемый триггер, запрос вызывает ошибку INFINITE_STREAMING_TRIGGER_NOT_SUPPORTED.
Для рабочих нагрузок непрерывной потоковой передачи используйте режим триггера и непрерывного конвейера в бессерверном режиме или непрерывное использование Trigger.AvailableNow() в заданиях выполнения.
Чтобы ознакомиться с руководством по выбору, которое помогает подобрать подходящий бессерверный продукт для сценариев потоковой передачи, см. Потоковая передача на бессерверных вычислениях.
Все ограничения потоковой передачи в стандартном режиме доступа также применяются. См. ограничения потоковой передачи.
Ограничения ноутбуков
- Scala и R не поддерживаются в ноутбуках.
- Библиотеки JAR не поддерживаются в записных книжках. Сведения об обходных решениях см. в рекомендациях по бессерверным вычислениям. Поддерживаются задачи JAR в заданиях. Смотрите задачу JAR для заданий.
- Библиотеки с привязкой к записной книжке не кэшируются между сеансами разработки.
- Общий доступ к таблицам и представлениям TEMP при совместном использовании записной книжки среди пользователей не поддерживается.
- Автозавершение и Эксплорер переменных для фреймов данных в записных книжках не поддерживаются.
- По умолчанию новые записные книжки сохраняются в
.ipynbформате. Если записная книжка сохраняется в исходном формате, бессерверные метаданные могут быть неправильно записаны, а некоторые функции могут не функционировать должным образом. - Теги записной книжки не поддерживаются. Используйте политики использования для бессерверной архитектуры для маркировки использования бессерверной архитектуры.
Ограничения заданий
- Журналы задач не изолированы по каждому выполнению задачи. Журналы будут содержать выходные данные из нескольких задач.
- Библиотеки задач не поддерживаются для задач записной книжки. Вместо этого используйте библиотеки, специфичные для ноутбука. См. Библиотеки Python в пределах ноутбука.
- По умолчанию бессерверные задания не имеют времени ожидания выполнения запроса. Вы можете задать тайм-аут выполнения для запросов заданий с помощью свойства
spark.databricks.execution.timeout. Дополнительные сведения см. в разделе "Настройка свойств Spark для бессерверных записных книжек и заданий".
Ограничения для конкретных вычислений
Следующие функции для вычислений не поддерживаются.
- Политики вычислений
- Скрипты инициализации для вычислительных сред
- Библиотеки, ограниченные вычислительной областью, включая пользовательские источники данных и расширения Spark. Вместо этого используйте библиотеки, ограниченные областью записной книжки.
- Пулы экземпляров
- Журналы событий вычислений
- Большинство конфигураций Apache Spark для вычислений. Список поддерживаемых конфигураций см. в разделе "Настройка свойств Spark для бессерверных записных книжек и заданий".
- переменные окружения. Вместо этого Databricks рекомендует использовать мини-приложения для создания параметров задания и задачи.
Ограничения кэширования
- Метаданные кэшируются в бессерверных сеансах вычислений. Из-за этого контекст сеанса может не полностью обнуляться при переключении каталогов. Чтобы очистить контекст сеанса, сбросьте бессерверный вычислительный ресурс или запустите новый сеанс.
- API кэша данных и кэша SQL не поддерживаются в бессерверных вычислениях. Использование любого из этих API или команд SQL приводит к исключению.
Ограничения в Hive
Таблицы Hive SerDe не поддерживаются. Кроме того, соответствующая команда LOAD DATA, которая загружает данные в таблицу Hive SerDe, не поддерживается. Использование команды приведет к исключению.
Поддержка источников данных ограничена AVRO, BINARYFILE, CSV, DELTA, JSON, KAFKA, ORC, PARQUET, ORC, TEXT и XML.
Переменные Hive (например,
${env:var},${configName},${system:var}иspark.sql.variable) или ссылки на конфигурационные переменные с использованием синтаксиса${var}не поддерживаются. Использование переменных Hive приведет к исключению.Вместо этого используйте DECLARE VARIABLESET VARIABLEссылки на переменные сеанса SQL и маркеры параметров ("?" или ":var") для объявления, изменения и ссылочного состояния сеанса. Также можно использовать предложение IDENTIFIER для параметризации имен объектов во многих случаях.
Поддерживаемые источники данных
Бессерверные вычисления поддерживают следующие источники данных для операций DML (запись, обновление, удаление):
CSVJSONAVRODELTAKAFKAPARQUETORCTEXTUNITY_CATALOGBINARYFILEXMLSIMPLESCANICEBERG
Бессерверные вычисления поддерживают следующие источники данных для операций чтения:
CSVJSONAVRODELTAKAFKAPARQUETORCTEXTUNITY_CATALOGBINARYFILEXMLSIMPLESCANICEBERGMYSQLPOSTGRESQLSQLSERVERREDSHIFTSNOWFLAKE-
SQLDW(Azure Synapse) DATABRICKSBIGQUERYORACLESALESFORCESALESFORCE_DATA_CLOUDTERADATAWORKDAY_RAASMONGODB