Delen via


Beperkingen voor de compute-toegangsmodus voor Unity Catalog

Databricks raadt aan unity catalog en de modus voor gedeelde toegang te gebruiken voor de meeste workloads. In dit artikel worden beperkingen en vereisten beschreven voor elke toegangsmodus met Unity Catalog. Zie Access-modi voor meer informatie over toegangsmodi.

Databricks raadt het gebruik van rekenbeleid aan om configuratieopties voor de meeste gebruikers te vereenvoudigen. Zie Rekenbeleid maken en beheren.

Notitie

Gedeeld zonder isolatie is een verouderde toegangsmodus die geen ondersteuning biedt voor Unity Catalog.

Belangrijk

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

Beperkingen voor de toegangsmodus voor één gebruiker voor Unity Catalog

De toegangsmodus voor één gebruiker in Unity Catalog heeft de volgende beperkingen. Dit zijn naast de algemene beperkingen voor alle Unity Catalog-toegangsmodus. Zie Algemene beperkingen voor Unity Catalog.

Gedetailleerde beperkingen voor toegangsbeheer voor Unity Catalog-modus voor één gebruiker

In Databricks Runtime 15.3 en lager wordt gedetailleerd toegangsbeheer voor rekenkracht van één gebruiker niet ondersteund. Specifiek:

  • U hebt geen toegang tot een tabel met een rijfilter of kolommasker.
  • U hebt geen toegang tot dynamische weergaven.
  • Als u vanuit een weergave wilt lezen, moet u alle tabellen en weergaven hebben SELECT waarnaar wordt verwezen door de weergave.

Als u dynamische weergaven wilt opvragen, gebruikt u een van de volgende manieren om query's uit te voeren op dynamische weergaven, weergaven die u niet hebt SELECT op de onderliggende tabellen en weergaven, en tabellen met rijfilters of kolommaskers:

  • Een SQL Warehouse.

  • Berekenen met de modus voor gedeelde toegang.

  • Compute met de modus voor toegang van één gebruiker in Databricks Runtime 15.4 LTS of hoger.

    Databricks Runtime 15.4 LTS en hoger bieden ondersteuning voor gedetailleerd toegangsbeheer voor rekenkracht van één gebruiker. Als u wilt profiteren van het filteren van gegevens in Databricks Runtime 15.4 LTS en hoger, controleert u of uw werkruimte is ingeschakeld voor serverloze berekeningen.

    Serverloze berekening verwerkt gegevensfiltering, waardoor toegang tot een weergave mogelijk is zonder dat hiervoor machtigingen zijn vereist voor de onderliggende tabellen en weergaven. Omdat serverloze rekenkracht gegevensfilters verwerkt, worden er mogelijk serverloze rekenkosten in rekening gebracht wanneer u rekenkracht van één gebruiker gebruikt om query's uit te voeren op weergaven. Zie Fijnmazig toegangsbeheer voor rekenkracht van één gebruiker voor meer informatie.

Beperkingen voor streamingtabel en gerealiseerde weergave voor de toegangsmodus voor één gebruiker in Unity Catalog

In Databricks Runtime 15.3 en lager kunt u geen rekenkracht van één gebruiker gebruiken om query's uit te voeren op tabellen die zijn gemaakt met behulp van een Delta Live Tables-pijplijn, inclusief streamingtabellen en gerealiseerde weergaven, als deze tabellen eigendom zijn van andere gebruikers. De gebruiker die een tabel maakt, is de eigenaar.

Gebruik een van de volgende manieren om query's uit te voeren op streamingtabellen en gerealiseerde weergaven die zijn gemaakt door Delta Live Tables en die eigendom zijn van andere gebruikers:

  • Een SQL Warehouse.

  • Compute met de modus voor gedeelde toegang op Databricks Runtime 13.3 LTS of hoger.

  • Compute met de modus voor toegang van één gebruiker in Databricks Runtime 15.4 LTS of hoger.

    Uw werkruimte moet ook zijn ingeschakeld voor serverloze berekeningen. Zie Fijnmazig toegangsbeheer voor rekenkracht van één gebruiker voor meer informatie.

Streamingbeperkingen voor de toegangsmodus voor één gebruiker in Unity Catalog

  • Asynchrone controlepunten worden niet ondersteund in Databricks Runtime 11.3 LTS en hieronder.
  • StreamingQueryListener Vereist dat Databricks Runtime 15.1 of hoger referenties gebruikt of interactie heeft met objecten die worden beheerd door Unity Catalog op rekenkracht van één gebruiker.

Beperkingen voor gedeelde toegangsmodus voor Unity Catalog

De modus Voor gedeelde toegang in Unity Catalog gelden de volgende beperkingen. Dit zijn naast de algemene beperkingen voor alle unity-catalogustoegangsmodi. Zie Algemene beperkingen voor Unity Catalog.

  • Databricks Runtime ML en Spark Machine Learning Library (MLlib) worden niet ondersteund.

  • Spark-submit-taken worden niet ondersteund.

  • In Databricks Runtime 13.3 en hoger mogen afzonderlijke rijen niet groter zijn dan 128 MB.

  • PySpark UDF's hebben geen toegang tot Git-mappen, werkruimtebestanden of volumes voor het importeren van modules in Databricks Runtime 14.2 en lager.

  • DBFS-hoofd- en koppels bieden geen ondersteuning voor FUSE.

  • Wanneer u de modus voor gedeelde toegang met referentiepassthrough gebruikt, worden unity-catalogusfuncties uitgeschakeld.

  • Aangepaste containers worden niet ondersteund.

Taalondersteuning voor de gedeelde toegangsmodus van Unity Catalog

  • R wordt niet ondersteund.
  • Scala wordt ondersteund in Databricks Runtime 13.3 en hoger.
    • In Databricks Runtime 15.4 LTS en hoger zijn alle Java- of Scala-bibliotheken (JAR-bestanden) die zijn gebundeld met Databricks Runtime beschikbaar op berekening in de toegangsmodi van Unity Catalog.
    • Voor Databricks Runtime 15.3 of lager op rekenkracht die gebruikmaakt van de modus voor gedeelde toegang, stelt u de Spark-configuratie in spark.databricks.scala.kernel.fullClasspath.enabled op true.

Beperkingen en vereisten voor spark-API voor de modus voor gedeelde toegang van Unity Catalog

  • RDD-API's worden niet ondersteund.
  • DBUtils en andere clients die de gegevens rechtstreeks lezen uit cloudopslag, worden alleen ondersteund wanneer u een externe locatie gebruikt voor toegang tot de opslaglocatie. Zie Een externe locatie maken om cloudopslag te verbinden met Azure Databricks.
  • Spark-context (sc),spark.sparkContexten sqlContext worden niet ondersteund voor Scala in een Databricks Runtime en worden niet ondersteund voor Python in Databricks Runtime 14.0 en hoger.
    • Databricks raadt aan de spark variabele te gebruiken om met het SparkSession exemplaar te communiceren.
    • De volgende sc functies worden ook niet ondersteund: emptyRDD, range, init_batched_serializer, parallelize, , textFilesetSystemPropertybinaryFileswholeTextFilesbinaryRecordssequenceFilenewAPIHadoopFilepickleFilehadoopFilehadoopRDDnewAPIHadoopRDDstopuiWebUrlunionrunJob, setJobGroup, , . setLocalPropertygetConf
  • Voor de volgende Scala Dataset-API-bewerkingen is Databricks Runtime 15.4 LTS of hoger vereist: map, mapPartitions, foreachPartition, flatMapen reduce .filter

UDF-beperkingen en -vereisten voor de gedeelde toegangsmodus van Unity Catalog

Door de gebruiker gedefinieerde functies (UDF's) hebben de volgende beperkingen met de modus voor gedeelde toegang:

  • Hive UDF's worden niet ondersteund.

  • applyInPandas en mapInPandas databricks Runtime 14.3 of hoger vereisen.

  • Scalaire UDF's vereisen Databricks Runtime 14.2 of hoger. Andere Scala UDF's en UDAF's worden niet ondersteund.

  • In Databricks Runtime 14.2 en lager, met behulp van een aangepaste versie van grpc, pyarrowof protobuf in een PySpark UDF via notebook-scoped of clusterbereikd bibliotheken wordt niet ondersteund omdat de geïnstalleerde versie altijd de voorkeur heeft. Zie de sectie Systeemomgeving van de releaseopmerkingen van de specifieke releaseopmerkingen van de Databricks Runtime-versie om de versie van geïnstalleerde bibliotheken te vinden.

  • Python scalaire UDF's en Pandas UDF's vereisen Databricks Runtime 13.3 LTS of hoger.

  • Niet-scalaire Python- en Pandas UDF's, waaronder UDAF's, UDDF's en Pandas in Spark, vereisen Databricks Runtime 14.3 LTS of hoger.

Zie door de gebruiker gedefinieerde functies (UDF's) in Unity Catalog.

Streamingbeperkingen en -vereisten voor de gedeelde toegangsmodus van Unity Catalog

Notitie

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.

  • Voor Scala, foreach, foreachBatch, en StreamingListenersFlatMapGroupWithState worden niet ondersteund.
  • Voor Python foreachBatch worden de volgende gedragswijzigingen aangebracht in Databricks Runtime 14.0 en hoger:
    • print() opdrachten 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.
  • Voor Scala from_avro is Databricks Runtime 14.2 of hoger vereist.
  • applyInPandasWithState vereist Databricks Runtime 14.3 LTS of hoger.
  • Werken met socketbronnen wordt niet ondersteund.
  • De sourceArchiveDir moet zich op dezelfde externe locatie bevinden als de bron wanneer u een gegevensbron gebruikt option("cleanSource", "archive") 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
  • De volgende Kafka-opties worden niet ondersteund in Databricks Runtime 13.3 LTS en hoger, maar niet ondersteund in Databricks Runtime 12.2 LTS. U kunt alleen externe locaties opgeven die worden beheerd door Unity Catalog voor deze opties:
    • kafka.ssl.truststore.location
    • kafka.ssl.keystore.location
  • StreamingQueryListener Vereist Dat Databricks Runtime 14.3 LTS of hoger referenties gebruikt of interactie heeft met objecten die worden beheerd door Unity Catalog op gedeelde berekeningen.

Netwerk- en bestandssysteemtoegangsbeperkingen en -vereisten voor de gedeelde toegangsmodus van Unity Catalog

  • U moet opdrachten uitvoeren op rekenknooppunten als een gebruiker met beperkte bevoegdheden die geen toegang heeft tot gevoelige onderdelen van het bestandssysteem.

  • In Databricks Runtime 11.3 LTS en hieronder kunt u alleen netwerkverbindingen maken met poorten 80 en 443.

  • U kunt geen verbinding maken met de instantiemetagegevensservice of Azure WireServer.

Algemene beperkingen voor Unity Catalog

De volgende beperkingen gelden voor alle toegangsmodi voor Unity Catalog.

Streamingbeperkingen voor Unity Catalog

  • De modus continue verwerking van Apache Spark wordt niet ondersteund. Zie Continue verwerking in de Spark Structured Streaming Programming Guide.

Zie ook Streaming-beperkingen voor de toegangsmodus voor één gebruiker in Unity Catalog en streamingbeperkingen en -vereisten voor de gedeelde toegangsmodus van Unity Catalog.

Zie Unity Catalog gebruiken met Structured Streaming voor meer informatie over streamen met Unity Catalog.