Sdílet prostřednictvím


Vytvoření externího umístění pro připojení cloudového úložiště k Azure Databricks

Tento článek popisuje, jak nakonfigurovat externí umístění v katalogu Unity pro připojení cloudového úložiště k Azure Databricks.

Externí umístění přidružují přihlašovací údaje k úložišti katalogu Unity ke kontejnerům cloudového úložiště objektů. Externí umístění slouží k definování spravovaných umístění úložiště pro katalogy a schémata a k definování umístění pro externí tabulky a externí svazky.

Můžete vytvořit externí umístění, které odkazuje na úložiště v kontejneru úložiště Azure Data Lake Storage Gen2 nebo kontejneru Cloudflare R2.

Externí umístění můžete vytvořit pomocí Průzkumníka katalogu, rozhraní příkazového řádku Databricks, příkazů SQL v poznámkovém bloku nebo dotazu SQL Databricks nebo Terraformu.

Další informace o použití externích umístění a vztahu mezi přihlašovacími údaji úložiště a externími umístěními najdete v tématu Správa přístupu ke cloudovému úložišti pomocí katalogu Unity.

Než začnete

Požadavky:

Požadavky na oprávnění:

  • Musíte mít CREATE EXTERNAL LOCATION oprávnění k metastoru i přihlašovacím údajům úložiště, na které odkazuje externí umístění. Správci metastoru mají CREATE EXTERNAL LOCATION ve výchozím nastavení úložiště metastoru.
  • Pokud vytváříte externí umístění pro kořenové úložiště DBFS, může systém vytvořit přihlašovací údaje úložiště za vás, ale musíte být správcem pracovního prostoru. Podrobnosti najdete v tématu Vytvoření externího umístění pro data v kořenovém DBFS.

Ruční vytvoření externího umístění pomocí Průzkumníka katalogu

Externí umístění můžete vytvořit ručně pomocí Průzkumníka katalogu.

Oprávnění a požadavky: Podívejte se, než začnete.

Vytvoření externího umístění:

  1. Přihlaste se k pracovnímu prostoru připojenému k metastoru.

  2. Na bočním panelu klikněte na Ikona kataloguKatalog.

  3. Na stránce Rychlý přístup klikněte na >, přejděte na kartu Externí umístění a klikněte na Vytvořit umístění.

  4. Zadejte název externího umístění.

  5. V poli adresa URL pod zadejte nebo vyberte cestu k externímu umístění. Máte tři možnosti:

    • Chcete-li zkopírovat cestu kontejneru z existujícího přípojného bodu DBFS, klepněte na tlačítko Kopírovat ze systému souborů DBFS.

    • Chcete-li zkopírovat dílčí cestu do kořenového úložiště DBFS, klikněte na Kopírovat z DBFS a zvolte Kopírovat z kořene DBFS. Pokud jste správcem pracovního prostoru, systém za vás také vytvoří přihlašovací údaje úložiště.

      Viz Vytvořit externí umístění pro data v kořenovém adresáři DBFS.

    • Pokud nekopírujete z existujícího přípojného bodu nebo kořene DBFS, zadejte do pole URL cestu ke kontejneru úložiště nebo k bucketu R2, kterou chcete použít jako externí umístění.

      Například abfss://my-container-name@my-storage-account.dfs.core.windows.net/<path> nebo r2://my-bucket@my-account-id.r2.cloudflarestorage.com/<path>.

  6. Vyberte přihlašovací údaje úložiště, které uděluje přístup k externímu umístění.

    Poznámka:

    Pokud je vaše externí umístění pro kořen DBFS a jste správcem pracovního prostoru, systém za vás vytvoří přihlašovací údaje úložiště a vy je nemusíte vybírat.

    Pokud přihlašovací údaje úložiště nemáte, můžete si ho vytvořit:

    1. V rozevíracím seznamu Úložiště přihlašovacích údajů vyberte + Vytvořit nové úložiště přihlašovacích údajů.

    2. V rozevíracím seznamu Typ přihlašovacích údajů vyberte typ přihlašovacích údajů, které chcete použít v objektu přihlašovacích údajů úložiště: Spravovaná identita Azure nebo token rozhraní API Cloudflare.

    3. Jako spravovanou identitu Azure zadejte ID přístupového konektoru a (volitelně) spravovanou identitu přiřazenou uživatelem, která poskytuje přístup k umístění úložiště. V případě tokenů rozhraní API Cloudflare zadejte účet Cloudflare, ID přístupového klíče a tajný přístupový klíč.

      Další informace najdete v tématu Vytvoření přihlašovacích údajů úložiště pro připojení ke službě Azure Data Lake Storage Gen2 nebo Vytvoření přihlašovacích údajů úložiště pro připojení ke službě Cloudflare R2.

  7. (Volitelné) Pokud chcete, aby uživatelé měli přístup jen pro čtení k externímu umístění, klikněte na Upřesnit možnosti a vyberte Jen pro čtení. Další informace najdete v tématu Označení externího umístění jako jen pro čtení.

  8. (Volitelné) Pokud je externí umístění určeno pro federovaný katalog úložiště metadata Hive, klikněte na Rozšířené možnosti a povolte Záložní režim.

    Viz Povolit záložní režim na externích umístěních.

  9. Klikněte na Vytvořit.

  10. (Volitelné) Vytvořte vazbu externího umístění na konkrétní pracovní prostory.

    Ve výchozím nastavení může každý privilegovaný uživatel použít externí umístění v jakémkoli pracovním prostoru připojeném k metastoru. Pokud chcete povolit přístup jenom z konkrétních pracovních prostorů, přejděte na kartu Pracovní prostory a přiřaďte pracovní prostory. Viz (Volitelné) Přiřazení externího umístění konkrétním pracovním prostorům.

  11. Přejděte na kartu Oprávnění a udělte oprávnění k používání externího umístění.

    Aby mohl někdo používat externí umístění, musíte udělit oprávnění:

    • Pokud chcete použít externí umístění k přidání spravovaného umístění úložiště do metastoru, katalogu nebo schématu CREATE MANAGED LOCATION , udělte oprávnění.
    • Chcete-li vytvořit externí tabulky nebo svazky, udělte CREATE EXTERNAL TABLE nebo CREATE EXTERNAL VOLUME.
    1. Klikněte na Udělit.
    2. V dialogovém okně Udělit <external location> vyberte uživatele, skupiny nebo instanční objekty v poli Objekty zabezpečení a vyberte oprávnění, která chcete udělit.
    3. Klikněte na Udělit.

Vytvoření externího umístění pomocí SQL

Pokud chcete vytvořit externí umístění pomocí SQL, spusťte v poznámkovém bloku nebo editoru dotazů SQL následující příkaz. Nahraďte zástupné hodnoty. Požadovaná oprávnění a požadavky najdete v tématu Před zahájením.

  • <location-name>: Název externího umístění. Pokud location_name obsahuje speciální znaky, jako jsou spojovníky (-), musí být obklopené zpětnými znaky (` `). Viz názvy.

  • <bucket-path>: Cesta ve vašem cloudovém tenantovi, ke kterému tato externí umístění uděluje přístup. Například abfss://my-container-name@my-storage-account.dfs.core.windows.net/<path> nebo r2://my-bucket@my-account-id.r2.cloudflarestorage.com/<path>.

  • <storage-credential-name>: Název přihlašovacích údajů úložiště, které autorizuje čtení a zápis do kontejneru úložiště nebo cesty kontejneru. Pokud název přihlašovacích údajů úložiště obsahuje speciální znaky, jako jsou spojovníky (-), musí být obklopené zpětnými znaky (` `).

CREATE EXTERNAL LOCATION [IF NOT EXISTS] `<location-name>`
URL '<bucket-path>'
WITH ([STORAGE] CREDENTIAL `<storage-credential-name>`)
[COMMENT '<comment-string>'];

Pokud chcete omezit přístup k externímu umístění na konkrétní pracovní prostory ve vašem účtu, označované také jako vazba pracovního prostoru nebo izolace externího umístění, přečtěte si téma (Volitelné) Přiřazení externího umístění konkrétním pracovním prostorům.

(Volitelné) Přiřazení externího umístění konkrétním pracovním prostorům

Důležité

Tato funkce je ve verzi Public Preview.

Ve výchozím nastavení je externí umístění přístupné ze všech pracovních prostorů v metastoru. To znamená, že pokud má uživatel udělené oprávnění (například READ FILES) v tomto externím umístění, může toto oprávnění uplatnit z libovolného pracovního prostoru připojeného k metastoru. Pokud k izolaci přístupu k datům uživatelů používáte pracovní prostory, můžete chtít povolit přístup k externímu umístění jenom z konkrétních pracovních prostorů. Tato funkce se označuje jako vazba pracovního prostoru nebo izolace externího umístění.

Mezi obvyklé případy použití pro vazbu externího umístění s konkrétními pracovními prostory patří:

  • Zajištění, aby datoví inženýři, kteří mají CREATE EXTERNAL TABLE oprávnění k externímu umístění, které obsahuje produkční data, mohly v tomto umístění vytvářet externí tabulky pouze v produkčním pracovním prostoru.
  • Zajištění, aby datoví inženýři, kteří mají READ FILES oprávnění k externímu umístění, které obsahuje citlivá data, mohli pro přístup k datům používat jenom konkrétní pracovní prostory.

Další informace o tom, jak omezit přístup k jiným typům dat podle pracovního prostoru, najdete v tématu Omezení přístupu ke katalogu na konkrétní pracovní prostory.

Důležité

Vazby pracovního prostoru jsou odkazovány v okamžiku, kdy jsou uplatněna oprávnění k externímu umístění. Pokud například uživatel vytvoří externí tabulku vydáním příkazu CREATE TABLE myCat.mySch.myTable LOCATION 'abfss://my-container-name@storage-account-name.dfs.core.windows.net/finance' z myWorkspace pracovního prostoru, kromě běžných kontrol oprávnění uživatele se provádějí také následující kontroly vazeb pracovního prostoru:

  • Je vnější umístění, na které se 'abfss://my-container-name@storage-account-name.dfs.core.windows.net/finance'vztahujemyWorkspace?
  • Je katalog myCat vázán na myWorkspace úroveň Read & Writepřístupu?

Pokud je externí umístění následně nevázané , myWorkspacebude externí tabulka dál fungovat.

Tato funkce také umožňuje naplnit katalog z centrálního pracovního prostoru a zpřístupnit ho jiným pracovním prostorům pomocí vazeb katalogu, aniž by bylo nutné zpřístupnit externí umístění v těchto dalších pracovních prostorech.

Vytvoření vazby externího umístění k jednomu nebo více pracovním prostorům

Pokud chcete přiřadit externí umístění konkrétním pracovním prostorům, můžete použít Průzkumníka katalogu nebo Rozhraní příkazového řádku Databricks.

požadovaná oprávnění: správce metastoru, vlastník externího umístění nebo MANAGE na externím umístění.

Poznámka:

Správci metastoru můžou zobrazit všechna externí umístění v metastoru pomocí Průzkumníka katalogu – a vlastníci externích umístění můžou zobrazit všechna externí umístění, která vlastní v metastoru– bez ohledu na to, jestli je externí umístění přiřazené k aktuálnímu pracovnímu prostoru. Externí umístění, která nejsou přiřazená k pracovnímu prostoru, se zobrazí šedě.

Průzkumník katalogu

  1. Přihlaste se k pracovnímu prostoru, který je propojený s metastorem.

  2. Na bočním panelu klikněte na Ikona kataloguKatalog.

  3. Na stránce Rychlý přístup klikněte na >a přejděte na kartu Externí umístění.

  4. Vyberte externí umístění a přejděte na kartu Pracovní prostory .

  5. Na kartě Pracovní prostory zrušte zaškrtnutí políčka Všechny pracovní prostory mají přístup.

    Pokud je vaše externí umístění již svázané s jedním nebo více pracovními prostory, je toto políčko již nezaškrtnuto.

  6. Klikněte na Přiřadit k pracovním prostorům a zadejte nebo vyhledejte pracovní prostory, které chcete přiřadit.

Pokud chcete přístup odvolat, přejděte na kartu Pracovní prostory , vyberte pracovní prostor a klikněte na Tlačítko Odvolat. Pokud chcete povolit přístup ze všech pracovních prostorů, zaškrtněte políčko Všechny pracovní prostory mají přístup .

Rozhraní příkazového řádku

Existují dvě skupiny příkazů Rozhraní příkazového řádku Databricks a dva kroky potřebné k přiřazení externího umístění k pracovnímu prostoru.

V následujících příkladech nahraďte <profile-name> názvem konfiguračního profilu ověřování Azure Databricks. Kromě názvu instance pracovního prostoru a ID pracovního prostoru, ve kterém jste vygenerovali osobní přístupový token, by měl obsahovat hodnotu tokenu pat. Viz ověřování tokenů pat azure Databricks.

  1. external-locations Pomocí příkazu skupiny update příkazů nastavte externí umístění isolation mode naISOLATED:

    databricks external-locations update <my-location> \
    --isolation-mode ISOLATED \
    --profile <profile-name>
    

    Výchozí hodnota isolation-mode je OPEN pro všechny pracovní prostory připojené k metastoru.

  2. workspace-bindings Pomocí příkazu skupiny update-bindings příkazů přiřaďte pracovní prostory k externímu umístění:

    databricks workspace-bindings update-bindings external-location <my-location> \
    --json '{
      "add": [{"workspace_id": <workspace-id>}...],
      "remove": [{"workspace_id": <workspace-id>}...]
    }' --profile <profile-name>
    

    "add" Pomocí vlastností "remove" můžete přidávat nebo odebírat vazby pracovního prostoru.

    Poznámka:

    Vazba jen pro čtení (BINDING_TYPE_READ_ONLY) není k dispozici pro externí umístění. Proto není důvod nastavit binding_type pro vazbu externích umístění.

Pokud chcete zobrazit seznam všech přiřazení pracovního prostoru pro externí umístění, použijte workspace-bindings příkaz skupiny get-bindings příkazů:

databricks workspace-bindings get-bindings external-location <my-location> \
--profile <profile-name>

Viz také vazby pracovních prostorů v referenčních informacích k rozhraní REST API.

Zrušení vazby externího umístění z pracovního prostoru

Pokyny pro odvolání přístupu k externímu umístění pracovního prostoru pomocí Průzkumníka katalogu nebo workspace-bindings skupiny příkazů rozhraní příkazového řádku jsou zahrnuty v vazbu externího umístění k jednomu nebo více pracovním prostorům.

Další kroky