Cloud OS Data Platform : Azure & SQL Julien PLEE Stéphane GOUDEAU
description
Transcript of Cloud OS Data Platform : Azure & SQL Julien PLEE Stéphane GOUDEAU
#JSS2013
Les journéesSQL Server 2013
Un événement organisé par GUSS
#JSS2013
Les journéesSQL Server 2013
Un événement organisé par GUSS
Cloud OS Data Platform : Azure & SQL
Julien PLEEStéphane GOUDEAU
#JSS2013
Merci à nos sponsors
#JSS2013
SQL : Quelles options aujourd’hui ? A demeure ou dans le Cloud? IaaS ou PaaS ?
Délégation du contrôle
Ress
ourc
es p
arta
gées
Co
ût m
oins
éle
véRe
ssou
rces
déd
iées
Co
ût p
lus é
levé
Contrôle direct
• 100% Compatible• Rapidité de mise en service
SQL Server dans WA VM - IaaSMachine virtuelle
SQL Server Machine physique
• Contrôle total du matériel• Gestion de votre solution de PRA
• Service de base de données• Peu d’administration technique
Base de données virtualiséeWA SQL Database - PaaS
• Service de base de données• Peu d’administration technique
Capacité réservée de ressourcesPrévisibilité des performances
WA SQL Database Premium - PaaS
#JSS2013
SQL PAASAzure SQL Database
#JSS2013
Azure Sql Database
Contexte TalentSoft
Azure SQL Database
Azure Throttling
ScaleUpSql Db
Premium
ScaleOut avec Azure
Federation
#JSS2013
Le contexte TalentSoft: HelloTalent
#JSS2013
• Un service de base de données présent sur l’ensemble des régions sur lesquelles sont implantés les DC Azure
• Haute disponibilité automatique et redondance– Les données SQL sont automatiquement
répliquées 3 fois avec conservation de l’intégrité transactionnelle
• Outils et technologies de développement connus maîtrisées
Les raisons du choix Azure Sql Database
Une seule base de données logique
Plusieurs réplicas
physiques
Primaire unique Pl
usie
urs c
ible
s se
cond
aire
sRé
plica
1Ré
plica
2Ré
plica
3
Pare
-feu
#JSS2013
Support des outils utilisés à demeure…
#JSS2013
• Throttling– Soft Throttling / Hard Throttling
• Services avec Throttling dans Azure– Windows Azure Database, Caching Service, Service Bus, Storage
• Gérer le Sql Database Throttling• Throttling: (e.g.: 40501) « the service is currently
busy. Retry the request after 10 secondes. Code %d. » (allows to know the type of throttling (CPU, DataReadIODelay, Database Size…)
Azure Throttling et Transient Fault Handling
#JSS2013
demoAZURE THROTTLINGTransient Fault Handling
#JSS2013
Azure Sql Database Premium• Le service SQL Database propose un modèle de base de
données Premium qui permet le choix de différentes configurations fondé sur le niveau d'isolement souhaité pour un client.
• Ces paramètres permettent de ne payer que la capacité réservée et d’adapter cette capacité à la charge anticipée sur le serveurReservatio
n Size CPU Cores
Worker Threads
Active Sessions
Disk IO (IOPS)
Memory (GB)
P1 1 200 2000 150 8P2 2 400 4000 300 16
http://msdn.microsoft.com/en-us/library/windowsazure/dn369873.aspx
#JSS2013
TenantId StatusId Date411 7 2013-12-0256 5 2013-12-0256 4 2013-12-02
Multi-Tenant Data Architecture
TenantId LastName FirstName411 Plée Julien203 Goudeau Stéphane
Schéma & Base partagés
#JSS2013
Multi-Tenant Data ArchitectureBase partagée, Schéma séparé
Database
Tenant 56 Tenant 203
#JSS2013
Bases séparéesMulti-Tenant Data Architecture
Tenant 56 Tenant 203
#JSS2013
Azure Multi-Tenancy avec ShardingSQL Azure GatewayHelloTalent Application Instances
TenantFederation on TidRoot Db
Federation 1
Federation X
Federation 2
Tid 0 - 100 Tid 101 - 200 Tid XXX - Max
SQL Azure Gateway
#JSS2013
demoAZURE FEDERATIONMutli-tenancy with
#JSS2013
SQL SERVER IAASSQL Server hébergé sur une machine virtuelle Azure
#JSS2013
SQL Server dans Windows Azure
Services d’infrastr
ucture Azure
Provisionning SQL Server dans Azure
Scalabilité
Performances
Haute Disponibil
ité
#JSS2013
• Des services de stockage• Des services de réseaux virtuels
– Avec en option la possibilité d’établir des liens VPN• Des machines virtuelles persistantes dans le Cloud
– Des Images fournies avec la plateforme Azure– Des Images personnalisées– Choix de dimensionnement : jusqu’à 8 cœurs et 56GB de RAM et
16 Data Disks (max 1TB, soit 16 TBs max)• Hébergement sur du matériel de « commodité »
Services d’infrastructure Azure
#JSS2013
• Versions supportées : – SQL Server 2012, 2008 R2, 2008– Toutes les fonctionnalités supportées à l’exception du failover
clustering• Stockage :
– 2 possibilités avec SQL 2014• Disques associés à des objets blob de stockage• Fichiers de base de données SQL Server pointant directement
sur des objets blob de stockage : SQL XI (XStore Integration)– Options de stockage fondées sur la taille de la VM
• Facturation à l’usage ou mobilité de licence via la Software Assurance
SQL Server dans une VM Windows Azure
#JSS2013
• Beaucoup plus rapide qu’une installation complète• Multiples éditions SQL Server :
– Enterprise Edition– Standard Edition– Web Edition
• Facturation à l’usage• Services de BI installés par défaut
– SQL Server Analysis Services– SQL Server Reporting Services
• Stockage :– Disque C : 127GB – Média d’installation de SQL Server sur le disque C:
Création à partir de la galerie d’images
#JSS2013
• Machines virtuelles construites à demeure (ou obtenue à partir de machines physiques – P2V)– Sysprep si l’on souhaite créer plusieurs VM à partir d’une image
• http://msdn.microsoft.com/en-us/library/ee210754.aspx– Sysprep non requis pour une instance unique
• Machines virtuelles construites dans le Cloud– A partir de la galerie d’images– Installation en se basant sur une image OS
• Mobilité des licences
Création d’images personnalisées
#JSS2013
Dimensionnement des VMs IaaS SQL Server
Size CPU cores Memory Disk sizes –
virtual machine Max. data disks(1 TB each)
Max. IOPS(500 per disk) Bandwidth
ExtraSmall Shared 768 MB OS = 127 GB Temporary = 20 GB 1 1x500 5 (Mb/s)
Small 1 1.75 GB OS = 127 GB Temp = 70 GB 2 2x500 100 (Mb/s)
Medium 2 3.5 GB OS = 127 GB Temp = 135 GB 4 4x500 200 (Mb/s)
Large 4 7 GB OS = 127 GB Temporary = 285 GB 8 8x500 400 (Mb/s)
ExtraLarge 8 14 GB OS = 127 GB Temporary = 605
GB 16 16x500 800 (Mb/s)
A5 2 14 GB OS = 127 GB Temporary = 135 GB 4 4X500 400
A6 4 28 GB OS = 127 GB Temporary = 285 GB 8 8x500 800
A7 8 56 GB OS = 127 GB Temporary = 605 GB 16 16x500
http://msdn.microsoft.com/en-us/library/windowsazure/dn197896.aspx
#JSS2013
• « Scale-up » ou « scale-down » en modifiant directement la taille de la machine virtuelle hébergeant le serveur SQL :– Soit depuis le portail Azure– Soit avec la Cmdlet Set-AzureVMSize +
Update-AzureVM.– http://msdn.microsoft.com/en-us/library/wind
owsazure/jj152814.aspx
Scale-up, Scale-down Serveur SQL IaaS• Renouvellement du déploiement
(et de l’adresse IP) et dans le cas d’un serveur SQL standalone, interruption de service.
• Impact positif de l’intégration du XStore
#JSS2013
• Localisation des fichiers• Utilisation de disques de données :
– 1 disque Data par base– Distribution des fichiers de données en filegroups
• Disque d’installation des binaires SQL• Cache Settings• Warmup Effects : les prendre en compte
si tests de charge…• Compression de données• Impact positif de l’intégration du XStore
Performances de SQL Server dans une VM Azure
• Performance Guidance for SQL Server in Windows Azure Virtual Machines
▪ http://download.microsoft.com/download/D/2/0/D20E1C5F-72EA-4505-9F26-FEF9550EFD44/Performance%20Guidance%20for%20SQL%20Server%20in%20Windows%20Azure%20Virtual%20Machines.docx
#JSS2013
• Images de la galerie– http://msdn.microsoft.com/en-us/library/dn387396.aspx– Avec finalisation (manuelle) du setup– http://msdn.microsoft.com/en-us/library/dn387397.aspx
• Script de déploiement automatisé– http://gallery.technet.microsoft.com/scriptcenter/Deploy-a-SQL-Server-Data-584e88d5
• Deep-dive on New Azure FastTrack VM image– http://
blogs.msdn.com/b/igorpag/archive/2013/10/11/deep-dive-on-new-azure-fasttrack-vm-image-ftdw.aspx
SQL Server Data Warehousing dans Azure
.\New-AzureSqlDwIaasVM.ps1 -PublishSettingsFile C:\stephgou.publishsettings -InstanceSize A6 ----SqlVersion SQL2014 -AzureAffinityGroup DwAffinityGrp1 -StorageAccountName StorageAccount1 ---VMName A6-SQL2014 -ServiceName A6-SQL2014 -AdminAccount sa -AdminPassword xxx ----------Location " West Europe"
#JSS2013
• Post-configuration (SQL Server inclus) dans la VM via un le Task Scheduler et un script PowerShell
• Power Shell configuration script:– C:\Windows\System32\WindowsPowerShell\v1.0\powershell.exe -
ExecutionPolicy Bypass -File "C:\Program Files\Microsoft SQL Server\DwIaas\ConfigDwIaaSVM.ps1"
• SQL Server Setup command line (default instance installation):– C:\Program Files\Microsoft SQL Server\110\Setup Bootstrap\
SQLServer2012\setup.exe /ACTION=CONFIGUREIMAGE /IACCEPTSQLSERVERLICENSETERMS /INSTANCENAME="MSSQLSERVER" /Q
SQL Server Data Warehousing dans Azure
#JSS2013
demoOPTIMISATION SQL IAASConfiguration SQL Server optimisée pour le Data Warehousing dans Azure
#JSS2013
• LogShipping, Mirroring, AlwaysOn• AlwaysOn requiert SQL Entreprise
– Repose sur un cluster WSFC (Windows Server Failover Clustering)
– 8 secondaires (SQL 2014) :• 2 Synchrones, 6 Asynchrones
– Secondaires actifs pour :• Backup, reporting….
– Niveau de protection :• Base ou groupe de bases
– Notion de « Listener » :• Redirection automatique
Haute disponibilité de SQL Server dans Azure
High Availability and Disaster Recovery for SQL Server in Windows Azure Virtual Machines
#JSS2013
• Deploy a SQL Server AlwaysOn Availability Group in Windows Azure– http://gallery.technet.microsoft.com/scriptcenter/Dep
loy-a-SQL-Server-794bc810• Create WSFC Cluster for AlwaysOn
Availability Groups in Windows Azure VM– http://gallery.technet.microsoft.com/scriptcenter/Cre
ate-WSFC-Cluster-for-7c207d3a• Create Availability Group Listener in
Windows Azure VMs (Cloud-Only)– http://gallery.technet.microsoft.com/scriptcenter/Cre
ate-Availability-Group-fff94cd5• SharePoint 2013 Automated Deployment
Master Scripts– https://github.com/windowsazure/azure-sdk-tools-sa
mples
Automatisation d’une configuration AlwaysOn
#JSS2013
SQL SERVER IAAS VS AZURE SQL DATABASE
Quelle solution choisir ? Sur quels critères
#JSS2013
• Critères à prendre en compte : – Taille de la base, scalabilité, performance, coût, disponibilité,
gestion opérationnelle• Windows Azure SQL Database :
– Optimisé pour réduire les coûts. – Mise à disposition simple et rapide d’une infrastructure hautement
disponible.• SQL Server IaaS :
– La solution à privilégier pour la reprise de l’existant et pour les applications hybrides.
– Un contrôle total d’une instance dédiée SQL Server.– http://blogs.msdn.com/b/windowsazure/archive/2012/06/26/data-se
ries-sql-server-in-windows-azure-virtual-machine-vs-sql-database.aspx
SQL Server IaaS vs Azure SQL Database
#JSS2013#JSS2013