Contexte et support
Afin d'obtenir des retours d'usages de la part de nos utilisateurs, nous offrons pour certaines fonctionnalités la capacité de les tester avant leur sortie, en préversion (preview). Ces préversions peuvent être publiques (disponibles pour tous les clients) ou privées (nécessitant une demande particulière à votre Account Manager pour intégrer le programme de test).
La chaîne de support pour ces versions non définitives peut être différente du support pour les autres fonctionnalités de la plateforme : vous serez généralement en lien direct avec le Product Manager en charge de la fonctionnalité, qui pourra vous apporter des éléments sur le cadre du test, notamment les limitations actuelles ou les prérequis liés à la préversion.
Attention ! Les préversions sont par définition non terminées. Elles ont subi nettement moins de tests que les versions finales et peuvent être incomplètes en terme de périmètre fonctionnel. Il est déconseillé de les utiliser sur des workspaces de production.
Dans tous les cas, veuillez vous rapprocher de votre Account Manager si vous souhaitez tester des fonctionnalités en préversion, afin que nous puissions vous accompagner au mieux dans cette expérience.
Activation des fonctionnalités en préversion sur le connecteur Desktop
Concernant les connecteurs, les fonctionnalités en préversions sont testables sur la version Desktop. Pour la connexion à l'API DataGalaxy, il est conseillé de paramétrer le connecteur sur un workspace bac à sable, afin de ne pas risquer d'impacter votre workspace de production.
L'activation des fonctionnalités en préversion sur le connecteur Desktop s'effectue par la mise en place d'une variable d'environnement sur le système sur lequel le connecteur est exécuté. Il s'agit de la variable DATAGALAXY_CONNECTOR_FEATURES qui pourra contenir plusieurs codes de fonctionnalités séparés par des virgules.
Une manière simple de paramétrer cette variable d'environnement est d'utiliser les scripts de lancement du connecteur, qui se trouvent dans le dossier script de votre package connecteur Destkop. Il suffit alors d'ajouter une ligne pour paramétrer la variable avec une liste de valeurs. Cette ligne doit être positionnée juste avant la commande Java de lancement du connecteur Desktop. Une fois le script modifié, il vous suffit de le lancer pour démarrer le connecteur avec les fonctionnalités préversion activées. Par sécurité, plutôt que de modifier le script directement, il est préférable de le dupliquer dans un nouveau fichier (avec un suffixe -preview par exemple) afin de pouvoir facilement revenir en arrière en cas de problème.
Exemple pour le script datagalaxy-ui-connector.bat (connecteur Desktop en mode graphique sous Windows)
Ajouter la ligne suivante : set DATAGALAXY_CONNECTOR_FEATURES=urn,enable-governance-features

Fonctionnalités préversion actuellement disponibles
Suivi de la qualité des données Snowflake avec les Data Metric Functions (DMF), code "syncdmf"
Les Data Metric Functions sont une nouvelle fonctionnalité de Snowflake Enterprise permettant de planifier le calcul de métriques sur des tables Snowflake et de stocker les résultats dans une table fournie par Snowflake. C'est une méthode rapide de mise en place d'un système d'observabilité sur Snowflake pour des cas d'usages simples de suivi de la qualité des données.
Attention : la fonctionnalité d'intégration des DMF n'est pas encore compatible avec le mode URN. Vous pouvez avoir toutes les fonctionnalités préversion activées dans votre variable d'environnement, mais il ne faudra pas activer le mode URN dans le connecteur si vous souhaitez tester les DMF.
Avant tout, découvrez le fonctionnement des DMF sur cette documentation Snowflake. Vous pourrez alors créer vos DMF, les associer à vos tables et planifier leur exécution.
Configuration Snowflake
Une fois que vous avez mis en place vos DMF sur Snowflake et que les métriques remontent automatiquement dans la table de résultat, vous n'êtes plus qu'à une étape de remonter ces informations dans DataGalaxy grâce à notre module de Data Quality : il suffit de configurer les seuils qui, pour une règle donnée, permettront de traduire la valeur de la métrique en un statut OK, Warning, KO.
Pour cela, deux objets seront à créer dans Snowflake : une table de seuils (ci-dessous DMF_THRESHOLDS) et une vue de statuts (ci-dessous DMF_STATUS) permettant de faire la jointure entre la table de seuils et la table des résultats de métriques Snowflake. Il est conseillé de créer un schéma dédié DataGalaxy pour ces objets.
Création et alimentation de la table DMF_THRESHOLDS (valeurs de seuil proposées à titre d'exemple) :
-- Create the thresholds table
CREATE OR REPLACE TABLE PUBLIC.DMF_THRESHOLDS (
dmf_ref_id VARCHAR(36) NOT NULL,
low_threshold INT,
high_threshold INT,
status VARCHAR(20)
);
INSERT INTO PUBLIC.DMF_THRESHOLDS (dmf_ref_id, low_threshold, high_threshold, status)
VALUES
('1bde6306-541d-40dc-ab6c-db5a4bb417e1', 0, 1, 'PASSED'),
('1bde6306-541d-40dc-ab6c-db5a4bb417e1', 2, 10, 'WARNING'),
('1bde6306-541d-40dc-ab6c-db5a4bb417e1', 11, 1000, 'FAILED');Le GUID dmf_ref_id n'est pas une valeur au hasard : il s'agit du GUID attribué par Snowflake lorsque vous associez la DMF à votre table, que vous trouverez dans la colonne REF_ID de la vue SNOWFLAKE.ACCOUNT_USAGE.DATA_METRIC_FUNCTION_REFERENCES.
Création de la vue DMF_STATUS :
-- Create DMF_STATUS getting last 5 DMF results for each reference_id
CREATE OR REPLACE VIEW PUBLIC.DMF_STATUS AS
WITH Last5Values AS (
SELECT
reference_id,
METRIC_NAME,
METRIC_RETURN_TYPE,
VALUE,
TABLE_DATABASE,
TABLE_SCHEMA,
TABLE_NAME,
measurement_time,
ROW_NUMBER() OVER (PARTITION BY reference_id ORDER BY measurement_time DESC) AS row_num
FROM
SNOWFLAKE.LOCAL.DATA_QUALITY_MONITORING_RESULTS
)
SELECT
l.reference_id,
l.METRIC_NAME,
l.METRIC_RETURN_TYPE,
l.VALUE,
l.TABLE_DATABASE,
l.TABLE_SCHEMA,
l.TABLE_NAME,
l.measurement_time,
t.status
FROM
Last5Values l
JOIN
PUBLIC.DMF_THRESHOLDS t
ON
l.reference_id = t.dmf_ref_id
AND l.value BETWEEN t.low_threshold AND t.high_threshold
WHERE
l.row_num <= 5;La valeur 5 que vous voyez dans la définition de la vue est le nombre d'enregistrements de la métrique qui seront exposés par cette vue. Vous pouvez ajuster la valeur à votre convenance. Le connecteur récupérera ensuite l'ensemble des valeurs exposées pour les envoyer à DataGalaxy (ici nous aurons donc maximum 5 valeurs dans DataGalaxy pour une règle et un objet dès le premier lancement du connecteur).
Vous pouvez vérifier que tout est OK avec une requête sur cette vue, qui doit vous remonter les métriques ainsi que leur traduction en statut.
La dernière étape sera d'attribuer au connecteur les droits de lecture sur la vue DMF_STATUS. Une fois ceci fait, vous pouvez passer à la configuration du connecteur.
Configuration du connecteur Snowflake
Le code "syncdmf" permet d'activer la fonctionnalité de suivi de la qualité des données et la remontée des statuts dans DataGalaxy. Ceci fera apparaître la case à cocher de récupération des informations de qualité dans le connecteur. Vous aurez à préciser le chemin de la vue DMF_STATUS que vous aurez créée.
Après exécution du connecteur, les résultats des calculs de métriques, transformés en statuts, se retrouvent dans DataGalaxy au niveau de l'onglet Qualité des objets concernés. Les règles seront créées avec un nom par défaut que vous pourrez changer pour quelque chose de plus explicite pour des utilisateurs non-techniques. Le connecteur se base sur le Code de la règle (qui est le GUID du paragraphe précédent) donc vous pouvez changer tous les paramètres de la règle sans impacter le connecteur, tant que le GUID ne change pas.