Delen via


Standaardvereisten en -beperkingen

Deze pagina bevat een lijst met vereisten en beperkingen voor standaard berekenen. Als u klassieke berekeningen gebruikt, raadt Databricks aan om de standaardtoegangsmodus te gebruiken, tenzij uw workload afhankelijk is van een van de onderstaande beperkingen.

Belangrijk

Init-scripts en -bibliotheken bieden verschillende ondersteuning voor toegangsmodi en Databricks Runtime-versies. Zie Waar kunnen init-scripts worden geïnstalleerd? en voor berekeningen toegewezen bibliotheken.

Huidige standaard compute-beperkingen

De volgende secties bevatten beperkingen voor standaard berekenen op basis van de meest recente Databricks Runtime-versie. Zie Runtime-afhankelijke beperkingen voor beperkingen die van toepassing zijn op oudere Databricks Runtime-versies.

Als deze functies vereist zijn voor uw workload, gebruikt u in plaats daarvan toegewezen rekenkracht .

Algemene standaard compute-beperkingen

  • Databricks Runtime voor ML wordt niet ondersteund. Installeer in plaats daarvan een ML-bibliotheek die niet is gebundeld met Databricks Runtime als een bibliotheek met rekenbereik.
  • Rekenkracht met GPU wordt niet ondersteund.
  • Taaktaken voor Spark-submit worden niet ondersteund. Gebruik in plaats daarvan een JAR-taak.
  • DBUtils en andere clients kunnen alleen lezen uit cloudopslag met behulp van een externe locatie.
  • Aangepaste containers worden niet ondersteund.
  • DBFS-root en aankoppelingen bieden geen ondersteuning voor FUSE.

Taalbeperkingen

  • R wordt niet ondersteund.

Beperkingen voor Spark-API

  • Spark-context (sc), spark.sparkContexten sqlContext worden niet ondersteund voor Scala:
    • Azure Databricks raadt het gebruik van de spark variabele aan om te communiceren met het SparkSession exemplaar.
    • De volgende sc functies worden ook niet ondersteund: emptyRDD, range, init_batched_serializer, parallelize, , pickleFiletextFilewholeTextFilesbinaryFilesbinaryRecordssequenceFilenewAPIHadoopFilenewAPIHadoopRDDhadoopFilehadoopRDDunionrunJobsetSystemPropertyuiWebUrlstop, setJobGroup, , . setLocalPropertygetConf
  • De Spark-configuratie eigenschap spark.executor.extraJavaOptions wordt niet ondersteund.
  • Wanneer u een DataFrame maakt op basis van lokale gegevens met behulp spark.createDataFramevan, mag de rijgrootte niet groter zijn dan 128 MB.
  • RDD-API's worden niet ondersteund.
  • Spark Connect, dat wordt gebruikt in recentere versies van Databricks Runtime, leidt analyse en naamomzetting uit tot uitvoeringstijd, waardoor het gedrag van uw code kan worden gewijzigd. Zie Spark Connect vergelijken met Spark Classic.

UDF-beperkingen

Streamingbeperkingen

Opmerking

Sommige van de vermelde Kafka-opties hebben beperkte ondersteuning wanneer ze worden gebruikt voor ondersteunde configuraties in Azure Databricks. Alle vermelde Kafka-beperkingen zijn geldig voor zowel batch- als streamverwerking. Zie Stream-verwerking met Apache Kafka en Azure Databricks.

  • U kunt de indelingen statestore en state-metadata niet gebruiken om statusinformatie op te vragen voor stateful streamingquery's.
  • Het werken met socket bronnen wordt niet ondersteund.
  • De sourceArchiveDir moet zich op dezelfde externe locatie bevinden als de bron wanneer u option("cleanSource", "archive") gebruikt met een gegevensbron die wordt beheerd door Unity Catalog.
  • Voor Kafka-bronnen en -sinks worden de volgende opties niet ondersteund:
    • kafka.sasl.client.callback.handler.class
    • kafka.sasl.login.callback.handler.class
    • kafka.sasl.login.class
    • kafka.partition.assignment.strategy

Beperkingen voor netwerk- en bestandssysteem

  • Standaard compute voert opdrachten uit als een gebruiker met beperkte bevoegdheden die geen toegang heeft tot gevoelige onderdelen van het bestandssysteem.
  • POSIX-paden (/) voor DBFS worden niet ondersteund.
  • Alleen werkruimtebeheerders en gebruikers met enige bestandmachten kunnen rechtstreeks communiceren met bestanden via DBFS.
  • U kunt geen verbinding maken met de instantiemetagegevensservice of Azure WireServer.

Beperkingen van Scala-kernel

De volgende beperkingen zijn van toepassing bij het gebruik van de scala-kernel op standaard compute:

  • Bepaalde klassen kunnen niet in uw code worden gebruikt als ze conflicteren met de interne almond-kernelbibliotheek, met name Input. Zie amandelimporten voor een lijst met de gedefinieerde amandelimporten.
  • Loggen rechtstreeks naar log4j wordt niet ondersteund.
  • In de gebruikersinterface wordt de vervolgkeuzelijst voor het dataframeschema niet ondersteund.
  • Als uw driver OOM bereikt, wordt de Scala REPL niet afgesloten.
  • //connector/sql-aws-connectors:sql-aws-connectors bevindt zich niet in het bazel-doel van Scala REPL, gebruik resultaten in ClassNotFoundException.
  • De Scala-kernel is niet compatibel met SQLImplicits.

Runtimeafhankelijke beperkingen

De volgende beperkingen zijn opgelost via runtime-updates, maar zijn mogelijk nog steeds van toepassing op uw workload als u een oudere runtime gebruikt.

Taalondersteuning

Eigenschap Vereiste Databricks Runtime-versie
Scala 13.3 of hoger
Alle runtime-gebundelde Java- en Scala-bibliotheken zijn standaard beschikbaar 15.4 LTS of hoger (voor 15.3 of lager, ingesteld spark.databricks.scala.kernel.fullClasspath.enabled=true)

Spark-API-ondersteuning

Eigenschap Vereiste Databricks Runtime-versie
Spark ML 17.0 of hoger
Python: SparkContext (sc), spark.sparkContextsqlContext 14.0 of hoger
Scala Dataset ops: map, mapPartitions, foreachPartition, , flatMap, reducefilter 15.4 LTS of hoger

UDF-ondersteuning

Eigenschap Vereiste Databricks Runtime-versie
applyInPandas, mapInPandas 14.3 LTS of hoger
Scala scalaire UDF's en Scala-UDAF's 14.3 LTS of hoger
Modules importeren uit Git-mappen, werkruimtebestanden of volumes in PySpark UDF's 14.3 LTS of hoger
Aangepaste versies van grpc, pyarrowof protobuf in PySpark UDF's gebruiken via notebook- of compute-scoped bibliotheken 14.3 LTS of hoger
Niet-scalaire Python- en Pandas-UDF's, waaronder UDAFs, UDDF's en Pandas in Spark 14.3 LTS of hoger
Scalaire UDF's van Python en Pandas UDF's 13.3 LTS of hoger

Streaming-ondersteuning

Eigenschap Vereiste Databricks Runtime-versie
transformWithStateInPandas 16.3 of hoger
applyInPandasWithState 14.3 LTS of hoger
Scala foreach 16.1 of hoger
Scala foreachBatch en flatMapGroupsWithState 16.2 of hoger
Scala from_avro 14.2 of hoger
Kafka-opties kafka.ssl.truststore.location en kafka.ssl.keystore.location (opgegeven locatie moet een externe locatie zijn die wordt beheerd door Unity Catalog) 13.3 LTS of hoger
Scala StreamingQueryListener 16.1 of hoger
Python StreamingQueryListener communiceert met door Unity Catalog beheerde objecten 14.3 LTS of hoger

Daarnaast worden voor Python foreachBatch de volgende gedragswijzigingen aangebracht in Databricks Runtime 14.0 en hoger:

  • print() commando's schrijven uitvoer naar de stuurprogrammalogboeken.
  • U hebt geen toegang tot de dbutils.widgets submodule in de functie.
  • Bestanden, modules of objecten waarnaar in de functie wordt verwezen, moeten serialiseren en beschikbaar zijn in Spark.

Ondersteuning voor netwerk- en bestandssysteem

Eigenschap Vereiste Databricks Runtime-versie
Verbindingen met andere poorten dan 80 en 443 12.2 LTS of hoger