Aller au contenu principal

CLI Unity Catalog (hérité)

important

Cette documentation a été retirée et pourrait ne pas être mise à jour.

Ces informations s'appliquent aux anciennes versions de la CLI Databricks 0.18 et antérieures. Databricks vous recommande d'utiliser plutôt la version 0.205 ou ultérieure de Databricks CLI. Voir CLI Databricks. Pour trouver votre version de la CLI Databricks, exécutez databricks -v.

Pour migrer de Databricks CLI version 0.18 ou inférieure vers Databricks CLI version 0.205 ou supérieure, consultez la migration de Databricks CLI.

remarque

Le CLI de Unity Catalog est expérimental.

Le CLI Unity Catalog nécessite la CLI Databricks héritée 0.17.0 ou une version ultérieure, configuré avec l'authentification. Pour mettre à jour le CLI Databricks ou pour lister la version installée, consultez Mettre à jour le CLI.

Les valeurs d'exemple d'option et de champ dans les exemples suivants sont uniquement à des fins d'illustration.

Utilisez l'Unity Catalog CLI pour travailler avec :

  • Ressources Unity Catalog telles que les métastores, les informations d'identification de stockage, les emplacements externes, les catalogues, les schémas, les tables et leurs autorisations.
  • Les Ressources OpenSharing, telles que les partages, les destinataires et les fournisseurs.

Vous exécutez les sous-commandes de l'Unity Catalog CLI en les ajoutant à databricks unity-catalog. Ces sous-commandes appellent l'API Unity Catalog, qui inclut également l'API OpenSharing.

Pour afficher la documentation d'utilisation, exécutez databricks unity-catalog --help.

Résultat :

Usage: databricks unity-catalog [OPTIONS] COMMAND [ARGS]...

Utility to interact with Databricks Unity Catalog.

Options:
-v, --version 0.17.1
-h, --help Show this message and exit.

Commands:
catalogs
external-locations
lineage
metastores
permissions
providers
recipients
schemas
shares
storage-credentials
tables

Métastores

Utilisez la sous-commande unity-catalog metastores pour travailler avec des métastores.

Pour afficher la documentation d'utilisation, exécutez databricks unity-catalog metastores --help.

Créer un métastore

Pour afficher la documentation d'utilisation, exécutez databricks unity-catalog metastores create --help. Voir aussi Créer un métastore Unity Catalog.

Bash
databricks unity-catalog metastores create --name my-metastore \
--region us-west-2 \
--storage-root s3://my-bucket/abcdefghij

Si vous ne spécifiez pas la région, le métastore est créé dans la région de votre Workspace actuel.

Résultat :

JSON
{
"name": "my-metastore",
"storage_root": "s3://my-bucket/abcdefghij/12a345b6-7890-1cd2-3456-e789f0a12b34",
"metastore_id": "12a345b6-7890-1cd2-3456-e789f0a12b34",
"created_at": 1656112029354,
"created_by": "someone@example.com",
"updated_at": 1656112029354,
"updated_by": "someone@example.com",
"delta_sharing_enabled": false,
"owner": "someone@example.com",
"region": "us-west-2",
"cloud": "aws",
"global_metastore_id": "aws:us-west-2:12a345b6-7890-1cd2-3456-e789f0a12b34",
"delta_sharing_scope": "INTERNAL",
"privilege_model_version": "0.1"
}
remarque

La création d’un métastore n’associe pas automatiquement le métastore à un workspace ou à des identifiants de stockage. Pour effectuer ces tâches, consultez Link un métastore à un Workspace, Créer des identifiants de stockage et Mettre à jour les paramètres d’un métastore.

Si vous exécutez cette commande sur un Workspace qui a déjà un metastore attribué, vous mettrez à jour le metastore attribué à ce Workspace.

Pour afficher la documentation d'utilisation, exécutez databricks unity-catalog metastores assign --help.

Bash
databricks unity-catalog metastores assign --workspace-id 1234567890123456 \
--metastore-id 12a345b6-7890-1cd2-3456-e789f0a12b34 \
--default-catalog-name main

Pour obtenir l’ID du workspace, consultez Noms, URL et ID d’instance du workspace.

Pour obtenir l'ID du métastore, exécutez databricks unity-catalog metastores get-summary. Pour un exemple, voir Obtenir des informations récapitulatives sur le métastore actuel.

Résultat :

JSON
{}

Voir aussi Créer un métastore Unity Catalog.

Mettre à jour les paramètres d'un metastore

Pour afficher la documentation d'utilisation, exécutez databricks unity-catalog metastores update --help.

Bash
databricks unity-catalog metastores update --id 12a345b6-7890-1cd2-3456-e789f0a12b34 \
--json-file update-metastore.json

Pour obtenir l'ID du métastore, exécutez databricks unity-catalog metastores get-summary. Pour un exemple, voir Obtenir des informations récapitulatives sur le métastore actuel.

update-metastore.json:

JSON
{
"storage_root_credential_id": "12a345b6-7890-1cd2-3456-e789f0a12b34"
}

Pour obtenir l'ID d'identification de la racine de stockage, consultez Obtenir des informations sur une identification de stockage.

Résultat :

JSON
{
"name": "my-metastore",
"storage_root": "s3://my-bucket/abcdefghij/12a345b6-7890-1cd2-3456-e789f0a12b34",
"default_data_access_config_id": "12a345b6-7890-1cd2-3456-e789f0a12b34",
"metastore_id": "12a345b6-7890-1cd2-3456-e789f0a12b34",
"created_at": 1656365260817,
"created_by": "someone@example.com",
"updated_at": 1656366434069,
"updated_by": "someone@example.com",
"delta_sharing_enabled": true,
"owner": "someone@example.com",
"delta_sharing_recipient_token_lifetime_in_seconds": 86400,
"region": "us-west-2",
"storage_root_credential_id": "12a345b6-7890-1cd2-3456-e789f0a12b34",
"cloud": "aws",
"global_metastore_id": "aws:us-west-2:12a345b6-7890-1cd2-3456-e789f0a12b34",
"delta_sharing_scope": "INTERNAL_AND_EXTERNAL",
"privilege_model_version": "0.1"
}

Liste des metastores disponibles

Pour afficher la documentation d'utilisation, exécutez databricks unity-catalog metastores list --help.

Bash
databricks unity-catalog metastores list

Résultat :

JSON
{
"metastores": [
{
"name": "my-metastore",
"storage_root": "s3://my-bucket/abcdefghij/12a345b6-7890-1cd2-3456-e789f0a12b34",
"default_data_access_config_id": "12a345b6-7890-1cd2-3456-e789f0a12b34",
"metastore_id": "12a345b6-7890-1cd2-3456-e789f0a12b34",
"created_at": 1656365260817,
"created_by": "someone@example.com",
"updated_at": 1656366434069,
"updated_by": "someone@example.com",
"delta_sharing_enabled": true,
"owner": "someone@example.com",
"delta_sharing_recipient_token_lifetime_in_seconds": 86400,
"region": "us-west-2",
"storage_root_credential_id": "12a345b6-7890-1cd2-3456-e789f0a12b34",
"cloud": "aws",
"global_metastore_id": "aws:us-west-2:12a345b6-7890-1cd2-3456-e789f0a12b34",
"delta_sharing_scope": "INTERNAL_AND_EXTERNAL",
"privilege_model_version": "0.1"
},
{
"...": "..."
}
]
}

Obtenir des informations sur un metastore

Pour afficher la documentation d'utilisation, exécutez databricks unity-catalog metastores get --help.

Bash
databricks unity-catalog metastores get --id 12a345b6-7890-1cd2-3456-e789f0a12b34

Pour obtenir l'ID du métastore, exécutez databricks unity-catalog metastores get-summary. Pour un exemple, voir Obtenir des informations récapitulatives sur le métastore actuel.

Résultat :

JSON
{
"name": "my-metastore",
"storage_root": "s3://my-bucket/abcdefghij/12a345b6-7890-1cd2-3456-e789f0a12b34",
"default_data_access_config_id": "12a345b6-7890-1cd2-3456-e789f0a12b34",
"metastore_id": "12a345b6-7890-1cd2-3456-e789f0a12b34",
"created_at": 1656365260817,
"created_by": "someone@example.com",
"updated_at": 1656366434069,
"updated_by": "someone@example.com",
"delta_sharing_enabled": true,
"owner": "someone@example.com",
"delta_sharing_recipient_token_lifetime_in_seconds": 86400,
"region": "us-west-2",
"storage_root_credential_id": "12a345b6-7890-1cd2-3456-e789f0a12b34",
"cloud": "aws",
"global_metastore_id": "aws:us-west-2:12a345b6-7890-1cd2-3456-e789f0a12b34",
"delta_sharing_scope": "INTERNAL_AND_EXTERNAL",
"privilege_model_version": "0.1"
}

Obtenir des informations récapitulatives sur le métastore actuel

Pour afficher la documentation d'utilisation, exécutez databricks unity-catalog metastores get-summary --help.

Bash
databricks unity-catalog metastores get-summary

Résultat :

JSON
{
"metastore_id": "12a345b6-7890-1cd2-3456-e789f0a12b34",
"name": "my-metastore",
"default_data_access_config_id": "12a345b6-7890-1cd2-3456-e789f0a12b34",
"storage_root_credential_id": "12a345b6-7890-1cd2-3456-e789f0a12b34",
"cloud": "aws",
"region": "us-west-2",
"global_metastore_id": "aws:us-west-2:12a345b6-7890-1cd2-3456-e789f0a12b34",
"storage_root_credential_name": "my-storage-root-credential"
}

Obtenez l'affectation actuelle du métastore pour un workspace.

Pour afficher la documentation d'utilisation, exécutez databricks unity-catalog metastores get-assignment --help.

Bash
databricks unity-catalog metastores get-assignment

Résultat :

JSON
{
"workspace_id": 1234567890123456,
"metastore_id": "12a345b6-7890-1cd2-3456-e789f0a12b34",
"default_catalog_name": "main"
}

Délier un metastore d'un Workspace

Pour afficher la documentation d'utilisation, exécutez databricks unity-catalog metastores unassign --help.

Bash
databricks unity-catalog metastores unassign --workspace-id 1234567890123456 \
--metastore-id 12a345b6-7890-1cd2-3456-e789f0a12b34

Pour obtenir l’ID du workspace, consultez Noms, URL et ID d’instance du workspace.

Pour obtenir l'ID du métastore, exécutez databricks unity-catalog metastores get-summary. Pour un exemple, voir Obtenir des informations récapitulatives sur le métastore actuel.

Résultat :

JSON
{}

Supprimer un métastore

attention

Avant de supprimer un métastore, vous devez supprimer tous les workspaces qui utilisent le métastore ou supprimer le link du métastore vers ces workspaces. Contactez le support Databricks pour obtenir de l'aide concernant la suppression des liens de metastore des workspaces.

Pour afficher la documentation d'utilisation, exécutez databricks unity-catalog metastores delete --help.

Pour supprimer de force le métastore, utilisez l'option --force.

Bash
databricks unity-catalog metastores delete --id 12a345b6-7890-1cd2-3456-e789f0a12b34

Pour obtenir l'ID du métastore, exécutez databricks unity-catalog metastores get-summary. Pour un exemple, voir Obtenir des informations récapitulatives sur le métastore actuel.

Si l'opération réussit, aucun résultat n'est renvoyé.

Identifiants de stockage

Utilisez la sous-commande unity-catalog storage-credentials pour gérer les identifiants de stockage. Consultez Créer un identifiant de stockage qui accède à un compartiment AWS S3.

Pour afficher la documentation d'utilisation, exécutez databricks unity-catalog storage-credentials --help.

Créer un identifiant de stockage

Pour afficher la documentation d'utilisation, exécutez databricks unity-catalog storage-credentials create --help.

Voir aussi Créer un identifiant de stockage qui accède à un compartiment S3 AWS.

Bash
databricks unity-catalog storage-credentials create --json-file create-storage-credential.json

create-storage-credential.json:

JSON
{
"name": "my-storage-root-credential",
"aws_iam_role": {
"role_arn": "arn:aws:iam::123456789012:role/my-role"
}
}

Résultat :

JSON
{
"id": "12a345b6-7890-1cd2-3456-e789f0a12b34",
"name": "my-storage-root-credential",
"aws_iam_role": {
"role_arn": "arn:aws:iam::123456789012:role/my-role",
"unity_catalog_iam_arn": "arn:aws:iam::414351767826:role/my-role",
"external_id": "12a345b6-7890-1cd2-3456-e789f0a12b34"
},
"owner": "someone@example.com",
"metastore_id": "12a345b6-7890-1cd2-3456-e789f0a12b34",
"created_at": 1656366379705,
"created_by": "someone@example.com",
"updated_at": 1656366379705,
"updated_by": "someone@example.com",
"used_for_managed_storage": true
}

Mettre à jour les paramètres d'un identifiant de stockage

Pour afficher la documentation d'utilisation, exécutez databricks unity-catalog storage-credentials update --help.

Bash
databricks unity-catalog storage-credentials update --name my-storage-root-credential
--json-file update-storage-credential.json

update-storage-credential.json:

JSON
{
"name": "my-storage-root-credential-2",
"aws_iam_role": {
"role_arn": "arn:aws:iam::123456789012:role/my-role"
}
}

Résultat :

JSON
{
"id": "12a345b6-7890-1cd2-3456-e789f0a12b34",
"name": "my-storage-root-credential-2",
"aws_iam_role": {
"role_arn": "arn:aws:iam::123456789012:role/my-role",
"unity_catalog_iam_arn": "arn:aws:iam::414351767826:role/my-role",
"external_id": "12a345b6-7890-1cd2-3456-e789f0a12b34"
},
"owner": "someone@example.com",
"metastore_id": "12a345b6-7890-1cd2-3456-e789f0a12b34",
"created_at": 1656366379705,
"created_by": "someone@example.com",
"updated_at": 1656366379705,
"updated_by": "someone@example.com",
"used_for_managed_storage": true
}

Lister les identifiants de stockage disponibles

Pour afficher la documentation d'utilisation, exécutez databricks unity-catalog storage-credentials list --help.

Bash
databricks unity-catalog storage-credentials list

Résultat :

JSON
"storage_credentials": [
{
"id": "12a345b6-7890-1cd2-3456-e789f0a12b34",
"name": "my-storage-root-credential",
"aws_iam_role": {
"role_arn": "arn:aws:iam::123456789012:role/my-role",
"unity_catalog_iam_arn": "arn:aws:iam::123456789012:role/my-role",
"external_id": "12a345b6-7890-1cd2-3456-e789f0a12b34"
},
"owner": "someone@example.com",
"metastore_id": "12a345b6-7890-1cd2-3456-e789f0a12b34",
"created_at": 1656366379705,
"created_by": "someone@example.com",
"updated_at": 1656366379705,
"updated_by": "someone@example.com",
"used_for_managed_storage": true
},
{
"...": "..."
}
]

Obtenir des informations sur un identifiant de stockage

Pour afficher la documentation d'utilisation, exécutez databricks unity-catalog storage-credentials get --help.

Bash
databricks unity-catalog storage-credentials get --name my-storage-root-credential

Résultat :

JSON
{
"id": "12a345b6-7890-1cd2-3456-e789f0a12b34",
"name": "my-storage-root-credential",
"aws_iam_role": {
"role_arn": "arn:aws:iam::123456789012:role/my-storage-root-credential",
"unity_catalog_iam_arn": "arn:aws:iam::414351767826:role/my-role",
"external_id": "12a345b6-7890-1cd2-3456-e789f0a12b34"
},
"owner": "someone@example.com",
"metastore_id": "12a345b6-7890-1cd2-3456-e789f0a12b34",
"created_at": 1656353829777,
"created_by": "someone@example.com",
"updated_at": 1656353829777,
"updated_by": "someone@example.com"
}

Supprimer un identifiant de stockage

Pour afficher la documentation d'utilisation, exécutez databricks unity-catalog storage-credentials delete --help.

Pour supprimer de force les identifiants de stockage, utilisez l'option --force.

Bash
databricks unity-catalog storage-credentials delete --name my-storage-root-credential

Si l'opération réussit, aucun résultat n'est renvoyé.

Emplacements externes

Utilisez la sous-commande unity-catalog external-locations pour travailler avec des emplacements externes. Voir Présentation des emplacements externes.

Pour afficher la documentation d'utilisation, exécutez databricks unity-catalog external-locations --help.

Créer un emplacement externe

Pour afficher la documentation d'utilisation, exécutez databricks unity-catalog external-locations create --help. Voir aussi Présentation des emplacements externes.

Bash
databricks unity-catalog external-locations create --name my-external-location \
--url s3://my-bucket/abcdefghij \
--storage-credential-name my-storage-root-credential

Résultat :

JSON
{
"name": "my-external-location",
"url": "s3://my-bucket/abcdefghij",
"credential_name": "my-storage-root-credential",
"owner": "someone@example.com",
"metastore_id": "12a345b6-7890-1cd2-3456-e789f0a12b34",
"credential_id": "12a345b6-7890-1cd2-3456-e789f0a12b34",
"created_at": 1656370003059,
"created_by": "someone@example.com",
"updated_at": 1656370003059,
"updated_by": "someone@example.com",
"read_only": false
}

Valider une paire d'emplacement externe et d'identifiant

Pour afficher la documentation d'utilisation, exécutez databricks unity-catalog external-locations validate --help.

Valider une URL d'emplacement externe et une paire d'identifiants avant de les créer

Bash
databricks unity-catalog external-locations validate --url s3://my-bucket/abcdefghij \
--cred-name my-storage-root-credential

Résultat :

JSON
{
"isDir": true,
"results": [
{
"operation": "READ",
"result": "PASS"
},
{
"operation": "LIST",
"result": "PASS"
},
{
"operation": "WRITE",
"result": "PASS"
},
{
"operation": "DELETE",
"result": "PASS"
}
]
}

Valider le nom d'un emplacement externe et la paire d'identifiants après les avoir créés

Bash
databricks unity-catalog external-locations validate --name my-external-location \
--cred-name my-storage-root-credential

Résultat :

JSON
{
"isDir": true,
"results": [
{
"operation": "READ",
"result": "PASS"
},
{
"operation": "LIST",
"result": "PASS"
},
{
"operation": "WRITE",
"result": "PASS"
},
{
"operation": "DELETE",
"result": "PASS"
}
]
}

Mettre à jour les paramètres d'un emplacement externe

Pour afficher la documentation d'utilisation, exécutez databricks unity-catalog external-locations update --help.

Bash
databricks unity-catalog external-locations update --name my-external-location \
--json-file update-external-location.json

udpate-external-location.json:

JSON
{
"name": "my-external-location-2"
}

Résultat :

JSON
{
"name": "my-external-location-2",
"url": "s3://my-bucket/abcdefghij",
"credential_name": "my-storage-root-credential",
"owner": "someone@example.com",
"metastore_id": "12a345b6-7890-1cd2-3456-e789f0a12b34",
"credential_id": "12a345b6-7890-1cd2-3456-e789f0a12b34",
"created_at": 1656370003059,
"created_by": "someone@example.com",
"updated_at": 1656370379651,
"updated_by": "someone@example.com",
"read_only": false
}

Lister les emplacements externes disponibles

Pour afficher la documentation d'utilisation, exécutez databricks unity-catalog external-locations list --help.

Bash
databricks unity-catalog external-locations list

Résultat :

JSON
{
"external_locations": [
{
"name": "my-external-location",
"url": "s3://my-bucket/abcdefghij",
"credential_name": "my-storage-root-credential",
"owner": "someone@example.com",
"metastore_id": "12a345b6-7890-1cd2-3456-e789f0a12b34",
"credential_id": "12a345b6-7890-1cd2-3456-e789f0a12b34",
"created_at": 1656370003059,
"created_by": "someone@example.com",
"updated_at": 1656370379651,
"updated_by": "someone@example.com",
"read_only": false
},
{
"...": "..."
}
]
}

Obtenir des informations sur un emplacement externe

Pour afficher la documentation d'utilisation, exécutez databricks unity-catalog external-locations get --help.

Bash
databricks unity-catalog external-locations get --name my-external-location

Résultat :

JSON
{
"name": "my-external-location",
"url": "s3://my-bucket/abcdefghij",
"credential_name": "my-storage-root-credential",
"owner": "someone@example.com",
"metastore_id": "12a345b6-7890-1cd2-3456-e789f0a12b34",
"credential_id": "12a345b6-7890-1cd2-3456-e789f0a12b34",
"created_at": 1656370003059,
"created_by": "someone@example.com",
"updated_at": 1656370003059,
"updated_by": "someone@example.com",
"read_only": false
}

Supprimer un emplacement externe

Pour afficher la documentation d'utilisation, exécutez databricks unity-catalog external-locations delete --help.

Pour forcer la suppression de l'emplacement externe, utilisez l'option --force.

Bash
databricks unity-catalog external-locations delete --name my-external-location

Si l'opération réussit, aucun résultat n'est renvoyé.

Catalogues

Utilisez la sous-commande unity-catalog catalogs pour travailler avec les catalogues.

Pour afficher la documentation d'utilisation, exécutez databricks unity-catalog catalogs --help.

Créer un catalogue

Pour afficher la documentation d'utilisation, exécutez databricks unity-catalog catalogs create --help. Voir aussi Créer des catalogues.

Bash
databricks unity-catalog catalogs create --name my-catalog

Résultat :

JSON
{
"name": "my-catalog",
"owner": "someone@example.com",
"metastore_id": "12a345b6-7890-1cd2-3456-e789f0a12b34",
"created_at": 1656113178995,
"created_by": "someone@example.com",
"updated_at": 1656113178995,
"updated_by": "someone@example.com",
"catalog_type": "MANAGED_CATALOG"
}

Mettre à jour les paramètres d'un catalogue

Pour afficher la documentation d'utilisation, exécutez databricks unity-catalog catalogs update --help.

Bash
databricks unity-catalog catalogs update --name my-catalog \
--json-file update-catalog.json

update-catalog.json:

JSON
{
"name": "my-catalog-2",
"owner": "someone@example.com"
}

Résultat :

JSON
{
"name": "my-catalog-2",
"owner": "someone@example.com",
"metastore_id": "12a345b6-7890-1cd2-3456-e789f0a12b34",
"created_at": 1656355967835,
"created_by": "someone@example.com",
"updated_at": 1656356095989,
"updated_by": "someone@example.com",
"catalog_type": "MANAGED_CATALOG"
}

Lister les catalogues disponibles

Pour afficher la documentation d'utilisation, exécutez databricks unity-catalog catalogs list --help.

Bash
databricks unity-catalog catalogs list

Résultat :

JSON
{
"catalogs": [
{
"name": "main",
"owner": "someone@example.com",
"comment": "Main catalog (auto-created)",
"metastore_id": "12a345b6-7890-1cd2-3456-e789f0a12b34",
"created_at": 1656112029355,
"created_by": "someone@example.com",
"updated_at": 1656112029355,
"updated_by": "someone@example.com",
"catalog_type": "MANAGED_CATALOG"
},
{
"...": "..."
}
]
}

Obtenir des informations sur un catalogue

Pour afficher la documentation d'utilisation, exécutez databricks unity-catalog catalogs get --help.

Bash
databricks unity-catalog catalogs get --name my-catalog

Résultat :

JSON
{
"name": "my-catalog",
"owner": "someone@example.com",
"metastore_id": "12a345b6-7890-1cd2-3456-e789f0a12b34",
"created_at": 1656113178995,
"created_by": "someone@example.com",
"updated_at": 1656113178995,
"updated_by": "someone@example.com",
"catalog_type": "MANAGED_CATALOG"
}

Supprimer un catalogue

Pour afficher la documentation d'utilisation, exécutez databricks unity-catalog catalogs delete --help. Voir aussi Supprimer un catalogue.

Pour supprimer un catalogue de force, utilisez l'option --purge.

Bash
databricks unity-catalog catalogs delete --name my-catalog

Si l'opération réussit, aucun résultat n'est renvoyé.

Schémas

Utilisez la sous-commande unity-catalog schemas pour travailler avec des schémas.

Pour afficher la documentation d'utilisation, exécutez databricks unity-catalog schemas --help.

Créer un schéma

Pour afficher la documentation d'utilisation, exécutez databricks unity-catalog schemas create --help. Voir aussi Créer des schémas.

Bash
databricks unity-catalog schemas create --catalog-name my-catalog \
--name my-schema

Résultat :

JSON
{
"name": "my-schema",
"catalog_name": "my-catalog",
"owner": "someone@example.com",
"metastore_id": "12a345b6-7890-1cd2-3456-e789f0a12b34",
"full_name": "my-catalog.my-schema",
"created_at": 1656113607800,
"created_by": "someone@example.com",
"updated_at": 1656113607800,
"updated_by": "someone@example.com"
}

Modifier les paramètres d'un schéma

Pour afficher la documentation d'utilisation, exécutez databricks unity-catalog schemas update --help.

Bash
databricks unity-catalog schemas update --full-name my-catalog.my-schema \
--json-file update-schema.json

update-schema.json:

JSON
{
"name": "my-schema-2",
"owner": "someone@example.com"
}

Résultat :

JSON
{
"name": "my-schema-2",
"catalog_name": "my-catalog",
"owner": "someone@example.com",
"comment": "Default schema (auto-created)",
"metastore_id": "12a345b6-7890-1cd2-3456-e789f0a12b34",
"full_name": "my-catalog.my-schema-2",
"created_at": 1656355967837,
"created_by": "someone@example.com",
"updated_at": 1656356592786,
"updated_by": "someone@example.com"
}

Liste des schémas disponibles

Pour afficher la documentation d'utilisation, exécutez databricks unity-catalog schemas list --help.

Bash
databricks unity-catalog schemas list --catalog-name my-catalog

Résultat :

JSON
{
"schemas": [
{
"name": "default",
"catalog_name": "my-catalog",
"owner": "someone@example.com",
"comment": "Default schema (auto-created)",
"metastore_id": "12a345b6-7890-1cd2-3456-e789f0a12b34",
"full_name": "my-catalog.default",
"created_at": 1656113178996,
"created_by": "someone@example.com",
"updated_at": 1656113178996,
"updated_by": "someone@example.com"
},
{
"...": "..."
}
]
}

Obtenir des informations sur un schéma

Pour afficher la documentation d'utilisation, exécutez databricks unity-catalog schemas get --help.

Bash
databricks unity-catalog schemas get --full-name my-catalog.my-schema

Résultat :

JSON
{
"name": "my-schema",
"catalog_name": "my-catalog",
"owner": "someone@example.com",
"metastore_id": "12a345b6-7890-1cd2-3456-e789f0a12b34",
"full_name": "my-catalog.my-schema",
"created_at": 1656113607800,
"created_by": "someone@example.com",
"updated_at": 1656113607800,
"updated_by": "someone@example.com"
}

Supprimer un schéma

Pour afficher la documentation d'utilisation, exécutez databricks unity-catalog schemas delete --help. Voir aussi Supprimer un schéma.

Pour supprimer un schéma de force, utilisez l'option --purge.

Bash
databricks unity-catalog schemas delete --full-name my-catalog.my-schema

Si l'opération réussit, aucun résultat n'est renvoyé.

Tables

Utilisez la sous-commande unity-catalog tables pour travailler avec des tables.

remarque

La création de tables avec le CLI Unity Catalog n'est pas prise en charge. Pour créer des tables, consultez les tables Databricks et Didacticiel : Créez votre première table et accordez des privilèges.

Pour afficher la documentation d'utilisation, exécutez databricks unity-catalog tables --help.

Liste des tables disponibles

Pour afficher la documentation d'utilisation, exécutez databricks unity-catalog tables list --help.

Bash
databricks unity-catalog tables list --catalog-name main \
--schema-name default

Résultat :

JSON
{
"tables": [
{
"name": "mytable",
"catalog_name": "main",
"schema_name": "default",
"table_type": "MANAGED",
"data_source_format": "DELTA",
"columns": [
{
"name": "id",
"type_text": "int",
"type_json": "{\"name\":\"id\",\"type\":\"integer\",\"nullable\":true,\"metadata\":{}}",
"type_name": "INT",
"type_precision": 0,
"type_scale": 0,
"position": 0,
"nullable": true
},
{
"name": "name",
"type_text": "string",
"type_json": "{\"name\":\"name\",\"type\":\"string\",\"nullable\":true,\"metadata\":{}}",
"type_name": "STRING",
"type_precision": 0,
"type_scale": 0,
"position": 1,
"nullable": true
},
{
"name": "age",
"type_text": "int",
"type_json": "{\"name\":\"age\",\"type\":\"integer\",\"nullable\":true,\"metadata\":{}}",
"type_name": "INT",
"type_precision": 0,
"type_scale": 0,
"position": 2,
"nullable": true
}
],
"storage_location": "s3://my-bucket/abcdefghij/12a345b6-7890-1cd2-3456-e789f0a12b34/tables/12a345b6-7890-1cd2-3456-e789f0a12b34",
"owner": "someone@example.com",
"properties": {
"delta.lastCommitTimestamp": "1656371979000",
"delta.lastUpdateVersion": "0",
"delta.minWriterVersion": "2",
"delta.minReaderVersion": "1",
"delta.checkpoint.writeStatsAsStruct": "true",
"delta.checkpoint.writeStatsAsJson": "false"
},
"metastore_id": "12a345b6-7890-1cd2-3456-e789f0a12b34",
"full_name": "main.default.mytable",
"data_access_configuration_id": "00000000-0000-0000-0000-000000000000",
"created_at": 1656371992807,
"created_by": "someone@example.com",
"updated_at": 1656371992807,
"updated_by": "someone@example.com",
"table_id": "12a345b6-7890-1cd2-3456-e789f0a12b34"
},
{
"...": "..."
}
]
}

Lister les résumés des tables disponibles

Pour afficher la documentation d'utilisation, exécutez databricks unity-catalog tables list-summaries --help.

Bash
databricks unity-catalog tables list-summaries --catalog-name main

Résultat :

JSON
{
"tables": [
{
"full_name": "main.default.mytable",
"table_type": "MANAGED"
},
{
"...": "..."
}
]
}

Obtenir des informations sur une table.

Pour afficher la documentation d'utilisation, exécutez databricks unity-catalog tables get --help.

Bash
databricks unity-catalog tables get --full-name main.default.mytable

Résultat :

JSON
{
"name": "mytable",
"catalog_name": "main",
"schema_name": "default",
"table_type": "MANAGED",
"data_source_format": "DELTA",
"columns": [
{
"name": "id",
"type_text": "int",
"type_json": "{\"name\":\"id\",\"type\":\"integer\",\"nullable\":true,\"metadata\":{}}",
"type_name": "INT",
"type_precision": 0,
"type_scale": 0,
"position": 0,
"nullable": true
},
{
"name": "name",
"type_text": "string",
"type_json": "{\"name\":\"name\",\"type\":\"string\",\"nullable\":true,\"metadata\":{}}",
"type_name": "STRING",
"type_precision": 0,
"type_scale": 0,
"position": 1,
"nullable": true
},
{
"name": "age",
"type_text": "int",
"type_json": "{\"name\":\"age\",\"type\":\"integer\",\"nullable\":true,\"metadata\":{}}",
"type_name": "INT",
"type_precision": 0,
"type_scale": 0,
"position": 2,
"nullable": true
}
],
"storage_location": "s3://my-bucket/abcdefghij/12a345b6-7890-1cd2-3456-e789f0a12b34/tables/12a345b6-7890-1cd2-3456-e789f0a12b34",
"owner": "someone@example.com",
"properties": {
"delta.lastCommitTimestamp": "1656371979000",
"delta.lastUpdateVersion": "0",
"delta.minWriterVersion": "2",
"delta.minReaderVersion": "1",
"delta.checkpoint.writeStatsAsStruct": "true",
"delta.checkpoint.writeStatsAsJson": "false"
},
"metastore_id": "12a345b6-7890-1cd2-3456-e789f0a12b34",
"full_name": "main.default.mytable",
"data_access_configuration_id": "00000000-0000-0000-0000-000000000000",
"created_at": 1656371992807,
"created_by": "someone@example.com",
"updated_at": 1656371992807,
"updated_by": "someone@example.com",
"table_id": "12a345b6-7890-1cd2-3456-e789f0a12b34"
}

Supprimer une table

Pour afficher la documentation d'utilisation, exécutez databricks unity-catalog tables delete --help.

Bash
databricks unity-catalog tables delete --full-name main.default.mytable

Si l'opération réussit, aucun résultat n'est renvoyé.

Traçabilités

Utilisez la sous-commande unity-catalog lineage pour travailler avec la traçabilité des tables et des colonnes.

Pour afficher la documentation d'utilisation, exécutez databricks unity-catalog lineage --help.

Répertorier la traçabilité d'une table

Pour afficher la documentation d'utilisation, exécutez databricks unity-catalog lineage table --help.

Bash
databricks unity-catalog lineage table --table-name main.default.mytable \
--level 1

Répertorier la traçabilité d'une colonne

Pour afficher la documentation d'utilisation, exécutez databricks unity-catalog lineage column --help.

Bash
databricks unity-catalog lineage column --table-name main.default.mytable \
--column-name id

Autorisations

Utilisez la sous-commande unity-catalog permissions pour gérer les autorisations des objets sécurisables. Voir aussi Gérer les privilèges dans Unity Catalog.

Pour afficher la documentation d'utilisation, exécutez databricks unity-catalog permissions --help.

Obtenez des informations sur les autorisations d'un objet sécurisable

Pour afficher la documentation d'utilisation, exécutez databricks unity-catalog permissions get --help. Voir aussi référence des privilèges Unity Catalog.

Catalogue

Bash
databricks unity-catalog permissions get --catalog main

Résultat :

JSON
{
"privilege_assignments": [
{
"principal": "account users",
"privileges": ["USE CATALOG"]
}
]
}

Schéma

Bash
databricks unity-catalog permissions get --schema main.default

Résultat :

JSON
{
"privilege_assignments": [
{
"principal": "account users",
"privileges": ["USE SCHEMA"]
}
]
}

Table

Bash
databricks unity-catalog permissions get --table main.default.mytable

Résultat :

JSON
{
"privilege_assignments": [
{
"principal": "account users",
"privileges": ["SELECT"]
}
]
}

Identifiant de stockage

Bash
databricks unity-catalog permissions get --storage-credential my-storage-root-credential

Résultat :

JSON
{
"privilege_assignments": [
{
"principal": "account users",
"privileges": ["READ_FILES"]
}
]
}

Emplacement externe

Bash
databricks unity-catalog permissions get --external-location my-external-location

Résultat :

JSON
{
"privilege_assignments": [
{
"principal": "account users",
"privileges": ["READ_FILES"]
}
]
}

Mettre à jour les autorisations d'un objet sécurisable

Pour afficher la documentation d'utilisation, exécutez databricks unity-catalog permissions update --help. Voir aussi référence des privilèges Unity Catalog.

Catalogue

Bash
databricks unity-catalog permissions update --catalog \
--json-file update-catalog-permissions.json

update-catalog-permissions.json:

JSON
{
"changes": [
{
"principal": "account users",
"add": ["USE CATALOG"],
"remove": ["CREATE SCHEMA"]
}
]
}

Schéma

Bash
databricks unity-catalog permissions update --schema \
--json-file update-schema-permissions.json

update-schema-permissions.json:

JSON
{
"changes": [
{
"principal": "account users",
"add": ["USE SCHEMA"],
"remove": ["CREATE TABLE"]
},
{
"principal": "admin team",
"add": ["CREATE TABLE"]
}
]
}

Table

Bash
databricks unity-catalog permissions update --table \
--json-file update-table-permissions.json

update-table-permissions.json:

JSON
{
"changes": [
{
"principal": "account users",
"add": ["SELECT"],
"remove": ["MODIFY"]
},
{
"principal": "admin team",
"add": ["ALL"]
}
]
}

Identifiant de stockage

Bash
databricks unity-catalog permissions update --storage-credential \
--json-file update-storage-credential-permissions.json

update-storage-credential-permissions.json:

JSON
{
"changes": [
{
"principal": "account users",
"remove": ["READ FILES"]
},
{
"principal": "storage team",
"add": ["READ FILES", "WRITE FILES", "CREATE EXTERNAL TABLE"]
},
{
"principal": "admin team",
"add": ["ALL"]
}
]
}

Emplacement externe

Bash
databricks unity-catalog permissions update --external-location \
--json-file update-external-location-permissions.json

update-external-location-permissions.json:

JSON
{
"changes": [
{
"principal": "account users",
"remove": ["READ FILES"]
},
{
"principal": "storage team",
"add": ["READ FILES", "WRITE FILES", "CREATE EXTERNAL TABLE"]
},
{
"principal": "admin team",
"add": ["ALL"]
}
]
}

Partages

Utilisez la sous-commande unity-catalog shares pour travailler avec des partages, qui sont des objets contenant des collections de tables dans un métastore Unity Catalog compatible OpenSharing que vous souhaitez partager en groupe avec des destinataires OpenSharing. Un partage ne peut contenir des tables que d’un seul métastore. Consultez Créer des partages pour OpenSharing.

Pour afficher la documentation d'utilisation, exécutez databricks unity-catalog shares --help.

Créer un partage

Pour afficher la documentation d'utilisation, exécutez databricks unity-catalog shares create --help. Voir aussi Créer des partages pour OpenSharing.

Bash
databricks unity-catalog shares create --name my-share

Résultat :

JSON
{
"name": "my-share",
"created_at": 1656433327533,
"created_by": "someone@example.com",
"owner": "someone@example.com"
}

Mettre à jour les paramètres d’un partage

Pour afficher la documentation d'utilisation, exécutez databricks unity-catalog shares update --help. Voir aussi Mettre à jour les partages.

Ajouter une table à un partage

Bash
databricks unity-catalog shares update --name my-share \
--add-table main.default.mytable

Résultat :

JSON
{
"name": "my-share",
"objects": [
{
"name": "main.default.mytable",
"data_object_type": "TABLE",
"added_at": 1656434168847,
"added_by": "someone@example.com",
"shared_as": "default.mytable",
"cdf_enabled": false
}
],
"created_at": 1656433327533,
"created_by": "someone@example.com",
"owner": "someone@example.com"
}

Voir aussi Ajouter des tables à un partage.

Supprimer une table d'un partage

Bash
databricks unity-catalog shares update --name my-share \
--remove-table main.default.mytable

Résultat :

JSON
{
"name": "my-share",
"created_at": 1656433327533,
"created_by": "someone@example.com",
"owner": "someone@example.com"
}

Voir aussi Ajouter des tables à un partage.

Mettre à jour les autorisations d'un partage

Pour afficher la documentation d'utilisation, exécutez databricks unity-catalog shares update-permissions --help. Voir aussi Gérer l'accès aux partages de données OpenSharing (pour les fournisseurs).

Bash
databricks unity-catalog shares update-permissions --name my-share \
--json-file update-share-permissions.json

update-share-permissions.json:

JSON
{
"privilege_assignments": [
{
"principal": "my-recipient",
"privileges": ["SELECT"]
}
]
}

Lister les partages disponibles

Pour afficher la documentation d'utilisation, exécutez databricks unity-catalog shares list --help. Voir aussi Afficher les partages et les détails des partages.

Bash
databricks unity-catalog shares list

Résultat :

JSON
{
"shares": [
{
"name": "my-share",
"created_at": 1656433327533,
"created_by": "someone@example.com",
"owner": "someone@example.com"
},
{
"...": "..."
}
]
}

Obtenir des informations sur un partage

Pour afficher la documentation d'utilisation, exécutez databricks unity-catalog shares get --help. Voir aussi Afficher les partages et les détails des partages.

Bash
databricks unity-catalog shares get --name my-share

Résultat :

JSON
{
"name": "my-share",
"created_at": 1656433327533,
"created_by": "someone@example.com",
"owner": "someone@example.com"
}

Lister les autorisations d'un partage

Pour afficher la documentation d'utilisation, exécutez databricks unity-catalog shares list-permissions --help. Voir aussi Afficher les destinataires qui ont des autorisations sur un partage.

Bash
databricks unity-catalog shares list-permissions --name my-share

Résultat :

JSON
{
"privilege_assignments": [
{
"principal": "my-recipient",
"privileges": ["SELECT"]
}
]
}

Supprimer un partage

Pour afficher la documentation d'utilisation, exécutez databricks unity-catalog shares delete --help. Voir aussi Supprimer les partages.

Bash
databricks unity-catalog shares delete --name my-share

Si l'opération réussit, aucun résultat n'est renvoyé.

Destinataires

Utilisez la sous-commande unity-catalog recipients pour travailler avec les destinataires de données pour les métastores Unity Catalog compatibles OpenSharing. Les destinataires de données sont des personnes ou des groupes avec lesquels un utilisateur Databricks partage des données en dehors de l'organisation de l'utilisateur Databricks. Consultez Créer des destinataires de données pour OpenSharing (partage Databricks-to-Databricks).

Pour afficher la documentation d'utilisation, exécutez databricks unity-catalog recipients --help.

Créer un destinataire

Pour afficher la documentation d'utilisation, exécutez databricks unity-catalog recipients create --help. Voir aussi Créer des destinataires de données pour OpenSharing (partage Databricks-to-Databricks).

Pour générer une nouvelle URL d’activation pour un destinataire, exécutez databricks unity-catalog recipients rotate-token. Pour un exemple, consultez Changer le jeton d'un destinataire.

Bash
databricks unity-catalog recipients create --name my-recipient

Résultat :

JSON
{
"name": "my-recipient",
"created_at": 1656435288003,
"created_by": "someone@example.com",
"tokens": [
{
"id": "12a345b6-7890-1cd2-3456-e789f0a12b34",
"created_at": 1656435288005,
"created_by": "someone@example.com",
"activation_url": "https://example.com/delta_sharing/retrieve_config.html?<unique-id>",
"expiration_time": 1656521688006,
"updated_at": 1656435288006,
"updated_by": "someone@example.com"
}
],
"authentication_type": "TOKEN",
"updated_at": 1656435288003,
"updated_by": "someone@example.com",
"owner": "someone@example.com"
}

Modifier les paramètres d'un destinataire

Pour afficher la documentation d'utilisation, exécutez databricks unity-catalog recipients update --help.

Bash
databricks unity-catalog recipients update --name my-recipient \
--json-file update-recipient-settings.json

update-recipient-settings.json:

JSON
{
"name": "my-recipient-2"
}

Résultat :

JSON
{
"name": "my-recipient-2",
"created_at": 1656435288003,
"created_by": "someone@example.com",
"tokens": [
{
"id": "12a345b6-7890-1cd2-3456-e789f0a12b34",
"created_at": 1656435288005,
"created_by": "someone@example.com",
"expiration_time": 1656436808507,
"updated_at": 1656435908507,
"updated_by": "someone@example.com"
},
{
"id": "12a345b6-7890-1cd2-3456-e789f0a12b34",
"created_at": 1656435908509,
"created_by": "someone@example.com",
"activation_url": "https://example.com/delta_sharing/retrieve_config.html?<unique-id>",
"expiration_time": 1656522308510,
"updated_at": 1656435908510,
"updated_by": "someone@example.com"
}
],
"authentication_type": "TOKEN",
"updated_at": 1656436740986,
"updated_by": "someone@example.com",
"owner": "someone@example.com"
}

Changer le jeton d'un destinataire

Pour afficher la documentation d'utilisation, exécutez databricks unity-catalog recipients rotate-token --help. Voir aussi Gérer les jetons de destinataire.

Bash
databricks unity-catalog recipients rotate-token --name my-recipient \
--existing-token-expire-in-seconds 900

Résultat :

JSON
{
"name": "my-recipient",
"created_at": 1656435288003,
"created_by": "someone@example.com",
"tokens": [
{
"id": "12a345b6-7890-1cd2-3456-e789f0a12b34",
"created_at": 1656435288005,
"created_by": "someone@example.com",
"expiration_time": 1656436808507,
"updated_at": 1656435908507,
"updated_by": "someone@example.com"
},
{
"id": "12a345b6-7890-1cd2-3456-e789f0a12b34",
"created_at": 1656435908509,
"created_by": "someone@example.com",
"activation_url": "https://example.com/delta_sharing/retrieve_config.html?<unique-id>",
"expiration_time": 1656522308510,
"updated_at": 1656435908510,
"updated_by": "someone@example.com"
}
],
"authentication_type": "TOKEN",
"updated_at": 1656435288003,
"updated_by": "someone@example.com",
"owner": "someone@example.com"
}

Répertorier les destinataires disponibles

Pour afficher la documentation d'utilisation, exécutez databricks unity-catalog recipients list --help. Voir aussi Afficher les destinataires.

Bash
databricks unity-catalog recipients list

Résultat :

JSON
{
"recipients": [
{
"name": "my-recipient",
"created_at": 1656435288003,
"created_by": "someone@example.com",
"tokens": [
{
"id": "12a345b6-7890-1cd2-3456-e789f0a12b34",
"created_at": 1656435288005,
"created_by": "someone@example.com",
"activation_url": "https://example.com/delta_sharing/retrieve_config.html?<unique-id>",
"expiration_time": 1656521688006,
"updated_at": 1656435288006,
"updated_by": "someone@example.com"
}
],
"authentication_type": "TOKEN",
"updated_at": 1656435288003,
"updated_by": "someone@example.com",
"owner": "someone@example.com"
}
]
}

Répertorier les autorisations de partage d’un destinataire

Pour afficher la documentation d'utilisation, exécutez databricks unity-catalog recipients list-permissions --help. Voir aussi Afficher les autorisations de partage d'un destinataire.

Bash
databricks unity-catalog recipients list-permissions --name my-recipient

Résultat :

JSON
{
"permissions_out": [
{
"share_name": "my-share",
"privilege_assignments": [
{
"privileges": ["SELECT"]
}
]
}
]
}

Obtenir des informations sur un destinataire

Pour afficher la documentation d'utilisation, exécutez databricks unity-catalog recipients get --help. Voir aussi Afficher les détails du destinataire.

Bash
databricks unity-catalog recipients get --name my-recipient

Résultat :

JSON
{
"name": "my-recipient",
"created_at": 1656435288003,
"created_by": "someone@example.com",
"tokens": [
{
"id": "12a345b6-7890-1cd2-3456-e789f0a12b34",
"created_at": 1656435288005,
"created_by": "someone@example.com",
"activation_url": "https://example.com/delta_sharing/retrieve_config.html?<unique-id>",
"expiration_time": 1656521688006,
"updated_at": 1656435288006,
"updated_by": "someone@example.com"
}
],
"authentication_type": "TOKEN",
"updated_at": 1656435288003,
"updated_by": "someone@example.com",
"owner": "someone@example.com"
}

Supprimer un destinataire

Pour afficher la documentation d'utilisation, exécutez databricks unity-catalog recipients delete --help. Voir aussi Supprimer un destinataire.

Bash
databricks unity-catalog recipients delete --name my-recipient

Si l'opération réussit, aucun résultat n'est renvoyé.

Fournisseurs

Si vous êtes un destinataire de données partagées OpenSharing, utilisez la sous-commande unity-catalog providers pour travailler avec les fournisseurs de données OpenSharing. Consultez Gérer les fournisseurs OpenSharing pour les destinataires de données.

Pour afficher la documentation d'utilisation, exécutez databricks unity-catalog providers --help.

Créer un fournisseur

Si vous êtes un destinataire de données partagées à l'aide du protocole de partage Databricks-to-Open et que vous utilisez un workspace Databricks attaché à un métastore Unity Catalog, vous pouvez créer un objet fournisseur dans votre métastore Unity Catalog. Vous pouvez ensuite gérer l'accès aux données partagées à l'aide de Unity Catalog.

important

Ce scénario est rare. Si vous utilisez un workspace Databricks activé pour Unity Catalog et qu'un autre client Databricks partage des données avec vous, il devrait utiliser le partage Databricks-to-Databricks. Avec le partage Databricks-to-Databricks, des objets fournisseur sont créés pour vous dans Unity Catalog.

Pour créer un fournisseur, vous devez :

Exécutez la commande suivante, en remplaçant my-provider par le nom que vous souhaitez donner au fournisseur et config.share par le chemin d’accès à votre fichier d’identifiants download, nommé config.share par default.

Bash
databricks unity-catalog providers create --name my-provider  \
--recipient-profile-json-file config.share

Mettre à jour les paramètres d’un fournisseur

Pour afficher la documentation d'utilisation, exécutez databricks unity-catalog providers update --help.

Bash
databricks unity-catalog providers update --name my-provider \
--new-name my-provider-2

Lister les fournisseurs disponibles

Pour afficher la documentation d'utilisation, exécutez databricks unity-catalog providers list --help.

Bash
databricks unity-catalog providers list

Obtenir des informations sur un fournisseur

Pour afficher la documentation d'utilisation, exécutez databricks unity-catalog providers get --help.

Bash
databricks unity-catalog providers get --name my-provider

Lister les partages disponibles d'un fournisseur

Pour afficher la documentation d'utilisation, exécutez databricks unity-catalog providers list-shares --help.

Bash
databricks unity-catalog providers list-shares --name my-provider

Supprimer un fournisseur

Pour afficher la documentation d'utilisation, exécutez databricks unity-catalog providers delete --help.

Bash
databricks unity-catalog providers delete --name my-provider

Si l'opération réussit, aucun résultat n'est renvoyé.

Sur cette page