Sdílet prostřednictvím


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

Databricks doporučuje pro většinu úloh používat katalog Unity a režim sdíleného přístupu. Tento článek popisuje omezení a požadavky pro každý režim přístupu pomocí katalogu Unity. 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:

Sdílení bez izolace je starší režim přístupu, který nepodporuje katalog Unity.

Důležité

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

Omezení režimu přístupu jednoho uživatele v katalogu Unity

Režim přístupu jednoho uživatele v katalogu Unity má následující omezení. Toto jsou kromě obecných omezení pro všechny režimy přístupu ke katalogu Unity. Viz Obecná omezení pro katalog Unity.

Jemně odstupňovaná omezení řízení přístupu pro režim přístupu jednoho uživatele v katalogu Unity

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 získat přístup k tabulce, která má filtr řádků nebo masku sloupce.
  • Nelze získat přístup k dynamickým zobrazením.
  • Pokud chcete číst z libovolného zobrazení, musíte mít SELECT všechny tabulky a zobrazení, na která zobrazení odkazuje.

Pokud chcete dotazovat dynamická zobrazení, použijte zobrazení, na kterých nemáte SELECT podkladové tabulky a zobrazení a tabulky s filtry řádků nebo maskami sloupců, jednu z těchto 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 podkladovým tabulkám a zobrazením. 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í na zobrazení použ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í streamované tabulky a materializovaného zobrazení pro režim přístupu jednoho uživatele katalogu Unity

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

Pokud chcete dotazovat streamované tabulky a materializovaná zobrazení vytvořená rozdílovými živými tabulkami a vlastněnými 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 režim přístupu jednoho uživatele v katalogu Unity

  • 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 přihlašovací údaje nebo pracovala s objekty spravovanými službou Unity Catalog na výpočetních prostředcích jednoho uživatele.

Omezení režimu sdíleného přístupu v katalogu Unity

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

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

  • Úlohy odeslání Sparku se nepodporují.

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

  • Funkce definované uživatelem PySpark nemají přístup ke složkám Gitu, souborům pracovního prostoru nebo svazkům pro import modulů v Databricks Runtime 14.2 a níže.

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

  • Pokud používáte režim sdíleného přístupu s předáváním přihlašovacích údajů, funkce katalogu Unity jsou zakázané.

  • Vlastní kontejnery nejsou podporovány.

Podpora jazyků pro režim sdíleného přístupu katalogu Unity

  • 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 vyšší jsou všechny knihovny Java nebo Scala (soubory JAR) obsažené s Modulem Databricks Runtime dostupné na výpočetních prostředcích v režimech přístupu ke katalogu Unity.
    • 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, nastavte konfiguraci spark.databricks.scala.kernel.fullClasspath.enabled Sparku na true.

Omezení a požadavky rozhraní Spark API pro režim sdíleného přístupu katalogu Unity

  • Rozhraní API sady RDD se nepodporují.
  • 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.
  • 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, , setJobGroupsetSystemPropertyrunJobuiWebUrlunionstopsetLocalPropertybinaryRecordsnewAPIHadoopFilegetConfsequenceFilenewAPIHadoopRDDhadoopFilehadoopRDDbinaryFiles
  • Následující operace rozhraní API datové sady Scala vyžadují Databricks Runtime 15.4 LTS nebo vyšší: map, , mapPartitionsforeachPartition, flatMapreduce a filter.

Omezení a požadavky definované uživatelem pro režim sdíleného přístupu katalogu Unity

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šší.

  • 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 katalogu Unity.

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

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, , StreamingListenersforeachBatcha FlatMapGroupWithState nejsou podporovány.
  • 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.
  • Musí sourceArchiveDir být ve stejném externím umístění jako zdroj při použití option("cleanSource", "archive") se zdrojem dat spravovaným katalogem Unity.
  • 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 nejsou podporovány v Databricks Runtime 13.3 LTS a vyšší, ale nejsou podporovány v Databricks Runtime 12.2 LTS. Pro tyto možnosti můžete zadat pouze externí umístění spravovaná katalogem Unity:
    • kafka.ssl.truststore.location
    • kafka.ssl.keystore.location
  • StreamingQueryListener Vyžaduje, aby databricks Runtime 14.3 LTS nebo vyšší používala přihlašovací údaje nebo pracovala s objekty spravovanými katalogem Unity pro sdílené výpočetní prostředky.

Omezení přístupu k síti a systému souborů a požadavky na režim sdíleného přístupu katalogu Unity

  • 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 níže můžete vytvořit pouze síťová připojení k portům 80 a 443.

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

Obecná omezení pro katalog Unity

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

Omezení streamování pro katalog Unity

  • 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 režim přístupu jednoho uživatele v katalogu Unity a omezení streamování a požadavky na režim sdíleného přístupu katalogu Unity.

Další informace o streamování pomocí katalogu Unity najdete v tématu Použití katalogu Unity se strukturovaným streamováním.