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
optrue
.
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.sparkContext
ensqlContext
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 hetSparkSession
exemplaar te communiceren. - De volgende
sc
functies worden ook niet ondersteund:emptyRDD
,range
,init_batched_serializer
,parallelize
, ,textFile
setSystemProperty
binaryFiles
wholeTextFiles
binaryRecords
sequenceFile
newAPIHadoopFile
pickleFile
hadoopFile
hadoopRDD
newAPIHadoopRDD
stop
uiWebUrl
union
runJob
,setJobGroup
, , .setLocalProperty
getConf
- Databricks raadt aan de
- Voor de volgende Scala Dataset-API-bewerkingen is Databricks Runtime 15.4 LTS of hoger vereist:
map
,mapPartitions
,foreachPartition
,flatMap
enreduce
.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
enmapInPandas
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
,pyarrow
ofprotobuf
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
, enStreamingListeners
FlatMapGroupWithState
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 gebruiktoption("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.