Delen via


Catalogussen maken

In dit artikel wordt beschreven hoe u catalogi maakt in Unity Catalog. Een catalogus bevat schema's (databases) en een schema bevat tabellen, weergaven, volumes, modellen en functies.

Zie Wat zijn catalogi in Azure Databricks? voor meer informatie over catalogi.

Notitie

Zie Een refererende catalogus maken voor informatie over het maken van een refererende catalogus, een Unity Catalog-object dat een database in een extern gegevenssysteem spiegelt. Zie ook Beheren en werken met buitenlandse catalogi.

Vereisten

Een catalogus maken, ongeacht het catalogustype:

  • U moet een Azure Databricks-metastore-beheerder zijn of de CREATE CATALOG bevoegdheid hebben voor de metastore.
  • De rekenresource die u gebruikt om een notebook uit te voeren om een catalogus te maken, moet zich in Databricks Runtime 11.3 of hoger bevinden en moet gebruikmaken van de toegangsmodus die compatibel is met Unity Catalog. Zie Access-modi. SQL Warehouses bieden altijd ondersteuning voor Unity Catalog.

Een gedeelde catalogus maken:

Een standaardcatalogus maken:

  • Als u een beheerde opslaglocatie voor de catalogus opgeeft, moet u de CREATE MANAGED STORAGE bevoegdheid hebben op de externe doellocatie.
  • Als er geen beheerde opslag op metastoreniveau bestaat, moet u een beheerde opslaglocatie voor de catalogus opgeven.

Een refererende catalogus maken:

  • U moet de eigenaar zijn van de verbinding die u gebruikt om de refererende catalogus te maken of de CREATE FOREIGN CATALOG bevoegdheid voor de verbinding te hebben.
  • U moet rekenkracht gebruiken voor Databricks Runtime 13.1 of hoger. SQL-warehouses moeten Pro of Serverless zijn.

Een catalogus maken

Als u een catalogus wilt maken, kunt u Catalog Explorer, een SQL-opdracht, de REST API, de Databricks CLI of Terraform gebruiken. Wanneer u een catalogus maakt, worden er automatisch twee schema's (databases) gemaakt: default en information_schema.

Catalogusverkenner

  1. Meld u aan bij een werkruimte die is gekoppeld aan de metastore.

  2. Klik op Cataloguspictogram Catalogus.

  3. Klik op de knop Catalogus maken.

  4. Voer in het dialoogvenster Een nieuwe catalogus maken een catalogusnaam in en selecteer het catalogustype dat u wilt maken:

    • Standaardcatalogus : een beveiligbaar object dat gegevens en AI-assets ordent die worden beheerd door Unity Catalog. Voor alle gebruiksvoorbeelden behalve Lakehouse Federation en catalogi die zijn gemaakt op basis van Delta Sharing-shares.
    • Refererende catalogus: een beveiligbaar object dat een database in een extern gegevenssysteem spiegelt met behulp van Lakehouse Federation. Zie Overzicht van de federatie-instelling van Lakehouse.
    • Gedeelde catalogus: een beveiligbaar object dat gegevens en andere assets organiseert die met u worden gedeeld als een Delta Sharing-share. Als u een catalogus maakt op basis van een share, zijn deze assets beschikbaar voor gebruikers in uw werkruimte om te lezen. Zie Wat is een share?
  5. Geef, afhankelijk van het catalogustype, de volgende opties op:

    • Voor standaardcatalogussen: het is optioneel, maar wordt sterk aangeraden om een beheerde opslaglocatie op te geven. U moet de CREATE MANAGED STORAGE bevoegdheid hebben op de externe doellocatie die u als beheerde opslaglocatie gebruikt. Zie Een beheerde opslaglocatie opgeven in Unity Catalog.

      U kunt desgewenst een subpad van een gedefinieerde externe locatie opgeven. Als er geen externe locatie is gedefinieerd, kunt u er een maken door te klikken op Een nieuwe externe locatie maken.

      Belangrijk

      Als uw werkruimte geen opslaglocatie op metastoreniveau heeft, moet u een beheerde opslaglocatie opgeven wanneer u een catalogus maakt.

    • Voor refererende catalogi: u moet een verbinding selecteren. Dit is een beveiligbaar object in Unity Catalog waarmee een pad en referenties worden opgegeven voor toegang tot een extern databasesysteem. Zie Overzicht van de federatie-instelling van Lakehouse.

      Wanneer u de verbinding hebt geselecteerd, voert u de naam in van de database of andere Databricks-catalogus die u wilt spiegelen.

      De vereisten verschillen, afhankelijk van de gegevensbron:

      • MySQL maakt gebruik van een naamruimte met twee lagen en vereist daarom geen databasenaam.
      • Voor verbindingen met een catalogus in een andere Databricks-werkruimte voert u de naam van de Databricks-catalogus in in plaats van een databasenaam.

      Als er geen verbinding is gedefinieerd, kunt u er een maken door te klikken op Een nieuwe verbinding maken.

    • Voor gedeelde catalogi: u moet een provider en een share selecteren. Zodra u de provider hebt geselecteerd, kunt u een van de shares van de provider selecteren.

      Als u niet zeker weet welke provider en welke provider u wilt delen, is het misschien gemakkelijker om te bladeren of te zoeken naar providers en shares met behulp van de browser Catalog Explorer. Zie Providers weergeven en Shares weergeven die een provider met u heeft gedeeld.

  6. Klik op Create.

  7. Klik in het dialoogvenster Catalogus gemaakt op Catalogus weergeven om de catalogus te accepteren als automatisch geconfigureerd of klik op Catalogus configureren (aanbevolen) om catalogusmachtigingen, werkruimtebindingen en metagegevens te configureren.

    Als u op Catalogus weergeven klikt, is de catalogus toegankelijk voor alle werkruimten die zijn gekoppeld aan de metastore en wordt de BROWSE bevoegdheid verleend aan alle accountgebruikers. U kunt de rest van de stappen in deze procedure overslaan en doorgaan met het toevoegen van schema's aan de catalogus. Zie Schema's maken.

    U kunt op elk gewenst moment terugkeren naar de pagina met catalogusdetails in Catalog Explorer om de eigenaar, tags, opmerkingen, werkruimtebindingen, machtigingen en schema's bij te werken.

  8. Geef op de pagina Cataloguswerkruimten configureren > de werkruimte op waaraan de catalogus is gebonden.

    De catalogus wordt standaard gedeeld met alle werkruimten die zijn gekoppeld aan de huidige metastore. Als de catalogus gegevens bevat die moeten worden beperkt tot specifieke werkruimten, schakelt u de optie Alle werkruimten met toegang uit en gebruikt u de knop Toewijzen aan werkruimten om deze werkruimten toe te voegen. De huidige werkruimte moet worden opgenomen.

    Nadat u een werkruimte hebt toegewezen, kunt u desgewenst het standaardtoegangsniveau Lezen en schrijven wijzigen in Alleen-lezen: selecteer de werkruimte in de lijst en klik op de knop Toegangsniveau beheren.

    Zie Catalogustoegang tot specifieke werkruimten beperken voor meer informatie.

  9. Klik op Volgende om machtigingen voor uw catalogus toe te wijzen.

    Alle accountgebruikers hebben standaard de BROWSE bevoegdheid, zodat ze catalogusmetagegevens kunnen detecteren zonder leestoegang tot de gegevens.

    Als u een machtiging wilt verlenen aan een gebruiker, groep of service-principal, klikt u op Verlenen en volgt u de instructies in Unity Catalog-bevoegdheden en beveiligbare objecten.

  10. Klik op Volgende om optionele tag- en opmerkingmetagegevens toe te voegen.

    Tags zijn sleutel-waardeparen die u kunt gebruiken om catalogi te organiseren en categoriseren om het zoeken en detecteren van uw gegevensassets te vereenvoudigen. Waarden zijn optioneel. Zie Tags toepassen op beveiligbare objecten in Unity Catalog.

    Een opmerking is een open-eindveld dat vaak wordt gebruikt om een beschrijving te bieden waarmee gebruikers de gegevensassets in de catalogus kunnen detecteren. Zie Opmerkingen toevoegen aan gegevens en AI-assets.

  11. Klik op Opslaan.

  12. Voeg schema's en gegevensobjecten toe aan de catalogus.

    Zie Schema's maken.

U kunt Catalog Explorer gebruiken om de eigenaar, tags, opmerkingen, werkruimtebindingen en machtigingen op elk gewenst moment bij te werken nadat u de catalogus hebt gemaakt.

SQL

Als u een standaardcatalogus wilt maken, voert u de volgende SQL-opdracht uit in een notebook of SQL-queryeditor. Items tussen haakjes zijn optioneel. Vervang de waarden van de tijdelijke aanduidingen:

  • <catalog-name>: Een naam voor de catalogus.

  • <location-path>: Optioneel, maar sterk aanbevolen. Geef een opslaglocatiepad op als u wilt dat beheerde tabellen in deze catalogus worden opgeslagen op een andere locatie dan de standaardhoofdopslag die is geconfigureerd voor de metastore.

    Belangrijk

    Als uw werkruimte geen opslaglocatie op metastoreniveau heeft, moet u een beheerde opslaglocatie opgeven wanneer u een catalogus maakt.

    Dit pad moet worden gedefinieerd in een configuratie van een externe locatie en u moet de CREATE MANAGED STORAGE bevoegdheid hebben voor de configuratie van de externe locatie. U kunt het pad gebruiken dat is gedefinieerd in de configuratie van de externe locatie of een subpad (met andere woorden, 'abfss://my-container-name@storage-account-name.dfs.core.windows.net/finance' of 'abfss://my-container-name@storage-account-name.dfs.core.windows.net/finance/product').

  • <comment>: Optionele beschrijving of andere opmerking.

CREATE CATALOG [ IF NOT EXISTS ] <catalog-name>
   [ MANAGED LOCATION '<location-path>' ]
   [ COMMENT <comment> ];

Als u bijvoorbeeld een catalogus wilt maken met de naam example:

CREATE CATALOG IF NOT EXISTS example;

Als u een gedeelde catalogus wilt maken, voert u de volgende opdracht uit in een notebook of SQL-queryeditor. Items tussen haakjes zijn optioneel.

CREATE CATALOG [IF NOT EXISTS] <catalog-name>
USING SHARE <provider-name>.<share-name>;
[ COMMENT <comment> ];

Als u een refererende catalogus wilt maken, voert u de volgende opdracht uit in een notebook of SQL-query-editor. Items tussen haakjes zijn optioneel. Vervang de waarden van de tijdelijke aanduidingen:

  • <catalog-name>: Naam voor de catalogus in Azure Databricks.
  • <connection-name>: Het verbindingsobject waarmee de gegevensbron, het pad en de toegangsreferenties worden opgegeven.
  • <database-name>: De naam van de database die u wilt spiegelen als een catalogus in Azure Databricks. Niet vereist voor MySQL, die gebruikmaakt van een naamruimte met twee lagen. Gebruik in plaats daarvan voor Databricks-to-Databricks Lakehouse Federation catalog '<external-catalog-name>' .
  • <external-catalog-name>: alleen Databricks-to-Databricks : Naam van de catalogus in de externe Databricks-werkruimte die u spiegelt. Zie Federatieve query's uitvoeren in een andere Databricks-werkruimte.
CREATE FOREIGN CATALOG [IF NOT EXISTS] <catalog-name> USING CONNECTION <connection-name>
OPTIONS [(database '<database-name>') | (catalog '<external-catalog-name>')];

Zie ook Een refererende catalogus maken.

Zie Catalogustoegang beperken tot specifieke werkruimten in uw account, ook wel bekend als binding voor werkruimtecatalogussen.

Zie CREATE CATALOG voor gedetailleerde parameterbeschrijvingen.

Nadat u de catalogus hebt gemaakt, wijst u bevoegdheden toe aan de catalogus. Zie Unity Catalog-bevoegdheden en beveiligbare objecten.

Overige

Terraform: U kunt een catalogus maken met behulp van de Databricks Terraform-provider en databricks_catalog. U kunt informatie over catalogi ophalen met behulp van databricks_catalogs.

REST API: POST /api/2.1/unity-catalog/catalogs gebruiken.

Databricks CLI: databricks catalogs create <catalog-name> [options] Voer de opdracht uit databricks catalogs create -hvoor een lijst met opties. Opties worden ook beschreven in de API-verwijzing. Volg de API-koppeling in de vorige alinea.

Nadat u de catalogus hebt gemaakt, wijst u bevoegdheden toe aan de catalogus. Zie Unity Catalog-bevoegdheden en beveiligbare objecten.

Meer informatie