Remarque
L’accès à cette page nécessite une autorisation. Vous pouvez essayer de vous connecter ou de modifier des répertoires.
L’accès à cette page nécessite une autorisation. Vous pouvez essayer de modifier des répertoires.
S’applique à :
Databricks SQL
Modifie les métadonnées associées à l’affichage.
Vous permet d’effectuer l’une des actions suivantes :
- Ajoutez une planification pour actualiser une vue matérialisée existante.
- Modifiez une planification d’actualisation existante pour une vue matérialisée.
- Supprimez la planification d’actualisation pour une vue matérialisée. Si la planification est supprimée, l'objet doit être actualisé manuellement pour refléter les dernières données.
Pour ajouter ou modifier un commentaire sur une vue matérialisée, utilisez COMMENT ON.
Remarque
La modification d’un jeu de données créé par un pipeline d'une manière qui contredit la définition SQL peut entraîner l'annulation de certains changements. Consultez Utilisation ALTER de commandes avec des pipelines déclaratifs Spark Lakeflow.
Syntaxe
ALTER MATERIALIZED VIEW view_name
{
{ ADD | ALTER } schedule |
DROP SCHEDULE |
ALTER COLUMN column_clause |
SET ROW FILTER clause |
DROP ROW FILTER |
SET TAGS clause |
UNSET TAGS clause }
schedule
{ SCHEDULE [ REFRESH ] schedule_clause |
TRIGGER ON UPDATE [ AT MOST EVERY trigger_interval ] }
schedule_clause
{ EVERY number { HOUR | HOURS | DAY | DAYS | WEEK | WEEKS } |
CRON cron_string [ AT TIME ZONE timezone_id ] }
column_clause
column_identifier
{ COMMENT clause |
SET MASK clause |
DROP MASK |
SET TAGS clause |
UNSET TAGS clause }
Paramètres
-
Nom de la vue matérialisée pour modifier la définition de. Le nom ne doit pas inclure une spécification temporelle.
horaire
Ajoutez ou modifiez une
SCHEDULETRIGGERinstruction sur la vue matérialisée.Remarque
Vous ne pouvez pas modifier la planification d’une vue matérialisée créée avec les pipelines déclaratifs Spark Lakeflow avec cette commande. Utilisez l’éditeur de pipeline.
SCHEDULE [ REFRESH ] schedule_clauseEVERY number { HOUR | HOURS | DAY | DAYS | WEEK | WEEKS }Pour planifier une actualisation qui se produit régulièrement, utilisez
EVERYla syntaxe. SiEVERYla syntaxe est spécifiée, la table de diffusion en continu ou la vue matérialisée est actualisée régulièrement à l’intervalle spécifié en fonction de la valeur fournie, telle queHOUR, , ,HOURS,DAYDAYSWEEKou .WEEKSLe tableau suivant répertorie les valeurs entières acceptées pournumber.Unité de temps Valeur entière HOUR or HOURS1 <= H <= 72 DAY or DAYS1 <= D <= 31 WEEK or WEEKS1 <= W <= 8 Remarque
Les formes singulières et plurielles de l’unité de temps incluse sont sémantiquement équivalentes.
CRON cron_string [ AT TIME ZONE timezone_id ]Pour planifier une actualisation à l’aide d’une valeur cron de quartz. Les time_zone_values valides sont acceptées. La fonction
AT TIME ZONE LOCALn'est pas prise en charge.Si
AT TIME ZONEest absent, le fuseau horaire de session est utilisé. SiAT TIME ZONEest absent et que le fuseau horaire de session n’est pas défini, une erreur est générée.SCHEDULEest équivalent sémantiquement àSCHEDULE REFRESH.
TRIGGER ON UPDATE [ AT MOST EVERY trigger_interval ]Important
La
TRIGGER ON UPDATEfonctionnalité est en version bêta.Définit la vue matérialisée à actualiser lorsqu’une source de données en amont est mise à jour, au plus une fois par minute. Définissez une valeur pour
AT MOST EVERYexiger au moins une durée minimale entre les actualisations.Les sources de données en amont doivent être des tables Delta externes ou gérées (y compris des vues matérialisées ou des tables de diffusion en continu) ou des vues managées dont les dépendances sont limitées aux types de tables pris en charge.
L’activation des événements de fichier peut rendre les déclencheurs plus performants et augmenter certaines des limites des mises à jour du déclencheur.
Il
trigger_intervals’agit d’une instruction INTERVAL qui est d’au moins 1 minute.TRIGGER ON UPDATEprésente les limitations suivantes- Pas plus de 10 sources de données en amont par vue matérialisée avec TRIGGER ON UPDATE.
- Un maximum de 1 000 tables de diffusion en continu ou de vues matérialisées peut être spécifié avec TRIGGER ON UPDATE.
- La
AT MOST EVERYclause est par défaut de 1 minute et ne peut pas être inférieure à 1 minute.
DROP SCHEDULESupprime un programme de la vue matérialisée.
ALTER COLUMN clauseVoir la clause ALTERCOLUMN.
-
Important
Cette fonctionnalité est disponible en préversion publique.
Ajoute une fonction de filtre de ligne à la vue matérialisée. Toutes les requêtes suivantes dans la vue matérialisée reçoivent un sous-ensemble des lignes où la fonction prend la valeur booléenne
TRUE. Cela peut être utile à des fins de contrôle d’accès plus précis, où la fonction peut inspecter l’identité et/ou l’appartenance à un groupe de l’utilisateur appelant afin de décider s’il convient de filtrer certaines lignes.Les filtres de lignes ajoutés après la création se propagent uniquement aux tables en aval après la prochaine mise à jour. Pour les pipelines continus, cela nécessite un redémarrage du pipeline.
DROP ROW FILTERImportant
Cette fonctionnalité est disponible en préversion publique.
Supprime le filtre de ligne de la vue matérialisée, le cas échéant. Les requêtes futures retourneront toutes les lignes de la table sans aucun filtrage automatique.
SET TAGS ( { tag_name = tag_value } [, ...] )Important
Cette fonctionnalité est disponible en préversion publique.
Appliquez des balises à la vue matérialisée. Vous devez avoir
APPLY TAGl’autorisation d’ajouter des balises à la vue matérialisée.tag_nameUn
STRINGlittéral. Iltag_namedoit être unique dans la vue matérialisée ou dans la colonne.tag_valueUn
STRINGlittéral.
UNSET TAGS ( tag_name [, ...] )Important
Cette fonctionnalité est disponible en préversion publique.
Supprimez les balises de la vue matérialisée. Vous devez avoir
APPLY TAGl’autorisation de supprimer des balises de la vue matérialisée.tag_nameUn
STRINGlittéral. Iltag_namedoit être unique dans la vue matérialisée ou dans la colonne.
ALTER COLUMN clause
Important
Cette fonctionnalité est disponible en préversion publique.
Modifie une propriété ou l’emplacement d’une colonne.
Syntaxe
ALTER COLUMN
column_identifier
{ COMMENT comment |
SET MASK mask_clause |
DROP MASK |
SET TAGS clause |
UNSET TAGS clause }
Paramètres
-
Nom de la colonne à modifier.
COMMENT commentModifie la description de la colonne
column_name.commentdoit être un littéralSTRING.SETClause MASKPermet d’ajouter une fonction de masque de colonne pour anonymiser les données sensibles. Toutes les requêtes suivantes de cette colonne recevront le résultat de l’évaluation de cette fonction sur la colonne à la place de la valeur d’origine de la colonne. Cela peut être utile à des fins de contrôle d’accès plus précis, où la fonction peut inspecter l’identité ou l’appartenance à un groupe de l’utilisateur appelant afin de décider s’il convient de modifier la valeur.
Les masques de colonne ajoutés après la création se propagent uniquement aux tables en aval après la prochaine mise à jour. Pour les pipelines continus, cela nécessite un redémarrage du pipeline.
DROP MASKPermet de supprimer le masque de colonne pour celle-si, le cas échéant. Les futures requêtes de cette colonne recevront les valeurs d’origine de la colonne.
SET TAGS ( { tag_name = tag_value } [, ...] )Appliquer des balises à la colonne. Vous devez disposer d’une autorisation
APPLY TAGpour ajouter des balises à la colonne.tag_name
Un
STRINGlittéral. Letag_namedoit être unique dans la colonne ou la table.tag_value
Un
STRINGlittéral.
UNSET TAGS ( tag_name [, ...] )Supprimez les balises données de la colonne. Vous devez disposer d’une autorisation
APPLY TAGpour supprimer des balises de la colonne.tag_name
Un
STRINGlittéral. Letag_namedoit être unique dans la colonne ou la table.
Exemples
-- Adds a schedule to refresh the materialized view whenever its upstream data gets updated.
> ALTER MATERIALIZED VIEW my_mv
ADD TRIGGER ON UPDATE;
-- Alters the schedule to refresh the materialized view when its upstream data
-- gets updated, and make sure the update frequency is no more than 1 update
-- per hour.
> ALTER MATERIALIZED VIEW my_mv
ALTER TRIGGER ON UPDATE AT MOST EVERY INTERVAL 1 hour;
-- Alters the schedule to run every two hours for a materialized view
> ALTER MATERIALIZED VIEW my_mv
ALTER SCHEDULE EVERY 2 HOURS;
-- Alters the schedule to refresh a materialized view once a day
-- at midnight in Los Angeles
> ALTER MATERIALIZED VIEW my_mv
ALTER SCHEDULE CRON '0 0 0 * * ? *' AT TIME ZONE 'America/Los_Angeles';
-- Drops the schedule for a materialized view
> ALTER MATERIALIZED VIEW my_mv
DROP SCHEDULE;
-- Adds a column comment
> ALTER MATERIALIZED VIEW my_mv
ALTER COLUMN my_column_name COMMENT 'test'