Katalog Unity a integrovaný metastore Azure Databricks Hive používají výchozí umístění pro spravované tabulky. Katalog Unity zavádí několik nových zabezpečitelných objektů pro udělení oprávnění k datům v cloudovém úložišti objektů.
Tabulka katalogu Unity vytvořená v externím umístění spravovaném katalogem Unity .
Externí tabulka
Externí tabulka je tabulka, která odkazuje na cestu k externímu úložišti pomocí klauzule LOCATION.
Cesta k úložišti by měla být obsažena v existujícím externím umístění , ke kterému máte udělený přístup.
Případně můžete odkazovat na přihlašovací údaje úložiště, ke kterým máte udělený přístup.
Použití externích tabulek abstrahuje cestu k úložišti, externí umístění a přihlašovací údaje úložiště pro uživatele, kteří mají udělený přístup k externí tabulce.
Upozornění
Pokud je ve vašem metastoru Hive na úrovni pracovního prostoru zaregistrované schéma (databáze), odstranění tohoto schématu pomocí možnosti CASCADE způsobí, že se všechny soubory v tomto umístění schématu odstraní rekurzivně bez ohledu na typ tabulky (spravovaný nebo externí).
Pokud je schéma zaregistrované v metastoru katalogu Unity, odstraní se rekurzivně soubory pro tabulky spravované katalogem Unity . Soubory pro externí tabulky se ale neodstraní. Tyto soubory musíte spravovat přímo pomocí poskytovatele cloudového úložiště.
Abyste se vyhnuli náhodné ztrátě dat, neměli byste nikdy registrovat schéma v metastoru Hive do umístění s existujícími daty. Ani byste neměli vytvářet nové externí tabulky v umístění spravovaném schématy metastore Hive nebo které obsahují spravované tabulky Katalogu Unity.
Grafické znázornění relací
Následující diagram popisuje vztah mezi:
přihlašovací údaje k úložišti
externí umístění
externí tabulky
cesty k úložišti
Entity IAM
Účty služeb Azure
Příklady
-- `finance` can create an external table over specific object within the `finance_loc` location
> CREATE TABLE sec_filings LOCATION 'abfss://container@storageaccount.dfs.core.windows.net/depts/finance/sec_filings';
-- Create or replace an external table from a query
> CREATE OR REPLACE TABLE sec_filings
LOCATION 'abfss://container@storageaccount.dfs.core.windows.net/depts/finance/sec_filings'
AS (SELECT * FROM current_filings);
-- Cannot list files under an external table without permissions on it
> LIST `abfss://container@storageaccount.dfs.core.windows.net/depts/finance/sec_filings`
Error
> LIST `abfss://container@storageaccount.dfs.core.windows.net/depts/finance/sec_filings/_delta_log`
Error
-- Grant access to sec_filings to all employees
> GRANT SELECT ON TABLE sec_filings TO employee;
-- Any member of the `employee` group can securely read sec_filings
> SELECT count(1) FROM sec_filings;
20
-- Any member of the `employee` group can list files under the sec_filings table
> LIST `abfss://container@storageaccount.dfs.core.windows.net/depts/finance/sec_filings`
_delta_log
> LIST `abfss://container@storageaccount.dfs.core.windows.net/depts/finance/sec_filings/_delta_log`
00000.json
Seznamte se s virtualizací dat, používáním PolyBase pro přístup k externím datům a dotazování na externí data a vylepšenými funkcemi PolyBase v SQL Serveru 2022.
Demonstrate understanding of common data engineering tasks to implement and manage data engineering workloads on Microsoft Azure, using a number of Azure services.