Note
L’accès à cette page nécessite une autorisation. Vous pouvez essayer de vous connecter ou de changer d’annuaire.
L’accès à cette page nécessite une autorisation. Vous pouvez essayer de changer d’annuaire.
S’applique à :
Databricks SQL
Databricks Runtime 10.4 LTS et ultérieur
Unity Catalog uniquement
Ajoute, modifie ou supprime des schémas, des tables ou des vues matérialisées dans ou à partir du partage. Renomme un partage. Transfère la propriété d’un partage à un nouveau principal.
Autorisations requises :
- Pour mettre à jour le propriétaire du partage, vous devez être administrateur de metastore.
- Pour mettre à jour le nom du partage, vous devez disposer du privilège
CREATE SHAREet être propriétaire du partage. - Pour ajouter des tables ou des vues, vous devez être le propriétaire de l’objet de partage, avoir le privilège
USE SCHEMAsur le schéma qui contient la table ou la vue et le privilègeSELECTsur la table ou la vue. Vous devez conserver le privilègeSELECTaussi longtemps que vous souhaitez partager la table ou la vue. - Pour mettre à jour toutes les autres propriétés du partage, vous devez être propriétaire.
Syntaxe
ALTER SHARE share_name
{ alter_add_materialized_view |
REMOVE MATERIALIZED VIEW mat_view_name |
alter_add_table |
REMOVE TABLE table_name |
alter_add_schema |
REMOVE SCHEMA schema_name |
alter_add_view |
REMOVE VIEW view_name |
alter_add_model |
REMOVE MODEL model_name |
RENAME TO to_share_name |
[ SET ] OWNER TO principal }
alter_add_materialized_view
{ { ALTER | ADD } MATERIALIZED VIEW mat_view_name [ COMMENT comment ] [ AS mat_view_share_name ]
alter_add_table
{ { ALTER | ADD } [ TABLE ] table_name [ COMMENT comment ]
[ PARTITION clause ] [ AS table_share_name ]
[ WITH HISTORY | WITHOUT HISTORY ] }
alter_add_schema
{ { ALTER | ADD } SCHEMA schema_name [ COMMENT comment ]
alter_add_view
{ { ALTER | ADD } VIEW view_name [ COMMENT comment ] [ AS view_share_name ]
alter_add_model
{ { ALTER | ADD } MODEL model_name [ COMMENT comment ] [ AS model_share_name ]
Remarque
WITH HISTORY | WITHOUT HISTORY est pris en charge dans
Databricks Runtime 12.2 LTS et versions ultérieures. Databricks Runtime versions 11.1 à 12.0 nécessitent que vous spécifiiez WITH CHANGE DATA FEED [ START VERSION version ] au lieu de WITH HISTORY. Sur Databricks SQL et Databricks Runtime 16.2 et versions ultérieures, WITH HISTORY est la valeur par défaut.
WITH CHANGE DATA FEED est déconseillé.
Notez également que si, en plus d’effectuer des requêtes de voyage dans le temps et des lectures de diffusion en continu, vous souhaitez que vos clients puissent interroger le flux de données de modification d’une table à l’aide de la fonction table_changes(), vous devez activer CDF sur la table avant de le partager WITH HISTORY (ou WITH CHANGE DATA FEED).
Paramètres
-
Nom du partage à modifier.
alter_add_materialized_viewS’applique à :
Databricks SQL
Databricks Runtime 13.3 LTS et ultérieurAjoute une vue matérialisée au partage ou modifie une vue matérialisée partagée existante. Pour exécuter cette instruction, vous devez être le propriétaire du partage et disposer du privilège
SELECTsur la vue matérialisée.ADD MATERIALIZED VIEWmat_view_nameIdentifie la vue matérialisée à modifier. Si la vue matérialisée est introuvable, Azure Databricks génère une erreur TABLE_OR_VIEW_NOT_FOUND.
ALTER MATERIALIZED VIEWmat_view_nameIdentifie la vue matérialisée à modifier. Si la vue matérialisée ne fait pas déjà partie du partage, Azure Databricks génère une erreur.
COMMENT commentUn littéral
STRINGfacultatif attaché à la vue matérialisée de la table en tant que commentaire.-
Affiche éventuellement la vue matérialisée sous un nom différent. Le nom peut être qualifié par un nom de schéma. Si aucun
mat_view_share_namen’est spécifié, la vue matérialisée est connue sous son propre nom.Si le nom de partage existe déjà, Azure Databricks génère une erreur.
REMOVE MATERIALIZED VIEWmat_view_nameS’applique à :
Databricks SQL
Databricks Runtime 13.3 LTS et ultérieurSupprime la vue matérialisée identifiée par
mat_view_nameà partir du partage. Pour exécuter cette instruction, vous devez être le propriétaire du partage.alter_add_tableAjoute une table ou des partitions de table au partage ou modifie une table partagée existante. Pour exécuter cette instruction, vous devez être le propriétaire du partage et disposer du privilège
SELECTsur la table.ADD [ TABLE ]table_nameIdentifie la table à ajouter. La table ne doit pas résider dans Unity Catalog. Si la table est introuvable, Azure Databricks génère une erreur TABLE_OR_VIEW_NOT_FOUND.
ALTER [ TABLE ]table_nameIdentifie la table à modifier. Si la table ne fait pas déjà partie du partage, Azure Databricks génère une erreur.
COMMENT commentUn littéral
STRINGfacultatif attaché au partage de table en tant que commentaire.-
Une ou plusieurs partitions de la table à ajouter. Les clés de partition doivent correspondre au partitionnement de la table et être associées aux valeurs. S’il n’y a pas de
PARTITION clause,ADD TABLEajoute la table entière.Pour partitionner par référence aux propriétés d’un destinataire, utilisez la syntaxe suivante :
PARTITION (column_name = CURRENT_RECIPIENT().<property-key>)Partitionnement par référence aux propriétés du destinataire S’applique à :
Databricks SQL
Databricks Runtime 12.2 LTS et ultérieur. -
Affiche la table sous un nom différent de manière facultative. Le nom peut être qualifié par un nom de base de données (schéma). Si aucun
table_share_namen’est spécifié, la table est connue sous son propre nom. WITH HISTORYouWITHOUT HISTORYS’applique à :
Databricks SQL
Databricks Runtime 12.2 LTS et versions ultérieures.Quand
WITH HISTORYest spécifié, partagez la table avec l’historique complet pour permettre aux destinataires d’effectuer des requêtes de voyage dans le temps. La table partagée peut ensuite être référencée à l’aide de VERSION AS OF et TIMESTAMP AS OF.Si, en plus d’effectuer des requêtes de voyage dans le temps et des lectures de diffusion en continu, vous souhaitez que vos clients puissent interroger le flux de données de modification d’une table à l’aide de la fonction table_changes(), vous devez activer CDF sur la table avant de le partager
WITH HISTORY.Le comportement par défaut sur Databricks SQL et Databricks Runtime 16.2 et versions ultérieures est
WITH HISTORY. Sur Databricks Runtime 16.1 et les versions antérieures, il estWITHOUT HISTORY.
REMOVE TABLEtable_nameSupprime la table identifiée par
table_namedu partage. Pour exécuter cette instruction, vous devez être le propriétaire du partage.alter_add_schemaS’applique à :
Databricks SQL
Databricks Runtime 13.3 LTS et ultérieurAjoute un schéma au partage ou modifie un schéma partagé existant. Pour exécuter cette instruction, vous devez être le propriétaire du partage et du schéma.
ADD SCHEMAschema_nameIdentifie le schéma à ajouter. Si le schéma est introuvable, Azure Databricks génère une erreur SCHEMA_NOT_FOUND.
ALTER SCHEMAschema_nameIdentifie le schéma à modifier. Si le schéma ne fait pas déjà partie du partage, Azure Databricks génère une erreur.
COMMENT commentUn littéral
STRINGfacultatif attaché au partage du schéma en tant que commentaire.
REMOVE SCHEMAschema_nameSupprimer du partage le schéma identifié par
schema_name. Pour exécuter cette instruction, vous devez être le propriétaire du partage.alter_add_viewS’applique à :
Databricks SQL
Databricks Runtime 13.3 LTS et ultérieurAjoute une vue au partage ou modifie une vue partagée existante. Pour exécuter cette instruction, vous devez être le propriétaire du partage et disposer du privilège
SELECTsur la vue.ADD VIEWview_nameIdentifie la vue à modifier. Si la vue est introuvable, Azure Databricks génère une erreur TABLE_OR_VIEW_NOT_FOUND.
ALTER VIEWview_nameIdentifie l’affichage à modifier. Si la vue ne fait pas déjà partie du partage, Azure Databricks génère une erreur.
COMMENT commentUn littéral
STRINGfacultatif attaché à la vue de la table en tant que commentaire.-
Affiche éventuellement la vue sous un nom différent. Le nom peut être qualifié par un nom de schéma. Si aucun
view_share_namen’est spécifié, la vue est connue sous son propre nom.Si le nom de partage existe déjà, Azure Databricks génère une erreur.
REMOVE VIEWview_nameSupprime la vue identifiée par
view_nameà partir du partage. Pour exécuter cette instruction, vous devez être le propriétaire du partage.alter_add_modelS’applique à :
Databricks SQL
Databricks Runtime 14.0 et ultérieurPermet d’ajouter un modèle au partage ou de modifier un modèle partagé existant. Pour exécuter cette instruction, vous devez être le propriétaire du partage et disposer du privilège
EXECUTEsur le modèle.ADD MODELmodel_namePermet d’identifier le modèle à ajouter. Si la plateforme Azure Databricks ne peut pas trouver le modèle, elle génère une erreur RESOURCE_DOES_NOT_EXIST.
ALTER MODELmodel_namePermet d’identifier le modèle à modifier. Si le modèle ne fait pas déjà partie du partage, Azure Databricks génère une erreur.
COMMENT commentUn littéral
STRINGfacultatif attaché au partage de modèles en tant que commentaire.-
Permet d’afficher éventuellement le modèle sous un nom différent. Le nom peut être qualifié par un nom de schéma. Si aucun
model_share_namen’est spécifié, le modèle est connu sous son propre nom.Si le nom de partage existe déjà, Azure Databricks génère une erreur.
REMOVE MODELmodel_namePermet de supprimer le modèle identifié par
model_nameà partir du partage. Pour exécuter cette instruction, vous devez être le propriétaire du partage.RENAME TOto_share_nameS’applique à :
Databricks SQL
Databricks Runtime 11.3 LTS et ultérieurRenomme le partage. Le nom doit être unique parmi tous les partages dans le metastore. Pour exécuter cette instruction, vous devez être le propriétaire du partage et disposer du privilège
CREATE SHAREsur le metastore.[ SET ] OWNER TOprincipalTransfère la propriété du partage à
principal. Pour exécuter cette instruction, vous devez être le propriétaire du partage.S’applique à :
Databricks SQL
Databricks Runtime 11.3 LTS et ultérieurSETest autorisé en tant que mot clé facultatif.
Exemples
-- Creates a share named `some_share`.
> CREATE SHARE some_share;
-- Add a table to the share.
> ALTER SHARE some_share
ADD TABLE my_schema.my_tab
COMMENT 'some comment'
PARTITION(c1_int = 5, c2_date LIKE '2021%')
AS shared_schema.shared_tab;
-- Add a schema to the share.
> ALTER SHARE some_share
ADD SCHEMA some_schema
COMMENT 'some comment';
-- Add a view to the share.
> ALTER SHARE some_share
ADD VIEW my_schema.my_view
COMMENT 'some comment'
AS shared_schema.shared_view;
-- Add a materialized view to the share.
> ALTER SHARE some_share
ADD MATERIALIZED VIEW my_schema.my_mat_view
COMMENT 'some comment'
AS shared_schema.shared_mat_view;
-- Share a table with history
> ALTER SHARE share ADD TABLE table1 WITH HISTORY;
> ALTER SHARE share ADD TABLE table2 WITHOUT HISTORY;
> SHOW ALL IN SHARE share;
Name type ... history_sharing ...
------ ------ ... ----------------
Table1 TABLE ... ENABLED ...
Table2 TABLE ... DISABLED ...
-- Remove the table again
> ALTER SHARE some_share
REMOVE TABLE shared_schema.shared_tab;
-- Remove the schema again
> ALTER SHARE some_share
REMOVE SCHEMA some_schema;
-- Remove a view again
> ALTER SHARE some_share
REMOVE VIEW shared_schema.shared_view;
-- Rename a share
> ALTER SHARE some_share
RENAME TO new_share;
-- Change ownership of the share
> ALTER SHARE some_share
OWNER TO `alf@melmak.et`