Catégories :

Table, vue et séquence DDL

ALTER MATERIALIZED VIEW

Modifie une vue matérialisée dans le schéma actuel/spécifié. Les actions prises en charge sont les suivantes :

  • Renommer la vue matérialisée.

  • Suspendre et reprendre l’utilisation et la maintenance de la vue matérialisée.

  • Effectuer un clustering de la vue matérialisée.

  • Suspendre et reprendre le reclustering de la vue matérialisée.

  • Suppression du clustering de la vue matérialisée.

Pour plus de détails, voir Travailler avec des vues matérialisées.

Voir aussi :

CREATE MATERIALIZED VIEW , DROP MATERIALIZED VIEW , SHOW MATERIALIZED VIEWS , DESCRIBE MATERIALIZED VIEW

Syntaxe

ALTER MATERIALIZED VIEW <name>
  {
  RENAME TO <new_name>                     |
  CLUSTER BY ( <expr1> [, <expr2> ... ] )  |
  DROP CLUSTERING KEY                      |
  SUSPEND RECLUSTER                        |
  RESUME RECLUSTER                         |
  SUSPEND                                  |
  RESUME                                   |
  SET {
    [ SECURE ]
    [ COMMENT = '<comment>' ]
    }

  SET TAG <tag_name> = '<tag_value>' [ , <tag_name> = '<tag_value>' ... ]

  UNSET TAG <tag_name> [ , <tag_name> ... ]

  UNSET {
    SECURE                              |
    COMMENT
    }

Paramètres

nom

Spécifie l’identificateur de la vue matérialisée à modifier.

RENAME TO nouveau_nom

Cette option vous permet de renommer une vue matérialisée.

Le nouvel identificateur doit être unique pour le schéma dans lequel la vue est créée. Le nouvel identificateur doit commencer par un caractère alphabétique et ne peut pas contenir d’espaces ou de caractères spéciaux à moins que toute la chaîne d’identificateur soit délimitée par des guillemets doubles (p. ex. "My object"). Les identificateurs entre guillemets doubles sont également sensibles à la casse. Pour plus de détails, voir Exigences relatives à l’identificateur.

Notez que le changement de nom d’une vue matérialisée ne met pas à jour les références à cette vue. Par exemple, si vous créez une vue nommée V1 au-dessus d’une vue matérialisée, puis renommez la vue matérialisée, la définition de la vue V1 devient obsolète.

CLUSTER BY expr#

Cette commande effectue un clustering de la vue matérialisée. Le clustering réorganise les lignes de la vue matérialisée pour améliorer les performances des requêtes qui appliquent un filtre en fonction des expressions de la clé de clustering.

L’élément expr# spécifie une expression sur laquelle baser l’opération de clustering de la vue matérialisée. En règle générale, l’expression est le nom d’une colonne dans la vue matérialisée.

Pour plus d’informations sur le clustering des vues matérialisées, voir : Vues matérialisées et clustering. Pour plus d’informations sur le clustering en général, voir : Qu’est-ce que le clustering de données ?.

DROP CLUSTERING KEY

Cette commande détruit le clustering de la vue matérialisée.

L’option SUSPEND RECLUSTER suspend le reclustering de la vue matérialisée. Pour plus d’informations sur le clustering des vues matérialisées, voir Vues matérialisées et clustering.

RESUME RECLUSTER

L’option RESUME RECLUSTER reprend le reclustering de la vue matérialisée.

SUSPEND

L’option SUSPEND suspend la maintenance (mises à jour) et l’utilisation de la vue matérialisée. Lorsque la vue est suspendue, les mises à jour de la table de base ne sont pas propagées dans la vue matérialisée. La vue matérialisée elle-même est également inaccessible ; si vous essayez de l’utiliser, vous recevez un message d’erreur semblable à celui-ci :

Erreur de compilation SQL : échec lors de l’extension de la vue “MV1” : erreur de compilation SQL : la vue matérialisée MV1 n’est pas valide.

Si vous suspendez une vue matérialisée en cluster, la suspension de la vue suspend implicitement le reclustering de cette vue.

RESUME

L’option RESUME vous permet de reprendre l’utilisation de la vue matérialisée. Elle reprend également la maintenance de la vue matérialisée. Si la vue est en cluster, elle reprend également implicitement le reclustering de cette vue.

SET ...

Spécifie la propriété à définir pour la vue matérialisée :

SECURE

Cette option transforme la vue en vue sécurisée. Pour plus d’informations sur les vues sécurisées, voir Utilisation de vues sécurisées.

TAG nom_balise = 'valeur_balise' [ , nom_balise = 'valeur_balise' , ... ]

Spécifie le nom de la balise (c’est-à-dire la clé) et la valeur de la balise.

La valeur de la balise est toujours une chaîne de caractères et le nombre maximum de caractères pour la valeur de la balise est 256. Le nombre maximum de clés de balises uniques pouvant être définies sur un objet est de 20.

Note

Pour une table ou une vue et ses colonnes, le nombre total de clés de balises uniques qui peuvent être définies est 20.

Par exemple, si une colonne unique d’une table a 10 clés de balises uniques définies sur la colonne, Snowflake permet 10 clés de balises uniques supplémentaires à définir soit sur cette colonne, soit sur d’autres colonnes de la table, soit sur la table elle-même, soit sur une combinaison de la table et de ses colonnes. Une fois que la limite de 20 clés de balises uniques est atteinte, aucune clé de balise supplémentaire ne peut être définie sur la table ou ses colonnes.

COMMENT = 'littéral_chaine'

Cette option définit un commentaire pour la vue matérialisée. Le commentaire n’a aucun effet sur le comportement de la vue, mais peut fournir des informations utiles aux personnes qui utilisent ou s’occupent de la maintiennent de cette vue.

UNSET ...

Spécifie la propriété à désactiver pour la vue matérialisée :

  • SECURE

  • TAG nom_balise [ , nom_balise ... ]

  • COMMENT

Notes sur l’utilisation

  • Le déplacement d’une vue matérialisée vers un schéma d’accès géré (utilisant la syntaxe ALTER MATERIALIZEDVIEW … RENAME TO) est interdit sauf si le propriétaire de la vue matérialisée (c’est-à-dire le rôle qui a le privilège OWNERSHIP sur la vue matérialisée) est également propriétaire du schéma cible.

  • Concernant les métadonnées :

    Attention

    Les clients doivent s’assurer qu’aucune donnée personnelle (autre que pour un objet utilisateur), donnée sensible, donnée à exportation contrôlée ou autre donnée réglementée n’est saisie comme métadonnée lors de l’utilisation du service Snowflake. Pour plus d’informations, voir Champs de métadonnées dans Snowflake.

Exemples

Renommer une vue matérialisée :

ALTER MATERIALIZED VIEW table1_MV RENAME TO my_mv;

Effectuer le cluster d’une vue matérialisée :

ALTER MATERIALIZED VIEW my_mv CLUSTER BY(i);

Suspendre le clustering d’une vue matérialisée, mais pas l’utilisation de la vue :

ALTER MATERIALIZED VIEW my_mv SUSPEND RECLUSTER;

Reprendre le clustering d’une vue matérialisée :

ALTER MATERIALIZED VIEW my_mv RESUME RECLUSTER;

Suspendre toute utilisation et maintenance automatique de la vue matérialisée spécifiée :

ALTER MATERIALIZED VIEW my_mv SUSPEND;

Reprendre toute utilisation et maintenance automatique de la vue matérialisée spécifiée :

ALTER MATERIALIZED VIEW my_mv RESUME;

Arrêter d’effectuer le clustering d’une vue matérialisée :

ALTER MATERIALIZED VIEW my_mv DROP CLUSTERING KEY;

Modifier la vue pour en faire une vue sécurisée :

ALTER MATERIALIZED VIEW mv1 SET SECURE;

Ajouter ou remplacer le commentaire pour une vue matérialisée :

ALTER MATERIALIZED VIEW mv1 SET COMMENT = 'Sample view';
Revenir au début