Omezení bezserverových výpočetních prostředků

Tento článek vysvětluje aktuální omezení výpočetních prostředků bez serveru pro poznámkové bloky a úlohy. Začíná přehledem nejdůležitějších aspektů a pak poskytuje komplexní referenční seznam omezení.

Podpora jazyků a rozhraní API

  • R není podporován.
  • Podporují se pouze rozhraní API služby Spark Connect. Rozhraní API Spark RDD nejsou podporována.
  • Spark Connect, který je využíván bezserverovými výpočty, odkládá analýzy a překlad názvů na dobu provádění, což může změnit chování vašeho kódu. Viz Porovnání Spark Connect s Klasickým Sparkem.
  • ANSI SQL je výchozí při psaní SQL. Odhlaste se z režimu ANSI nastavením spark.sql.ansi.enabled na false.
  • Při vytváření datového rámce z místních dat pomocí spark.createDataFrame, velikosti řádků nesmí překročit 128 MB.

Přístup k datům a úložiště

  • Abyste se mohli připojit k externím zdrojům dat, musíte použít Katalog Unity. K přístupu ke cloudovému úložišti používejte externí umístění.
  • Přístup k DBFS je omezený. Místo toho použijte svazky Unity Catalog nebo soubory pracovního prostoru.
  • Souřadnice Mavenu nejsou podporovány.
  • Globální dočasná zobrazení se nepodporují. Pokud se vyžaduje předávání dat mezi relacemi, databricks doporučuje používat dočasná zobrazení relace nebo vytvářet tabulky.

Uživatelem definované funkce (UDF)

Uživatelské rozhraní a protokolování

  • Uživatelské rozhraní Sparku není k dispozici. Místo toho použijte profil dotazu k zobrazení informací o dotazech Sparku. Viz profil dotazu.
  • Protokoly Sparku nejsou k dispozici. Uživatelé mají přístup pouze k protokolům aplikací na straně klienta.

Přístup k sítím a pracovním prostorům

  • Přístup mezi pracovními prostory je povolený jen v případě, že se pracovní prostory nacházejí ve stejné oblasti a cílový pracovní prostor nemá nakonfigurovaný ACL IP ani front-end PrivateLink.
  • Služba Databricks Container Services se nepodporuje.

Omezení streamování

Bezserverové výpočetní prostředky podporují následující triggery strukturovaného streamování:

  • Trigger.AvailableNow(). Databricks doporučuje tento režim triggeru pro bezserverové výpočetní prostředky.
  • Trigger.Once(). Tento zastaralý režim se podporuje, ale nedoporučuje se.

Na výpočetních prostředcích bez serveru se nepodporují následující triggery:

  • Trigger.Continuous(interval).
  • Trigger.ProcessingTime(interval).
    • Pokud nezadáte režim triggeru, Apache Spark ve výchozím nastavení nastaví trigger na Trigger.ProcessingTime("0 seconds"). U výpočetních prostředků bez serveru musíte nastavit podporovaný trigger.

Pokud se pokusíte použít nepodporovanou aktivační událost, dotaz vyvolá chybu INFINITE_STREAMING_TRIGGER_NOT_SUPPORTED.

Pro úlohy průběžného streamování použijte režim spuštění na vyžádání nebo nepřetržitý režim kanálu na serverless, nebo používejte Trigger.AvailableNow() pro nepřetržité spouštění úloh.

Průvodce rozhodováním, který mapuje případy použití streamování na správný bezserverový produkt, najdete v tématu Streamování na bezserverové výpočetní prostředky.

Platí také všechna omezení pro streamování v režimu standardního přístupu. Viz omezení streamování.

Omezení notebooků

  • Jazyk Scala ani R není v noteboocích podporován.
  • Knihovny JAR nejsou v poznámkových blocích podporované. Alternativní řešení najdete v tématu Osvědčené postupy pro výpočetní prostředky bez serveru. Podporují se úlohy JAR v rámci úloh. Podívejte se na úkol JAR přiřazený pracovním úlohám.
  • Knihovny určené pro poznámkové bloky se neukládají do mezipaměti napříč vývojovými relacemi.
  • Sdílení tabulek a zobrazení TEMP při sdílení poznámkového bloku mezi uživateli se nepodporuje.
  • Automatické dokončování a průzkumník proměnných pro datové rámce v poznámkových sešitech nejsou podporovány.
  • Ve výchozím nastavení se nové poznámkové bloky ukládají ve .ipynb formátu. Pokud je váš poznámkový blok uložen ve zdrojovém formátu, nemusí se bezserverová metadata zachytit správně a některé funkce nemusí fungovat podle očekávání.
  • Značky poznámkových bloků nejsou podporovány. Použijte zásady pro bezserverové využití k označení bezserverového využití.

Omezení úloh

  • Protokoly úloh nejsou izolované pro jednotlivá spuštění úloh. Logy budou obsahovat výsledky z více úloh.
  • Knihovny úloh nejsou podporovány pro úkoly poznámkového bloku. Místo toho používejte knihovny omezené na poznámkový blok. Viz knihovny Python v rámci notebooků.
  • Ve výchozím nastavení nemají úlohy bez serveru časový limit provádění dotazů. Pomocí vlastnosti spark.databricks.execution.timeout můžete nastavit časový limit provádění dotazů úloh. Další podrobnosti najdete v tématu Konfigurace vlastností Sparku pro bezserverové poznámkové bloky a úlohy.
  • Bezserverové výpočty mají maximální dobu běhu 7 dnů. Běhy, které překročí 7 dnů, platforma ukončí a nebudou znovu spuštěny. Pokud chcete spouštět úlohy déle než 7 dní, rozdělte je na menší spuštění nebo použijte klasické výpočetní prostředky.

Omezení specifická pro výpočty

Následující funkce specifické pro výpočetní prostředky se nepodporují:

  • Výpočetní zásady
  • Inicializační skripty pro oblast výpočtů
  • Knihovny s výpočetním zaměřením, včetně vlastních zdrojů dat a rozšíření pro Spark. Místo toho používejte knihovny s vymezeným poznámkovým blokem.
  • Fondy instancí
  • Protokoly výpočetních událostí
  • Většina konfigurací výpočtů Apache Sparku Seznam podporovaných konfigurací najdete v tématu Konfigurace vlastností Sparku pro bezserverové poznámkové bloky a úlohy.
  • Proměnné prostředí. Místo toho Databricks doporučuje k vytvoření parametrů úloh a úkolů používat widgety.

Omezení ukládání do mezipaměti

Omezení Hive

  • Tabulky Hive SerDe se nepodporují. Kromě toho se nepodporuje odpovídající příkaz LOAD DATA, který načte data do tabulky Hive SerDe. Při použití příkazu dojde k výjimce.

    Podpora zdrojů dat je omezená na AVRO, BINARYFILE, CSV, DELTA, JSON, KAFKA, ORC, PARQUET, ORC, TEXT a XML.

  • Proměnné Hive (například ${env:var}, ${configName}, ${system:var}a spark.sql.variable) nebo odkazy na proměnné konfigurace používající ${var} syntaxi nejsou podporovány. Při použití proměnných Hive dojde k výjimce.

    Místo toho použijte DECLARE VARIABLE odkazy na proměnné relace SQL SET VARIABLE a značky parametrů ('?', nebo ':var') k deklaraci, úpravě a odkazu na stav relace. V mnoha případech můžete také použít klauzuli IDENTIFIER k parametrizaci názvů objektů.

Podporované zdroje dat

Bezserverové výpočetní prostředky podporují pro operace DML následující zdroje dat (zápis, aktualizace, odstranění):

  • CSV
  • JSON
  • AVRO
  • DELTA
  • KAFKA
  • PARQUET
  • ORC
  • TEXT
  • UNITY_CATALOG
  • BINARYFILE
  • XML
  • SIMPLESCAN
  • ICEBERG

Výpočetní prostředí bez serveru podporuje pro operace čtení následující zdroje dat:

  • CSV
  • JSON
  • AVRO
  • DELTA
  • KAFKA
  • PARQUET
  • ORC
  • TEXT
  • UNITY_CATALOG
  • BINARYFILE
  • XML
  • SIMPLESCAN
  • ICEBERG
  • MYSQL
  • POSTGRESQL
  • SQLSERVER
  • REDSHIFT
  • SNOWFLAKE
  • SQLDW(Azure Synapse)
  • DATABRICKS
  • BIGQUERY
  • ORACLE
  • SALESFORCE
  • SALESFORCE_DATA_CLOUD
  • TERADATA
  • WORKDAY_RAAS
  • MONGODB