Bienvenue à Blogs CodeS-SourceS Identification | Inscription | Aide

Les journées SQL Server : C’est arrivé comment ?

La deuxième édition vient de se terminer, avec brio tout comme la première et je dois dire que je suis content de l'ensemble de l'équipe d'organisation qui a mené le projet avec succès. Cette année j'étais spectateur et simple speaker. Je n'ai volontairement pas fait partie de l'équipe d'organisation étant un peu loin géographiquement. Cela n'a pas empêché d'avoir de nombreux volontaires qui ont réalisés un énorme boulot et au final un grand nombre de personnes satisfaites !

Une question que j'ai entendu durant ces jours, était : « Mais comment ont été créée ces journées ? »

La réponse à cette question n'est pas simple, mais je vais essayer de vous raconter la partie coulisse, d'avant la première édition…

PASS Summit Européen ?

Sachez que la communauté SQL Server francophone existe depuis longtemps, bien avant le lancement officiel du GUSS (Groupe des Utilisateurs Francophones de SQL Server) lors du lancement de SQL Server 2005. Le modèle habituel des communautés étant de faire des réunions d'une après-midi partagé entre 2 ou 3 thèmes. Force est de constater que ces réunions amenaient entre une dizaine et une cinquantaine de personne jamais plus. Certes ces chiffres sont comparables avec d'autres groupes utilisateur similaires.

L'idée était donc de faire quelques chose de plus, avec plus de sujets abordés. A cette époque existant encore la conférence européenne du PASS. Cette dernière a cependant souffert du manque de représentation de la communauté européenne au sein du PASS (les évènements étaient organisés depuis les USA), puis de la trop grande focalisation sur certains groupes (Pays-Bas, Allemagne, Suisse), avec un évènement qui s'est déroulé 3 ans de suite en Allemagne. A cette époque des discussions ont été entamées entre le GUSS et le PASS pour savoir s'il serait possible de faire venir l'évènement en France et en particulier à Paris. Déjà à cette époque il était question de prendre en compte les particularités « française » en incluant un track en Français.

Le rêve d'un PASS Summit à paris n'a jamais été réalisé. Il ne s'est pas fait probablement pour plusieurs causes, qui ont conduit à l'abandon pur et simple de l'évènement en Europe : Le représentant européen du PASS a quitté l'organe de direction du PASS, les anglais avaient commencé à organisé les SQL Bits avec d'année en année plus de succès, et le PASS Summit Européen perdait toujours de l'argent (la conférence n'a jamais été rentable financièrement depuis qu'elle existe). La morale c'est que les communautés européennes sont très centrées sur quelques pays et basé sur des particularités linguistiques de ceux-ci. Et ces même communautés n'ont pas la force logistique et marketing que peut avoir Microsoft au niveau européen (pour l'organisation de TechEd entre autres).

SQL Rally ou SQL Saturdays ?

Suite à cela ont émergé du PASS, 2 nouveaux formats de conférence, le SQLRally et les SQLSaturdays (le second ayant été repris à un MVP ayant lancé ce concept). Un premier SQLRally fut testé avec succès aux USA, un second en Europe du Nord. Le concept de faire une conférence plus courte 2 jours au lieu de 3, payante mais moins cher que le Summit, mais aussi avec moins de sessions et moins de logistique de fait. Le modèle du SQLSaturdays lui, a été de réaliser un évènement gratuit le samedi (par la suite d'autres ont repris le concept et le nom, mais sur d'autres jours), au besoin avec plusieurs tracks.

Se posait alors la question de savoir si ce type d'évènement serait intéressant pour la communauté francophone.

En lançant l'idée du SQLRally francophone sur Facebook, Jean-Pierre Riehl me fait signe en disant qu'il voulait organiser depuis longtemps un SQLSaturdays en France. Côté GUSS, après avoir convaincu Arian Papillon (président du GUSS) de rallier l'aventure, nous sommes désormais 3 à tenter de convaincre de l'intérêt du projet.

Il faudra convaincre le GUSS dans son ensemble de l'intérêt du projet. En effet, même si l'on parle depuis des années d'un évènement d'envergure en France ce n'est jamais allé plus loin que le stade des discutions. De plus il faut convaincre Microsoft de nous suivre, ils sont potentiellement une aide non négligeable sur la communication, mais aussi un support financier. Sans compter qu'ils peuvent nous fournir le centre de conférence.

Les derniers à convaincre sont le PASS. Jean-Pierre, Arian et moi-même décidons de les contacter pour parler de vive voix de l'organisation d'un éventuel SQL Rally Francophone. En face se trouve Jennifer Mooser qui porte la double casquette de membre du Board du PASS et de responsable Marketing chez Microsoft Corp sur SQL Server. Côté Microsoft France, Damien Cudel, chef de produit de SQL Server en France est lui aussi présent. La première discussion permet de définir les bases de voir l'intérêt du PASS pour le sujet. Là se passe quelques semaines où tout est couché sur papier (Word et Powerpoint) sur les coûts, les hypothèses et l'organisation. De fait on obtient un Business Plan et comme tous les acteurs à convaincre sont autour de la table c'est d'autant plus facile d'avoir l'approbation de tous. Mais tout n'est pas finit…

Le format définitif

La difficulté restante est qu'il nous faut des fonds et donc des sponsors et définir le modèle de l'évènement (payant ou gratuit). Or là aussi pour un évènement n'ayant jamais eu lieu comment convaincre, et citer des chiffres ? A ce moment, seul le nombre de jours et les dates ont été arrêtés, ainsi que le lieu (centre de conférence Microsoft) et le nombre de tracks. Pour le nombre de participant nous sommes juste dans des hypothèses.

En ce qui concerne le format choix entre le modèle SQLRally ou SQL Saturdays. SQLSaturdays, se sera non, le nom ne colle pas et le risque de peu de succès un samedi en France est très important. Le faire un autre jour pourquoi pas, mais le nom risque de prêter à confusion. De plus le souhait original est de réaliser l'évènement sur 2 jours et non 1 seul. Mais c'est un évènement gratuit cela colle au type d'évènement souhaitable pour Paris.

SQLRally, c'est un évènement payant, d'où un risque important de se « planter » dans le prix, on verra plus tard que le prix que les gens souhaiterait mettre (dans un sondage) se situe autour de 100€, mais que dans l'immense majorité les personnes souhaite un évènement gratuit. Côté PASS, pour eux le Rally doit en plus fournir, les repas, les boissons durant les pause et si possible des soirées. Le budget est conséquent et le planning tout autant. De fait ce modèle tombera à l'eau car, étant donné les dates arrêtées, nous sommes déjà en retard sur le planning du PASS.

Au final, reste la solution d'un évènement nouveau… qui sera gratuit (sauf peut-être les repas), sur 2 jours et ne s'appellera ni Rally, ni Saturdays. Le nom fût trouvé par Arian, qui fort logiquement nous dit que plutôt que de tourner autour de SQLDays avec des anglicismes, étant un évènement francophone, le nom doit être en français. D'où les SQLDays dans leur versions française « les journées SQL Server ». En ce qui concerne le logo, le premier du nom, c'est moi qui l'ai dessiné sous PowerPoint et transféré dans Expression Design. Le second logo a été metro-isé par Jean Pierre.

La dernière ligne droite

Côté sponsor, il faut dire que nous avons eu énormément de chance, c'est en effet Microsoft France qui nous a aidé, fort de leurs contacts chez les constructeurs, et qui est venu avec HP. Ce n'est pas suffisant et le second coup de chance vient de la part du SQLBits, en effet James Rowland et Simon Sabin, les 2 fondateurs de l'évènement veulent pousser les évènements similaires en Europe, et James m'offre la possibilité de venir gratuitement à la prochaine session à Liverpool et de me présenter tous leurs sponsors. Le tout sera complété par des sociétés françaises que les uns et les autres avions dans nos contacts. Le budget est bouclé, l'organisation est lancée.

Après des semaines de boulot acharner pour contacter les sponsors, faire les plaquettes, trouver les speakers, etc. C'est la dernière ligne droite. Là aussi, une mention particulière à Hugues Valentin, alors stagiaire chez Microsoft pour la masse de boulot effectué, sans lui je pense que l'évènement n'aurait pas vu le jour.

Nous pensions avoir entre 100 et 200 inscrits, nous avons dépassés les 400, et au final 330 personnes sont venus. Et cette première organisation a reposé sur les épaules de 4 personnes, Hugues, Jean-Pierre, Arian et moi-même. Avec le support le jour de l'évènement de tous les MVP SQL Server francophones qui ont tous fait le déplacement ! Et bien sûr ce fût un succès surtout grâce aux 330 personnes qui sont venus nous voir.

Pour ma part je suis content que cet évènement ait fêté son 2è anniversaire, c'est un comme un enfant (certes ont fait un sacré « couple » mixte à 4), que l'on voit grandir et qui a pris son indépendance. Cela me fait aussi quelque chose dans la mesure où c'est ma dernière année en tant que MVP SQL Server, et c'est un peu la cerise sur le gâteau. Je fais confiance aux autres pour assurer la suite, comme ils viennent de le prouver avec cette édition.

Longue vie aux communautés SQL Server et Francophones particulièrement.

Posté le par christian | 0 commentaire(s)

Office 2013 : Nouvel AddOn Power Pivot et Power View nativement dans Excel

Et oui la décisionnel fait son entrée plein pied dans Office en effet les composants de BI de Microsoft qui sont arrivés respectivement avec SQL Server 2008 R2 et avec SQL Server 2012 sont maintenant fournit en standard et dans leur nouvelle version.

Plus besoin de serveur Sharepoint pour commencer à créer des rapports avec Power View et pas besoin de charger de nouvel AddOn pour profiter des composants avec une installation Standard de Office 2013.

Espérons juste que cela soit toujours intégré à la version finale de Office 2013, et qu'il ne soit pas nécessaire de charger un AddOn. Cela n'est pas sûr les sources sont un peu divergentes sur le sujet certains indiquant que le composant est natif sous Office 2013 d'autres indiquent que c'est destiné à sortir avec le Service Pack 1 de SQL Server 2012… Attendons alors avant de se prononcer.

Côté licence c'est une bonne nouvelles, les possesseurs de Office 2013 profiterons pour le même prix de PowerPivot et Power View, donc sans surcout par rapport à la licence Office. Dans le détail il faudra voir si WinRT et l'Office du même nom sur ARM sont aussi concerné ou non ?

Question pratique, comment fait-on pour activer ces 2 composants, rien de plus simple :

  • Ouvrez Excel 2013
  • Allez dans un document vide
  • Allez dans le menu « file »
  • Puis choisissez « Options »
  • Dans la fenêtre qui s'ouvre allez dans l'onglet « Add-Ins »
  • En bas de cette page choisissez dans la liste déroulante « Manage » l'option « COM Add-ins » puis cliquez sur « Go… »
  • Cochez les 2 addons comme ci-dessous, puis « Ok »

 

 

Dès lors vous aurez le ruban correspondant à Power Pivot et dans le ruban « Insert » vous aurez la possibilité d'insérer des rapports Power View.

 

 

Et maintenant vous pouvez faire du Reporting depuis Excel. Rassurez-vous il est toujours possible de publier ceux-ci sur un Sharepoint 2013.

Bon rapports et visualisation…

Posté le par christian | 1 commentaire(s)

Certifications SQL Server 2012 (alias Denali) disponibles gratuitement en Beta

Attention les places sont limitées, pour s'inscrire, allez sur le site de Prometric (www.prometric.com) et utilisez le code promotionnel correspondant à l'examen.

Attention vous trouverez la certification en Beta sous le numéro 71 et pas 70, pour passer l'examen 70-461 en Beta cherchez le 71-461.

Examen

Date de disponibilité

Promo Code

Exam 70-461 : Querying Microsoft SQL Server 2012

Du 29.03.2012 au 12.04.2012

DEN461

Exam 70-462 : Administering Microsoft SQL Server 2012 Databases

Du 29.03.2012 au 12.04.2012

DEN462

Exam 70-463 : Implementing a Data Warehouse with Microsoft SQL Server 2012

Du 23.03.2012 au 6.04.2012

DEN463

Exam 70-464 : Developing Microsoft SQL Server 2012 Databases

Du 30.03.2012 au 13.04.2012

DEN464

Exam 70-465 : Designing Database Solutions for Microsoft SQL Server 2012

Du 30.03.2012 au 13.04.2012

DEN465

Exam 70-466 : Implementing Data Models and Reports with Microsoft SQL Server 2012

Du 23.03.2012 au 6.04.2012

DEN466

Exam 70-467 : Designing Business Intelligence Solutions with Microsoft SQL Server 2012

Du 23.03.2012 au 6.04.2012

DEN467

 

Pour les descriptions des certifications, cliquez sur le lien dans le tableau ci-dessus.

Bonne chance…

Posté le par christian | 0 commentaire(s)

SQL Server 2012, SQL Server Data Tools et Feature Pack disponibles en version finale et en téléchargement

Sous le doux nom de build 11.0.2100, retrouvez SQL Server 2012 alias Denali ou la version 11 de votre moteur de base de données favori.

Les téléchargements ci-dessous

Une liste de drivers pour se connecter à SQL Server, avec l'arrivée du driver ODBC pour Linux :

Bon téléchargements…

Posté le par christian | 0 commentaire(s)

MVP Global Summit édition 2012

Cela maintenant 6 ans que j'ai la chance de pouvoir aller assister au MVP Summit à côté de Seattle. Le lieu s'est en effet recentré sur Bellevue au lieu de Seattle au fil des années, qui est géographiquement plus proche du Campus Microsoft.

Je ne vais pas détailler l'ensemble des sessions qui y ont eu lieu, je n'en ai pas le droit, l'ensemble de celles-ci, à quelques exceptions près, sont couvertes par le contrat de confidentialité signé avec Microsoft par tous les MVP. Cependant, voici quelques tendances et impression lors de la conférence…

En tant que MVP SQL Server, je peux dire que nous sommes chanceux, voire très chanceux, les équipes produits sont très ouvertes et n'hésitent pas à partager des informations très en avance de phase et à collecter du feedback de notre part. Cela est très appréciable et je dirais même que cela s'améliore d'année en année. Nous sommes l'un des rares groupes produits à bénéficier d'une équipe de personnes MS dédié à la relation avec les communautés… Cela se traduit par 5 jours de sessions très complètes sur le produit, ainsi qu'une soirée pizza / table ronde dans le bâtiment même où est conçu SQL Server. Soit 5 jours de contenu intensif sur le produit, souvent technique et d'un très bon niveau. Indirectement même les sessions de feedback sont très intéressantes car confronter son opinion à celle des autres est toujours utile.

Je sais que toutes les technos ne sont pas logées à la même enseigne, mais j'espère que la qualité restera là encore les années qui viennent sur cette techno et que les MVP continueront à gagner la confiance des équipes produit.

Côté Summit en Général, il est marrant de voir les gens de tous ses pays réuni au même endroit et sur toutes ces technologies et de voir l'esprit qui règne entre chacuns. J'ai bien aimé le jour de la sortie de la Beta de Windows 8, durant les sessions qui suivait la sortie avec le partage de clef USB pour copier l'ISO de ce dernier ou comment dupliquer 200 fois les téléchargements des chanceux ayant la bande passante pour la charger.

Enfin du côté des MVP francophones européens sur SQL Server nous étions pas en reste, cette année Christophe Laporte (http://conseilit.wordpress.com/), Jean Pierre Riehl (http://blog.djeepy1.net/), Hervé Roggero (http://geekswithblogs.net/hroggero/Default.aspx, même s'il fait du SQL Azure en Floride, personne n'est parfait ;o) et la petite nouvelle Isabelle Van Campenhoudt (http://blogs.codes-sources.com/thesqlgrrrl/, je ne sais pas pourquoi je sens que je vais me faire taper sur les doigts en la qualifiant de petite nouvelle) étaient présent. Un grand merci aussi à Martine Tiphaine, notre MVP Lead adorée qui nous supporte d'année en année :o)

Et c'est toujours sympas de croiser tous ces gens avec lesquels je ne suis plus aussi souvent en contact depuis que j'ai quitté Paris. Et puis de partager un steak de 32 once (soit 907g) ça n'a pas de prix ;o)

A l'année prochaine si je rempile pour une septième année…

 

Posté le par christian | 0 commentaire(s)

SQL Server : Bug sur le SCOPE_IDENTITY() et parallélisme enfin résolu après plus de 3 ans !

Ce bug est un vieux bug, à en juger par sa description sur le site Connect qui date de 2008 avec un problème remonté sous SQL Server 2005.

https://connect.microsoft.com/SQLServer/feedback/details/328811/scope-identity-sometimes-returns-incorrect-value

Ce problème particulièrement grave, puisqu'il y a reste de renvoie d'une valeur erronée de l'Identity c'est-à-dire la dernière valeur affectée à une colonne de type compteur. Ce problème ne se produit que lorsqu'une insertion est faite avec un plan d'exécution parallélisé c'est-à-dire une requête très complexe.

Il existe plusieurs détournée de résoudre le problème :

  • Utiliser la clause OUPUT lors la commande INSERT, qui elle ne subit pas ce bug
  • Ne pas utiliser le parallélisme en forçant le MAXDOP à 1 (au niveau serveur ou de la requête)

Ces 2 solutions sont expliquées ici sur le site de support de Microsoft : http://support.microsoft.com/kb/2019779

Sinon la bonne nouvelle est que ce bug est corrigé… Dans SQL Server 2012 !

Ok ce dernier n'est pas encore en version finale, mais sa sortie est pour très bientôt… En attendant reste à espérer que Microsoft sortira un correctif pour les autres versions, ce qui a l'air assez improbable tant le temps est déjà passé depuis la que le bug sous Connect a été marqué comme résolu.

En attente de SQL Server 2012…

Posté le par christian | 0 commentaire(s)

SQL Server : Virtualisation illimitée

C'est une question à laquelle j'ai eu mois même du mal à répondre… Quels sont les licences requises pour virtualiser de manière illimitée SQL Server ? Par virtualisation illimitée j'entends le fait de pouvoir installer autant de machines virtuelles exécutant une ou plusieurs instances SQL Server, sur un hôte, c'est-à-dire une machine physique.

La réponse est au final assez simple :

Il suffit juste de licences SQL Server Enterprise par Processeur (ou par cœur pour la prochaine version de SQL Server : 2012) en combinaison de la Software Assurance.

Nul besoin de l'édition Datacenter qui disparait avec l'arrivé de SQL Server 2012… Le principe est que SQL Server 2008 permet la virtualisation illimitée en édition Enterprise, et que la Software Assurance permet de préserver les droits de licence de la version précédente. Ce qui fait qu'un SQL Server 2008 R2 Enterprise avec une Software Assurance conserve les avantages de la version 2008. De plus dès la version prochaine (SQL Server 2012), cela devient la règle, puisqu'il faut l'édition Enterprise avec une Software Assurance pour bénéficier de la virtualisation illimitée.

Côté nombre de licences la règle est simple, tous les processeurs de la machine hôte doivent être licenciés. A partir de SQL Server 2012, tous les cœurs physiques de la machines (cœurs non Hyperthreadés) doivent être licenciés.

Un dernier point, et Windows dans tout ça ? Windows réclame pour la virtualisation illimité un Windows Server édition Datacenter et c'est tout.

Pour avoir accès à la virtualisation illimité on achètera :

  • SQL Server 2008 R2 Enterprise par Processeur avec Software Assurance
    • ou
  • SQL Server 2012 Enterprise par Cœurs avec Software Assurance
  • Windows Server 2008 R2 Datacenter par Processeur

Et c'est tout…

 

Posté le par christian | 0 commentaire(s)

Afterworks des communautés Microsoft édition Suisse à Genève, le 17 Janvier 2012

Ce n'est pas tout à fait la première édition, c'est la seconde à Genève. Venez nous rencontrer et discuter des thèmes qui vous sont cher autour d'un verre en toute convivialité.

Le concept des Afterworks :

  • Animé par les acteurs des communautés
  • Organisé de manière informelle et conviviale
  • Ouvert à tous

Les personnes intéressées peuvent s'inscrire ici:
http://www.facebook.com/events/229609147113572/

L'inscription est non obligatoire mais aidera grandement à savoir si on doit réserver une table, si beaucoup de personnes sont présentes.

Le lieu est situé juste en face de la gare principale de Genève (Gare de Cornavin).

Venez nombreux…

Posté le par christian | 1 commentaire(s)

Bonne année 2012, ma 6ème année de MVP, et SQL Server 2012

Bonne année 2012 à tous, j'espère que cette année sera un bon cru.

Pour ma part ça va être difficile de faire mieux que 2011, mais on va essayer.

L'année 2011 a été l'année des changements j'ai rejoint la société Trivadis. En 2011 j'ai obtenu la certification Master sur SQL Server 2008 et eu l'opportunité de co-organiser l'évènement les journées SQL Server, qui a été un succès avec plus de 310 participants !

L'année 2012 attaque fort, je viens tout juste d'être renouvelé en tant que MVP SQL Server pour la 6ème année consécutive. Je ne suis pas pour autant le plus ancien dans ce titre, c'est M. Fred Brouard qui est le plus ancien MVP SQL Server français.

Et enfin 2012 est l'année de sortie de SQL Server 2012 !!! Qui sera un grand cru !

Encore une bonne année à tous

Posté le par christian | 0 commentaire(s)

Les journées SQL Server : La conférence est officiellement Sold-Out



Nous pouvons être tous fiers du niveau des inscriptions, nous avons en effet franchis la barre des 400 personnes pour atteindre les 417 inscrits. C’est un niveau bien au-delà de nos attentes et nous en sommes très contents, mais nous sommes obligées d’arrêter les inscriptions à ce stade, le centre de conférence de Microsoft France n’offrant pas une capacité suffisante pour plus de personnes.

Néanmoins pour les personnes qui souhaitaient participer et qui ne peuvent s’inscrire, bonne nouvelle, l’évènement sera intégralement Wecasté et les Webcast mise à disposition publiquement quelques semaines après l’évènement. Au nombre desquels HP, Quest, Waisso et nien sûr Microsoft.

En passant, j’en profite pour remercier les sponsors grâce auquel l’évènement est possible, et grâce auxquels vous pourrez voir et revoir l’évènement en vidéo.
Pour tous ceux ayant leur ticket pour la conférence, nous vous attendons, non sans une certaine impatience, dès lundi pour 2 jours consacrés à SQL Server.
A lundi pour la première conférence communautaire francophone consacrée à SQL Server !

Posté le par christian | 0 commentaire(s)

SQL Server 2012 : Tableau complet des fonctionnalités par édition

C'est ici que ça se passe ici :

http://msdn.microsoft.com/en-us/library/cc645993(v=sql.110).aspx

Rien de bien nouveau, la plupart des nouvelles fonctionnalités majeures sont dans l'édition Enterprise (Power View, AlwaysOn), et pas mal d'autres sont disponibles dès l'édition Express (moteur sémantique, …)

Bonne lecture…

Posté le par christian | 0 commentaire(s)

Les journées SQL Server édition 2011 à Paris les 12 et 13 Décembre prochain, inscrivez-vous

La conférence est gratuite et totalise plus de 40 sessions animés par des MVP, des experts et même de personnes de chez Microsoft dont certains qui viennent de loin.

C'est sur 2 jours totalement dédié au monde du moteur relationnel et de la BI. Venez nombreux et prouvez nous que cet évènement sera un succès.

Programme détaillé des sessions ici

http://www.guss.fr/accueil/les-journées-sql-server.aspx

Inscription

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

En passant un grand merci aux sponsors qui nous soutiennent, dont Microsoft, HP, et les autres… Et à mes 2 acolytes et co-organisateurs Arian et Jean-Pierre.

A dans moins d'un mois…

 

Posté le par christian | 0 commentaire(s)

SQL Server 2012 : Dernière Beta (Release Candidate) de SQL Server nom de Code Denali disponible en téléchargement

Dernière ligne droite pour Microsoft pour la prochaine version majeure de SQL Server, dont la dernière (généralement la Release Candidate précède de quelques mois la version finale)

Ça se passe ici en anglais et en français :
http://www.microsoft.com/download/en/details.aspx?id=28145

Le téléchargement est gratuit, profitez et testez bien.

Bon téléchargement…

Posté le par christian | 0 commentaire(s)

PASS Summit 2011 : Première plénière présentée par Ted Kummert

Après une présentation du PASS, qui atteint cette année les 80000 membres et les projets du moment.

Ted Kummert commence à nous parler de SQL Azure qui a été introduit il y a 18 mois. On passe ensuite sur une vision de la communauté avec les 80000 membres du PASS et les 300 MVP SQL Server au niveau mondial.

Petite retour en arrière, en revenant sur le lancement des solutions intégrées avec le matériel, les appliances, avec l'édition Parallel Datawarehouse lancé il y a 1 an.

Retour sur SQL Server Denali, avec les fonctions clef tel que AlwaysOn, l'ajout du moteur sémantique. La mise à disposition de la BI au niveau des utilisateurs avec le projet Crescent. Le projet Juneau pour mettre à disposition des outils gratuitement aux développeurs de bases de données.

La CTP3 a été lancé durant l'été avec de nombreux retour de clients. Et l'annonce du nom de SQL Server Denali qui deviant SQL Server 2012 et est annoncé pour le premier semestre 2012.

On continue sur l'initiative Big Data. Microsoft va fournir des drivers (y compris pour PDW, dispo ici : http://www.microsoft.com/download/en/details.aspx?id=27584 ) pour Hadoop et un framework pour ce dernier et un addon pour Excel pour la connectivité sur Hive. Tout cela annoncé pour le courant de l'année 2012.

Crescent ou l'Adhoc reporting sous SQL Server 2012 avec Silverlight et Sharepoint 2010 a lui aussi un nom, çà sera « Power View ». Juneau obtient lui aussi un nom final, il s'appellera SQL Server Data Tools (SSDT).

Introduction du composant Data Explorer, un composant qui permet de découvrir les données associées à d'autres à partir d'analyse sémantique. Combiné bien sûr avec le Market Place de SQL Azure. Ce composant sera fourni plus tard dans l'année sur la plateforme Azure.

L'annonce presse : http://www.microsoft.com/Presspass/press/2011/oct11/10-12PASS1PR.mspx

Bonnes nouvelles…

Posté le par christian | 0 commentaire(s)

PASS Summit 2011 : SQL Server nom de code Denali se pare d’un nom définitif…

Ca sera… SQL Server 2012 !

Et il sortira durant le premier semestre 2012 !!!

Bonne nouvelle

Posté le par christian | 3 commentaire(s)

PASS Summit 2011 : Découvrez la première plénière dans un peu plus d’une heure en direct…

Quelques annonces de prévues durant les 2 premières plénières du PASS Summit 2011 dont le premier jour de conférence est aujourd'hui. Les 2 précédents étant dédiés au pré conférence et à des sessions sous NDA concernant les MVP SQL Server.

Dès 8h15 heure locale (17h15 en heure européenne centrale), vous pourrez suivre la plénière en direct sur le site du PASS, retransmis en streaming.

Pour accéder à la retransmission c'est ici :
http://www.sqlpass.org/summit/2011/Live/LiveStreaming.aspx

Il vous suffira de rentrer votre adresse email et votre pays et le tour est joué.

La première plénière est présenté par Ted Kummert, Senior Vice President de la division Business Platform. Division chargée entre autre de SQL Server.

Bonne plénière…

Posté le par christian | 0 commentaire(s)

SQL Server : Service Pack 3 de SQL Server 2008 disponible en téléchargement

Le Service Pack 3 pour SQL Server 2008 est maintenant disponible en téléchargement public.

Plus de détails ici : http://www.sqlnco.ch/2011/10/service-pack-3-de-sql-server-2008-disponible-en-telechargement/

Bonne installation…

Posté le par christian | 1 commentaire(s)

Azure : Installation de Wordpress sur Windows Azure et SQL Azure

Cet article fait suite au précédent sur le sujet sur l'installation de PHP sur une couche Azure… C'est maintenant au tour de Wordpress au grand complet.

C'est dans la suite : http://www.sqlnco.ch/2011/09/installation-de-wordpress-sous-windows-azure-et-sql-azure/

Bonne installation…

Posté le par christian | 0 commentaire(s)

SQL Server - FAQ SQL : Pourquoi mon fichier de log/ldf est il aussi gros ? Comment diminuer sa taille ?

Qu'est-ce que le journal de transactions ou (Transaction Log en anglais) ?

Il est souvent confondu avec le fichier LDF de la base de données. En fait, le journal de transactions n'est pas un seul fichier, mais peut être composé de plusieurs fichiers LDF (extension par défaut du fichier). Mais il est vrai que dans l'énorme majorité des cas, seul 1 fichier LDF est présent dans une base de données, et c'est lui seul qui représente le journal (voir ici pour l'utilisation de plusieurs fichiers : http://www.sqlnco.ch/2011/10/quel-est-l-interet-d-avoir-2-fichiers-et-plus-pour-le-journal-de-transactions-tlog-ldf-dans-sql-server/).

Pour connaître le ou les fichiers du journal de transactions dans la base de données courante, utilisez le script suivant.

select * from sys.master_files
where type = 1 and database_id = DB_ID()

Ne pas confondre ces fichiers multiples avec les VLFs (Virtual Log Files) qui contrairement à leur nom ne sont pas des fichiers, mais des blocs qui composent le fichier LDF.

Le journal de transactions contient l'ensemble des transactions exécutées sur la base de données courante. Pour simplifier imaginez que toutes les requêtes réalisant des écritures sont stockées dans ce journal avant même que les données soient inscrites sur le disque. Un certain nombre d'opérations systèmes génère aussi des écritures dans le journal.

La finalité de ce journal est double. Il permet de maintenir les données dans le cache mémoire de SQL Server, le plus longtemps possible sans avoir à les écrire dans les fichiers de données. Mais aussi de permettre la récupération de la base de données en cas d'arrêt non prévu. En effet les données restant longtemps dans le cache, sans journal traçant les opérations d'écritures la base de données serait corrompu en cas de redémarrage du serveur. Il sert donc à améliorer les performances en limitant les écritures sur le disque, mais aussi permet de remettre la base de données dans un état cohérent en cas de redémarrage (et aussi en cas de restauration d'une base de données).

Sans journal, le risque de corruption de la base de données est énorme et le serveur risque de ne pas tolérer le moindre arrêt sans pouvoir vider son cache vers le disque, ce qui est clairement aberrant dans un environnement de production.

Pourquoi le journal de transactions grossi-t-il ?

Toutes les modifications effectuées sur la base de données génèrent des transactions et font donc grossir les fichiers du journal de transactions. Il est donc normal que ce fichier grossisse au fil de l'activité de la base de données.

Seulement sans aucunes actions de la part de l'administrateur de base de données, le journal grossira à l'infinie et cela sans aucuns avantages. En effet périodiquement les données présentes dans le cache sont inscrites sur le disque l'intérêt de la récupération des données est donc nul pour des transactions anciennes. Par contre, en cas de perte des disques où sont situées les données, ces anciennes transactions peuvent se révéler précieuses.

C'est là que rentre en ligne de compte, la sauvegarde du journal de transactions. En effet comme indiqué ci-dessus les informations du journal de transactions anciennes ne servent pas au moteur pour redémarrer le serveur et remonter une base de données, mais peuvent être intéressante en cas de perte de fichier, et par extension en cas de perte disque ou de crash serveur sévère. Sans les transactions seules les sauvegardes complètes sont disponibles, or la restauration à un point fixe dans le temps vous expose à une perte systématique de données.

Donc, utiliser des morceaux du journal de transactions et les combiner avec les sauvegardes complètes, permet de remonter la base de données à n'importe quel point dans le temps y compris le moment exact du crash serveur. De plus, une fois la sauvegarde du journal de transactions réalisée, la portion copié vers le fichier de sauvegarde, n'est plus utile dans le journal et peut être supprimée (à quelques conditions détaillées plus loin).

Sauvegarder régulièrement le journal de transactions, permet de libérer de l'espace à l'intérieur des fichiers LDF. Cela ne changera rien à la taille des fichiers en eux même (attention à ne pas utiliser des options tel que Auto Shrink, voir plus loin), mais permet la réutilisation de l'espace interne des fichiers LDF.

La commande DBCC SQLPERF(LOGSPACE) renvoie des informations sur la taille du journal de transaction et le pourcentage d'occupation de ce dernier. Cela peut se révéler très utile pour savoir où en est l'occupation du ou des fichiers. Attention cette commande requiert des privilèges sysadmin sur l'instance où elle est exécutée.

Database name

Log Size (MB)

Log Space Used (%)

Status

Master

1.242188

36.79245

0

Tempdb

0.4921875

75.89286

0

Model

0.7421875

44.21053

0

Msdb

8.179688

16.0936

0

Il est important de créer des fichiers LDF avec une taille correcte dès le départ. L'avantage est multiple, d'une part on évite de tomber sur trop d'opérations d'incrément de fichier (quand le fichier est plein), d'autre part la fréquence de sauvegarde du journal de transactions peut être réduite (passer de toutes les 15 minutes à toutes les 30 minutes par exemple) et finalement, en termes de performance, on diminue la fragmentation interne des fichiers, le traitement des transactions est plus rapide.

On utilise souvent, comme valeur arbitraire de départ, le chiffre de 20%. C'est-à-dire que l'on met 20% de la taille estimée des données, comme taille de départ pour le journal de transactions. Cette valeur est une estimation qui variera grandement avec les différents modes de récupération et l'usage de la base de données. En cas d'écritures intensives, cette valeur peut avoisiner les 30 à 40% facilement. Dans des scénarios de chargement de données de Datawarehouse, y compris avec une base de données en mode de récupération simple, la taille du journal de transactions sera très importante.

Comment diminuer la taille du ou des fichier(s) LDF ?

Le seul moyen est de vider le journal est de sauvegarder ce dernier au travers de la commande suivante.

-- Sauvegarde du journal de transaction de la base de données courante
-- Par convention on donne l'extension de fichier TRN à ce type de sauvegarde

BACKUP
LOG MaBaseDeDonnees

TO DISK = 'c:\monrepertoire\monfichier.trn'

A ce moment-là, une partie du journal de transactions est vidé. La plupart du temps, exécuter cette commande régulièrement suffira à maintenir la taille des fichiers du journal de transactions à une taille constante.

Cependant, un certains nombres de situations risques de nécessiter de manuellement réduire la taille du ou des fichier(s) LDF.

Parmi les raisons possibles :

  • Chargement de données, ayant augmenté la taille du journal plus que nécessaire
  • Opérations de maintenance d'index, ayant augmenté la taille du journal plus que nécessaire
  • Pas de sauvegarde du journal de transactions sur un environnement de développement ou de pré-production

Dans tous les cas, cherchez la cause du problème et ne voyez pas le fait de tronquer le journal et de réduire la taille des fichiers comme la solution.

Parmi les solutions possibles :

  • Augmenter la fréquence de sauvegarde du journal de transactions.
  • Manuellement exécuter une sauvegarde du journal lors d'étapes clef de maintenance de base de données ou de chargement.
  • Changer le mode récupération temporairement lors d'étapes clef de maintenance de base de données ou de chargement.
  • Vérifiez qu'un processus, tel que la réplication transactionnelle, le Database Mirroring ne bloquent pas la vidange du journal de transactions.

Une fois la sauvegarde effectuée, il nous reste à réduire la taille du ou des fichiers grâce à la commande DBCC SHRINKFILE. J'insiste bien sur le fait que c'est SHRINKFILE et non SHRINKDATABASE qui est à utiliser. Le second fait réduire la taille de tous les fichiers et pas uniquement le contenu des fichiers du journal de transactions. C'est non seulement inutile et long, mais cela engendre de la fragmentation dans les données, ce qui est un effet de bord inadmissible pour les performances.

De plus, ne passez jamais une base de données en AUTO_SHRINK, faute de quoi vous risquez de graves problèmes de performances, pour toutes les raisons évoqué ci-dessus. Vos fichiers de base de données risquent de passer le temps à jouer au yoyo en termes de taille !

Le SHRINKFILE a de très fortes chances d'échouer à la première exécution. C'est pourquoi je vous conseille ce script.

-- Vide le début du journal

BACKUP LOG MaBase TO DISK = 'C:\...'

 

-- Tente de convaincre le moteur d'utiliser

-- le début du journal de transactions

CHECKPOINT

 

-- Si la portition active n'est plus à la fin

-- du journal de transactions, vide cette partie

BACKUP LOG MaBase TO DISK = 'C:\...'

 

-- Le Shrink est maintenant possible

DBCC SHRINKFILE(2, 10, TRUNCATEONLY)

 

-- En cas d'échec retentez la liste ci-dessus

 

Le script force le recyclage interne des portions du journal de transactions. La portion, dite active, du journal de transactions doit se déplacer au début du fichier grâce à la commande CHECKPOINT. La sauvegarde du journal de transactions peut alors vider la fin du fichier, et le SHRINKFILE libérer l'espace libre à la fin de ce dernier.

Au niveau de la syntaxe de SHRINKFILE, le premier argument est le numéro du fichier à réduire (vous l'obtenez avec la requête du début de cet article). Le deuxième argument est la taille cible en Méga Octets. Le 3ème est optionnel dans le cas du journal de transactions, il permet d'indique que l'on souhaite uniquement libérer l'espace disque, sans réarranger le contenu interne du fichier.

Sachez que ce script n'aura pas toujours d'effet, quelques causes possibles :

  • La partie active du journal se trouve actuellement à la fin du fichier du journal de transactions
  • Une sauvegarde du journal de transactions ou de données est actuellement en cours d'exécution
  • Une transaction longue est en cours d'exécution
  • Une réplication transactionnelle existe et les transactions associées n'ont pas encore été envoyées au distributeur
  • Un Database Mirroring est en place sur cette base de données et une ou plusieurs n'ont pas été inscrites dans le journal de transactions du miroir
  • Le Change Data Capture a été mis en place et des transactions n'ont pas encore été traitées par celui-ci.

De plus, jamais la totalité du journal n'est jamais vidé, et donc la taille du fichier n'atteindra jamais 0 octets après un DBCC SHRINKFILE. Attention aussi à ne pas trop diminuer la taille du fichier, Je vous conseille de mettre une taille cible correcte en argument de cette commande pour éviter, à nouveau, des incréments sur les fichiers LDF, qui se révèlent très couteux.

Changer le mode de récupération de la base de données ?

Autre solution, passez votre base de données en mode de récupération simple ou journalisé en bloc. En effet en procédant de cette manière, le volume de transactions enregistré dans le journal diminuera fortement pour certaines opérations.

C'est particulièrement intéressant pour les opérations de maintenance d'index ou de création d'index, les chargements de données (BULK INSERT / SELECT INTO / INSERT avec TF610) et les opérations de traitement de données volumineuses (plus de 8ko binaires ou texte). Celles-ci se retrouvent faiblement journalisées et écrivent beaucoup moins d'information dans le journal de transactions.

Une exception cependant, la maintenance d'index en ligne, qui s'exécute toujours en journalisation complète, quel que soit le mode de récupération de la base de données.

Il existe 3 modes de récupération : simple, journalisé en bloc (BULK LOGGED) et complet… Plus de détails sur ces derniers : http://blogs.codes-sources.com/christian/archive/2010/01/05/sql-server-les-modes-de-r-cup-ration-de-bases-de-donn-es-et-les-mythes-autour-du-mode-simple.aspx

Un autre avantage non négligeable du mode de récupération Simple en plus de la journalisation simple de certaines opérations, est le fait qu'il est tronqué automatiquement. Dès que le moteur réalise un CHECKPOINT, le journal est vidé de sa portion inactive. Plus besoin de réaliser de sauvegarde du journal de transaction dans ce mode.

-- Modifie le mode de récupération de la base de données
-- Dans ce mode les BACKUP LOG ne peuvent se faire
-- Le journal est tronqué automatiquement mais peut quand même grossir
ALTER DATABASE MaBaseDeDonnees SET RECOVERY SIMPLE

En contrepartie il est impossible de restaurer la base de données autrement que par une sauvegarde compète ou différentielle. On ne peut pas profiter du journal pour récupérer une base de données, avec un RESTORE LOG. Pas de restauration fine dans le temps, pas de restauration jusqu'à la période du crash serveur en cas panne sévère.

Tronquer le journal sans le sauvegarder

Il était possible jusqu'à SQL Server 2008 de tronquer le journal de transactions. C'est-à-dire de le vider sans sauvegarder son contenu. Cette option est assez dangereuse et je ne saurais que la déconseiller, particulièrement sur un environnement de production.

Dans certains cas particulier, elle est néanmoins nécessaire (sur des environnements de développement par exemple). Elle doit être impérativement suivie d'une sauvegarde complète, sinon votre base de données restera implicitement en mode de récupération simple (quel que soit la méthode utilisée ci-dessous).

Sous SQL Server 2000 ou 2005, vous pouvez utiliser les commandes suivantes.

 

-- Ces 2 méthode ne sont plus supportées

-- depuis SQL Server 2008

BACKUP LOG MaBase WITH NO_LOG

BACKUP LOG MaBase WITH TRUNCATE_ONLY

Cependant je vous conseille la méthode suivante qui fonctionne sur toutes les versions du moteur de base de données de 2000 à 2008 R2.

-- Remplace NO_LOG et TRUNCATE_ONLY
-- Passe en mode simple --> réalise un TRUNCATE jusqu'au point de contrôle
ALTER DATABASE MaBaseDeDonnees SET RECOVERY SIMPLE


-- Repasse en mode complet
ALTER DATABASE MaBaseDeD
onnees SET RECOVERY FULL

Vous pouvez faire de même avec le mode journalisé en bloc, en remplaçant FULL par BULK LOGGED. Après ces commandes, exécutez la sauvegarde complète pour rétablir le mode de récupération. La base de données reste en mode de récupération simple tant que la sauvegarde n'est pas exécutée, même si les paramètres de base de données prétendent le contraire.


-- Impérativement faire une sauvegarde complète après
BACKUP DATABASE MaBaseDeDonnees TO DISK = 'monFichier.BAK'

Une alternative existe pour sauvegarder le journal de transactions sans conserver les fichiers de sauvegarde : http://blogs.codes-sources.com/christian/archive/2008/05/06/sql-server-envoyer-une-sauvegarde-vers-le-p-riph-rique-nul.aspx

Je conseille cette technique sur les serveurs de développement, là où la base de données doit conserver le même mode de récupération qu'en production sans d'embarrasser avec les sauvegardes.

En conclusion

  • Sauvegardez régulièrement le journal de transaction
  • Sinon pensez à passer en mode de récupération simple
  • Ne réduisez la taille que des fichiers LDF, via SHRINKFILE, pour le remettre à une taille initiale correcte
  • N'utilisez jamais de SHRINKDATABASE
  • N'utilisez jamais l'option AUTO_SHRINK sur une base de données

Versions applicables

SQL Server 2000 (avec certaines restrictions sur certains scripts utilisant des vues systèmes ou des DMV)

SQL Server 2005
SQL Server 2008
SQL Server 2008 R2

SQL Server nom de code Denali

Bon shrink…

Posté le par christian | 1 commentaire(s)
Classé sous : ,
Plus de Messages Page suivante »


Les 10 derniers blogs postés

- Emportez votre sélection de la MSDN dans la poche ? par Blog de Jérémy Jeanson le il y a 6 heures et 34 minutes

- [ #Office365 ] Pb de connexion du flux Yammer ajouté à un site SharePoint par Le blog de Patrick [MVP SharePoint] le il y a 11 heures et 55 minutes

- NFluent & Data Annotations : coder ses propres assertions par Fathi Bellahcene le il y a 12 heures et 3 minutes

- Installer un site ASP.net 32bits sur un serveur exécutant SharePoint 2013 par Blog de Jérémy Jeanson le il y a 22 heures et 24 minutes

- [ SharePoint Summit 2014 ] Tests de montée en charge SharePoint par Le blog de Patrick [MVP SharePoint] le 04-16-2014, 20:44

- [ SharePoint Summit 2014 ] Bâtir un site web public avec Office 365 par Le blog de Patrick [MVP SharePoint] le 04-16-2014, 18:30

- Kinect + Speech Recognition + Eedomus = Dommy par Aurélien GALTIER le 04-16-2014, 17:17

- [ SharePoint Summit 2014 ] Une méthodologie simple pour concevoir vos applications OOTB SharePoint de A à Z par Le blog de Patrick [MVP SharePoint] le 04-16-2014, 16:51

- //Lean/ - Apprendre à faire des Apps Windows universelles par Blog de Jérémy Jeanson le 04-16-2014, 12:57

- Une culture de la donnée pour tous… par Le blog de Patrick [MVP SharePoint] le 04-16-2014, 11:00