Примечание.
Для доступа к этой странице требуется авторизация. Вы можете попробовать войти или изменить каталоги.
Для доступа к этой странице требуется авторизация. Вы можете попробовать изменить каталоги.
Эта страница содержит список требований и ограничений для стандартных вычислений. Если вы используете классические вычисления, Databricks рекомендует использовать стандартный режим доступа, если рабочая нагрузка не зависит от одного из ограничений, перечисленных ниже.
Это важно
Сценарии и библиотеки init имеют разную поддержку в различных режимах доступа и версиях Среды выполнения Databricks. См. Где можно установить скрипты инициализации? и библиотеки, связанные с вычислениями.
Текущие стандартные ограничения вычислений
В следующих разделах перечислены ограничения для стандартных вычислений на основе последней версии Databricks Runtime. Ограничения, применяемые к старым версиям Databricks Runtime, см. в разделе об ограничениях, зависящих от среды выполнения.
Если эти функции необходимы для рабочей нагрузки, используйте выделенные вычислительные ресурсы .
Общие стандартные ограничения вычислений
- Databricks Runtime для ML не поддерживается. Вместо этого установите любую библиотеку машинного обучения, не входящую в состав среды выполнения Databricks, как библиотеку с областью применения для вычислений.
- Вычислительные ресурсы с поддержкой GPU не поддерживаются.
- Задачи, связанные с выполнением spark-submit, не поддерживаются. Вместо этого используйте задачу JAR .
- DBUtils и другие клиенты могут считывать только из облачного хранилища через внешнее местоположение.
- Пользовательские контейнеры не поддерживаются.
- Корневая директория и точки монтирования DBFS не поддерживают FUSE.
Ограничения языка
- R не поддерживается.
Ограничения API Spark
- Контекст Spark (
sc),spark.sparkContextиsqlContextне поддерживаются для Scala:- Azure Databricks рекомендует использовать
sparkпеременную для взаимодействия с экземпляромSparkSession. - Следующие
scфункции также не поддерживаются:emptyRDD,range,init_batched_serializer,parallelize,pickleFile,textFile,wholeTextFiles,binaryFiles,binaryRecords,sequenceFile,newAPIHadoopFile,newAPIHadoopRDD,hadoopFile,hadoopRDD,union,runJob,setSystemProperty,uiWebUrl,stop,setJobGroup,setLocalProperty,getConf.
- Azure Databricks рекомендует использовать
- Свойство конфигурации Spark
spark.executor.extraJavaOptionsне поддерживается. - При создании кадра данных из локальных данных с помощью
spark.createDataFrameразмер строк не может превышать 128 МБ. - API RDD не поддерживаются.
- Spark Connect, который используется в более поздних версиях Databricks Runtime, откладывает анализ и разрешение имен во время выполнения, что может изменить поведение кода. См . статью "Сравнение Spark Connect с классической версией Spark".
Ограничения UDF
- Определяемые пользователем функции Hive не поддерживаются. Вместо этого используйте UDF (пользовательские функции) в каталоге Unity.
- Нельзя использовать Scala UDF внутри функций высшего порядка.
Ограничения потоковой передачи
Замечание
Некоторые из перечисленных вариантов Kafka имеют ограниченную поддержку при использовании для поддерживаемых конфигураций в Azure Databricks. Все перечисленные ограничения Kafka допустимы как для пакетной обработки, так и для потоковой обработки. См. статью "Подключение к Apache Kafka".
- Работа с сокетными источниками не поддерживается.
-
sourceArchiveDirдолжно находиться в том же внешнем расположении, что и источник, если вы используетеoption("cleanSource", "archive")с источником данных, управляемым каталогом Unity. - Для источников и приемников Kafka следующие параметры не поддерживаются.
kafka.sasl.client.callback.handler.classkafka.sasl.login.callback.handler.classkafka.sasl.login.classkafka.partition.assignment.strategy
- Python
foreachBatchне поддерживаетThreadPoolExecutorили многопоточное выполнение. Многопоточное выполнение может не вызывать ошибки, но может привести к повреждению данных или несогласованным результатам.
Ограничения сетевой и файловой системы
- Стандартные вычислительные команды выполняются от имени пользователя с низким уровнем привилегий, которому запрещен доступ к конфиденциальным частям файловой системы.
-
Пути в стиле POSIX (
/) для DBFS не поддерживаются. - Только администраторы рабочей области и пользователи с разрешениями ANY FILE могут напрямую взаимодействовать с файлами с помощью DBFS.
- Невозможно подключиться к сервису метаданных экземпляра или Azure WireServer.
Ограничения ядра Scala
Следующие ограничения применяются при использовании ядра scala в стандартном вычислении:
- Некоторые классы нельзя использовать в коде, если они конфликтуют с внутренней библиотекой ядра миндаля, в частности,
Input. Для списка определенных импортов для миндаля, см. раздел импорт миндаля. - Ведение журнала непосредственно в log4j не поддерживается.
- В пользовательском интерфейсе выпадающее меню схемы датафрейма не поддерживается.
- Если драйвер столкнётся с OOM, Scala REPL не завершит работу.
-
//connector/sql-aws-connectors:sql-aws-connectorsне находится в целевом объекте Scala REPL, используйте результатыClassNotFoundException. - Ядро Scala несовместимо с SQLImplicits.
Ограничения, зависящие от среды выполнения
Следующие ограничения были устранены с помощью обновлений среды выполнения, но могут по-прежнему применяться к рабочей нагрузке, если вы используете старую среду выполнения.
Поддержка языков
| Функция | Требуемая версия среды выполнения Databricks |
|---|---|
| Scala | 13.3 или выше |
| Все библиотеки Java и Scala, поставляемые вместе со средой выполнения, доступны по умолчанию | 15.4 LTS или более поздней версии (для 15.3 или более ранней версии, установите spark.databricks.scala.kernel.fullClasspath.enabled=true) |
Поддержка API Spark
| Функция | Требуемая версия среды выполнения Databricks |
|---|---|
| Машинное обучение Spark | 17.0 или выше |
Python: SparkContext (sc), spark.sparkContextsqlContext |
14.0 или выше |
Scala Dataset ops: map, mapPartitions, foreachPartition, flatMap, reduce, filter |
15.4 LTS или более поздней версии |
Поддержка UDF
| Функция | Требуемая версия среды выполнения Databricks |
|---|---|
applyInPandas, mapInPandas |
14.3 LTS или более поздней версии |
| Scala scalar UDFs и Scala UDAFs | 14.3 LTS или более поздней версии |
| Импорт модулей из каталогов в Git, файлов рабочей области или томов в PySpark UDF | 14.3 LTS или более поздней версии |
Используйте пользовательские версии grpc, pyarrow или protobuf в UDF PySpark через библиотеки, ограниченные записными книжками или вычислениями. |
14.3 LTS или более поздней версии |
| Не скалярные пользовательские файлы Python и Pandas, включая UDAFs, UDTFs и Pandas в Spark | 14.3 LTS или более поздней версии |
| Скалярные UDF на языке Python и Pandas UDF | 13.3 LTS или более поздней версии |
Поддержка потоковой передачи
| Функция | Требуемая версия среды выполнения Databricks |
|---|---|
transformWithStateInPandas |
16.3 или выше |
applyInPandasWithState |
14.3 LTS или более поздней версии |
Scala foreach |
16.1 или выше |
Scala foreachBatch и flatMapGroupsWithState |
16.2 или выше |
Scala from_avro |
14.2 или более поздней версии |
Параметры Kafka kafka.ssl.truststore.location и kafka.ssl.keystore.location (указанное местоположение должно быть внешним и управляться каталогом Unity) |
13.3 LTS или более поздней версии |
Scala StreamingQueryListener |
16.1 или выше |
Взаимодействие Python StreamingQueryListener с управляемыми каталогом Unity объектами |
14.3 LTS или более поздней версии |
Кроме того, foreachBatch для Python изменяется следующее поведение в Databricks Runtime 14.0 и более поздних версий:
-
print()команды записывают выходные данные в журналы драйверов. - Невозможно получить доступ к подмодулу
dbutils.widgetsвнутри функции. - Все файлы, модули или объекты, на которые ссылается функция, должны быть сериализуемыми и доступными в Spark.
Поддержка сетевой и файловой системы
| Функция | Требуемая версия среды выполнения Databricks |
|---|---|
| Подключения к портам, отличным от 80 и 443 | 12.2 LTS или более поздней версии |