Upload
microsoft
View
773
Download
2
Embed Size (px)
DESCRIPTION
Retour sur SQL DB, SQL Server, Search, DocumentDB, Web Jobs, Media Service lors du Azure Camp le 9 Décembre 2014 chez Microsoft.
Citation preview
Bases de données SQL Server sur Azure
Bases de données SQL Server sur Azure
SQL Server en IaaS
SQL Server : cloud privé et public
SQL Server : les scénarios les plus communs
Stocker, sauvegarder /
restaurer les données
Développer, tester et
exécuter les applications
Etendre une
infrastructure existante
Aller là où un « data
center » ne peut aller
• SharePoint en IaaS
• SQL en IaaS
• Développements et
tests sur un
environnement IaaS
• Architecture hybride • Websites en IaaS
• Websites en PaaS
GVirtual Network
<subnet 1> <subnet 2> <subnet 3>
DNS Server
data pushauth
Microsoft Azure : responsabilités
Infrastructure (IaaS):
• Microsoft gère le matériel et la technologie de virtualisation
Plateforme (PaaS):
• Microsoft gère tout SAUF les applications et les données
Service Level Agreements
No SLA SLA 99.95
Disk Caching : bonnes pratiques pour SQL Server
8
Disque système
« Read Write » par défaut. Réduit les temps de
latence en lecture pour les applications
consommatrices d’IOs (bases de données <=10Go)
Disques de données
Cache désactivé par défaut . Ne pas activer pour
des applications qui effectues de nombreux
« Random IO » (OLTP).
Activer le cache pour les applications qui réalisent
beaucoup d’opérations de lecture qui peuvent être
sensibles aux temps de latences
Configuration 1 seul disque9
• Recommandé pour un stockage <1To
• Performance acceptable (<500 IOPs)
• Complexité minimale
Configuration plusieurs disques10
• Plusieurs disques
• Si besoin de plus d’1To
• Si besoin de beaucoup d’IOPS
• 2 choix de configuration :
• Séparation des fichiers de données et des logs du système d’exploitation. Pour les très grosses bases, création de plusieurs fichiers de bases de données qu’il est possible de séparer sur plusieurs disques
• Création d’un volume agrégeant plusieurs disques (Windows Server 2012 storage space)
Images de machines virtuelles optimisées
Agilité
Images disponibles depuis la galerie Azure
Utilise « Windows Storage Spaces » pour réduire la latence et
améliorer la performance au niveau des IO
Contrôle
Simplification du process d’installation
Automatisation possible par script PowerShell
Coût
Modèle de prix conforme à la politique tarifaire d’Azure.
Prédictibilité
SQL Server et les VM série D
12
• Les machines virtuelles (VM) séries D proposent des processeurs plus rapides et un disque local SSD
• Le disque local SSD peut être utilisé pour :
‐ TempDB
Plusieurs fichiers pour la base TempDB peut réduire la contention
1 fichier par cœur jusqu’à 8 cœurs (ce n’est pas une règle absolue). Au-delà de 8 cœurs….faire des tests
‐ Le buffer pool Extension
Disponible depuis SQL Server 2014
Autre scénarios SQL dans Azure
Business Intelligence (BI)
• Création de cubes Olap
• Serveur de rapports Reporting Services
• BI complète avec SharePoint
Haute disponibilité et « disaster recovery » dans Azure
• Disponibilité des serveurs SQL sur site ou dans Azure (hybride)
• Utiliser d’autres serveurs SQL dans des VM dans la même région Azure
• Support d’AlwaysON avec des serveurs primaire et secondaires
démonstration
Azure SQL Database
Azure SQL Database
Workloadtransactionnels légers
Workloadtransactionnels moyens
Worloadtransactionnels lourds
Niveau de performance unique
Worloadtransactionnels lourds
Familier et managé
Continuité de service
Elasticité et performance
Niveaux de services Azure SQL Database
« Self-service restore »• Sauvegardes automatiques dans
Azure Storage
• Logs transactionnels périodiques (5 mn)
• Copie d’une base sans interruption de service
• API REST, PowerShell ou portail Azure
• Politique de rétention des sauvegardes:• Basic, dernier état connu (max 24
heures)• Standard (max 7 jours)• Premium (max 35 jours)
Geo- replicated
Restore from backup
SQL Database
Backups
sabcp01bl21
Azure Storage
sabcp01bl21
Geo- replicated
SQL Database
Backups
sabcp01bl21
Azure Storage
sabcp01bl21
Restore to any
Azure region
« Basic Recovery »
•Disponible pour les services Basic, Standard et Premium
•Bâti sur le « self-service restore »
•Restauration de la base sur n’importe quelle région
Geo- replicated
« Geo-réplication »• Inclus en Standard
• Création d’un serveur secondaire passif
• Réplication dans une région Azure prédéfinie
• Réplication automatique et asynchrone des données
• API REST, PowerShell ou portail Azure
• RTO < 24h, RPO < 1h
« Active Geo-Replication »• Activation self service en mode
Premium
• Création de serveurs secondaires accessibles en lecture (max 4)
• Réplication sur n’importe quelle région Azure
• Réplication automatique asynchrone des données
• REST API, PowerShell ou Portail Azure
• RTO < 1h, RPO < 5mn
• Possibilité Bascule déclenchée par l’utilisateur
Up to 4secondaries
démonstration
Elastic Scale : Vue d’ensemble
Grow/shrink capacity
Scale-out Layer(initially limited functionality, increasingly
richer over time)
Elastic Scale app
shard1 shardi
Elastic Scale
Manage-ability
Admin/DevOps
Admin/DevOps
Application Developer
… … shardj shardn…
Full localfunctionality
Limitedfunctionality
Shard-localoperations
Full localfunctionality
Limitedfunctionality
Client library
Cross-shard
extensions
Cross-shardoperations
Client library
Shard-localoperations
Cross-shardoperations
Elastic Scale : plus conrcrêtement…
Terminologie
(1)
Database
(2) Sharding Key
. . .
(3) Shard Map
Manager
(4)
Shard
(4) Shard
(5) Shard Set
(6) Sharded Table
(7) Reference Table
(8) Shardlet
Customer ID Name
1 Alice
2 Bob
Customer Table
Data Center ID DC Name
1 Boston
2 Miami
Data Center Table
démonstration
Avant de se quitter…
Azure SQL Database : Prochainement
•Nouvelle preview à venir fin 2014• Surface fonctionnelle plus grande• Performances améliorées
• In-memory columnstore• Parallel queries• Rebuild d’index > 2Go
•Nouveau tiers pensé pour les éditeurs• Besoin d’un grand nombre de base de données• Gestion des ressources pour l’ensemble de ces bases
Azure Search (20’)
Benjamin Moulès – Microsoft
Pierre Therrode – Reezocar
Azure Search
Utiliser Azure Search
Mise à disposition du service
Définir la capacité, le niveau de tiers, accès à l’authentification
Depuis le portail ou l’API
1 ou plusieurs indexes
Nom du service -> API root URL
ex: https://monsvc.search.windows.net
C’est une collection de documents
Il y a un schema!
De nombreuses options comme du “scoring”, “ranking”…
Le nom de l’index -> API URL:ex: https://monsvc.search.windows.net/indexes/monindex
Créer des indexes
Liste des champs et leurs configurations Type de données: string, int, double, datetime, boolean, geo-point
Valeurs uniques ou collections
Pour chaque champ, préciser si on veut l’utiliser pour … Recherche
Suggestion
Filtre
Créer des indexes - Schéma
Les données sont indexés par batches Par paquet de maximum 1000 opérations: upload, merge, delete or mergeOrUpload
POST vers https://monsvc.search.windows.net/indexes/monindex/docs/index
Succès de la réponse garanti la durabilité Le client doit valider les statuts de réponses HTTP pour chaque opérations individuelles
Les données sont indexés et donc « recherchable » quelques secondes après.
On doit l’indexer, ce qui va dépendre de l’activité du système
Indexer des données
La portée de la recherche est défini par son index
L'API de recherche offre un certain nombre d'options: Recherche par « full-texte », incluant les opérateurs de recherche classiques (+, -,
« », …)
Requêtes possible: filtrage, tri, pagination et la sélection de champ Recherche par facettes
Mise en évidence de Hit
Des résultats incluant des scores plus les champs demandés
Peut-être utilisé pour remonter les résultats sans contacter le magasin primaire
Rechercher
Construire des blocs pour de l’auto-complétion Recherche de texte partiel -> liste de suggestions
Balance complexe entre vitesse et fonctionnalités Exécuté alors que tu tapes!
Les suggestions viennent des données du documentOn doit définir l’option dans la définition de l’index
Rechercher - Suggestions
Ranking disponiblePoids, fonctions, profils …
Scoring également disponibleFonctions, magnitude, fraicheur, distance, …
démonstration
DocumentDB
Thomas Conté
{"id": "AzureDocumentDB","servicetype": "Data Platform","servicename": "Azure DocumentDB","releasetype": "Preview","public": true,"regions": [
{"name": "North Europe","visible": true,"capacity": 230034
},{
"name": "West US","visible": true,"capacity": 800034
},{
"name": "East US","visible": false,"capacity": 1000034
}]
}
{"id": "MS_125734","name": "John Macintyre","jobrole": "Program Manager","companyname": "Microsoft","photo": null,"bio": "John builds stuff at Microsoft.","topicids": [
"MS_Azure_12","MS_Azure_23","MS_Azure_44"
],"sessonids": [
"MS_TEE_DBIB318","MS_TEE_DBI212"
]}
Conçue, construite et optimisée pour JSON
{ }JSON
Sans schéma et indexée
SQL
Procédures stockées, UDFs, triggers
JS
Cohérence réglable
Évolutive et clefs en mains
DocumentDB at Microsoft
user data store
Vue d’ensemble
Modèle de ressources Entités adressables par URL
Partitionné pour scale out
Répliqué pour HA
Entités représentées en JSON
Évolutivité par ajout de Capacity Units
{ }{ }
JS
JS
JS
démonstration
WebJobsStéphane GOUDEAU - Microsoft
Florent SANTIN – Infinite Square
Le besoin
•Script, Batch, Service Windows… quelle architecture n’en a jamais eu besoin ?
•Effectuer des traitements en tâche de fond :• Intégration de données externes
• Traitements asynchrones
• Nettoyage / optimisation de données
• …
Les différentes possibilités
Worker rôle
L’historique !VM IaaS
Un sentiment de
liberté !
Web Jobs
Petit nouveau
plein de potentiel!
+• Scalable
• Permet de faire tourner
n’importe quel traitement
-• Compliqué à développer,
debugger, monitorer
• Scheduling manuel ou via
le Scheduler Azure
+• Simple à déployer
• Simple à développer
• Scheduler de Windows
-• Scalabilité plus
complexe à mettre en
œuvre
• Il faut gérer une VM…
+• Orienté PaaS
• Simple et complet
• Configuration par un IT
Pro comme par un Dev
• Un vrai scheduler Cloud !
-
• Pas d’action sur l’OS
(PaaS)
Zoom sur les WebJobs
• Un WebJob dans Azure c’est :• Hébergé dans un Website : Ni VM, ni Cloud Service, WebJob == Website !
• Tourne dans le process IIS : tant que celui-ci est disponible
• (auto)Scalable comme un Website
• L’ensemble des avantages du Website (Stagging, modes gratuits…)
• L’écriture d’un WebJob c’est :• IT : Un script PowerShell, .cmd, .bat, .sh, PHP, Python ou Node < 100 Mo
• DEV : Une application .NET créée à partir d’un modèle
démonstration
WebJob : Déclenchement
• Méthode 1 : Déclenchement par le Scheduler• Utilisation du Azure Scheduler (planificateur)
• Configuration assistée depuis le WebJob
• Configurée avancée depuis le Scheduler
• Ex : Déclenchement récurent à certains jours, chaque week-end, par intervalle de temps d’attente…
démonstration
WebJob : Déclenchement
• Méthode 2 : Déclenchement par interaction externe• Déclenchement à l’apparition d’un message
• Microsoft Azure Storage Blobs, Queues ou Table…
• …ou Service Bus Queues
• Nécessite l’utilisation du Azure WebJobs SDK
• Ex : Traitements asynchrones entre systèmes
WebJob : Monitoring
• Le SDK Azure WebJobs offre l’outillage nécessaire pour suivre chaque action effectuée dans le code
• Le portail Azure offre une interface de monitoring avancée :• Etat / liste des exécutions de Webjobs planifiés ou déclenchés
• Consultation du log / des erreurs
• Redémarrage en cas d’échec
Un exemple d’application…
Website
Web Job
Azure Queue Storage
Azure Blob Storage
Azure SQL
Database
démonstration
Conclusion
•WebJobs = LA solution pour implémenter les traitements en tâche de fond
•Simplification du code grâce au SDK WebJobs
•Modèle de déploiement simple et rapide
•Scalabilité de l’infrastructure des Websites Azure
•Traçabilité de l’exécution et monitoring
Azure Media Services (30’)
Benjamin Moulès – Evangéliste – Microsoft France
Julien Corioland – Développeur – Infinite Square
Tendances de l’industrie digitaleDE PLUS EN PLUS D’ÉCRANS CONNECTÉS, EXPLOSION DE LA DEMANDE ET DES COÛTS
73
Il y a dans le monde plus
de 7,2 Milliards de devices
et ils se multiplient 5 fois
plus vite que nous!
D’ici 2016, 20 Milliards
d’appareils vont
générer 10.8 Exabytes
(1 EB = 1000 PB) de
données chaque mois
20MdDavantages
d'écrans connectésEt…
Avec un écosystème de
partenaires en
croissance permanente,
disposant de solutions
à valeurs ajoutées
Diffusion en-Direct &
à la demande avec
intégration CDN
Protection de contenu
Encodage, multiplexage, et indexation
Téléchargementvers le Cloud puis stockage
Des composants élastiques
pour construire des flux de
données vidéos sur mesure
dans le Cloud
Qu’est ce qu’on veut dire par
Azure Media Services?
Player
Clients
CDNDistributionProtection
de contenuMultiplexageEncodage
Fonctionnalités clefs d’Azure Media Services
Rapide, écriture parallèle,
sécurisé et protection
aussi bien pendant le
transit des données ainsi
que dès leur stockage
dans le cloud.
Téléchargement montant
en HTTPS et en UDP
rapide des fichiers vidéos
Ingestion RTMP pour le
direct
Cloud élastique
permettant de gérer des
centaines, voire des
milliers de tâches
s’encodage parallèles vers
de multiples formats
vidéos et audio (H.264,
WMV, VC-1, Dolby Digital,
AAC, …), création de MP4
multi-débits, ou bien
utilisation d’encodeurs
tiers intégrés comme celui
d’imagine (Digital Rapids
Kayak) pour des
fonctionnalités premiums.
Utilisation de protocoles
de streaming adaptatifs
performant – HLS (V3, V4),
Smooth, MPEG-DASH – de
sorte à atteindre les
différents types d’écrans
connectés populaire
d’aujourd’hui tel que iOS,
Android, Windows 7/8,
Xbox 360/One, et bien
plus encore.
Chiffrement avec de
« l’AES 128-bit Clear Key »
ou bien utilisation de
technologie de gestion de
droits numériques (DRM -
Digital Right
Management) avec
PlayReady.
Ces deux options
disposent de la possibilité
d’héberger les clefs de
License dans le Cloud.
Support de flux vidéo à la
demande
Support du direct
Distribution
Gestion du cache et
livraison dans toute les
géographies de vos
données avec l’Azure CDN
ou bien des CDN tiers qui
se connectent de manière
sécurisés à nos origines.
Aussi possible d’utiliser
une authentification basée
sur un token ou des
fonctionnalités de geo-
blocking.
Livraison vers tous les plus
populaires appareils du
marché incluant les PCs
(Windows et Mac OS), iOS,
Android, Smart TVs,
console de jeux, et plus
encore.
Parmi nos lecteurs
disponible, nous avons
Ooyala, Deltatre, JW
Player, OSMF ou bien de
construire votre propre
Lecteurs avec le
framework Microsoft
Player Framework SDK
TéléchargementLecteursClients
Annoncés au début de l’automne 2014! Streaming Live, Encodage plus rapide et moins cher, Protection dynamique,
Clef et licence délivrée en tant que service, Indexation de contenu, davantage de lecteurs
De nouvelles unités
réservées Standard et
Premium
Accède à la capacité et aux
performance dont vous avez
besoin pour vos débordements
dans le Cloud.Basic Standard Premium
Vitesse d’encodage
Performance
2x
Rapide
4-5x
Rapide
Azure Media Encoder Premium Workflow
Support des formats utilisés par les studios et
les broadcasters
Création du processus d’encodage dans un
environnement simple et visuel
Soumission du workflow à Media Services
Azure Media Services – Indexation de contenu
• « Le Washington Post est reconnu pour son expertise en politique. Nous utilisons Microsoft Azure Media Services Content Indexer afin de nous aider à constuire un moyen révolutionnaire de partager cette expertise sur le Web. »
• Conversion de la voix vers du texte
• Recherche via une très large librairie de contenu pour un terme spécifique ou une phrase
• Indexe des milliers d’heures de contenu vidéo avec une technologie de reconnaissance naturelle du langage
Azure Media Content Protection
• Player Frameworks, SDKs et lecteurs d’exemple
• Support de multiples protocoles dans Azure Media Services
• Distribution premium avec PlayReady / AES Clear Key
• Monétisation avec Publicités
• Captures de donnés pour les statistiques
• Fonctions avancés pour la sélection du flux, des angles de caméra, …
• Partenariats avec des acteurs comme JW Player
Une interface utilisateur,
simple à utiliser qui pilote
Azure Media Services
Dernière version
http://aka.ms/amse
Code sourcehttps://github.com/Azure/Azure-Media-Services-Explorer/
Articlehttp://azure.microsoft.com/blog/2014/10/08/managing-media-workflows-with-the-new-azure-media-services-explorer-tool/
Multiplexage dynamiqueVous permet de ré-utiliser votre contenu encodé et de le multiplexer vers d’autres formats de streaming sans avoir à stocker une version différente de votre contenu.
Sources video MP4 multi-débitsServeur origine
HLS
Smooth
Streaming
Encodage
Sources video MP4 multi-débits
Ou Contenu Smooth Serveur origine
HLS
v3, v4
Smooth
Streaming
Encodage
Multiplexage
Dynamique
Encodage et multiplexage traditionnel
Multiplexage dynamique
MPEG
DASH
HDS
Multiplexage dynamique et chiffrement dynamique
Video sourcesSmooth Streaming
Serveur de streaming
Smooth
Streaming
+ PlayReady
Encodage
Dynamic
Packaging
Chiffrement statique
DASH
+ CENC
PlayReady
Smooth Streaming
+ PlayReady
Chiffrement
Video sources Multi-bitrates Mp4
Or Smooth Asset
Serveur de streaming
HLS
+ AES ou PlayReady
Smooth
Streaming
+ AES ou PlayReady
Encodage
Dynamic
Packaging and
Encryption
Chiffrement dynamique
DASH
+ CENC
Streaming en direct et à la demande
84
Support de tout devices
Multiplexage dynamique HLS v3 and v4
MPEG-DASH
HDS
Smooth
Chiffrement dynamique AES clear key
• PlayReady
Signalisation publicitaire multi-protocole
Montée en charge élastique
Génération de flux VOD depuis le live en temps réel
Supervision quasi-temps réel
Support de d’Azure CDN et CDN tiers
SLA
démonstration
Live Stream - Démo
Azure Storage Streaming EndpointChannel
IngestURL
PreviewURL
ProgramURL
Webcam + WireCast
RTMP
Streaming
Adaptif (HLS, Dash, Smooth…)
(+ AES si besoin)