CREATE CATALOG

nl-NL: Van toepassing op:gemarkeerd met ja Databricks SQL gemarkeerd met ja Databricks Runtime 10.4 LTS en hoger gemarkeerd met ja Alleen Unity Catalog

Hiermee maakt u een catalogus met de opgegeven naam. Als er al een catalogus met dezelfde naam bestaat, wordt er een uitzondering gegenereerd.

Wanneer u een FOREIGN catalogus maakt, wordt deze gevuld met alle schema's en de bijbehorende tabellen die zichtbaar zijn voor de geverifieerde gebruiker.

Syntaxis

CREATE CATALOG [ IF NOT EXISTS ] catalog_name
    [ USING SHARE provider_name . share_name |
      MANAGED LOCATION location_path |
      RETAIN DROPPED FOR number { HOUR | HOURS | DAY | DAYS | WEEK | WEEKS } |
      COMMENT comment |
      DEFAULT COLLATION default_collation_name |
      OPTIONS ( { option_name = option_value } [ , ... ] ) ] [...]

CREATE FOREIGN CATALOG [ IF NOT EXISTS ] catalog_name
    USING CONNECTION connection_name
    [ COMMENT comment ]
    OPTIONS ( { option_name = option_value } [ , ... ] )

Parameterwaarden

  • BUITENLANDS

    Van toepassing op:vinkje als ja aan Databricks SQL vinkje als ja aan Databricks Runtime 13.3 LTS en hoger

    Hiermee geeft u op dat de catalogus wordt geïmporteerd uit een CONNECTION.

  • ALS NIET BESTAAT

    Hiermee maakt u een catalogus met de opgegeven naam als deze niet bestaat. Als er al een catalogus met dezelfde naam bestaat, gebeurt er niets.

  • catalog_name

    De naam van de catalogus die moet worden gemaakt.

  • SHARE-provider_name share_name.gebruiken

    Hiermee geeft u optioneel aan dat de catalogus is gebaseerd op een OpenSharing-share.

  • LOKATIE BEHEERD location_path

    Geef desgewenst het pad op naar een beheerde opslaglocatie voor de catalogus die verschilt van de hoofdopslaglocatie van de metastore. Dit pad moet worden gedefinieerd in een externe locatieconfiguratie en u moet de juiste machtigingen hebben op 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://container@storageaccount.dfs.core.windows.net/finance' of 'abfss://container@storageaccount.dfs.core.windows.net/finance/product'). Ondersteund in Databricks SQL of in clusters met Databricks Runtime 11.3 LTS en hoger.

    Zie ook beheerde tabellen in Unity Catalog in Azure Databricks voor Delta Lake en Apache Iceberg en een Unity Catalog-metastore maken.

  • BEHOUDEN VERWIJDERD VOOR getal { UUR | UREN | DAG | DAGEN | WEEK | WEKEN }

    Van toepassing op:controleren gemarkeerd ja Databricks Runtime 17.3 en hoger, vink alleen ja Unity Catalog aan

    Important

    Deze functie bevindt zich in openbare preview-versie.

    U kunt eventueel de herstelperiode voor verwijderde beheerde tabellen in de catalogus instellen, de periode waarin verwijderde tabellen kunnen worden hersteld met behulp van de UNDROP TABLE opdracht. Als dit niet is opgegeven, is de standaardwaarde 7 dagen. De waarde moet 0 uur zijn (om herstel uit te schakelen) of tussen 7 en 30 dagen, inclusief.

    Als u de herstelperiode instelt op 0, kunnen verwijderde tabellen niet worden hersteld met behulp van UNDROP en worden gegevensbestanden binnen 48 uur uit de cloudopslag verwijderd.

    Als een herstelperiode ook is ingesteld op een onderliggend schema, heeft de instelling op schemaniveau voorrang voor tabellen in dat schema. Deze instelling is alleen van toepassing op tabellen die zijn verwijderd nadat de herstelperiode is geconfigureerd. Nadat de herstelperiode is beëindigd, worden gegevensbestanden voor beheerde tabellen binnen 48 uur verwijderd uit uw cloudopslag.

    Niet ondersteund voor refererende of gedeelde catalogi. Zie ook Een beheerde tabel verwijderen.

  • VERBINDING connection_name GEBRUIKEN

    Hiermee geeft u de verbinding op waar de broncatalogus zich bevindt.

  • commentaar

    Een optionele STRING letterlijke. De beschrijving voor de catalogus.

  • STANDAARDCOLLATIE default_collation_name

    Van toepassing op:aangevinkt ja Databricks SQL aangevinkt ja Databricks Runtime 17.1 en hoger

    Definieer eventueel de standaardsortering voor objecten die in de catalogus zijn gedefinieerd. Als er niets is opgegeven, is de standaardsortering UTF8_BINARY.

  • OPTIES

    Hiermee stelt u specifieke parameters voor het verbindingstype in die nodig zijn om de catalogus bij de verbinding te identificeren.

    • option_name

      De optietoets. De sleutel kan bestaan uit een of meer identificatoren, gescheiden door een punt of een STRING letterlijke waarde.

      Optietoetsen moeten uniek en hoofdlettergevoelig zijn.

    • option_value

      De waarde voor de optie. De waarde moet een BOOLEAN, STRINGof INTEGERDECIMALconstante expressie zijn. De waarde kan ook een aanroep van de SECRET SQL-functie zijn. Een voorbeeld hiervan is dat de value voor password zou kunnen bestaan uit secret('secrets.r.us', 'postgresPassword') in plaats van het letterlijke wachtwoord in te voeren.

Voorbeelden

-- Create catalog `customer_cat`. This throws exception if catalog with name customer_cat
-- already exists.
> CREATE CATALOG customer_cat;

-- Create catalog `customer_cat` only if catalog with same name doesn't exist.
> CREATE CATALOG IF NOT EXISTS customer_cat;

-- Create catalog `customer_cat` only if catalog with same name doesn't exist, with a comment.
> CREATE CATALOG IF NOT EXISTS customer_cat COMMENT 'This is customer catalog';

-- Create a catalog from a Delta Sharing share.
> CREATE CATALOG customer_cat USING SHARE cdc.vaccinedata;

-- Create a catalog with a different managed storage location than the metastore's.
> CREATE CATALOG customer_cat MANAGED LOCATION 'abfss://container@storageaccount.dfs.core.windows.net/finance';

-- Create a catalog with a case insesnitive and accent insensitive default collation.
> CREATE CATALOG customer_cat DEFAULT COLLATION UNICODE_CI_AI;

-- Create a catalog with a 30-day recovery period for dropped managed tables.
> CREATE CATALOG customer_cat RETAIN DROPPED FOR 30 DAYS;

-- Create a foreign catalog linked to postgresdb at postgresql_connection
> CREATE FOREIGN CATALOG postgresql_catalog
     USING CONNECTION postgresql_connection
     OPTIONS (database 'postgresdb');