Delen via


Concepten van Azure Databricks-tabellen

Een Azure Databricks-tabel bevindt zich in een schema en bevat rijen met gegevens. Het standaardtabeltype dat is gemaakt in Azure Databricks, is een beheerde tabel in Unity Catalog.

In het volgende voorbeeld ziet u een beheerde tabel met de naam prod.people_ops_employees gegevens over vijf werknemers. Als beheerde tabel worden de gegevensbestanden opgeslagen in de beheerde opslaglocatie van Unity Catalog in cloudopslag.

Voorbeeldtabel met werknemersgegevens

Opslagindelingen

Tabeltypen in Azure Databricks bepalen hoe gegevens eigendom zijn van en worden geopend. In de opslagindeling wordt afzonderlijk gedefinieerd hoe de gegevens fysiek zijn gestructureerd en bijgehouden op schijf.

Azure Databricks ondersteunt twee primaire open-tabelopslagindelingen:

  • Delta Lake is de standaardopslagindeling voor beheerde en externe tabellen in Azure Databricks. Delta wordt ook ondersteund voor externe tabellen.
  • Apache Iceberg wordt ondersteund voor beheerde en refererende tabellen in Azure Databricks. Deze indeling is handig wanneer u integreert met het Iceberg-ecosysteem.

Met deze indelingen voegt u een transactionele opslaglaag toe die metagegevens bijhoudt en atomiciteit, consistentie, isolatie en duurzaamheid (ACID) naleving, tijdreizen en andere functies mogelijk maakt.

Tabeltypen

Azure Databricks biedt drie primaire tabeltypen, die elk zijn ontworpen voor verschillende scenario's voor gegevensbeheer en eigendomsmodellen. Uw keuze van het tabeltype bepaalt hoe Azure Databricks de onderliggende gegevensbestanden en metagegevens beheert.

De primaire differentiator voor tabeltypen in Azure Databricks is de catalogus die eigenaar is, zoals beschreven in de volgende tabel:

Tabeltype Catalogus beheren Ondersteuning voor lezen/schrijven Optimalisatie van prestaties Optimalisatie van opslagkosten
Beheerd Unity Catalogus Yes Yes Yes
Temporary Geen (beheerde tabel met sessiebereik) Yes Yes Yes
Externe Geen (alleen bestanden) Yes Alleen handmatig Alleen handmatig
Buitenlands Een extern systeem of catalogusservice Alleen lezen Nee. Nee.

Beheerde tabellen

Beheerde tabellen beheren onderliggende gegevensbestanden naast de metastore-registratie. Databricks raadt u aan beheerde tabellen te gebruiken wanneer u een nieuwe tabel maakt. Beheerde tabellen in Unity Catalog zijn de standaardtabellen wanneer u tabellen maakt in Azure Databricks. Zie Beheerde tabellen.

Externe tabellen

Externe tabellen, ook wel niet-beheerde tabellen genoemd, verwijzen naar gegevens die buiten Azure Databricks zijn opgeslagen in een extern opslagsysteem, zoals cloudobjectopslag. Ze ontkoppelen het beheer van onderliggende gegevensbestanden van metastore-registratie. Unity Catalog ondersteunt externe tabellen in verschillende indelingen, waaronder Delta Lake. Externe tabellen van Unity Catalog kunnen gegevensbestanden opslaan met behulp van algemene indelingen die kunnen worden gelezen door externe systemen. Zie Externe tabellen.

Externe tabellen

Refererende tabellen vertegenwoordigen gegevens die zijn opgeslagen in externe systemen die zijn verbonden met Azure Databricks via Lakehouse Federation. Refererende tabellen zijn alleen-lezen in Azure Databricks. Zie refererende tabellen.

Tijdelijke tabellen

Tijdelijke tabellen zijn tabellen met sessiebereik die gegevens opslaan voor de duur van een Azure Databricks-sessie. Ze zijn handig voor het materialiseren van tussenliggende resultaten zonder permanente tabellen in uw catalogus te maken. Azure Databricks verwijdert automatisch tijdelijke tabellen wanneer de sessie wordt beƫindigd en u hebt geen catalogus- of schemabevoegdheden nodig om ze te maken. Zie tijdelijke tabellen.

Tabellen in Unity Catalog

In Unity Catalog bevinden tabellen zich op het derde niveau van de naamruimte met drie niveaus (catalog.schema.table), zoals wordt weergegeven in het volgende diagram:

Objectmodeldiagram van Unity Catalog, gericht op tabel

Basistabelmachtigingen

De meeste tabelbewerkingen vereisen USE CATALOG en USE SCHEMA machtigingen voor de catalogus en het schema met een tabel.

De volgende tabel bevat een overzicht van de aanvullende machtigingen die nodig zijn voor algemene tabelbewerkingen in Unity Catalog:

Operation Permissions
Een tabel maken CREATE TABLE in het betreffende schema
Een query uitvoeren op een tabel SELECT op de tabel
Gegevens bijwerken, verwijderen, samenvoegen of invoegen in een tabel SELECT en MODIFY op de tabel
Een tabel neerzetten MANAGE op de tabel
Een tabel vervangen MANAGE in de tabel, CREATE TABLE in het schema met de inhoud

Zie voor naslaginformatie over SQL-syntaxis voor deze bewerkingen:

Zie Bevoegdheden beheren in Unity Catalog voor meer informatie over unity-catalogusmachtigingen.