Co to są tabele i widoki?
Tabele i widoki to podstawowe pojęcia w usłudze Databricks służące do organizowania i uzyskiwania dostępu do danych.
Tabela to ustrukturyzowany zestaw danych przechowywany w określonej lokalizacji, zazwyczaj w formacie Delta Lake. Tabele przechowują rzeczywiste dane w pamięci i mogą być odpytywane oraz manipulowane przy użyciu poleceń SQL lub interfejsów API DataFrame, obsługujących operacje takie jak wstawianie, aktualizowanie, usuwanie i scalanie. Zobacz Co to jest tabela?.
Widok to tabela wirtualna zdefiniowana przez zapytanie SQL. Widok nie przechowuje danych. Zamiast tego widok umożliwia prezentowanie danych z co najmniej jednej tabeli w określonym formacie lub abstrakcji. Widoki są przydatne w upraszczaniu złożonych zapytań, enkapsulacji logiki biznesowej oraz zapewnianiu spójnego interfejsu do danych bazowych bez duplikowania przechowywania. Zobacz Co to jest widok?.
Tabele i widoki w katalogu Unity
Tabele i widoki są zarządzane za pomocą katalogu Unity. W Unity Catalog tabele i widoki znajdują się na trzecim poziomie trójpoziomowej przestrzeni nazw (catalog.schema.table), jak pokazano na poniższym diagramie.
Różnice między tabelami Delta, tabelami strumieniowymi i widokami zmaterializowanymi
Poniższa tabela zawiera odpowiedzi na często zadawane pytania dotyczące różnic między tabelami Delta, tabelami strumieniowymi i zmaterializowanymi widokami.
Pytanie | Tabela delty | SKLEP | MV |
---|---|---|---|
Co to jest? | Standardowe tabele przechowywane w formacie Delta Lake, obsługujące transakcje ACID, wymuszanie schematu i inne funkcje Delta Lake. | Zwykła tabela Delta rozszerzona na potrzeby przetwarzania strumieniowego i przyrostowego. | Wynik zapytania, którego wynik jest zawsze wstępnie obliczony i poprawny. |
Jakie przypadki użycia jest zalecane? | Kod proceduralny, który wykonuje następujące czynności: -Spożyciu -Przekształcenie |
Kod deklaratywny, który wykonuje następujące czynności: - Pozyskiwanie z źródeł tylko do dołączania - Przekształcenia o małych opóźnieniach |
Kod deklaratywny, który wykonuje następujące czynności: - Przekształcenia przyrostowe - Przekształcenia wsadowe |
W jaki sposób jest wypełniany? | Kod proceduralny (INSERT , UPDATE , MERGE , zastępowanie partycji przy użyciu replaceWhere ) |
Kod deklaratywny, w tym: - Dołączanie strumieni - STOSOWANIE strumieni ZMIAN - Po przepływach |
Zapytania deklaratywne |
Jaki jest typ obiektu w katalogu Unity? | Stół | Stół | Widok |
Kto może go zaktualizować? | Każde narzędzie do zapisu, które może zaktualizować tabelę Delta. | Tylko potok, który definiuje tabelę strumieniową, może ją zaktualizować. | Tylko potok, który definiuje zmaterializowany widok, może go zaktualizować. |
Jakie funkcje usługi Delta Lake są zgodne? | Obsługuje wszystkie funkcje usługi Delta Lake. | Nie obsługuje: - Partycjonowanie liquid - Optymalizacja predykcyjna |
Nie obsługuje: - Partycjonowanie liquid - Optymalizacja predykcyjna |