SQL Server Days, les 12 et 13 décembre 2011 | Jean-Luc Boucho - Blog sur .NET, l'Architecture et Windows Azure

mercredi 14 décembre 2011

SQL Server Days, les 12 et 13 décembre 2011


La sortie prochaine de SQL Server 2012 vaut bien un événement à lui tout seul, et bien le voici !
Organisé par le GUSS (Groupe des Utilisateurs francophones de Microsoft SQL Server), Microsoft et HP, les sessions - plus d'une vingtaine - sont animées par de nombreux MVPs, qualité assurée !

Voici les trois sessions auxquelles j'ai pu assisté, ayant mis l'accent sur LA nouveauté : BISM, le nouveau modèle de données pour la BI.

La BI avec SQL Server 2012, par Sébastien Madar, MCNEXT
  • Nouveautés SSIS
    • Développement : connections partagées, variables projet, CDC, connecteur ODBC
    • Administration : configuration environnement, monitoring et reporting, data taps
  • BISM = BI Semantic Model (ex-UDM)
    • Objectif : présenter un modèle métier en masquant la complexité du modèle sous-jacent
    • Anciennement UDM, mais qui était multidimensionnel
    • Multidimensionnel / Tabular
      • ROLAP / DirectQuery
      • MOLAP / VertiPaq
  • BI Self-Service : pour les business-users, basé sur le modèle Tabular
    • PowerPivot V2 : création du modèle et de l'analyse
      • Nouveautés : Diagram View, Hiérarchies, Perspectives, KPIs (indicateurs visuels, genre feu tricolore…)
      • Tout s'appuie sur Sharepoint
      • Data Alert : envoi de mail suite à la création d'une alerte sur un KPI d'un rapport SSRS mis dans SharePoint
    • PowerView (ex-Crescent) : création du rapport
      • Depuis Sharepoint : Create BISM Connection File
      • Création du rapport : tables, graphiques, slider photos
  • MDS V2 : Master Data Services
    • Nouvel AddIn Excel pour mettre à jour le référentiel de données et valider les règles mises en place
    • DQS = Data Quality Services
      • Renseignement sur la qualité des données dans une Knowkedge Base
      • Validation de règles de qualité (Code postal sur 5 chiffres…), possibilité de connexion à des web services de vérification des adresse géographiques...
      • Mise en œuvre : DQS Client + DQS Server

Décider entre Tabular ou Multidimensionel pour un projet Analysis Services, par François Jehl, Infinite Square & Aurélien Koppel, Microsoft
  • Fonctionnalités du Modèle Tabular
    • Véritable couche sémantique
    • Rapide et simple à construire
    • Design dans Visual Studio 2010
    • Import depuis un fichier PowerPivot existant
    • Performant à tous les niveaux (fins+agrégés)
    • Précache en mémoire ou accès à la demande : Vertipaq vs DirectQuery
    • Sécurité d'accès aux données
    • Partitions pour la volumétrie et la montée en charge
    • Compression des données stockées (environ x10)
  • Modèle Tabular: même langage que PowerPivot = DAX
    • Principe des fonctions Excel, apprentissage rapide
    • Permet de réaliser des calculs métiers complexes
    • Nouvelles fonctions (DisctinctCount(), HasOneValue(), Search(), Switch(), Rankx())
    • Sécurité dynamique des lignes du modèle (fonctions Username(), Customdata())
    • Exemple : Evaluate <DaxTableExpression> Order By <DaxExpression> [ASC|DESC]
  • Ce qu'il manque par rapport au MDX
    • Script MDX
    • Named Set (Top Products…)
    • Scope (DateTool…)
    • Relation Many-To-Many
  • Tabular vs UDM = Simplicité vs Complexité-Puissance
    • VertiPaq / Molap
      • Compression x10 / x2
      • Scan mémoire / disque+mémoire
      • Tout en mémoire / plusieurs To
  • Comment décider
    • Si forte volumétrie + calculs MD complexes -> BISM Multidimensionnel
    • Dans les autres cas : BISM Tabular

Introduction à SQL Azure, par Hervé Roggero, Blue Syntax Consulting
  • SQL Azure contre SQL Server
    • Services
      • Pas de : SQL Agent, SSIS, SSAS, Backup, Broker, Profiler, Full Text
      • Partiel : SSMS, SSRS
    • Développement
      • Pas de : .NET, TDE, encryption, Compte utilisateur réseau (ActiveDirectory)
      • Partiel : T-SQL, Procédures/Vues
    • Prix : très compétitif par rapport au service : données + moteur SQL + DBA
    • Communication : TDS sur le port 1433 uniquement, tout est crypté obligatoirement
  • Architecture
    • Haute Dispo : 3 réplicas en tout, complètement transparent (le primaire peut changer régulièrement par exemple)
  • Sécurité
    • Physique : Pare-Feu, Isolation, SSL
      • Select * from sys.firewall_rules
    • Logique : Compte Utilisateur, Schema, HashBytes, Droit d'accès
      • HashBytes : MD5, SHA1, SHA256 (Pas de SHA512 pour l'instant)
      • Select hashbytes('sha256', 'test')
    • SQL Azure est basé sur SQL Server 2012 CTP3 depuis été 2011
    • Connection : server name = xxx.windows.net + database name
  • Performances
    • Operations en masse (Bulk) : utiliser des librairies d'accès en masse, comme EntityFramework
    • Lazy loading : charger uniquement les données utilisées, dispo avec EF 4.0
    • Cache : Caching Application Block, AppFabric Caching
    • Logiciel Asynchrone : pour améliorer l'expérience utilisateur
    • Opération Parallèle :  utilisation de plusieurs processeurs
    • Shards : stockage et requêtage réparti
    • Technique
      • Dispo : Plan d'exécution, ADO.Net Library Metrics, DMVs (partiel)
      • Pas dispo : SQL Profiler, Perfmon
    • SLA sur la disponibilité, mais PAS de garantie de performances
    • Mécanisme de protection
      • Présent en permanence (coupe la connexion au bout de 30 minutes par exemple…)
      • Nécessite un logique d'adaptation pour les applications intensives afin de ne pas être bloqué
    • Outils : http://enzosqlbaseline.codeplex.com/
  • Montée en charge & Sharding
    • Besoin : expérience utilisateur no 1 = expérience utilisateur no X
    • Modèle de shards : compressé (- de clients que de shards), linéaire (1 client = 1 shard), répandu (+ de clients que de shards)
      • A rédigé un WhitePaper sur ces concepts, à télécharger ici
    • Outils
  • Autres services de SQL Azure
    • Import/Export : vers l'Azure Storage
    • Backup : T-SQL COPY, Bientôt Point In Time Restore en CTP (jusqu'à 2 semaines en arrière)
    • Synchronisation : uni/bi-directionnel, SQL Azure/Server
    • Rapports : URL report server d'un rapport RDL

Aucun commentaire: