Echangez des données avec SQL Azure

24 janvier 2012

imageMicrosoft organise un LiveMeeting sur SQL Azure avec pour thème :

le partage des données avec vos partenaires/clients/fournisseurs.

Le sujet m’intéresse car j’ai passé quelques années dans une boite dont c’était un des sujets : l’échange de données avec ses partenaires.

Dans ce domaine, Azure (et SQL Azure) a un rôle à jouer, notamment en terme de provisioning et de paiement à l’usage.

C’est gratuit et public et on s’inscrit avec le lien ci-dessous :

https://msevents.microsoft.com/CUI/EventDetail.aspx?EventID=1032504141&Culture=fr-FR

En fonction de la session, de mes disponibilités ou de mon inspiration, je ferai un billet pour vous en faire un retour… ou pas.

Paramétrer à l’exécution le logging des packages parent et enfant

24 janvier 2012

–merci à Stéphane de mon équipe qui a pris le temps de troubleshooter le problème remonté par un lecteur et surtout d’en faire une KB–

Introduction

Un package parent appelle un package enfant. Chacun déclare son LogProvider avec sa configuration. La configuration du package enfant est récupérée dans le package Parent.

Etant donné que l’initialisation du logging SSIS s’effectue avant les événements de validation et de chargement de la configuration, comment peut-on faire pour paramétrer à l’exécution le provider utilisé par le logging parent et enfant évidemment ?

Situation

Soit un package « parent.dtsx » qui appelle via une tâche « Execute package Task » un package « child.dtsx ».

clip_image001clip_image002

Nous souhaitons logguer les événements parents et enfants dans un fichier définit à l’exécution.

Solution

Pour faire court, il ne faut pas mettre les Log Provider au design-time mais à l’exécution via une option de DTExec (ou du SQL Agent, c’est pareil). Par contre, la chaine de connexion du log doit exister dans le package.

Configuration des packages

Désactiver le logging du package parent et des packages enfants (Menu SSIS > Logging)

Dans le package parent, ajouter un gestionnaire de connexion (Connection Manager) correspondant au type de log souhaité : File Connection pour logguer dans un fichier, OLEDB connection pour logguer dans une base de données, etc.

Dans notre exemple, le File Connection Manager « logging.txt » est ajouté. Il sera la destination de nos logs.

clip_image004

Une variable nommée « loggingVar » est ajoutée dans le namespace du package parent.

clip_image005

Dans les propriétés du connection manager logging.txt, une expression est créée mappant la propriété « connection string » du connection manager vers la variable loggingVar.

clip_image006

Exécution

L’exécution du package se fait avec la commande dtexec standard en ajoutant le flag de logging et en précisant son provider.

 dtexec /f parent.dtsx /L "DTS.LogProviderTextFile;logging.txt" /SET \package.Variables["User::loggingVar"].Value;parent_and_child.log 

Dans cet exemple, le log est placé dans le fichier “parent_and_child.log” situé dans le même répertoire que le package parent.

La commande correspond à :

  • /f: le package (du système de fichier) à exécuter : parent.dtsx
  • /L : active le logging. L’argument suivant détermine le provider et le Connection Manager utilisé pour le logging séparé par un point-virgule. Dans notre exemple, il s’agit du provider pour fichier DTS.LogProviderTextFile et du Connection Manager logging.txt.
  • /SET : pour affecter une variable de package. La variable affectée est loggingVar.

L’affectation de la variable par le SET se fait avant l’initialisation du logging dans ce cas. Le Connection Manager est bien affecté au fichier parent_and_child.log, puis le logging s’initialise sur le provider fichier texte sur le Connection Manager.

Le LogProvider fourni à DTExec est bien transmis aux enfants.

Le fichier de log obtenu est le suivant :

clip_image008

Pour logguer dans une base de données, il faut changer le connection manager « logging.txt » par un connection manager de type adéquat (oledb connection manager, par exemple) et changer dans la commande dtexec le provider par DTS.LogProviderSQLServer.

Encore une fois, tous les honneurs à Stéphane.

Les nouveautés SSIS dans SQL Server 2012 : le webcast

23 janvier 2012

Et voila, après plus d’un mois, la vidéo de ma session SSIS 2012 avec Thomas aux Journées SQL Server est enfin en ligne .

http://www.microsoft.com/fr-fr/showcase/details.aspx?uuid=637027bd-4a9b-4f4b-b7e4-faab17894ed3

image

Merci à Hugues de ne pas avoir renoncé !

Mes sessions aux TechDays

19 janvier 2012

Les liens sur le site TechDays ne sont pas encore tous dispo; je mettrai l’article à jour dès que ce sera en ligne.
Pensez à liker les sessions sur Facebook.

01_logo02_dates03_speaker04_palaisdescongres

Data Explorer : Self-Service ETP (Extract-Transform-Publish)
DAT205 – jeudi 9 février à 11h00

Mon dada (poney) du moment. Une session de présentation de ce nouveau produit actuellement en beta avec pas mal de démo pour construire un mashup ambitieux en live.

Le pitch officiel :

Open Data, Azure Data Market, Data-as-a-Service, etc. Des données, partout des données. Avec Data Explorer, tirez parti au maximum de ces données en créant des mashup de données publiques, en enrichissant vos données métiers, en publiant des data feeds…
Découvrez ce puissant outil cloud-based pour façonner en quelques clics des données et les rendre disponibles dans PowerPivot, Azure ou Report Builder.
Cette session sera agrémentée de démonstrations sur la version la plus aboutie de la solution !

Les experts SQL Server
DAT202 – mardi 7 février à 17h30

Pas moins de 14 experts SQL Server sur scène. Des personnes du support Microsoft, des consultants, des indépendants…

Venez nous coller sur des sujets techniques (ou pas), pas de limite dans les questions !

La sécurité avec SQL Server
jour et heure en cours de confirmation

Comme l’année dernière, je vais parler sécurité de la plate-forme SQL Server avec un point spécial sur les nouveautés 2012.

Le pitch :

Venez découvrir tous les enjeux de la sécurité avec SQL Server 2012. Nous aborderons les bonnes pratiques et la méthodologie pour sécuriser vos bases de données. Nous entrerons dans le détail de certains points techniques comme par exemple l’AUDIT ou le chiffrement.
Cette session sera aussi l’occasion de voir les nouveautés de la version 2012 en matière de sécurité.

SQL Server et les développeurs
RDA207 – mardi 7 février à 13h00

Pitch :

Une base de données, pourquoi faire ? Le SQL, c’est quoi ce langage ? Un DBA, ça sert à quoi ?
Cette session est là pour démystifier la base de données du point de vue des développeurs. Au programme : des bonnes pratiques, de la méthodologie, quelques tips techniques… De quoi rapprocher les développeurs et les DBA.

Reporting Services en 2012
DAT212 – mardi 7 février à 11h00

Pitch :

Reporting Services est encore en 2012 une plate-forme privilégiée pour le reporting de masse et le reporting ad-hoc.
Nous ferons un tour d’horizon des fonctionnalités majeures apparues dans les dernières versions mais aussi celles qui font leur apparition en 2012 comme Azure Reporting ou le End-User Alerting (alertes utilisateurs).

Egalement, les autres sessions d’AZEO :

Enfin, vous pourrez retrouver tout les experts AZEO au stand 76 dans le village BDD et Infrastructure

Je naviguerai entre le stand AZEO, le stand SQL où je serai Ask-The-Expert (ATE) pour répondre aux questions SQL Server et un peu au stand du GUSS (le groupe utilisateur SQL Server)

Merci aux track owners de la confiance qu’ils me portent pour assurer ces sessions.

Data Explorer 101

18 janvier 2012

Je parle de Data Explorer depuis quelques articles mais sans rentrer dans le dur : une démo.

L’objectif de cet article est de vous proposer un tutorial pour démarrer, un one-o-one comme dit dans le jargon.

Avant de commencer

Il vous faut un accès à Data Explorer. La beta est publique mais il faut quand même une invitation. Ca se passe ici :  https://dataexplorer-signup.sqlazurelabs.com/

Vous pouvez aussi commencer avec la version on-premices : télécharger Data Explorer

En premier lieu, choisir la source

C’est simple, il suffit de piocher dans les types de sources disponibles. On retrouve les classiques (fichiers, SQL, web, etc.). Je détaillerai dans d’autres articles les sources un peu exotiques. Là on va faire simple, on va prendre un CSV.

image

On choisit donc notre source en cliquant sur Import File.

image

Un peu de vocabulaire et de bases :

  1. en haut à gauche, c’est le mashup, l’équivalent d’un package en ETL (retenez le, c’est là que vous faites Ctrl+S)
  2. dans la colonne de gauche, ce sont les ressources. On peut les comparer à des flux (Data Flow Task pour les SSIS-guys) mais c’est plus “compliqué” que cela, j’y reviendrai dans d’autres articles
    l’icone en forme d’oeil à côté indique si la ressource (ie. le flux) est visible, c’est à dire s’il sera publié, ou s’il est purement interne
  3. Tâches de la ressource : c’est un fil d’Ariane qui montre l’enchainement des tâches à appliquer sur le flux de données (comme des composants de DFT)
  4. Tools : c’est votre Toolbox où vous choisissez les tâches à ajouter dans la ressource
  5. Formule : toute tâche peut s’écrire avec une formule à la Excel. Vous noterez ici que lire un fichier se fait avec la méthode Embedded.Content().
  6. Configuration de la tâche : si vous ne connaissez pas la syntaxe des tâches, vous pouvez utiliser le panneau de configuration de la tâche

Ajouter des transformations

Nous avons notre source CSV dans la ressource qui s’appelle Musees (c’est la liste des musées de France). Appliquons maintenant des transformations pour exploiter cette source. Dans l’ordre, nous allons :

  • typer la source en CSV
  • déclarer la première ligne comme entête des colonnes
  • filtrer des lignes
  • supprimer des colonnes

Typage de la source

image

Il suffit juste de cliquer sur la tâche CSV dans la toolbox.

Déclaration des entêtes

image

On promeut la première ligne comme entête de colonnes

Filtrer les lignes

On ne veut que les musés ouverts (donc colonne ferme=NON).

image

On verra dans d’autres articles la notion de type; ici on considère le champ comme du texte (Text.Type) donc attention à la casse. Pour sécuriser, on aurait pu utiliser la fonction Text.Upper()

Supprimer des colonnes

La colonne “ferme” ne nous sert plus à rien donc on va la supprimer (masquer) du flux.

image

Vous devez avoir un flux qui ressemble à cela :

image

Note : vous pouvez renommer les tâches pour donner un peu plus de sens (documentez !)

Publication

Il nous reste à publier le flux pour une exploitation (PowerPivot, SSRS, etc.).

La première chose est de sauvegarder (en haut à gauche) et de revenir sur votre workspace (en haut à droite).

image

Clic-droit –> Publish, simple non ? Vous avez aussi un bouton Publish en bas et les options de publication.

image

Une fois publié, vous avez accès à une page contenant tous les liens d’accès aux données (OData, Excel, CSV, etc.).

image

Et voila.

Bon mashup !

Philosophie autour de Data Explorer : find the pony in your data

16 janvier 2012

imageIl y a quelques temps, lors d’une discussion BI, nous nous sommes interrogés mon interlocuteur et moi sur ce sujet : comment trouver des événements exceptionnels dans nos données ?

Événements exceptionnels ? J’entends par là des patterns dans les faits ou des faits suffisamment particuliers (ou hors-normes) pour avoir un “intérêt” métier. On peut appeler cela anomalies, cas aux limites, intuition, etc.

Tous les SI contiennent une masse impressionnante de données et je milite depuis toujours pour construire des projets décisionnels et de les exploiter.

Mais bien souvent lors de la modélisation, le réflexe est d’assainir les données, en ne prenant que le plus simple finalement. Cette simplification arrondit les angles et en conséquence rabote les événements exceptionnels.

Ce n’est pas par laxisme évidemment ; c’est parce que c’est le chemin le plus court (et donc celui qui rentre dans le budget) pour obtenir des résultats exploitables par le client et évidemment des résultats corrects, qui est un prérequis en BI.

Il y a une expression anglaise qui dit : “find the pony”. Je n’ai pas trouvé d’expression équivalente dans la langue française mais on pourrait la traduire par “trouver la pépite

On est tous d’accord que chercher cette pépite dans nos données est une tâche compliquée voire impossible quand la volumétrie s’exprime en To.

Comment le trouver ce poney ?
(non on ne va pas voir Bonjour Poney Florent)

La première piste est de trouver un outil qui va nous aider dans la recherche, c’est le propos du Data Mining. (NDM : j’ai failli mettre méthodologie au lieu d’outil – le débat est ouvert).
Soit, cet outil se base sur une logique humaine (si on considère que les dataminers sont humains) et le résultat doit être interprété par un œil humain (pour les algos de pure découverte).

La réflexion porte donc sur la capacité du cerveau humain à identifier rapidement des patterns, à détecter en un clin d’œil une anomalie ou tout simplement à imaginer des associations.
C’est le propre de l’homme et certains en font leur métier ; c’est le cas des artistes ou des marketeux (évidemment, dans le lot, certains sont talentueux).image

Donc imaginons que tout le monde soit "data miner", imaginons que des services entiers (marketing par exemple1) scrutent les données dans tous les sens.

 

Quelle force de frappe on aurait !

Eh bien, c’est un des aspects de la BI en Self-Service et de l’ouverture des données (OData par exemple). Cause ou conséquence, la poule ou l’œuf ?
En tout cas ces 2 courants, simples buzz il y a quelques années (note : je n’ai pas cru à OData en 2008 Triste), sont maintenant une réalité.

L’idée n’est pas d’avoir un outil magique qui trouverait tout seul mais donner accès massivement aux utilisateurs et de les laisser fouiller en libre accès. Ainsi on bénéficie d’un nombre important de cerveaux humains prêt à jouer avec les données dans tous les sens.

L’armée mexicaine en quelque sorte.

Armée mexicaine

 

Mais concrètement, ils doivent faire quoi mes utilisateurs ?

Evidemment, il faut quand même des outils car vous vous doutez bien que les utilisateurs ne vont pas écrire des SELECT *.

Là interviennent des outils comme PowerPivot et Data Explorer. Le premier est très mature et se concentre sur le croisement des données. Le second, encore en beta, va permettre de créer des mashup et de faire du traitement de données (nettoyage, consolidation, reformatage, etc.).

Leur point commun est que l’utilisateur est autonome dans sa relation avec les données dès l’instant où il y a accès.

Je reviendrais un peu plus sur Data Explorer dans les prochains posts et évidemment, je vous recommande ma session aux TechDays avec plein de démos.

Allez les utilisateurs, on fait chauffer les neurones et on augmente la maturité BI de sa boite.

 

1 j’ai une grande admiration pour les métiers du marketing, c’est pourquoi je les “chalenge” un peu. Il n’y a pas de mauvais esprit ou un contentieux à régler Tire la langue

Comprendre Biztalk en 6 minutes

16 janvier 2012

Hugues Moore, un collègue d’AZEO, expert Biztalk a réalisé une vidéo très didactique sur Biztalk.

C’est court, simple et assez exhaustif sur les fonctionnalités de Biztalk. En plus, c’est presque métro-style.

C’est sur son blog que ça se passe
image

Tous les webcasts des Journées SQL Server

6 janvier 2012

Une seule URL à retenir :

http://www.microsoft.com/france/serveur/sql/journees-sql-server.aspx

Mais si vous cherchez un sujet en particulier :

Keynotes

Keynote 1 – Communauté, SQL Server 2012 Webcast
Keynote 2 – Appliances, Data Explorer Webcast

Business Intelligence

La BI avec SQL Server 2012 Webcast
Décider entre Tabular ou Multidimensional pour un projet Analysis Services Webcast
Power View, Powerpivot : voir ses données autrement Webcast
ColumnStore Index : une nouvelle façon d’indexer vos Datawarehouse Webcast
Modélisation dimensionnelle : le fondement du datawarehouse Webcast
Les nouveautés SSIS dans SQL Server 2012

Webcast

MDS & DQS : données d’entreprise Webcast

SQL

Réussir sa migration vers SQL 2008 R2 ou SQL Server 2012 Webcast
Nouveaux évènements étendus dans SQL Server 2012 Webcast
SQL Server : ses fonctionnalités méconnues, donc indispensables Webcast
Optimisation et Troubleshooting SQL Server Webcast
AlwaysOn et les groupes de disponibilité dans SQL Server 2012 Webcast
Contraintes et performances Webcast
La Sécurité dans SQL Server et les nouveautés de la version 2012 Webcast
Serveurs Core, virtualisation : technologie d’avenir, choix technique délibéré ou effet de mode Webcast
SQL Server 2012 au-delà du relationnel Webcast
Trucs et astuces pour réussir des déploiements de Réplication de grande taille en entreprise Webcast

Divers

Industrialisation du développement SQL Server avec Visual Studio et TFS, présent et futur Webcast
SQL Server & Sharepoint : le couple de l’année Webcast
Introduction de SQL Azure Webcast

Appliances

Présentation des Appliances HP/Microsoft Webcast
Fast Track et Parallel Data Warehouse (PDW) Webcast
Database Consolidation Appliance (DBC) Webcast

A noter : il y a eu un mélange pour le webcast SSIS. La correction va avoir lieu prochainement et je mettrai la page à jour.

Les journées SQL Server, c’est 30h de vidéos

17 décembre 2011

Vous ne saviez pas quoi faire ce week-end ? Les webcasts des Journées SQL Server commencent à être mis en ligne.

Au total, c’est plus de 30h de sessions techniques à voir et à revoir.

Les keynotes :

Quelques autres sessions :

A l’heure de ce post, il n’y a que 16 vidéos en ligne. Les 11 autres devraient arriver sur le site ShowCase.

Je ferai un post avec la liste complète et d’autres posts plus spécialisés pour mes sessions ou le parcours BI.

Restez connectés !

Merci la communauté SQL

15 décembre 2011

Comme on dit au SQL PASS Summit :

“This is community”

image

Merci à vous tous d’avoir participé aux Journées SQL Server.

Cet événement a été un réel succès avec 310 participants. Pour rappel, les Journées SQL Server c’était :

  • 2 jours de conférences SQL gratuites
  • 25 sessions dont la plupart techniques (voire très techniques)
  • 27 speakers (MVP, MCM, Partenaires, Microsoft)
  • 14 sponsors
  • 2 keynotes
  • des annonces (Data Explorer, CTP Hadoop sur Azure, annonces SQL Azure)
  • un passage de Bruno Aziza, World Wide Marketing Director SQL chez Microsoft

IMG_0033

La communauté, c’est nous+vous. Cet événement marque d’une pierre blanche le partage et l’échange entre les utilisateurs, les acteurs, les éditeurs, etc. ; la communauté SQL est en marche.

Continuons sur cette voie et partageons autour de SQL Server !

Pour ceux qui n’ont pas pu venir, qui ont manqué une session ou qui veulent tout simplement en revoir une, nous allons publier l’ensemble du contenu dans les jours/semaines qui arrivent
Les webcasts de l’intégralité des sessions seront disponible dès la fin de la semaine !

Evidemment, vous aurez tous les liens sur ce blog ou sur le site du GUSS.


Suivre

Get every new post delivered to your Inbox.

Joignez-vous à 198 followers