Catégories :

DDL de pipeline de données

ALTER STREAM

Modifie les propriétés, les colonnes ou les contraintes d’un flux existant.

Voir aussi :

CREATE STREAM , DROP STREAM , SHOW STREAMS , DESCRIBE STREAM

Dans ce chapitre :

Syntaxe

ALTER STREAM [ IF EXISTS ] <name> SET
  [ APPEND_ONLY = TRUE | FALSE ]
  [ INSERT_ONLY = TRUE ]
  [ TAG <tag_key> = '<tag_value>' [ , <tag_key> = '<tag_value>' ... ] ]
  [ COMMENT = '<string_literal>' ]

ALTER STREAM [ IF EXISTS ] <name> SET TAG <tag_name> = '<tag_value>' [ , <tag_name> = '<tag_value>' ... ]

ALTER STREAM <name> UNSET TAG <tag_name> [ , <tag_name> ... ]

ALTER STREAM [ IF EXISTS ] <name> UNSET COMMENT

Paramètres

nom

Identificateur du flux à modifier. Si l’identificateur contient des espaces ou des caractères spéciaux, toute la chaîne doit être délimitée par des guillemets doubles. Les identificateurs entre guillemets doubles sont également sensibles à la casse.

SET ...

Spécifie les propriétés à définir pour le flux :

APPEND_ONLY = TRUE | FALSE

Uniquement pris en charge pour les flux sur les tables standards ou les flux sur les vues qui interrogent uniquement les tables standards. Spécifie s’il s’agit d’un flux d’ajout uniquement. Les flux d’ajout uniquement suivent uniquement les insertions de ligne. Les opérations de mise à jour et de suppression (y compris les troncations de table) ne sont pas enregistrées. Par exemple, si 10 lignes sont insérées dans une table et que 5 de ces lignes sont supprimées avant que le décalage pour un flux d’ajout uniquement soit avancé, le flux enregistre 10 lignes.

Ce type de flux améliore les performances des requêtes par rapport aux flux standard et est très utile pour l’extraction, le chargement et la transformation (ELT), et pour des scénarios similaires qui dépendent exclusivement des insertions de ligne.

Un flux standard joint les lignes supprimées et insérées dans l’ensemble de modifications pour déterminer quelles lignes ont été supprimées et lesquelles ont été mises à jour. Un flux d’ajout uniquement renvoie les lignes ajoutées uniquement et peut donc être beaucoup plus performant qu’un flux standard. Par exemple, la table source peut être tronquée immédiatement après la consommation des lignes d’un flux d’ajout uniquement, et les suppressions d’enregistrement ne contribuent pas à la surcharge la prochaine fois que le flux est interrogé ou consommé.

Note

  • Si APPEND_ONLY et INSERT_ONLY sont tous deux non définis ou définis sur FALSE, le flux est un flux standard (delta).

  • Soit APPEND_ONLY soit INSERT_ONLY peut être défini sur TRUE sur un flux, mais pas les deux. Le type de flux peut être modifié à tout moment.

INSERT_ONLY = TRUE | FALSE

Pris en charge sur les tables externes uniquement. Spécifie s’il s’agit d’un flux à insertion uniquement. Les flux à insertion uniquement suivent uniquement les insertions de lignes ; ils n’enregistrent pas les opérations de suppression qui suppriment des lignes d’un ensemble inséré (c’est-à-dire sans opération). Par exemple, entre deux décalages, si le fichier1 est supprimé de l’emplacement de stockage Cloud référencé par la table externe et que le fichier2 est ajouté, le flux renvoie les enregistrements pour les lignes du fichier2 uniquement. Contrairement au suivi des données CDC pour les tables standard, Snowflake ne peut pas accéder aux enregistrements historiques des fichiers stockés dans le Cloud.

Note

  • Si APPEND_ONLY et INSERT_ONLY sont tous deux non définis ou définis sur FALSE, le flux est un flux standard (delta).

  • Soit APPEND_ONLY soit INSERT_ONLY peut être défini sur TRUE sur un flux, mais pas les deux. Le type de flux peut être modifié à tout moment.

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.

COMMENT = 'chaîne'

Ajoute un commentaire ou écrase un commentaire existant pour le flux.

UNSET ...

Spécifie un(e) ou plusieurs paramètres/propriétés à désactiver pour le flux, ce qui les réinitialise à leurs valeurs par défaut :

  • APPEND_ONLY

  • INSERT_ONLY

  • TAG clé_balise [ , clé_balise ... ]

  • COMMENT

Notes sur l’utilisation

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

Ajouter un commentaire pour un flux :

ALTER STREAM mystream SET COMMENT = 'New comment for stream';
Revenir au début