Uwaga
Dostęp do tej strony wymaga autoryzacji. Może spróbować zalogować się lub zmienić katalogi.
Dostęp do tej strony wymaga autoryzacji. Możesz spróbować zmienić katalogi.
Dotyczy: Databricks SQL
Databricks Runtime
Katalog Unity i wbudowane metadane Hive usługi Azure Databricks korzystają z domyślnych lokalizacji dla tabel zarządzanych. Unity Catalog wprowadza kilka nowych zabezpieczalnych obiektów, aby przydzielać uprawnienia do danych w magazynie obiektów w chmurze.
-
Obiekt Unity Catalog używany do oddzielania długoterminowych poświadczeń od dostawców usług przechowywania danych w chmurze.
-
Obiekt katalogu Unity używany do skojarzenia URI magazynu obiektów w chmurze z poświadczeniem magazynu .
-
Tabela katalogu Unity utworzona w zarządzanej katalogiem Unity lokalizacji zewnętrznej .
Tabela zewnętrzna
Tabela zewnętrzna to tabela, która odwołuje się do zewnętrznej ścieżki magazynu przy użyciu klauzuli LOCATION
.
Ścieżka magazynu powinna znajdować się w istniejącej lokalizacji zewnętrznej, do której masz dostęp.
Alternatywnie możesz odwołać się do poświadczenia magazynu, do którego udzielono ci dostępu.
Korzystanie z tabel zewnętrznych ukrywa ścieżkę przechowywania, lokalizację zewnętrzną i poświadczenia przechowywania dla użytkowników, którym przyznano dostęp do tabeli zewnętrznej.
Ostrzeżenie
Jeśli schemat (baza danych) jest zarejestrowany w magazynie metadanych programu Hive na poziomie obszaru roboczego, usunięcie tego schematu przy użyciu opcji CASCADE
powoduje ponowne usunięcie wszystkich plików w tej lokalizacji schematu niezależnie od typu tabeli (zarządzanego lub zewnętrznego).
Jeśli schemat jest zarejestrowany w magazynie metadanych wykazu Unity, pliki tabel zarządzanych wykazu Unity są usuwane rekursywnie. Jednak pliki dla zewnętrznych tabel nie są usuwane. Te pliki należy zarządzać bezpośrednio przy użyciu dostawcy magazynu w chmurze.
W związku z tym, aby uniknąć przypadkowej utraty danych, nigdy nie należy rejestrować schematu w magazynie metadanych Hive w lokalizacji z istniejącymi danymi. Nie należy również tworzyć nowych tabel zewnętrznych w lokalizacji zarządzanej przez schematy metadanych Hive lub zawierającej tabele zarządzane przez Unity Catalog.
Graficzna reprezentacja relacji
Na poniższym diagramie opisano relację między:
- poświadczenia dostępu do magazynu danych
- lokalizacje zewnętrzne
- tabele zewnętrzne
- ścieżki przechowywania
- Jednostki IAM
- Konta usług platformy Azure
Przykłady
-- `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