azure camp 9 décembre - slides session développeurs webmedia

Post on 09-Jul-2015

773 Views

Category:

Technology

2 Downloads

Preview:

Click to see full reader

DESCRIPTION

Retour sur SQL DB, SQL Server, Search, DocumentDB, Web Jobs, Media Service lors du Azure Camp le 9 Décembre 2014 chez Microsoft.

TRANSCRIPT

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)

top related