Big Data, Cloud Computing, BI, données déstructurées : autant de défis (parmi tant d’autres) à relever pour les bases « traditionnelles » qui doivent également continuer à répondre aux besoins – eux aussi – traditionnels de leurs utilisateurs installés.
En cette fin d’année Developpez.com s’est donc entretenu avec Jean-Marc Monfort, chef de produit SQL Server chez Microsoft France, pour faire le point sur les évolutions apportées par la version 2012, en quoi celles-ci répondent aux exigences émergentes, son positionnement par rapport à la concurrence et à la manière dont Microsoft entend remédier à un certain déficit d’image du SGBD sur le marché des applications critiques. Un entretien passionnant aux sujets variés et multiples que nous vous proposons en intégralité.
Developpez.com : Tout le monde parle du NoSQL. Certains experts annoncent même que les bases de données relationnelles sont, ou vont être, dépassées : que leur répondez-vous ?
Jean-Marc Monfort : Je ne crois pas du tout que les SGBDR vont se périmer. Que ce soit à un horizon proche ou lointain d’ailleurs.
Les bases relationnelles ont de très gros atouts. Elles sont capables de réaliser des transactions, d’effectuer des requêtes rapides, d’indexer les données structurées, de les sécuriser. Elles sont indispensables pour tout ce qui est transactionnel.
Ceci dit le NoSQL – qui ne veut pas dire « pas de SQL » mais « Not only SQL » - a sa place. D’ailleurs nous en faisons avec Hadoop. De plus en plus SQL Server a la capacité de gérer aussi les données non-structurées, même si ce n’est pas - pour l’instant - sa vocation première.
Developpez.com : Une des grosses annonces faites lors du PASS Summit c’est l’arrivée du In-Memory dans SQL Server 2012. Concrètement, quelles technologies In-Memory avez-vous intégrées dans votre base de données ?
Jean-Marc Monfort : La première d’entre elles s’appelle xVelocity Colum Store.
C’est une capacité nouvelle dans SQL Server 2012 qui permet d’indexer de très grosses tables de faits, non plus par ligne, mais par colonne. C’est donc plutôt axé BI et Datawarehouse.
Cette technologie est la prolongation de ce que vous aviez dans PowerPivot, l’extension gratuite d’Excel 2010 à présent intégrée par défaut dans Excel 2013. Cet add-in permet de traiter des données multisources (Teradata, Oracle, fichiers textes, etc.) et d’établir des relations entre ces tables. On parle souvent de modèle tabulaire, par opposition au modèle OLAP classique. L’avantage de cette technologie, c’est la très grosse compression des données. Les colonnes sont extrêmement compressées grâce à des algorithmes complexes. Cela fonctionne très bien avec de très grosses tables, vu que l’on retrouve souvent les mêmes valeurs : les mêmes dates ou les mêmes références-produits dans une table pour des commandes d’articles par exemple.
Pour illustrer mon propos, prenons l’exemple d’une table de faits de 64 millions de lignes dans un fichier Excel 2013 – elle contient par ailleurs d’autres tables importantes. Le fichier compressé fait « seulement » 27 Mo.
Autre point aussi important avec xVelocity Column Store Index, c’est que bien que compressées, il est très facile de retrouver les données, grâce justement à l’indexation en colonnes. Cet index est créé au-dessus d’une table de faits par une simple commande SQL. On peut soit sélectionner l’ensemble des colonnes soit uniquement celles qui vont participer aux requêtes. L’index compressé accélère de manière incroyable les performances des requêtes. Sans rien changer à ces requêtes, on obtient des gains de performance qui vont de 10 à 100 fois. Et c’est dans le moteur ! Ce qu’on entend par là, c’est que c’est dans le soft (dans la version entreprise), il n’y a pas d’add-in de matériels à acheter.
Developpez.com : Justement. Une des définitions du In-Memroy c’est de mettre des données en cache dans la RAM… Des acteurs comme SAP font des Appliances préconfigurées parce que, pour eux, le In-Memory impose une optimisation entre le Software (la base) et le Hardware (la RAM du serveur). D’où mes deux questions : SQL Server 2012 compresse les données, mais que met-il exactement en cache ? Et cette mise en cache fonctionne-t-elle avec tout type de Hardware ?
Jean-Marc Monfort : Effectivement, si la requête va chercher dans d’autres tables ou faire la jointure, elle sera sans doute ralentie, mais on ne met pas tout en cache. En revanche, la prochaine évolution de SQL Server va intégrer une fonctionnalité de mise en cache de tout ce qui est données OLTP.
C’est le projet Hekaton (NDR : du grec ἑκατόν / hekatón, « cent »). Hekaton est une nouvelle technologie de base de données transactionnelles In-Memory directement intégrée à la plateforme de données, qui sera proposée avec la prochaine version majeure de SQL Server. Elle est déjà en test chez certains de nos clients, aux Etats-Unis et en France. Sans rien modifier aux installations existantes, on obtient des performances 10 fois supérieures. Et jusqu’à 50 fois supérieures pour les applications optimisées spécialement pour le In-Memory.
Developpez.com : Si je comprends bien, pour vous, In-Memory n’est pas synonyme d’appliance…
Jean-Marc Monfort : Certains acteurs sur le marché comme SAP et Oracle soutiennent la nécessité d’avoir absolument une appliance. Pour Microsoft, « Non, pas forcément ». Microsoft offre le choix à ses clients pour le In-Memory : Puisqu’il est intégré directement dans le moteur, nos clients peuvent continuer à utiliser leurs plateformes standards ou s’orienter vers des appliances, provenant de plusieurs constructeurs.
Developpez.com : Ceci dit vous en faites aussi…
Jean-Marc Monfort : Effectivement. Nous avons annoncé la prochaine version de notre appliance SQL Server 2012 Parallel Data Warehouse (PDW), qui est une des possibilités pour faire du In-Memory. Notre appliance sortira début 2013. Elle intègrera à la fois Hadoop ainsi que toute la BI In-Memory de Microsoft. Elle s’appuiera sur Polybase, un moteur de traitement de données unique qui permettra de requêter à la fois des données relationnelles et des données Hadoop non-relationnelles en même temps. PolyBase se débrouillera pour trouver les données où qu’elles soient.
xVelocity est aussi intégré à cette appliance Microsoft SQL Server 2012 Parallel Data Warehouse. Nous avons mesuré une amélioration des performances qui sont jusqu’à 50 fois plus rapides qu’avec l’ancienne version de PDW. Au passage, nous avons également augmenté la capacité de stockage à 5 petas. Mais évidemment on peut faire moins ! C’est d’ailleurs un de leurs intérêts : nos appliances sont très adaptables.
Une appliance PDW Dell - SQL Server 2008 R2
Developpez.com : Ces appliances seront réalisées avec des partenariats OEM ?
Jean-Marc Monfort : Oui. Ce que je peux vous dire, c’est qu’elles seront beaucoup, beaucoup, beaucoup (sic) moins coûteuses que les appliances de nos concurrents.
Developpez.com : Vous avez évoqué xVelocity Column Store. Quelles sont les autres technologies de In-Memory de SQL Server 2012 ?
Jean-Marc Monfort : On retrouve aussi la partie analyse, avec SSAS (SQL Server Analysis Services) qui est reconnue par le marché comme un des meilleurs moteurs OLAP. Ce moteur a beaucoup évolué avec la version 2012. Auparavant il ne savait faire que des cubes OLAP. Nous lui avons ajouté une fonctionnalité appelée « mode tabulaire ».
In fine, on a de la BI In-Memory sur le même modèle que PowerPivot. Les données sont modélisées sous forme de tables – ce qui est beaucoup plus simple à comprendre et à développer pour un analyste financier par exemple. Et côté client, on a bien sûr PowerPivot pour la BI In-Memory intégrée à Excel.
Pour résumer, toutes ces technologies In-Memory sont regroupées dans ce que l’on appelle « xVelocity » :
- xVelocity Columnstore : c’est l’indexation en colonnes, intégrée dans le SGBD, pour accélérer les requêtes sur les tables de faits par exemple
- xVelocity Analytics sur le serveur : c’est SSAS en mode tabulaire
- xVelocity Analytics sur le poste client : c’est le moteur d’analyse de PowerPivot pour Excel 2010, qui est maintenant intégré nativement dans Excel 2013
Developpez.com : SQL Server est une base de données structurées. Depuis plusieurs mois, on voit arriver Hadoop dans SQL Server. Or Hadoop est une technologie très orientée Big Data, données déstructurées, stockage et traitements distribués. Comment les deux peuvent-ils s’articuler ?
Jean-Marc Monfort : On fait du Hadoop depuis quelques temps déjà. Il y a un an, Microsoft a signé un partenariat fort avec la société Hortonworks. Cet acteur majeur dans l’univers Hadoop édite une plateforme qui s’appelle HDP (Hadoop Data Plateform). Nous avons décidé de renforcer notre collaboration avec eux pour proposer deux distributions Hadoop : une sur Windows Server (HD Insight Server, actuellement en CTP) et une dans Azure (HD Insight Service).
Le principal intérêt de HDInsight, c’est de simplifier de manière drastique l’installation, la configuration et le provisionning des données Hadoop. Parce que Hadoop, ce n’est pas ce qu’il y a de plus simple !
Developpez.com : Oui, c’est le moins qu’on puisse dire ! Pouvez-vous nous détailler ce que l’on trouve dans vos distributions Hadoop « maisons » ?
Jean-Marc Monfort : HDInsight est construit au-dessus de HDP. Nous n’avons pas touché à son code qui est 100% compatible avec Apache Hadoop. Ce qui fait que nos distributions HDInsight sont aussi 100 % compatibles Apache Hadoop.
En fait, nous avons étendu HDP pour avoir une meilleure intégration avec Windows, et plus particulièrement avec Active Directory. On y a également ajouté des composants d’administration pour pouvoir administrer HDInsight Server directement depuis System Center.
Pareil pour Windows Azure. HDInsight Service est le portage dans la plateforme Azure, de HDP.
Je tiens aussi à souligner par ailleurs que toutes les améliorations que nous avons apportées à Hadoop sont proposées à la communauté open source Apache Hadoop, au travers de Hortonworks. C’est un vrai partenariat qui va dans les deux sens.
Developpez.com : Venons-en aux questions plus marketing. Quelles sont vos parts de marché (PDM) ? Quelles sont vos cibles ?
Jean-Marc Monfort : Nous sommes le leader mondial du marché des bases de données en nombre d’unités vendues avec une PDM que nous estimons à 42 %. SQL Server se vend plus que les bases d’Oracle et d’IBM réunies.
En termes de chiffre d’affaires, notre part est encore inférieure. Mais pour une bonne raison : le coût des licences SQL Server est bien inférieur à celui de nos concurrents, et il n’y a pas d’options payantes supplémentaires.
Developpez.com : SQL Server propose des fonctionnalités de plus en plus larges. Tellement larges qu’on peut avoir du mal à s’y retrouver.
Jean-Marc Monfort : SQL Server est effectivement une offre très complète… que le nom historique « SQL Server » ne traduit pas entièrement !
SQL Server, c’est à la fois une base de données relationnelle, une offre de Big Data, un moteur de Datawarehouse, un ETL complet (SQL Server Integration Services), un outil de Reporting (avec SQL Server Reporting Services), des outils d’administration (avec SQL Server Management Studio). Il y aussi la partie analyse des cubes OLAP et tabulaire (avec SQL Server Analysis Services), tout ce qui est nettoyage de données (avec un nouveau composant Data Quality Services – qui peut aussi être utilisé indépendamment de SQL Server et dans SSIS) et toute la partie MDM avec Master Data Services.
Developpez.com : Cette « boite à outils » s’adresse-t-elle encore aux développeurs ?
Jean-Marc Monfort : Oui, bien sûr. Pour la partie développement, SQL Server 2012 intègre SQL Server Data Tools qui est compris dès l’édition standard.
SQL Server Data Tools c’est l’unification, dans un seul environnement de développement, de tous les environnements qui étaient précédemment disséminés (BIDS, Visual Studio, outils pour le reporting, etc.). Tout a été regroupé dans SQL Server Data Tools, qui sait aussi bien développer pour des applications « on-premise » ou dans le Cloud Windows Azure.
Developpez.com : comment se passe le « licencing » de SQL Server ?
Jean-Marc Monfort : SQL Server 2012 est une offre qui n’a pas d’option. Il n’existe que 3 versions : la Standard, la BI et l’Entreprise.
Pour l’édition Standard, il a deux modes de licences possibles. Le premier c’est le mode serveur + CAL (NDR : licence utilisateurs). Le deuxième mode de licence – et c’est une grande nouveauté de SQL Serveurs 2012 – c’est la tarification au cœur et non plus au processeur !
Pour l’édition BI, c’est obligatoirement en mode serveur + CAL. Ce qui correspond bien aux besoins des clients de cette version.
Quant à l’édition Enterprise - avec les fonctionnalités telles que « AlwaysOn » pour la haute disponibilité et les applications critiques - la tarification se fait uniquement en mode cœur.
Developpez.com : Quels sont les différents moyens de tester SQL Server 2012 ?
Jean-Marc Monfort : Il existe une version d’évaluation gratuite. Sur notre site, nous proposons également des VHD toutes prêtes à faire tourner sur Hyper-V.
Enfin, troisième possibilité, vous avez des machines virtuelles Windows Server 2012 / SQL Server 2012 préconfigurées qui tournent dans des VM Windows Azure. C’est idéal pour les tests.
Developpez.com : Dernière question, comment positionnez-vous SQL Server 2012 par rapport à la concurrence ?
Jean-Marc Monfort : Nous nous positionnons face à des acteurs comme Oracle et d’autres grands éditeurs. SQL Server fait mieux en termes de fonctionnalités que nos concurrents, de façon plus simple et avec un TCO (Coût Total de Possession) extrêmement agressif.
Une partie du marché voyait dans SQL Server une base capable de ne supporter que des Workloads « moyens ». Bien souvent, on ne l’associait pas aux applications critiques.
Nous voulons changer cette image fausse, qui en plus me parait très française.
Aux Etats-Unis, le nombre d’instances SAP – on parle de plusieurs dizaines de Teras de données – qui tournent sur SQL Server est extrêmement important. Le NASDAQ tourne sur du SQL Server. En France, le système d’alertes des Pompiers de Paris tourne sur SQL Server. Et là ce n’est même plus du « Mission critical » c’est du « Life Critical » !
Tout ça pour dire que nous sommes capables depuis longtemps d’adresser les Workloads les plus critiques. Nous continuons jour après jour à changer cette perception.
Jean-Marc Monfort
Pour ceux et celles qui souhaitent en savoir plus sur SQL Server 2012 ou qui veulent poser directement leurs questions à Microsoft, signalons que pas moins de 24 sessions techniques seront consacrées au SGBD lors des prochains TechDays 2013.
TechDays qui se dérouleront les 12, 13 et 14 février prochains au Palais des Congrès de Paris. A vos agendas donc.
Et aussi
La version d'évaluation gratuite de Windows Server 2012