Données : 12 façons de faire l’impossible avec l’ETL DataStudio

Après ETL : 10 raisons de choisir DataStudio, cet article a pour but de mettre en lumière ce qu’on peut faire rapidement de pratique et concret avec l’ETL DataStudio. Économique, simple et fiable !

Flux de données

1. Contrôles quotidiens pour le service compta/facturation
2. Intégrez des fichiers dans une base
3. Chargez des fichiers dans une base dès qu’ils sont déposés dans un dossier
4. Reprise de données et migration
5. Chargez les données d’une table dès que des données y sont insérées
6. Construire des interfaces entre applications
7. Synchronisation d’un site web avec les bases de production
8. Qualité des données : vérifiez votre base de donnée de production
9. Qualité des données : vérifiez techniquement votre Infocentre
10. Automatisez le passage des statistiques
11. Basculez les commentaires sur les objets Oracle d’une base à une autre
12. Créez dynamiquement des vues sur l’ensemble des tables d’une base

1. Contrôles quotidiens pour le service compta/facturation

Problématique : le service facturation souhaite pointer les données de gestion non basculées en comptabilité, les rejets de paiement, les factures non imprimées, les bordereaux de gestion non expédiés

Gérer : Pour avoir un système souple et qui répond au maximum de demande, on va élaborer un système qui permet de rajouter et modifier dans un fichier Excel les requêtes à exécuter.

Solution : On va mettre en place un traitement DataStudio exécuté tous les matins. Ce traitement va :

  • prendre en entrée un fichier Excel avec une liste de requête qu’on envoie à un groupe
  • lire une table qui associe une liste d’email à un groupe
  • envoyer des fichiers Excels résultats aux groupes indiqués

Retour sommaire

2. Intégrez des fichiers dans une base

Problématique : Vous recevez soudainement un fichier à intégrer dans une base Oracle, à faire dans la demi-journée en cours.

Gérer : Intégrer le fichier est une chose, pouvoir le ré-intégrer facilement est un atout indispensable : d’une part le fichier peut à tout moment être modifié par le service qui le fournit (qui se rend par exemple compte qu’il a fournit des données incorrectes qu’il doit corriger), d’autre part vous devrez peut-être très rapidement intégrer le fichier de façon périodique.

Solution :

  1. Rajouter le fichier Excel comme DataObject dans DataStudio.
  2. Écrire un traitement (job) pour l’intégrer

Retour sommaire

3. Chargez des fichiers dans une base dès qu’ils sont déposés dans un dossier

Problématique : 1 fournisseur vous livre des fichiers à des dates changeantes. Vous devez charger ces fichiers qui ont toujours le même format lorsqu’ils arrivent.
Gérer : cas typique de la puissance que donne un ETL par rapport à un développement spécifique qui serait assez complexe à développer, maintenir et stabiliser.
Solution : 1 petit traitement avec 1 Datastudio qu’on va laisser en mémoire, va scanner par intervalle ce dossier pour charger automatiquement les fichiers lorsqu’ils sont déposés.
Retour sommaire

4. Reprise de données et migration

Problématique : Vous devez basculer les données de la comptabilité d’une application A vers une application B, A étant de surcroit sous SQL SERVER et B sous Oracle.

Gérer : Ce genre de traitement demande une connaissance fonctionnelle des bases A et B. Le développement sous DataStudio permettra de se concentrer sur le coté fonctionnel et base de donnée.

Solution : Une Datazone pour l’application A, une Datazone pour l’application B, un traitement de reprise des données.
Retour sommaire

5. Chargez les données d’une table dès que des données y sont insérées

Problématique : Pour alimenter un DataWarehouse, une base de donnée source met à disposition, dans un schéma Oracle spécifique toutes les données qui sont insérées et modifiées (par un trigger Oracle).
Vous devez au fil de l’eau, récupérer ces données pour alimenter votre DataWarehouse.

Gérer :  Vous allez scanner, à intervalle de temps régulier, les tables du schéma spécifique de la base de donnée source et alimenter votre DataWarehouse

Solution : Datastudio permet grâce à l’exécution d’une fonction dans un traitement de rester en attente jusqu’à ce que le résultat d’une requête SQL renvoie un résultat.
Il suffira dès que cette fonction se déclenche de récupérer les données, les insérer dans le DataWarehouse et les supprimer de la table du schéma spécifique de la base source.

Retour sommaire

6. Construire des interfaces entre applications

Problématique : besoin de basculer automatiquement les données de l’application de gestion dans la base de comptabilité ?
Gérer : le développement dans un langage spécifique est inapproprié. On a besoin de travailler la donnée dans son langage et dans son environnement, c’est à dire le plus proche possible du SQL dans la base utilisée (Oracle, SQL SERVER, ..).
Solution : tout un travail pour le DataStudio qui permettra facilement d' »encapsuler » le traitement avec : gestion des erreurs et des exceptions, reprise à froid, logs des traitements, mails de suivis.. !
Retour sommaire

7. Synchronisation d’un site web avec les bases de production

Problématique : certaines données des applications de production doivent être envoyées vers le site web.

Gérer : le site web ne doit pas se connecter directement sur les applications critiques de production pour cloisonner les données

Solution : un processus DataStudio va lire les données de production à récupérer et les envoyer vers le site web
Retour sommaire

8. Qualité des données : vérifiez votre base de donnée de production

Problématique : en travaillant sur la base principale de votre application, vous avez découvert :

  • des doublons dans certaines tables
  • des liens d’intégrité fonctionnelle non respectés (patients sans médecin)
  • un champ date d’entrée pas toujours renseigné alors qu’il devrait toujours l’être

Gérer : Ayant détecté ces problèmes, vous les avez remontés pour qu’ils soient corrigés. Néanmoins la correction peut prendre du temps : vous remontez par exemple les erreurs à un chef de projet qui doit ensuite faire réaliser la correction à l’éditeur du progiciel, et des régressions peuvent survenir n’importe quand alors que vous croyez le problème résolu.

Solution : collectez automatiquement et régulièrement des données à tester pour mesurer l’évolution des corrections. Vos requêtes de tests seront dans un fichier Excel et votre fichier Excel résultat vous indiquera pour chaque requête s’il existe encore un problème et pour combien de cas, et combien de cas ont été relevés lors du précédent test.
Un traitement DataStudio permettra de lire le fichier Excel avec les requêtes et d’envoyer par mail le fichier Excel résultat.
Retour sommaire

9. Qualité des données : vérifiez techniquement votre Infocentre

Problématique : Existe-t-il sur votre base Infocentre :

  • des identifiants techniques NULL alors qu’ils devraient toujours être renseignés ?
  • des tables vides ?
  • des colonnes vides ?
  • des colonnes à NULL au lieu de 0 ?
  • des champs dates qui ne correspondent pas à votre norme de nommage (devant par exemple se terminer par _DAT) ?

Gérer : Soyez proactif sur ce genre de problème, dont la multiplication peut finir par semer le doute chez les utilisateurs sur la qualité des données.
Solution : un traitement DataStudio qui va scanner régulièrement votre base pour en analyser la structure afin de pouvoir corriger en amont.
Retour sommaire

10. Automatisez le passage des statistiques

Problématique : régulièrement, 1 problème de performance vous amènera à découvrir que le problème vient simplement… de statistiques non passées par le dba ou pas passées à la bonne fréquence.

Gérer : dès la conception de traitements massifs sur des bases de donnée, de la même manière qu’on doit se soucier des index, il faut penser à passer les statistiques.

Solution : quelques minutes suffisent à automatiser vos statistiques avec Datastudio.
Retour sommaire

11. Basculez les commentaires sur les objets Oracle d’une base à une autre

Problématique : Les bases de données doivent être, autant que possible, auto-documentées.

Gérer : Une manière de gérer les commentaires sur les objets d’une base Oracle est de toujours les positionner sur la base de développement et de les reporter ensuite, grâce à un traitement DataStudio, d’environnement en environnement jusqu’à la production.

Solution :

  1. On crée dans DataStudio une datazone pour chaque environnement (développement et production par exemple)
  2. On écrit un traitement qui se connecte sur une Datazone source, récupère les commentaires et les reporte sur la Datazone cible.

Retour sommaire

12. Créez dynamiquement des vues sur l’ensemble des tables d’une base

Problématique : vous vous devez travailler sur un produit éditeur ayant une « base Oracle » qui ne respecte aucunement les normes Oracle :

  • nom de tables et de colonnes en minuscule
  • accents dans les noms de tables et de colonnes
  • utilisation de mots-clés réservés
  • formats de date timestamp UNIX

Cette base est quasiment inutilisable par les différents utilisateurs et outils base de données (Business Objects, TOAD, QlickView, …)
Gérer : On va créer un autre schéma Oracle sur la même base. Ce schéma va recevoir un ensemble de vues générées dans DataStudio correspondant aux tables du schéma principal mais avec des noms normalisés.
Solution : un traitement DataStudio va créer de façon dynamique des vues sur chaque table tout en les normalisant au format Oracle (enlever les accents, faire un petit dictionnaire de donnée pour remplacer les mots-clés réservés Oracle par d’autres noms, mettre les objets en majuscule, ..). Ce traitement devra tourner régulièrement pour prendre en compte les modifications éventuelles du schéma principal.
Retour sommaire
Ne ratez pas les prochaines articles de CubeConseil.
Abonnez-vous à la newsletter :

YTo4OntzOjk6IndpZGdldF9pZCI7czoyMDoid3lzaWphLW5sLTEzNjI0OTkxMjkiO3M6NToibGlzdHMiO2E6MTp7aTowO3M6MToiMSI7fXM6MTA6Imxpc3RzX25hbWUiO2E6MTp7aToxO3M6MTk6Imxpc3RlIGFib25uw6lzIGJsb2ciO31zOjEyOiJhdXRvcmVnaXN0ZXIiO3M6MTc6Im5vdF9hdXRvX3JlZ2lzdGVyIjtzOjEyOiJsYWJlbHN3aXRoaW4iO3M6MTM6ImxhYmVsc193aXRoaW4iO3M6Njoic3VibWl0IjtzOjEzOiJKZSBtJ2Fib25uZSAhIjtzOjc6InN1Y2Nlc3MiO3M6NzI6IlbDqXJpZmlleiB2b3RyZSBib8OudGUgZGUgcsOpY2VwdGlvbiBhZmluIGRlIGNvbmZpcm1lciB2b3RyZSBhYm9ubmVtZW50LiI7czoxMjoiY3VzdG9tZmllbGRzIjthOjE6e3M6NToiZW1haWwiO2E6MTp7czo1OiJsYWJlbCI7czo1OiJFbWFpbCI7fX19

 

Laisser un commentaire

Votre adresse de messagerie ne sera pas publiée. Les champs obligatoires sont indiqués avec *