Hinweis
Für den Zugriff auf diese Seite ist eine Autorisierung erforderlich. Sie können versuchen, sich anzumelden oder das Verzeichnis zu wechseln.
Für den Zugriff auf diese Seite ist eine Autorisierung erforderlich. Sie können versuchen, das Verzeichnis zu wechseln.
Diese Seite enthält eine Liste der Anforderungen und Einschränkungen für die Standardberechnung. Wenn Sie klassische Compute verwenden, empfiehlt Databricks die Verwendung des Standardzugriffsmodus, es sei denn, Ihre Workload ist von einer der unten aufgeführten Einschränkungen abhängig.
Von Bedeutung
Init-Skripts und -Bibliotheken haben unterschiedliche Unterstützung für Zugriffsmodi und Databricks Runtime-Versionen. Weitere Informationen finden Sie unter Wo können Initialisierungsskripts installiert werden? und Bibliotheken im Computebereich.
Aktuelle Standardberechnungseinschränkungen
In den folgenden Abschnitten werden Einschränkungen für die Standardberechnung basierend auf der neuesten Databricks-Runtime-Version aufgeführt. Einschränkungen, die für ältere Databricks-Runtime-Versionen gelten, finden Sie unter Runtime-abhängige Einschränkungen.
Wenn diese Features für Ihre Workload erforderlich sind, verwenden Sie stattdessen dedizierte Compute .
Allgemeine Standardberechnungseinschränkungen
- Databricks Runtime für ML wird nicht unterstützt. Installieren Sie stattdessen jede ML-Bibliothek, die nicht mit der Databricks-Runtime als computebezogene Bibliothek gebündelt ist.
- GPU-fähige Compute wird nicht unterstützt.
- Spark-Sende-Aufgaben werden nicht unterstützt. Verwenden Sie stattdessen eine JAR-Aufgabe.
- DBUtils und andere Clients können nur über einen externen Speicherort aus dem Cloudspeicher gelesen werden.
- Benutzerdefinierte Container werden nicht unterstützt.
- DBFS-Stamm- und Bereitstellungen unterstützen FUSE nicht.
Sprachbeschränkungen
- R wird nicht unterstützt.
Spark-API-Einschränkungen
- Spark Context (
sc),spark.sparkContextundsqlContextwerden für Scala nicht unterstützt:- Azure Databricks empfiehlt die Verwendung der
sparkVariablen für die Interaktion mit derSparkSessionInstanz. - Die folgenden
sc-Funktionen werden ebenfalls nicht unterstützt: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 empfiehlt die Verwendung der
- Die Spark-Konfiguration Eigenschaft
spark.executor.extraJavaOptionswird nicht unterstützt. - Beim Erstellen eines DataFrame aus lokalen Daten mithilfe
spark.createDataFramevon Zeilengrößen darf 128 MB nicht überschritten werden. - RDD-APIs werden nicht unterstützt.
- Spark Connect, das in neueren Versionen von Databricks Runtime verwendet wird, verzögert die Analyse- und Namensauflösung auf die Ausführungszeit, wodurch sich das Verhalten Ihres Codes ändern kann. Siehe "Vergleichen von Spark Connect" mit Spark Classic.
UDF-Einschränkungen
- Struktur-UDFs werden nicht unterstützt. Verwenden Sie stattdessen UDFs im Unity-Katalog.
Streamingbeschränkungen
Hinweis
Einige der aufgeführten Kafka-Optionen haben eingeschränkte Unterstützung, wenn sie für unterstützte Konfigurationen in Azure Databricks verwendet werden. Alle aufgelisteten Kafka-Einschränkungen gelten sowohl für die Batch- als auch für die Stream-Verarbeitung. Siehe Stream-Verarbeitung mit Apache Kafka und Azure Databricks.
- Sie können die Formate
statestoreundstate-metadatanicht verwenden, um Zustandsinformationen für zustandsbehaftete Streamingabfragen abzufragen. - Das Arbeiten mit Socket-Quellen wird nicht unterstützt.
-
sourceArchiveDirmuss sich am gleichen externen Speicherort wie die Quelle befinden, wenn Sieoption("cleanSource", "archive")mit einer von Unity Catalog verwalteten Datenquelle verwenden. - Für Kafka-Quellen und -Senken werden die folgenden Optionen nicht unterstützt:
kafka.sasl.client.callback.handler.classkafka.sasl.login.callback.handler.classkafka.sasl.login.classkafka.partition.assignment.strategy
Netzwerk- und Dateisystembeschränkungen
- Die Standardberechnung führt Befehle als Benutzer mit geringen Rechten aus, die nicht auf vertrauliche Teile des Dateisystems zugreifen dürfen.
-
POSIX-Formatpfade (
/) für DBFS werden nicht unterstützt. - Nur Arbeitsbereichsadministratoren und Benutzer mit ANY FILE-Berechtigungen können direkt mit Dateien mit DBFS interagieren.
- Sie können keine Verbindung mit dem Instanz-Metadatendienst oder Azure WireServer herstellen.
Scala-Kernelbeschränkungen
Die folgenden Einschränkungen gelten für die Verwendung des skalan Kernels bei der Standardberechnung:
- Bestimmte Klassen können nicht in Ihrem Code verwendet werden, wenn sie mit der internen Mandelkernbibliothek in Konflikt stehen, insbesondere
Input. Eine Liste der definierten Importe von Mandeln finden Sie unter Mandelimporte. - Die direkte Protokollierung in log4j wird nicht unterstützt.
- In der Benutzeroberfläche wird das Drop-down-Menü für das DataFrame-Schema nicht unterstützt.
- Wenn Ihr Treiber auf OOM trifft, wird die Scala REPL nicht beendet.
-
//connector/sql-aws-connectors:sql-aws-connectorsist nicht im Bazelziel der Scala REPL, verwenden Sie Ergebnisse inClassNotFoundException. - Der Scala-Kernel ist nicht mit SQLImplicits kompatibel.
Laufzeitabhängige Einschränkungen
Die folgenden Einschränkungen wurden durch Laufzeitupdates behoben, gelten aber möglicherweise auch für Ihre Workload, wenn Sie eine ältere Laufzeit verwenden.
Sprachunterstützung
| Merkmal | Erforderliche Databricks-Runtime-Version |
|---|---|
| Scala | 13.3 oder höher |
| Alle runtime-gebündelten Java- und Scala-Bibliotheken sind standardmäßig verfügbar. | 15.4 LTS oder höher (für 15.3 oder darunter, festgelegt spark.databricks.scala.kernel.fullClasspath.enabled=true) |
Spark-API-Unterstützung
| Merkmal | Erforderliche Databricks-Runtime-Version |
|---|---|
| Spark ML | 17.0 oder höher |
Python: SparkContext (sc), , spark.sparkContextsqlContext |
14.0 oder höher |
Skala Dataset ops: map, , mapPartitions, foreachPartitionflatMap, reducefilter |
15.4 LTS oder höher |
UDF-Unterstützung
| Merkmal | Erforderliche Databricks-Runtime-Version |
|---|---|
applyInPandas, mapInPandas |
14.3 LTS oder höher |
| Skalare UDFs und Scala UDAFs | 14.3 LTS oder höher |
| Importieren von Modulen aus Git-Ordnern, Arbeitsbereichsdateien oder Volumes in PySpark UDFs | 14.3 LTS oder höher |
Verwenden von benutzerdefinierten Versionen von grpc, oder pyarrowprotobuf in PySpark UDFs über Notizbuch- oder Compute-bezogenen Bibliotheken |
14.3 LTS oder höher |
| Nicht skalare Python- und Pandas-UDFs, einschließlich UDAFs, UDTFs und Pandas auf Spark | 14.3 LTS oder höher |
| Python skalare UDFs und Pandas UDFs | 13.3 LTS oder höher |
Streamingunterstützung
| Merkmal | Erforderliche Databricks-Runtime-Version |
|---|---|
transformWithStateInPandas |
16.3 oder höher |
applyInPandasWithState |
14.3 LTS oder höher |
Scala foreach |
16.1 oder höher |
Skala foreachBatch und flatMapGroupsWithState |
16.2 oder höher |
Scala from_avro |
14.2 oder höher |
Kafka-Optionen kafka.ssl.truststore.location und kafka.ssl.keystore.location (angegebener Speicherort muss ein externer Speicherort sein, der vom Unity-Katalog verwaltet wird) |
13.3 LTS oder höher |
Scala StreamingQueryListener |
16.1 oder höher |
Python StreamingQueryListener interagiert mit unity-katalogverwalteten Objekten |
14.3 LTS oder höher |
Darüber hinaus hat python foreachBatch die folgenden Verhaltensänderungen für Databricks Runtime 14.0 und höher:
-
print()Befehle schreiben Ausgaben in die Treiberprotokolle. - Sie können nicht auf das Untermodul
dbutils.widgetsinnerhalb der Funktion zugreifen. - Alle Dateien, Module oder Objekte, auf die in der Funktion verwiesen wird, müssen serialisierbar und in Spark verfügbar sein.
Netzwerk- und Dateisystemunterstützung
| Merkmal | Erforderliche Databricks-Runtime-Version |
|---|---|
| Verbindungen mit anderen Ports als 80 und 443 | 12.2 LTS oder höher |