Delen via


Databaseobjecten in Azure Databricks

Azure Databricks maakt gebruik van twee primaire beveiligbare objecten voor het opslaan en openen van gegevens.

  • Tabellen bepalen de toegang tot gegevens in tabelvorm.
  • Volumes bepalen de toegang tot niet-tabellaire gegevens.

In dit artikel wordt beschreven hoe deze databaseobjecten betrekking hebben op catalogi, schema's, weergaven en andere databaseobjecten in Azure Databricks. Dit artikel bevat ook een inleiding op hoog niveau over de werking van databaseobjecten in de context van de algehele platformarchitectuur.

Wat zijn databaseobjecten in Azure Databricks?

Databaseobjecten zijn entiteiten waarmee u gegevens kunt ordenen, openen en beheren. Azure Databricks maakt gebruik van een hiërarchie met drie lagen om databaseobjecten te organiseren:

  1. Catalogus: De container op het hoogste niveau bevat schema's. Bekijk wat zijn catalogi in Azure Databricks?
  2. Schema of database: bevat gegevensobjecten. Zie Wat zijn schema's in Azure Databricks?
  3. Gegevensobjecten die kunnen worden opgenomen in een schema:

Diagram van unity-catalogusobjectmodel

Catalogi worden geregistreerd in een metastore die wordt beheerd op accountniveau. Alleen beheerders communiceren rechtstreeks met de metastore. Zie Metastores.

Azure Databricks biedt extra assets voor het werken met gegevens, die allemaal kunnen worden beheerd met behulp van toegangsbeheer op werkruimteniveau of Unity Catalog, de Databricks-oplossing voor gegevensbeheer:

  • Gegevensassets op werkruimteniveau, zoals notebooks, taken en query's.
  • Beveiligbare objecten van Unity Catalog, zoals opslagreferenties en Delta Sharing-shares, die voornamelijk de toegang tot opslag beheren of veilig delen.

Zie Database-objecten versus beveiligbare gegevensassets voor werkruimten en beveiligbare referenties en infrastructuur van Unity Catalog voor meer informatie.

Toegang tot databaseobjecten beheren met behulp van Unity Catalog

U kunt op elk niveau in de hiërarchie toegang verlenen en intrekken tot databaseobjecten, inclusief de metastore zelf. Toegang tot een object verleent impliciet dezelfde toegang tot alle onderliggende objecten van dat object, tenzij de toegang wordt ingetrokken.

U kunt typische ANSI SQL-opdrachten gebruiken om toegang tot objecten in Unity Catalog te verlenen en in te trekken. U kunt Catalog Explorer ook gebruiken voor door de gebruikersinterface gestuurd beheer van bevoegdheden voor gegevensobjecten.

Zie Beveiligbare objecten in Unity Catalog voor meer informatie over het beveiligen van objecten in Unity Catalog.

Standaardobjectmachtigingen in Unity Catalog

Afhankelijk van hoe uw werkruimte is gemaakt en ingeschakeld voor Unity Catalog, hebben uw gebruikers mogelijk standaardmachtigingen voor automatisch ingerichte catalogi, waaronder de main catalogus of de werkruimtecatalogus (<workspace-name>). Zie Standaardgebruikersbevoegdheden voor meer informatie.

Als uw werkruimte handmatig is ingeschakeld voor Unity Catalog, bevat deze een standaardschema met de naam default in de main catalogus die toegankelijk is voor alle gebruikers in uw werkruimte. Als uw werkruimte automatisch is ingeschakeld voor Unity Catalog en een <workspace-name> catalogus bevat, bevat die catalogus een schema met de naam default die toegankelijk is voor alle gebruikers in uw werkruimte.

Databaseobjecten versus beveiligbare gegevensassets voor werkruimte

Met Azure Databricks kunt u meerdere data engineering-, analyse-, ML- en AI-assets naast uw databaseobjecten beheren. U registreert deze gegevensassets niet in Unity Catalog. In plaats daarvan worden deze assets beheerd op werkruimteniveau, met behulp van besturingslijsten om machtigingen te beheren. Deze gegevensassets omvatten het volgende:

  • Notebooks
  • Dashboards
  • Projecten
  • Pipelines
  • Werkruimtebestanden
  • SQL-query's
  • Experimenten

De meeste gegevensassets bevatten logica die communiceert met databaseobjecten om query's uit te voeren op gegevens, functies te gebruiken, modellen te registreren of andere algemene taken. Zie Toegangsbeheerlijsten voor meer informatie over het beveiligen van gegevensassets voor werkruimten.

Notitie

Toegang tot berekeningen wordt beheerd door toegangsbeheerlijsten. U configureert compute met een toegangsmodus en u kunt extra cloudmachtigingen toevoegen, waarmee u bepaalt hoe gebruikers toegang hebben tot gegevens. Databricks raadt het gebruik van rekenbeleid aan en beperkt de bevoegdheden voor het maken van clusters als best practice voor gegevensbeheer. Zie Access-modi.

Beveiligbare referenties en infrastructuur voor Unity Catalog

Unity Catalog beheert de toegang tot opslag van cloudobjecten, het delen van gegevens en queryfederatie met behulp van beveiligbare objecten die zijn geregistreerd op metastoreniveau. Hieronder volgen korte beschrijvingen van deze niet-gegevens beveiligbare objecten.

Unity Catalog verbinden met cloudobjectopslag

U moet opslagreferenties en externe locaties definiëren om een nieuwe beheerde opslaglocatie te maken of om externe tabellen of externe volumes te registreren. Deze beveiligbare objecten worden geregistreerd in Unity Catalog:

  • Opslagreferentie: een langetermijncloudreferentie die toegang biedt tot cloudopslag.
  • Externe locatie: een verwijzing naar een opslagpad voor cloudobjecten dat toegankelijk is met behulp van de gekoppelde opslagreferentie.

Zie Verbinding maken met cloudobjectopslag met behulp van Unity Catalog.

Delta Delen

Azure Databricks registreert de volgende beveiligbare objecten voor Delta Sharing in Unity Catalog:

  • Delen: Een alleen-lezen verzameling tabellen, volumes en andere gegevensassets.
  • Provider: de organisatie of entiteit die gegevens deelt. In het Databricks-to-Databricks-model voor delen wordt de provider geregistreerd in de Unity Catalog-metastore van de ontvanger als een unieke entiteit die wordt geïdentificeerd door de metastore-id.
  • Ontvanger: de entiteit die shares van een provider ontvangt. In het Databricks-to-Databricks-model voor delen wordt de ontvanger geïdentificeerd aan de provider door hun unieke metastore-id.

Zie Wat is Delta Sharing?

Lakehouse Federation

Met Lakehouse Federation kunt u refererende catalogi maken om alleen-lezentoegang te bieden tot gegevens die zich in andere systemen bevinden, zoals PostgreSQL, MySQL en Snowflake. U moet een verbinding met het externe systeem definiëren om refererende catalogi te kunnen maken.

Verbinding: Een beveiligbaar object voor Unity Catalog geeft een pad en referenties op voor toegang tot een extern databasesysteem in een Lakehouse Federation-scenario.

Zie Wat is Lakehouse Federation?

Beheerde opslaglocaties voor beheerde volumes en tabellen

Wanneer u tabellen en volumes in Azure Databricks maakt, kunt u ze beheren of extern maken. Unity Catalog beheert de toegang tot externe tabellen en volumes van Azure Databricks, maar beheert geen onderliggende bestanden of beheert de opslaglocatie van deze bestanden niet volledig. Beheerde tabellen en volumes worden daarentegen volledig beheerd door Unity Catalog en worden opgeslagen op een beheerde opslaglocatie die is gekoppeld aan het bijbehorende schema. Zie Een beheerde opslaglocatie opgeven in Unity Catalog.

Databricks raadt beheerde volumes en beheerde tabellen aan voor de meeste workloads, omdat deze configuratie, optimalisatie en governance vereenvoudigen.

Unity Catalog versus verouderde Hive-metastore

Databricks raadt u aan Unity Catalog te gebruiken voor het registreren en beheren van alle databaseobjecten, maar biedt ook verouderde ondersteuning voor Hive-metastore voor het beheren van schema's, tabellen, weergaven en functies.

Als u interactie hebt met databaseobjecten die zijn geregistreerd met hive-metastore, raadpleegt u Databaseobjecten in de verouderde Hive-metastore.