Sdílet prostřednictvím


Omezení režimu výpočetního přístupu pro Unity Catalog

Databricks doporučuje používat Unity Catalog a režim sdíleného přístupu pro většinu úloh. Tento článek popisuje omezení a požadavky pro každý režim přístupu pomocí Unity Catalog. Podrobnosti o režimech přístupu najdete v tématu Režimy přístupu.

Databricks doporučuje používat zásady výpočetních prostředků ke zjednodušení možností konfigurace pro většinu uživatelů. Viz Vytvoření a správa zásad výpočetních prostředků.

Poznámka:

Režimy sdílení bez izolace a předávání přihlašovacích údajů jsou zastaralé způsoby přístupu, které nepodporují Unity Catalog.

Důležité

Inicializační skripty a knihovny mají různé podpory napříč režimy přístupu a verzemi Databricks Runtime. Podívejte se na Where lze nainstalovat inicializační skripty? a knihovny v rámci clusteru.

omezení režimu přístupu jednoho uživatele v Unity Catalog

Režim přístupu jednoho uživatele v Unity Catalog má následující omezení. Kromě obecných omezení pro všechny režimy přístupu Unity Catalog jsou zde další omezení. Viz Obecná omezení pro Unity Catalog.

Podrobná omezení řízení přístupu pro režim přístupu jednoho uživatele Unity Catalog

V Databricks Runtime 15.3 a níže není podporované podrobné řízení přístupu u výpočetních prostředků jednoho uživatele. Konkrétně:

  • Nelze přistupovat k table, který má řádkový filtr nebo column masku.
  • Nelze získat přístup k dynamické views.
  • Chcete-li číst z jakéhokoli zobrazení, musíte mít SELECT pro všechna tables a views, které zobrazení odkazuje.

Pokud chcete dotazovat dynamické views, views, na kterých nemáte SELECT na podkladových tables, views, a tables s filtry řádků nebo maskami column, použijte jednu z následujících možností:

  • SQL Warehouse.

  • Výpočty s režimem sdíleného přístupu

  • Výpočty s režimem přístupu jednoho uživatele v Databricks Runtime 15.4 LTS nebo vyšší.

    Databricks Runtime 15.4 LTS a vyšší podporují podrobné řízení přístupu na výpočetních prostředcích jednoho uživatele. Pokud chcete využít filtrování dat poskytované v Databricks Runtime 15.4 LTS a novější, ověřte, že je váš pracovní prostor povolený pro bezserverové výpočetní prostředky.

    Bezserverové výpočetní prostředí zpracovává filtrování dat, které umožňuje přístup k zobrazení bez nutnosti oprávnění k jeho podkladovým tables a views. Vzhledem k tomu, že výpočetní prostředky bez serveru zpracovávají filtrování dat, můžou se vám účtovat poplatky za výpočetní prostředky bez serveru, když k dotazování viewspoužijete výpočetní prostředky jednoho uživatele. Další informace najdete v tématu Jemně odstupňované řízení přístupu u výpočetních prostředků jednoho uživatele.

Omezení streamování table a materializovaného zobrazení pro Unity Catalog pro režim přístupu jediného uživatele

V Databricks Runtime 15.3 a níže nemůžete použít výpočetní prostředky jednoho uživatele k dotazování tables vytvořených pomocí kanálu Delta Live Tables, včetně streamovaných tables a materializovaných views, pokud jsou tyto tablesvlastněné jinými uživateli. Uživatel, který vytvoří table, je vlastníkem.

Pokud chcete dotazovat streamované tables a materializované views vytvořené službou Delta Live Tables a vlastněné jinými uživateli, použijte jednu z následujících možností:

  • SQL Warehouse.

  • Výpočty s režimem sdíleného přístupu v Databricks Runtime 13.3 LTS nebo vyšší

  • Výpočty s režimem přístupu jednoho uživatele v Databricks Runtime 15.4 LTS nebo vyšší.

    Pro výpočetní prostředky bez serveru musí být povolený i váš pracovní prostor. Další informace najdete v tématu Jemně odstupňované řízení přístupu u výpočetních prostředků jednoho uživatele.

omezení streamování pro Unity Catalog režim přístupu pro jednoho uživatele

  • Asynchronní vytváření kontrolních bodů není podporováno v Databricks Runtime 11.3 LTS a níže.
  • StreamingQueryListener vyžaduje, aby databricks Runtime 15.1 nebo novější používala credentials nebo pracovala s objekty spravovanými pomocí Unity Catalog na výpočetních prostředcích jednoho uživatele.

omezení režimu sdíleného přístupu pro Unity Catalog

Režim sdíleného přístupu v Unity Catalog má následující omezení. Toto jsou kromě obecných omezení pro všechny režimy přístupu Unity Catalog. Viz Obecná omezení pro Unity Catalog.

  • Databricks Runtime ML a Knihovna strojového učení Sparku (MLlib) se nepodporují.

  • Odesílání úkolů Spark-submit není podporováno. Místo toho použijte úlohu JAR.

  • DbUtils a další klienti, kteří přímo čtou data z cloudového úložiště, se podporují jenom v případech, kdy pro přístup k umístění úložiště používáte externí umístění. Viz Vytvoření externího umístění pro připojení cloudového úložiště k Azure Databricks.

  • V Databricks Runtime 13.3 a vyšší nesmí jednotlivé řádky překročit 128 MB.

  • Root a připojení DBFS nepodporují FUSE.

  • Vlastní kontejnery nejsou podporovány.

Podpora jazyka unity Catalog režimu sdíleného přístupu

  • Jazyk R se nepodporuje.
  • Scala se podporuje v Databricks Runtime 13.3 a novějších.
    • Ve službě Databricks Runtime 15.4 LTS a novějších jsou všechny knihovny Java nebo Scala (soubory JAR) dodávané s Databricks Runtime dostupné na výpočetním prostředku v Unity Catalog Catalog režimech přístupu.
    • Pro Databricks Runtime 15.3 nebo novější na výpočetních prostředcích, které používají režim sdíleného přístupu, set konfigurace Sparku spark.databricks.scala.kernel.fullClasspath.enabled pro true.

omezení a požadavky rozhraní Spark API pro Unity Catalog režimu sdíleného přístupu

  • Rozhraní API sady RDD se nepodporují.
  • Kontext Sparku (sc),spark.sparkContexta sqlContext nejsou podporovány pro Scala v jakémkoli modulu Databricks Runtime a nejsou podporovány pro Python v Databricks Runtime 14.0 a vyšší.
    • Databricks doporučuje používat spark proměnnou k interakci SparkSession s instancí.
    • sc Následující funkce se také nepodporují: emptyRDD, , range, init_batched_serializer, parallelize, pickleFile, textFile, wholeTextFiles, , binaryFilesbinaryRecordssequenceFilenewAPIHadoopFilenewAPIHadoopRDDhadoopFilehadoopRDDunionrunJobsetSystemPropertyuiWebUrlstopsetJobGroupsetLocalPropertygetConf
  • Následující operace rozhraní API datové sady Scala vyžadují Databricks Runtime 15.4 LTS nebo vyšší: map, , mapPartitionsforeachPartition, flatMapreduce a filter.
  • Konfigurace Sparku vlastnost spark.executor.extraJavaOptions se nepodporuje.

omezení a požadavky na UDF v Unity Catalog v režimu sdíleného přístupu

Uživatelem definované funkce (UDF) mají následující omezení s režimem sdíleného přístupu:

  • Funkce definované uživatelem Hivu se nepodporují.

  • applyInPandas a mapInPandas vyžadují Databricks Runtime 14.3 nebo vyšší.

  • Funkce UDF PySpark nemají přístup ke složkám Git, souborům pracovního prostoru nebo volumes pro import modulů v Databricks Runtime verze 14.2 a starší.

  • Skalární funkce definované uživatelem vyžadují Databricks Runtime 14.2 nebo vyšší. Jiné uživatelem definované funkce Scala a UDAF se nepodporují.

  • Ve službě Databricks Runtime 14.2 a novějších verzích pomocí vlastní verze grpcpyarrownebo protobuf v PySpark UDF prostřednictvím knihoven s vymezeným poznámkovým blokem nebo clusterem se nepodporuje, protože nainstalovaná verze je vždy upřednostňovaná. Informace o verzi nainstalovaných knihoven najdete v části Systémové prostředí pro konkrétní poznámky k verzi databricks Runtime.

  • Skalární uživatelem definované funkce Pythonu a uživatelem definované funkce Pandas vyžadují Databricks Runtime 13.3 LTS nebo vyšší.

  • Jiné než skalární funkce definované uživatelem Pythonu a Pandas, včetně UDAF, UDF a Pandas ve Sparku, vyžadují Databricks Runtime 14.3 LTS nebo vyšší.

Viz uživatelem definované funkce (UDF) v Unity Catalog.

omezení a požadavky na streamování pro režim sdíleného přístupu Unity Catalog

Poznámka:

Některé z uvedených možností Kafka mají omezenou podporu při použití pro podporované konfigurace v Azure Databricks. Všechna uvedená omezení Kafka jsou platná pro dávkové zpracování i zpracování datových proudů. Viz Zpracování datových proudů s využitím Apache Kafka a Azure Databricks.

  • Pro Scala foreach vyžaduje Databricks Runtime 16.1 nebo novější. foreachBatcha FlatMapGroupWithState se nepodporují.
  • V Pythonu foreachBatch se ve službě Databricks Runtime 14.0 a novějších mění následující chování:
    • print() příkazy zapisuje výstup do protokolů ovladačů.
    • K dílčímu dbutils.widgets modulu uvnitř funkce nelze získat přístup.
    • Všechny soubory, moduly nebo objekty odkazované ve funkci musí být serializovatelné a dostupné ve Sparku.
  • Pro Scala vyžaduje from_avro Databricks Runtime 14.2 nebo vyšší.
  • applyInPandasWithState vyžaduje Databricks Runtime 14.3 LTS nebo vyšší.
  • Práce se zdroji soketů není podporována.
  • sourceArchiveDir musí být na stejném externím místě jako zdroj, když používáte option("cleanSource", "archive") se zdrojem dat spravovaným Unity Catalog.
  • U zdrojů a jímek Kafka se nepodporují následující možnosti:
    • kafka.sasl.client.callback.handler.class
    • kafka.sasl.login.callback.handler.class
    • kafka.sasl.login.class
    • kafka.partition.assignment.strategy
  • Následující možnosti Kafka jsou podporovány v Databricks Runtime 13.3 LTS a vyšší, ale nepodporuje se v Databricks Runtime 12.2 LTS. Můžete zadat pouze externí umístění spravovaná Unity Catalog pro tyto možnosti:
    • kafka.ssl.truststore.location
    • kafka.ssl.keystore.location
  • Pro Scala StreamingQueryListener vyžaduje Databricks Runtime 16.1 a novější.
  • Pro Python StreamingQueryListener vyžaduje Databricks Runtime 14.3 LTS nebo novější, aby používal credentials nebo pracoval s objekty spravovanými Unity Catalog na sdílených výpočetních prostředcích.

Omezení a požadavky na přístup k síti a systému souborů pro Unity Catalog režimu sdíleného přístupu

  • Na výpočetních uzlech musíte spouštět příkazy jako uživatel s nízkými oprávněními, který zakázal přístup k citlivým částem systému souborů.

  • V Databricks Runtime 11.3 LTS a starších můžete vytvořit pouze síť connections na porty 80 a 443.

  • Nemůžete se připojit ke službě metadat instance ani k Azure WireServeru.

obecná omezení pro Catalog Unity

Následující omezení platí pro všechny režimy přístupu s podporou Unity Catalog.

Omezení streamování pro Unity Catalog

  • Režim průběžného zpracování Apache Sparku se nepodporuje. Viz průběžné zpracování v průvodci programováním strukturovaného streamování Sparku.

Viz také omezení streamování pro Unity Catalog režim přístupu jednoho uživatele a omezení a požadavky na streamování pro Unity Catalog režimu sdíleného přístupu.

Další informace o streamování s Unity Catalognajdete v části Použití Unity Catalog se strukturovaným streamováním.