Udostępnij za pośrednictwem


Tworzenie widoków i zarządzanie nimi

W tym artykule pokazano, jak tworzyć widoki w wykazie aparatu Unity. Zobacz Co to jest widok?.

Wymagane uprawnienia

Aby utworzyć widok:

  • Musisz mieć USE CATALOG uprawnienie do katalogu nadrzędnego i USE SCHEMA uprawnień i CREATE TABLE w schemacie nadrzędnym. Administrator magazynu metadanych lub właściciel wykazu może przyznać Ci wszystkie te uprawnienia. Właściciel schematu lub użytkownik z uprawnieniami MANAGE może udzielić Ci uprawnień USE SCHEMA i CREATE TABLE w schemacie.
  • Musisz mieć możliwość odczytania tabel i widoków, do których odwołuje się widok (SELECT w tabeli lub widoku, a także USE CATALOG w wykazie i USE SCHEMA schemacie).
  • Jeśli widok odwołuje się do tabel w magazynie metadanych Hive obszaru roboczego lokalnego, dostęp do widoku można uzyskać tylko z obszaru roboczego zawierającego tabele lokalne obszaru roboczego. Z tego powodu usługa Databricks zaleca tworzenie widoków tylko z tabel lub widoków, które znajdują się w magazynie metadanych wykazu aparatu Unity.
  • Nie można utworzyć widoku, który odwołuje się do widoku, który został Ci udostępniony przy użyciu funkcji udostępniania różnicowego. Zobacz Co to jest udostępnianie różnicowe?.

Aby odczytać widok, wymagane uprawnienia zależą od typu obliczeniowego, wersji środowiska Databricks Runtime i trybu dostępu:

  • W przypadku wszystkich zasobów obliczeniowych musisz mieć SELECT widok, USE CATALOG katalog nadrzędny i USE SCHEMA schemat nadrzędny. Dotyczy to wszystkich typów obliczeniowych, które obsługują wykaz aparatu Unity, w tym magazyny SQL, klastry w trybie dostępu współdzielonego i klastry w trybie dostępu pojedynczego użytkownika w środowisku Databricks Runtime 15.4 lub nowszym.
  • W przypadku klastrów w środowisku Databricks Runtime 15.3 i poniżej korzystających z trybu dostępu pojedynczego użytkownika należy również mieć SELECT we wszystkich tabelach i widokach, do których odwołuje się widok, oprócz USE CATALOG katalogów nadrzędnych i USE SCHEMA schematów nadrzędnych.

Uwaga

Jeśli używasz klastra pojedynczego użytkownika w środowisku Databricks Runtime 15.4 LTS i nowszym, a chcesz uniknąć wymagania SELECT w przypadku bazowych tabel i widoków, sprawdź, czy obszar roboczy jest włączony dla obliczeń bezserwerowych.

Przetwarzanie bezserwerowe obsługuje filtrowanie danych, co umożliwia dostęp do widoku bez konieczności stosowania uprawnień do bazowych tabel i widoków. Pamiętaj, że w przypadku używania obliczeń pojedynczego użytkownika do wykonywania zapytań dotyczących widoków może być naliczane opłaty za obliczenia bezserwerowe. Aby uzyskać więcej informacji, zobacz Szczegółowe informacje dotyczące kontroli dostępu w obliczeniach pojedynczego użytkownika.

Utwórz widok

Aby utworzyć widok, uruchom następujące polecenie SQL. Elementy w nawiasach kwadratowych są opcjonalne. Zastąp wartości symboli zastępczych:

  • <catalog-name>: nazwa wykazu.
  • <schema-name>: nazwa schematu.
  • <view-name>: nazwa widoku.
  • <query>: zapytanie, kolumny i tabele oraz widoki używane do tworzenia widoku.
CREATE VIEW <catalog-name>.<schema-name>.<view-name> AS
SELECT <query>;

Aby na przykład utworzyć widok o nazwie sales_redacted z kolumn w sales_raw tabeli:

CREATE VIEW sales_metastore.sales.sales_redacted AS
SELECT
  user_id,
  email,
  country,
  product,
  total
FROM sales_metastore.sales.sales_raw;

Widok można również utworzyć przy użyciu dostawcy narzędzia Terraform usługi Databricks i databricks_table. Listę pełnych nazw można pobrać przy użyciu databricks_views.

Usuwanie widoku

Aby usunąć widok, musisz być właścicielem widoku lub mieć uprawnienia MANAGE w widoku. Aby usunąć widok, uruchom następujące polecenie SQL:

DROP VIEW IF EXISTS catalog_name.schema_name.view_name;