Cette année j’ai eu l’opportunité d’assister à mon premier SQL Pass Summit (« First Timmer ») du 15 au 18 Octobre 2013 à Charlotte, NC. Cet évènement a rassemblé 5000 participants de 52 pays différents, avec 190 sessions à l’agenda!
Lors de la première Keynote, la disponibilité de SQL Server 2014 CTP2 a été annoncée par Quentin Clark (Corporate Vice President Data Platform Group, Microsoft Corp). Ce keynote était articulé autour des trois piliers suivants :
Le pilier performance est principalement porté par Hekaton (moteur en mémoire). Hekaton à l’avantage d’être inclus par défaut dans SQL serveur, et fonctionnera parfaitement sur du matériel de commodité. Hekaton pourra être mis en place sans nécessité la réécriture des applications existantes. Le slide ci-dessous résume bien les avantages et les performances apportés par le moteur Hekaton :
SQL 2014 améliore la fonctionnalité de backup dans un stockage Azure, avec la possibilité de réaliser toute l’opération depuis l’interface de SQL Server Management Studio (SSMS). Il y aura aussi la possibilité de protéger le backup en le cryptant.
SQL 2014 permettra d’étendre facilement les architectures existantes en utilisant les machines virtuelles de Windows Azure. Ceci permettra principalement la mise en place de scénarios de haute disponibilité et de reprise d’activité dans des architectures hybrides. Par exemple, SQL 2014 permettra la création d’une solution AlwaysON avec des secondaires dans le Cloud.
Enfin, comme le montre la photo ci-dessous, SQL 2014 supportera la possibilité d’avoir des fichiers de données stockés dans le Cloud.
En fait, Power BI était présent quasiment tout le long de ce Keynote. Il y a bien entendu eu des démos de Power BI via Power View, Power Pivot et Power Q&A, mais la vraie star de Power BI était Power Map. Ce dernier a été souvent utilisé comme support de présentation par les speakers.
En bref, un Keynote intéressant, l’annonce de la CTP2 et une utilisation de Power Map intéressante comme support de présentation.
Le reste de la journée fut riche en sessions de bonnes qualités et de tous niveaux (les sessions vont jusqu’au niveau 500 !). Ah oui, dans les intitulés des sessions, faut faire attention aux sessions avec l’extension HD. Ça veut dire « Half days ». J’ai raté la session sur les indexes car je suis arrivé pour la deuxième partie. C’est balot ! Ayant donc raté la présentation sur les indexes, je me suis rabattu sur la session avec Dandy Weyn et Ari Schorr : « SQL Server 2014 and Shark with Freakin Lasers ». Même si elle était généraliste en reprenant les 3 piliers (Performance, Cloud Hybride et Power BI) et d’un niveau 200, elle avait le mérite d’avoir une mise en scène sympathique impliquant Dr Evil et un requin équipé de Laser. Plutôt ludique et les messages sont bien passés. Ci-dessous une photo un peu floue, mais elle permet de donner un aperçu. Un grand respect à Ari Schorr pour avoir fait les démos dans un déguisement de requin !
Ce Keynote a débuté par une présentation générale du Pass. Ce qui est bien utile en tant que « First Timer ». Ensuite, Davit Dewitt, Technical Fellow Microsoft, a continué le keynote sur Hekaton. Avant de rentrer en session, Christophe Laporte m’avait décrit David Dewitt comme quelqu’un de très brillant avec la capacité d’expliquer simplement les choses compliquées. Je confirme donc que, en tant que speaker, sa réputation n’est pas surfaite, bien au contraire. Hekaton expliqué de manière accessible ! Même si certains passages piquent un peu les yeux, ça reste abordable.
Durant sa présentation, David a expliqué qu’avec la baisse des prix des composants et les performances actuelles des machines, il est de plus en plus fréquent de voir des serveurs avec plusieurs dizaines voir centaines de giga de mémoire vive. Ce qui peut être largement suffisant pour faire tenir certaines tables de bases de données en mémoire (voir même tout une base). L’idée d’Hekaton, en bref, est donc d’utiliser cette mémoire vive pour stocker des tables d’une base de données et de proposer un moteur avec un modèle de verrouillage optimiste.
David a donc comparé les 2 moteurs au niveau des accès aux données
Puis il a comparé les moteurs aux niveaux des accès concurrent
Ainsi qu’au niveau des performances
J’ai bien aimé le slide de synthèse
La présentation complète est disponible en suivant les informations sur la photo ci-dessous
Durant cette présentation, David nous a demandé de Tweeter par rapport au nom que l’on souhaiterait avoir comme nom final du moteur en mémoire :
Voilà donc un petit jeu qui aura de quoi vous occuper….. Les 30 prochaines secondes .
Après ce Keynote, le reste de la journée fut agrémentée de sessions plutôt inégales en qualité. Cependant, je retiendrais particulièrement 3 sessions :
Cette session, de Matt Masson et Wee Hyong Tok, présentait la solution de Power BI permettant la synchronisation des rapports Excel publiés dans SharePoint Online, avec des données se trouvant sur site.
Ci-dessous, le slide présenté durant la session, qui explique le fonctionnement de la passerelle. Je prévois prochainement un article sur ce sujet.
Une session animée par Sanjay Mishra, sur les retours d’expériences de mises en place de solutions de « disaster recovery » (DR). Cette session reprend les bonnes questions à se poser, des plus simples au plus farfelues, avant de mettre en place une solution de DR. Ces questions sont variées comme : « ai-je les bonnes personnes pour mettre en place une solution de DR ? » ou « est-ce que l’on a bien compris nos SLA (Service Level Agrement) ? »
De plus j’ai bien aimé ce slide
Animée par toute l’équipe de Power BI, j’ai été à cette session sous les conseils de Jean-Pierre Rhiel. Et j’ai bien fait. Déjà la session a commencé avec…. Pas de courant !!! Pas évident de projeter et de parler sans micro quand il n’y a pas d’électricité. Une fois le Power, heu pardon, le courant revenu, cette session full Power BI a pu débuter. Et quelle session !!! De la BI en mode déjanté voir limite « déglingos ». On n’a rien appris ça c’est sûr…. Mais ils nous avaient prévenus
Durant cette heure et demie, Power BI nous a servi à :
Et puis, c’était aussi une session de distribution de goodies! J’ai eu la chance de récupérer, grâce à une interception en plein vol, un chargeur de périphérique au format clef USB. Pratique pour recharger un téléphone en fin de journée quand on est loin d’une prise de courant !!!
Le Pass Summit c’est aussi l’occasion de rencontrer de nombreuses personnes passionnées autour d’un même sujet, dans un cadre différent. La soirée a eu lieu au NasCar Hall Of Fame. Ce fut une soirée plutôt sympa, même si je ne suis pas fan de voiture, durant laquelle j’ai eu l’occasion, entre autre, de voir Paul Randal. Ci-dessous quelques photos du Hall Of Fame
Pas de keynote ce jour-là et des sessions qui débutent à 8h. Comme le jour précédent, elles étaient de qualités inégales. Même si ma journée a bien mal commencée avec une session sans grand intérêt, des présentations de grande qualité sur HDInsight, les transactions logs et Power Query ont rattrapé ce faux départ.
Comme d’après le gartner « By 2015,organisations that build a modern information management system will outperform their peers financially by 20% », je me suis dit qu’une petite session sur HDInsight ne ferait pas de mal.
Une session intéressante avec des exemples d’utilisations de données dans le stockage Azure avec HdInsight (Sur un jeu de données des connexions des joueurs sur le jeu Halo 4):
La session sur le Deep Dive de Power Query fut tout simplement superbe et beaucoup de démonstrations. Une présentation qui a été bien plus loin que des slides ! Durant cette session nous avons eu le droit à la présentation de l’utilisation de nombreuses fonctions dont « Table.UnPivotOtherColumns », qui permet d’utiliser la fonction unpivot avec un nombre non déterminé de colonnes !!! Pour rappel, Power quey est téléchargeable ici : http://www.microsoft.com/en-us/download/details.aspx?id=39379.
La dernière soirée s’est déroulée, lors du diner français, dans le restaurant Brazz, où plus d’une dizaine de viandes nous ont été servies à volonté !!
Pour mon premier PASS Summit, ce fut une bonne expérience. Même si, hormis la CTP2 de SQL 2014, aucune annonce majeure n’a été faite, les sessions furent globalement de bonnes qualités et il y avait de quoi contenter tout le monde, aussi bien au niveau du moteur que de la BI. On retiendra principalement des messages importants autour du moteur en mémoire, Power BI et le big data. Sans oublier la dimension Cloud hybride. Ce genre d’évènement permet aussi de rencontrer de nombreuses personnes, des « program manager » de Microsoft, des partenaires et même des collègues qui sont situés au même étage et que l’on n’a pas forcement le temps de rencontrer en France !!!!
Le prochain summit aura lieu à Seattle en novembre 2014. En espérant pouvoir y retourner et rencontrer certains d’entre vous la bas.
En attendant, j’espère avoir le plaisir de vous voir lors d’un IT Camp!. Les IT Camps sur SQL 2014 et Power BI débuteront en novembre.
Franck Mercier
Pour tester Windows Server 2012, Windows 8, SQL Server 2012 et SQL Server 2014 CTP1, vous pouvez télécharger gratuitement la version d’évaluation disponible sous la forme :
· Windows Server 2012 :
· SQL Server 2012 :
· Evaluation SQL Server 2014 CTP2 :
· Testez Azure gratuitement pendant un mois :
Power Query est un add-in Excel et composant de Power BI qui fonctionne un peu comme un ETL (Extract, Transform and Load). A partir de n’importe quelle source de données (Base de données, Ficher plat, page web ou Hadoop), Excel est capable de récupérer les informations et de les transformer en fonction des besoins.
La nouvelle version de l’add-in propose de nouvelles fonctions, dont une très pratique, Table.UnpivotOtherColumns, qui va faire l’objet de ce billet.
Cette fonction permet de faire pivoter des colonnes d’une source de données. Et de manière dynamique! C’est-à-dire que la formule va accepter comme paramètre les colonnes qui ne devront pas pivoter, et toutes les autres pivoteront. Ce qui peut être pratique lorsque l’on récupère des données temporelles par exemple.
Ci-dessous un exemple concret, accompagné des copies d’écran.
Dans un fichier, voici un tableau assez basique.
Dans le ruban, cliquez sur « Power Query » puis sur « From File », afin d’aller chercher le fichier Excel contenant le tableau.
Power Query propose la structure du fichier. Dans mon exemple, le tableau se trouve dans la feuille 1 (sheet1). Donc dans la partie gauche, cliquez sur « Sheet1 »
J’utilise une fonction basique de Power Query pour définir la première ligne comme entête de colonne en cliquant sur le bouton :
Voici le résultat :
Maintenant je choisi les colonnes que je souhaite faire « pivoter ». Puis je fais un clic droit sur les colonnes pour faire apparaître le menu contextuel pour sélectionner la commande « Unpivot »
Ci-dessous, le résultat :
En regardant en détail la formule générée par Power Query, on remarque que les colonnes représentant les dates sont nommées dans la formule :
= Table.Unpivot(FirstRowAsHeader,{"2011", "2012", "2013", "2014"},"Attribute","Value")
La nouvelle version de l’add-in apporte une nouvelle fonction qui est « Table.UnpivotOtherColumns »
Je vais donc transformer la formule avec Table.UnpivotOtherColumns et en définissant maintenant la ou les colonnes qui ne doivent pas pivoter:
= Table.UnpivotOtherColumns(FirstRowAsHeader,{"Produits"},"Attribute","Value")
Voici le résultat (en fait rien n’a changé ):
Et voici le tableau dans Excel après avoir cliqué sur “Done” :
Maintenant, je reviens sur le fichier d’origine, et que je rajoute une colonne (2015 par exemple)
Je rafraichi ma requête Power Query (en cliquant sur « Refresh » dans le volet « Query Settings »). Le tableau se met automatiquement à jour, en conservant le pivot et en rajoutant les informations de la nouvelle colonne :
Voila pour l’illustration de cette nouvelle fonction Power Query… une vidéo arrive pour illustrer ce billet.
Au plaisir de vous voir lors d’un IT Camp!. Les IT Camps sur SQL 2014 et Power BI débuteront en novembre.
SQL Server 2014 CTP2 est disponible en téléchargement sur le site Technet : http://technet.microsoft.com/en-us/evalcenter/dn205290.aspx, mais aussi disponible directement depuis la galerie des machines virtuelles de Windows Azure (IaaS)
Les nouveautés de cette CTP2 sont orientées :
Le blog dataplatforminsider apporte le détail de toutes les nouveautés de la CTP2. Ce billet en reprend les principales nouveautés.
Côté performance, la CTP2 apporte des améliorations autour de l’outil d’aide à la migration. Cet outil permet d’identifier les tables et procédures stockées pouvant tirer un bénéfice à migrer vers le moteur en mémoire. Après identification, l’outil pourra ensuite aider à la migration. La CTP2 apporte la possibilité de configurer une limite d’utilisation de la mémoire des tables Hekaton : http://blogs.technet.com/b/dataplatforminsider/archive/2013/08/13/sql-server-2014-in-memory-oltp-app-migration-scenario-leveraging-the-integrated-approach.aspx.
La fonctionnalité « AlwaysOn Availability Group » est supportée avec les bases en mémoire et le « resource governor » est maintenant capable de gérer les I/O au niveau des bases de données.
Côté Cloud Hybride, la CTP2 propose toujours le backup dans un stockage Azure avec maintenant une interface complète pour faire ce backup
Ainsi que le chiffrement du backup à partir du menu « Backup options »
La version CTP2 améliore aussi les scénarios de « disaster recovry » avec la possibilité d’utiliser les machines virtuelles d’Azure comme secondaire dans une solution AlwaysON.
Enfin, la CTP2 permet d’utiliser des fichiers de données SQL se trouvant directement dans un stockage Azure. Ci-dessous, une photo prise lors de la démonstration lors d’un Keynote au Pass Summit 2013 :
Pour plus d’information, venez nous rencontrer lors des IT Camp SQL 2014 et Power BI qui commenceront en novembre. Le planning des IT Camps se trouve ici.
Au plaisir de vous voir lors d’un IT Camp!
· Evaluation SQL Server 2014 CTP1 :
Pour faire suite au billet sur la fonction Table.UnpivotOtherColumns, voici la vidéo