Septembre 2022

Les nouvelles fonctionnalités, les changements de comportement et les mises à jour (améliorations, corrections, etc.) suivants ont été introduits ce mois-ci. Si vous avez des questions sur ces ajouts, veuillez contacter le support Snowflake.

Important

Chaque version peut inclure des mises à jour nécessitant l’actualisation de l’interface Web.

En règle générale, pour éviter que ces mises à jour nuisent à votre utilisation, nous vous recommandons d’actualiser l’interface Web après le déploiement de chaque version de Snowflake.

Dans ce chapitre :

Nouvelles fonctionnalités

Prise en charge de la redirection des connexions clients — Disponibilité générale

Avec cette version, nous avons le plaisir d’annoncer la disponibilité générale (GA) de la prise en charge de Rediriger les connexions du client, qui permet de rediriger de manière transparente les connexions des clients entre les comptes Snowflake dans différentes régions et Clouds pour assurer la continuité des activités. La redirection des clients, ainsi que la réplication et le basculement des comptes, permettent de récupérer un compte et des connexions des clients.

La redirection des clients est mise en œuvre par le biais d’un objet de connexion Snowflake, qui représente une URL de connexion qui peut être échouée sur plusieurs comptes. Lorsque les clients Snowflake établissent une connexion avec Snowflake en utilisant l’URL de connexion, Snowflake achemine la demande vers le compte principal.

Si nécessaire, une seule instruction SQL peut mettre à jour l’URL de connexion pour désigner un autre compte comme principal. Toutes les applications clients de Snowflake utilisant l’URL de connexion sont acheminées de manière transparente vers ce nouveau compte principal.

Mises à jour SQL

Commandes ALTER TABLE et ALTER VIEW : ajouter le mot-clé FORCE pour remplacer une politique de masquage sur une colonne dans une seule instruction

Syntaxe

Mot clé

Description

ALTER TABLE <nom> { ALTER | MODIFY } [COLUMN ] <nom_col> SET MASKING POLICY<nom_politique> [ USING ( <nom_col> , cond_col_1 , … ) ] [ FORCE ]

.

ALTER VIEW <nom> { ALTER | MODIFY } [COLUMN ] <nom_col> SET MASKING POLICY<nom_politique> [ USING ( <nom_col> , cond_col_1 , … ) ] [ FORCE ]

FORCE

Remplace une politique de masquage actuellement définie sur une colonne par une politique de masquage différente dans une seule instruction.

Si aucune politique de masquage n’est actuellement définie sur la colonne, la spécification de ce mot-clé n’a aucun effet.

Nouvelles fonctions SQL

La ou les fonctions suivantes sont introduites dans cette version :

Catégorie de fonction

Nouvelle fonction

Description

Fonctions de table

SYSTEM$STREAM_BACKLOG

Renvoie l’ensemble des versions de la table entre le décalage actuel pour un flux spécifié et l’horodatage actuel.

Fonctions de chaîne et fonctions binaires

SOUNDEX_P123

Renvoie une chaîne qui contient une représentation phonétique de la chaîne d’entrée, et conserve le numéro de code Soundex pour la deuxième lettre lorsque la première et la deuxième lettre utilisent le même numéro.

Service d’optimisation de la recherche : prise en charge de la configuration des colonnes, des recherches par sous-chaînes et par expressions régulières, de VARIANT et de GEOGRAPHY — Avant-première

Nous avons le plaisir d’annoncer en avant-première la prise en charge de l’optimisation de la recherche pour des colonnes spécifiques dans une table.

En outre, nous introduisons en avant-première une prise en charge des requêtes avec les types de prédicats suivants dans le service d’optimisation de la recherche :

  • Prédicats qui utilisent des modèles de chaînes (par exemple LIKE, ILIKE, etc.) et des expressions régulières POSIX (par exemple REGEXP).

  • Prédicats qui utilisent les champs des colonnes VARIANT, ARRAY et OBJECT.

  • Prédicats qui utilisent des fonctions géospatiales sélectionnées (requêtes de colonnes GEOGRAPHY).

Vous pouvez activer la prise en charge de ces méthodes pour des colonnes spécifiques et des champs VARIANT dans une table. Par exemple, pour une colonne donnée, vous pouvez activer la prise en charge de l’optimisation des recherches par égalité et par modèle de chaîne.

Cette fonctionnalité est en cours de déploiement dans différentes régions. Pour la liste des régions dans lesquelles cette fonctionnalité est activée, voir Déploiement de la fonctionnalité : Prise en charge du service d’optimisation de la recherche pour la configuration des colonnes, les modèles de chaînes, VARIANT et GEOGRAPHY.

Les fonctionnalités en avant-première sont destinées à des fins d’évaluation et de test et ne sont pas recommandées pour une utilisation en production.

Pour plus d’informations, voir Service d’optimisation de la recherche.

Service d’optimisation de la recherche : prise en charge des jointures

Note

Le déploiement de cette fonctionnalité est temporairement suspendu et n’est encore disponible dans aucune région. Voir Déploiement de fonctionnalité : prise en charge des jointures dans le service d’optimisation de la recherche.

Mises à jour du chargement des données

Snowpipe : prise en charge de la correspondance de modèle — Disponibilité générale

La commande COPY INTO <table> comprend une clause PATTERN qui filtre un ensemble de fichiers en zone de préparation pendant l’opération de chargement à l’aide d’une expression régulière. Avec cette version, nous avons le plaisir d’annoncer la disponibilité générale de la prise en charge de la correspondance de modèle dans Snowpipe pour les charges automatisées et non automatisées.

Pour appliquer la correspondance de modèle dans vos chargements de données Snowpipe, spécifiez la clause PATTERN dans l’instruction COPY INTO <table> lorsque vous créez un canal à l’aide de CREATE PIPE.

Snowflake recommande d’activer le filtrage des événements dans le Cloud afin de réduire les coûts, le bruit des événements et la latence pour Snowpipe. N’utilisez l’option PATTERN que lorsque la fonction de filtrage des événements de votre fournisseur de Cloud n’est pas suffisante. Pour plus d’informations sur la configuration du filtrage des événements pour chaque fournisseur de Cloud, consultez les pages suivantes :

Mises à jour des pipelines de données

Tâches : prise en charge des DAG — Disponibilité générale

Avec cette version, nous avons le plaisir d’annoncer la disponibilité générale des graphes acycliques dirigés (DAG). Un DAG est une série de tâches composée d’une seule tâche racine et de tâches supplémentaires, organisées en fonction de leurs dépendances. Auparavant, les utilisateurs étaient limités aux arborescences de tâches, dans lesquelles chaque tâche avait au maximum une seule tâche prédécesseur (parent). Dans un DAG, chaque tâche non-racine peut avoir des dépendances sur plusieurs tâches prédécesseurs, ainsi que sur plusieurs tâches suivantes (enfants) qui dépendent d’elle.

Depuis la version préliminaire, nous avons ajouté la possibilité de spécifier plusieurs tâches prédécesseurs lors de la création d’une nouvelle tâche (en utilisant CREATE TASK … AFTER) ou ultérieurement (en utilisant ALTER TASK … ADD AFTER).

Tâches sans serveur — Disponibilité générale

Avec cette version, nous avons le plaisir d’introduire la disponibilité générale des tâches sans serveur. Les tâches sans serveur s’appuient sur les ressources informatiques gérées par Snowflake pour l’exécution des tâches, au lieu des ressources informatiques gérées par l’utilisateur (c’est-à-dire les entrepôts virtuels). Snowflake redimensionne et met à l’échelle ces ressources de calcul automatiquement en fonction des besoins de chaque charge de travail, et suspend le service pour une tâche spécifique afin de réduire les coûts.

Tâches : suspendre automatiquement les tâches après des exécutions qui ont échoué

Avec cette version, les propriétaires de tâches peuvent automatiquement suspendre leurs tâches après un nombre déterminé d’exécutions consécutives qui ont échoué. Cette option peut réduire les coûts en suspendant les tâches qui consomment des crédits Snowflake, mais qui ne s’exécutent pas jusqu’à leur terme. Les exécutions de tâches qui ont échoué comprennent les exécutions dans lesquelles le code SQL dans le corps de la tâche produit une erreur de l’utilisateur ou expire. Les exécutions de tâches qui sont ignorées, annulées ou qui échouent en raison d’une erreur système sont considérées comme indéterminées et ne sont pas incluses dans le compte des exécutions de tâches qui ont échoué.

Cette amélioration est mise en œuvre sous la forme d’un nouveau paramètre de tâche, SUSPEND_TASK_AFTER_NUM_FAILURES, qui peut être défini lors de la création d’une tâche (à l’aide de CREATE TASK) ou ultérieurement (à l’aide de ALTER TASK). Le paramètre peut également être défini au niveau du compte, de la base de données et du schéma.

Le paramètre accepte toute valeur 0 entière et supérieure. La valeur par défaut est 0 (pas de suspension automatique). Définissez le paramètre sur une tâche autonome ou la tâche racine dans un graphe acyclique dirigé (DAG) de tâches.

Le paramètre SUSPEND_TASK_AFTER_NUM_FAILURES peut être défini sur une tâche autonome ou sur la tâche racine d’un DAG. Lorsque le paramètre est défini sur une valeur supérieure à 0, le comportement suivant s’applique aux exécutions de la tâche autonome ou dans le DAG :

  • Les tâches autonomes sont automatiquement suspendues après que le nombre spécifié d’exécutions consécutives de la tâche ait échoué ou ait expiré.

  • La tâche racine est automatiquement suspendue après l’échec de toute tâche unique dans un DAG ou expire après le nombre spécifié d’exécutions consécutives.

Ce paramètre s’applique aux tâches qui s’appuient sur des ressources informatiques gérées par Snowflake (c’est-à-dire le modèle de calcul sans serveur) ou sur des ressources informatiques gérées par l’utilisateur (c’est-à-dire un entrepôt virtuel).

Tâches : portée élargie des paramètres des tâches

Avec cette version, vous pouvez définir les paramètres suivants au niveau du compte, de la base de données, du schéma et de la tâche :

Auparavant, ces paramètres ne pouvaient être définis que sur des tâches individuelles.

Pour plus d’informations sur les hiérarchies de paramètres, voir Hiérarchie des paramètres et types. Pour plus d’informations sur les paramètres qui peuvent également être définis aux niveaux du compte, de la base de données et du schéma parents, voir Paramètres d’objet.

Mises à jour de la gouvernance des données

Remplacer une politique de masquage sur une colonne dans une seule instruction

Avec cette version, Snowflake ajoute la possibilité de spécifier le mot-clé FORCE lors du remplacement d’une politique de masquage actuellement définie sur une colonne dans une seule instruction avec une commande ALTER TABLE ou ALTER VIEW. Avant la disponibilité du mot-clé FORCE le remplacement d’une politique de masquage sur une colonne nécessitait deux instructions distinctes :

  1. Annuler la politique existante.

  2. Définir la nouvelle politique.

L’utilisation du mot clé FORCE supprime l’intervalle de temps entre les opérations UNSET et SET afin de garantir que les données de la colonne restent protégées lors du remplacement d’une politique de masquage sur une colonne.

Pour plus de détails, voir :

Classification des données sur GCP — Disponibilité générale

Avec cette version, Snowflake est heureux d’annoncer la disponibilité générale de la Introduction à la classification pour les comptes qui sont en Enterprise Edition (ou supérieurs) sur GCP. Cette fonctionnalité avait déjà fait l’objet d’une disponibilité générale sur Amazon Web Services (AWS) et Microsoft Azure en juin 2022.

La classification permet de catégoriser les données potentiellement personnelles et/ou sensibles stockées dans les tables et les vues Snowflake, qui peuvent ensuite être utilisées pour permettre une variété de cas d’utilisation de gouvernance, partage et confidentialité des données.

Mises à jour de l’interface Web

Prise en charge des rôles secondaires dans les feuilles de calcul Snowsight

Avec cette version, les feuilles de travail Snowsight prennent en charge les rôles secondaires, ce qui signifie que les fonctions de feuilles de calcul suivantes affichent tous les objets pour lesquels les privilèges minimums requis sont disponibles via soit le rôle de la feuille de calcul, soit les rôles secondaires de l’utilisateur actuel :

  • Sélecteur de contexte

  • Navigateur d’objets

  • Suggestions de saisie semi-automatique dans l’éditeur de requêtes