Académique Documents
Professionnel Documents
Culture Documents
DP-900T00FR
Principes fondamentaux
des données Microsoft
Azure
RÉSERVÉ À UNE UTILISATION FORMATEUR. UTILISATION ÉTUDIANT INTERDITE
Principes fondamentaux des
données Microsoft Azure
DP-900T00FR
RÉSERVÉ À UNE UTILISATION FORMATEUR. UTILISATION ÉTUDIANT INTERDITE
II Disclaimer
Les informations contenues dans le présent document, y compris l’URL et les autres références à des sites
Web Internet, peuvent être modifiées sans préavis. Sauf mention contraire, les sociétés, organisations,
produits, noms de domaine, adresses e-mail, logos, personnes, lieux et événements mentionnés ici à titre
d’exemple sont purement fictifs, et aucune association à tout(e) société, organisation, produit, nom de
domaine, adresse e-mail, logo, personne, lieu ou événement réel n’est intentionnelle ou volontaire. Il
appartient à l’utilisateur de veiller au respect de toutes les dispositions légales applicables en matière de
copyright. En vertu des droits d’auteur, aucune partie de ce document ne peut être reproduite, stockée
ou introduite dans un système de recherche automatique, ni transmise sous quelque forme ou par
quelque moyen que ce soit (électronique, mécanique, photocopie, enregistrement ou autre), ou dans
n’importe quel but, sans l’autorisation écrite de Microsoft Corporation.
Selon les cas, Microsoft détient des brevets (ou a déposé des demandes de brevets), ainsi que des
marques, des copyrights ou autres droits de propriété intellectuelle sur les questions évoquées dans ce
document. Sauf disposition contraire expressément stipulée dans un accord de licence écrit concédé par
Microsoft, la communication de ce document ne confère au destinataire aucun droit sur les brevets,
marques, copyrights et autres droits de propriété intellectuelle.
Les noms des fabricants, produits ou URL sont fournis à titre d’information uniquement et Microsoft ne
fait aucune déclaration ni n’offre aucune garantie, qu’elle soit expresse, implicite ou légale, quant à ces
fabricants ou à l’utilisation des produits avec des technologies Microsoft. L’inclusion d'un fabricant ou
d'un produit n’implique pas que Microsoft cautionne le fabricant ou le produit. Des liens vers des sites
tiers peuvent éventuellement être fournis. De tels sites ne sont pas sous le contrôle de Microsoft et
Microsoft n’est nullement responsable du contenu des sites ainsi liés ou des liens inclus dans les sites
ainsi liés, ou encore des changements ou des mises à jour qui peuvent y être apportés. Microsoft décline
toute responsabilité quant à la diffusion web ou toute autre forme de transmission reçue d’un site lié.
Microsoft ne vous fournit ces liens que par commodité, et l’inclusion de liens n'implique nullement que
Microsoft cautionne le site ou les produits qu’il contient.
© 2019 Microsoft Corporation. Tous droits réservés.
Microsoft et les marques de commerce mentionnées dans http://www.microsoft.com/trademarks 1
sont des marques de commerce du groupe de sociétés Microsoft. Toutes les autres marques de com-
merce appartiennent à leurs propriétaires respectifs.
1 http://www.microsoft.com/trademarks
RÉSERVÉ À UNE UTILISATION FORMATEUR. UTILISATION ÉTUDIANT INTERDITE
EULA III
10. « Membre Microsoft Learning Competency » désigne un membre actif du programme Microsoft
Partner Network, en règle et jouissant actuellement du statut de Compétence pédagogique.
11. « MOC » désigne la formation dispensée par un instructeur d'un « Official Microsoft Learning
Product » qui forme des professionnels de l'informatique, des développeurs, des étudiants d'une
institution académique et autres apprenants, à des technologies Microsoft.
12. « Membre MPN » désigne un membre du programme Microsoft Partner Network actif et en règle.
13. « Appareil Personnel » désigne un (1) ordinateur personnel, un appareil, une station de travail ou
autre appareil électronique numérique que vous possédez ou contrôlez personnellement et qui est
au minimum conforme aux exigences matérielles requises pour le Courseware Microsoft dispensé
par un instructeur spécifique.
14. « Session de Formation Privée » désigne les cours de formation dispensés par un instructeur
fournis par des Membres MPN à des clients d'entreprise pour remplir un objectif d'apprentissage
prédéfini fondé sur un Courseware Microsoft dispensé par un instructeur. Ces formations ne font
pas l'objet d'annonces ou de promotions à l'attention du public général et la participation à ces
classes est limitée aux individus employés par le client d'entreprise ou un de ses sous-traitants.
15. « Formateur » désigne (i) un instructeur certifié engagé par un Membre du Programme Microsoft
Imagine Academy pour animer une Session de Formation Agréée, (ii) un instructeur certifié en tant
que Microsoft Learn for Educators – Validated Educator, et/ou (iii) un MCT.
16. « Contenu Formateur » désigne la version Formateur du Courseware Microsoft dispensé par un
instructeur ainsi que le contenu supplémentaire conçu exclusivement pour que les formateurs
puissent animer une session de formation basée sur le Courseware Microsoft dispensé par un
instructeur. Le Contenu Formateur peut inclure des présentations Microsoft PowerPoint, un guide
de préparation du formateur, des supports formateur, des packs Microsoft One, un guide d'instal-
lation de la salle de classe et un formulaire de commentaires sur la formation en Pré-distribution.
Pour clarifier, le Contenu Formateur n'inclut pas de logiciels, de disques durs virtuels ni de ma-
chines virtuelles.
2. DROITS D'UTILISATION.Le Contenu Sous Licence n'est pas vendu, mais concédé sous licence. Le
Contenu Sous Licence est concédé sous licence sur la base d'une copie par utilisateur. Vous devez
donc acquérir une licence pour chaque individu ayant accès au Contenu Sous Licence ou l'utilisant.
●● 2.1 Les cinq ensembles distincts de droits d'utilisation sont décrits ci-dessous. Un seul
ensemble de droits s'applique à vous.
1. Si vous êtes Membre du Programme Microsoft Imagine Academy (MSIA) :
1. Chaque licence acquise pour votre propre compte ne peut être utilisée que pour l'examen
d'une (1) copie du Courseware Microsoft dispensé par un instructeur sous la forme sous
laquelle il vous a été remis. Si le Courseware Microsoft dispensé par un instructeur est au
format numérique, vous pouvez installer une (1) copie sur trois (3) Appareils Personnels au
maximum. Vous ne pouvez pas installer le Courseware Microsoft dispensé par un instruc-
teur sur un appareil que vous ne possédez pas ou ne contrôlez pas.
2. Pour chaque licence que vous acquérez pour le compte d'un Utilisateur Final ou d'un
Formateur, vous pouvez :
1. distribuer une (1) version papier du Courseware Microsoft dispensé par un instructeur à
un (1) Utilisateur Final inscrit à la Session de Formation Agréée, et uniquement immédi-
atement avant le début de la Session de Formation Agréée faisant l'objet du Courseware
Microsoft dispensé par un instructeur fourni, ou
RÉSERVÉ À UNE UTILISATION FORMATEUR. UTILISATION ÉTUDIANT INTERDITE
EULA V
2. fournir à un (1) Utilisateur Final le code d'échange unique et les instructions d'accès à
une (1) version numérique du Courseware Microsoft dispensé par un instructeur, ou
3. fournir à un (1) Formateur le code d'échange unique et les instructions d'accès à un (1)
Contenu Formateur,
à condition que vous vous conformiez aux exigences suivantes :
3. vous ne fournirez un accès au Contenu Sous Licence qu'aux seuls individus ayant acquis une
licence valide pour le Contenu Sous Licence,
4. vous veillerez à ce que chaque Utilisateur Final participant à une Session de Formation
Agréée possède sa propre copie sous licence valide du Courseware Microsoft dispensé par
un instructeur faisant l'objet de la Session de Formation Agréée,
5. vous veillerez à ce que chaque Utilisateur Final ayant reçu la version papier du Courseware
Microsoft dispensé par un instructeur reçoive une copie du présent contrat, et à ce que
chaque Utilisateur Final accepte que son utilisation du Courseware Microsoft dispensé par
un instructeur soit soumise aux termes de ce contrat avant toute remise du Courseware
Microsoft dispensé par un instructeur. Chaque individu devra signaler son acceptation du
présent contrat d'une manière conforme à la législation locale avant de pouvoir accéder au
Courseware Microsoft dispensé par un instructeur,
6. vous veillerez à ce que chaque Formateur animant une Session de Formation Agréée
possède sa propre copie sous licence valide du Contenu Formateur faisant l'objet de la
Session de Formation Agréée,
7. vous ne ferez appel qu'à des Formateurs qualifiés qui disposent d'une connaissance et
d'une expérience approfondies de la technologie Microsoft faisant l'objet du Courseware
Microsoft dispensé par un instructeur enseigné pour toutes vos Sessions de Formation
Agréées,
8. vous ne fournirez que 15 heures de formation hebdomadaire au maximum pour chaque
Session de Formation Agréée utilisant un titre de MOC, et
9. vous reconnaissez que les Formateurs qui ne sont pas des MCT n'auront pas accès à toutes
les ressources de formation pour le Courseware Microsoft dispensé par un instructeur.
2. Si vous êtes un Membre de Microsoft Learning Competency :
1. Chaque licence acquise pour votre propre compte ne peut être utilisée que pour l'examen
d'une (1) copie du Courseware Microsoft dispensé par un instructeur sous la forme sous
laquelle il vous a été remis. Si le Courseware Microsoft dispensé par un instructeur est au
format numérique, vous pouvez installer une (1) copie sur trois (3) Appareils Personnels au
maximum. Vous ne pouvez pas installer le Courseware Microsoft dispensé par un instruc-
teur sur un appareil que vous ne possédez pas ou ne contrôlez pas.
2. Pour chaque licence que vous acquérez pour le compte d'un Utilisateur Final ou d'un MCT,
vous pouvez :
1. distribuer une (1) version papier du Courseware Microsoft dispensé par un instructeur à
un (1) Utilisateur Final participant à la Session de Formation Agréée, et uniquement
immédiatement avant le début de la Session de Formation Agréée faisant l'objet du
Courseware Microsoft dispensé par un instructeur fourni, ou
2. fournir à un (1) Utilisateur Final participant à la Session de Formation Agréée le code
d'échange unique et les instructions d'accès à une (1) version numérique du Courseware
Microsoft dispensé par un instructeur, ou
RÉSERVÉ À UNE UTILISATION FORMATEUR. UTILISATION ÉTUDIANT INTERDITE
VI EULA
3. fournir à un (1) MCT le code d'échange unique et les instructions d'accès à un (1)
Contenu Formateur,
à condition que vous vous conformiez aux exigences suivantes :
3. vous ne fournirez un accès au Contenu sous licence qu'aux seuls individus ayant acquis une
licence valide pour le Contenu sous licence,
4. vous veillerez à ce que chaque Utilisateur Final participant à une Session de Formation
Agréée possède sa propre copie sous licence valide du Courseware Microsoft dispensé par
un instructeur faisant l'objet de la Session de Formation Agréée,
5. vous veillerez à ce que chaque Utilisateur Final ayant reçu une version papier du Course-
ware Microsoft dispensé par un instructeur reçoive un exemplaire du présent contrat, et à
ce que chaque Utilisateur Final accepte que son utilisation du Courseware Microsoft
dispensé par un instructeur soit soumise aux termes de ce contrat avant toute remise du
Courseware Microsoft dispensé par un instructeur. Chaque individu devra signaler son
acceptation du présent contrat d'une manière conforme à la législation locale avant de
pouvoir accéder au Courseware Microsoft dispensé par un instructeur,
6. vous veillerez à ce que chaque MCT animant une Session de Formation Agréée possède sa
propre copie sous licence valide du Contenu Formateur faisant l'objet de la Session de
Formation Agréée,
7. vous ne ferez appel qu'à des MCT qualifiés qui possèdent également l'accréditation de
Certification Microsoft applicable faisant l'objet du titre du MOC enseigné pour toutes vos
Sessions de Formation Agréées avec MOC,
8. vous ne fournirez un accès au Courseware Microsoft dispensé par un instructeur qu'aux
Utilisateurs Finaux, et
9. vous ne fournirez un accès au Contenu Formateur qu'aux MCT.
3. Si vous êtes un Membre MPN :
1. Chaque licence acquise pour votre propre compte ne peut être utilisée que pour l'examen
d'une (1) copie du Courseware Microsoft dispensé par un instructeur sous la forme sous
laquelle il vous a été remis. Si le Courseware Microsoft dispensé par un instructeur est au
format numérique, vous pouvez installer une (1) copie sur trois (3) Appareils Personnels au
maximum. Vous ne pouvez pas installer le Courseware Microsoft dispensé par un instruc-
teur sur un appareil que vous ne possédez pas ou ne contrôlez pas.
2. Pour chaque licence que vous acquérez pour le compte d'un Utilisateur Final ou d'un
Formateur, vous pouvez :
1. distribuer une (1) version papier du Courseware Microsoft dispensé par un instructeur à
un (1) Utilisateur Final participant à la Session de Formation Privée, et uniquement
immédiatement avant le début de la Session de Formation Privée faisant l'objet du
Courseware Microsoft dispensé par un instructeur fourni, ou
2. fournir à un (1) Utilisateur Final participant à la Session de Formation Privée le code
d'échange unique et les instructions d'accès à une (1) version numérique du Courseware
Microsoft dispensé par un instructeur, ou
3. fournir à un (1) Formateur animant la Session de Formation Privée le code d'échange
unique et les instructions d'accès à un (1) Contenu Formateur,
à condition que vous vous conformiez aux exigences suivantes :
RÉSERVÉ À UNE UTILISATION FORMATEUR. UTILISATION ÉTUDIANT INTERDITE
EULA VII
3. vous ne fournirez un accès au Contenu Sous Licence qu'aux seuls individus ayant acquis une
licence valide pour le Contenu Sous Licence,
4. vous veillerez à ce que chaque Utilisateur Final participant à une Session de Formation
Privée possède sa propre copie sous licence valide du Courseware Microsoft dispensé par
un instructeur faisant l'objet de la Session de Formation Privée,
5. vous veillerez à ce que chaque Utilisateur Final ayant reçu une version papier du Course-
ware Microsoft dispensé par un instructeur reçoive un exemplaire du présent contrat, et que
chaque Utilisateur Final accepte que son utilisation du Courseware Microsoft dispensé par
un instructeur soit soumise aux termes de ce contrat avant que le Courseware Microsoft
dispensé par un instructeur lui soit remis. Chaque individu devra signaler son acceptation
du présent contrat d'une manière conforme à la législation locale avant de pouvoir accéder
au Courseware Microsoft dispensé par un instructeur,
6. vous veillerez à ce que chaque Formateur animant une Session de Formation Privée pos-
sède sa propre copie sous licence valide du Contenu Formateur faisant l'objet de la Session
de Formation Privée,
7. vous ne ferez appel qu'à des Formateurs qualifiés qui possèdent l'accréditation de Certifica-
tion Microsoft applicable faisant l'objet du titre du Courseware Microsoft dispensé par un
instructeur enseigné pour toutes vos Sessions de Formation Privées,
8. vous ne ferez appel qu'à des MCT qualifiés qui possèdent l'accréditation de Certification
Microsoft applicable faisant l'objet du titre du MOC enseigné pour toutes vos Sessions de
Formation Privées avec MOC,
9. vous ne fournirez un accès au Courseware Microsoft dispensé par un instructeur qu'aux
Utilisateurs Finaux, et
10. vous ne fournirez un accès au Contenu Formateur qu'aux Formateurs.
4. Si vous êtes un Utilisateur Final :
Pour chaque licence que vous acquérez, vous pouvez utiliser le Courseware Microsoft dispensé
par un instructeur à des fins de formation personnelle uniquement. Si le Courseware Microsoft
dispensé par un instructeur est au format numérique, vous pouvez accéder au Courseware
Microsoft dispensé par un instructeur en ligne en utilisant le code d'échange unique qui vous a
été remis par le fournisseur de la formation, et installer et utiliser une (1) copie du Courseware
Microsoft dispensé par un instructeur sur trois (3) Appareils Personnels au maximum. Vous
pouvez également imprimer une (1) copie du Courseware Microsoft dispensé par un instruc-
teur. Vous ne pouvez pas installer le Courseware Microsoft dispensé par un instructeur sur un
appareil que vous ne possédez pas ou ne contrôlez pas.
5. Si vous êtes un Formateur.
1. Pour chaque licence que vous acquérez, vous pouvez installer et utiliser une (1) copie du
Contenu Formateur sous le format qui vous a été remis sur un (1) Appareil Personnel dans
le seul but de préparer et de fournir une Session de Formation Agréée ou une Session de
Formation Privée, et installer une (1) copie supplémentaire sur un autre Appareil Personnel
en tant que copie de sauvegarde, ne pouvant être utilisée que pour réinstaller le Contenu
Formateur. Vous ne pouvez pas installer ou utiliser une copie du Contenu Formateur sur un
appareil que vous ne possédez pas ou ne contrôlez pas. Vous pouvez également imprimer
une (1) copie du Contenu Formateur à des seules fins de préparation et de prestation d'une
Session de Formation Agréée ou d'une Session de Formation Privée.
RÉSERVÉ À UNE UTILISATION FORMATEUR. UTILISATION ÉTUDIANT INTERDITE
VIII EULA
2. Si vous êtes un MCT, vous pouvez personnaliser les sections écrites du Contenu Formateur
qui sont logiquement associées avec les instructions d'une session de formation conformé-
ment à la version la plus récente du contrat MCT.
3. Si vous choisissez d'exercer les droits précédents, vous acceptez de vous conformer aux
exigences suivantes : (i) les personnalisations peuvent uniquement être utilisées pour
animer des Sessions de Formation Agréée et des Sessions de Formation Privée, et (ii) toutes
les personnalisations doivent être conformes au présent contrat. Pour clarifier, toute
utilisation de « personnalisation » désigne uniquement une opération consistant à changer
l'ordre des diapos et du contenu, et/ou à ne pas utiliser toutes les diapos ou tout le con-
tenu. Elle ne signifie pas la modification de diapos ou de contenu.
●● 2.2 Séparation des composants. Le Contenu Sous Licence est fourni en tant qu'unité
unique et vous ne pouvez pas séparer ses composants et les installer sur différents appareils.
●● 2.3 Redistribution du Contenu Sous Licence. Sauf disposition express énoncée dans les
droits d'utilisation ci-dessus, vous ne pouvez pas distribuer le Contenu Sous Licence ou toute
section de ce contenu (y compris les modifications autorisées) à des tiers sans l'autorisation écrite
express de Microsoft.
●● 2.4 Avis relatifs aux Tiers. Le Contenu Sous Licence peut contenir du code de tiers que
Microsoft, et non le tiers, vous concède sous licence aux termes du présent contrat. Les mentions
éventuelles relatives au code de tiers sont incluses pour votre information uniquement.
●● 2.5 Termes de contrat supplémentaires. Certains Contenus Sous Licence peuvent contenir
des composants associés à des termes de contrat, des conditions et des licences supplémentaires
relatifs à leur utilisation. Tout terme n'entrant pas en conflit avec ces conditions et licences s'ap-
plique également à votre utilisation de ce composant respectif et complète les termes décrits dans
ce contrat.
3. CONTENU SOUS LICENCE BASÉ SUR UNE TECHNOLOGIE EN PRÉ-DISTRIBUTION.Si l'objet du
Contenu Sous Licence est basé sur une version en pré-distribution de technologie Microsoft («
Pré-distribution»), outre les autres dispositions du présent contrat, les termes suivants s'appliquent
également :
1. Contenu sous Licence en Pré-distribution. L'objet du Contenu Sous Licence concerne la version
en Pré-distribution de la technologie Microsoft. La technologie peut ne pas fonctionner à la
manière d'une version finale de la technologie et il est possible que nous apportions des modifica-
tions à la technologie pour la version finale. Il peut également arriver que nous ne distribuions pas
de version finale. Le Contenu Sous Licence basé sur la version finale de la technologie peut ne pas
contenir les mêmes informations que le Contenu Sous Licence basé sur la version en Pré-distribu-
tion. Microsoft n'est pas tenu de vous fournir des contenus supplémentaires, y compris un
Contenu Sous Licence basé sur la version finale de la technologie.
2. Commentaires. Si vous acceptez de faire part à Microsoft de vos commentaires sur le Contenu
Sous Licence, soit directement, soit via un tiers désigné, vous accordez à Microsoft, à titre gratuit,
le droit d'utiliser, de partager et de commercialiser vos commentaires de quelque manière et dans
quelque objectif que ce soit. Vous accordez également à des tiers, à titre gratuit, tous les droits de
brevet dont ils ont besoin pour que leurs produits, technologies et de services puissent utiliser ou
s'interfacer avec des composants spécifiques d'une technologie Microsoft, d'un produit Microsoft
ou d'un service incluant les commentaires. Vous ne ferez pas part de commentaires qui sont
soumis à une licence exigeant que Microsoft concède sous licence sa technologie, ses technolo-
gies ou ses produits à des tiers parce que nous incluons vos commentaires dans ces derniers. Ces
droits survivent à ce contrat.
RÉSERVÉ À UNE UTILISATION FORMATEUR. UTILISATION ÉTUDIANT INTERDITE
EULA IX
●● accéder ou autoriser un individu à accéder au Contenu Sous Licence s'il n'a pas acquis une licence
valide pour le Contenu Sous Licence,
●● modifier, supprimer ou obscurcir les mentions de droit d'auteur ou autres mentions protectrices (y
compris les filigranes), marques ou identifications contenues dans le Contenu Sous Licence,
●● modifier ou créer un ouvrage dérivé du Contenu Sous Licence,
●● afficher publiquement le Contenu Sous Licence ou le mettre à disposition d'autres personnes pour
accès ou utilisation,
●● copier, imprimer, installer, vendre, publier, transmettre, prêter, adapter, réutiliser, fournir un lien
vers ou publier, rendre disponible ou distribuer le Contenu Sous Licence à des tiers,
●● contourner les restrictions techniques du Contenu Sous Licence, ou
●● reconstituer la logique, décompiler, supprimer, démanteler les protections ou désassembler le
Contenu Sous Licence, sauf dans la mesure où ces opérations seraient expressément permises par
la réglementation applicable nonobstant la présente limitation.
5. RÉSERVATION DE DROITS ET PROPRIÉTÉ. Microsoft se réserve tout droit qui ne vous est pas
expressément concédé dans ce Contrat. Le Contenu Sous Licence est protégé par les lois sur le droit
d'auteur et autres lois et traités sur la propriété intellectuelle. Microsoft ou ses fournisseurs sont les
propriétaires du titre, du droit d'auteur et des autres droits de propriété intellectuelle relatifs au
Contenu Sous Licence.
6. RESTRICTIONS À L'EXPORTATION. Le Contenu Sous Licence est soumis aux lois et réglementations
américaines en matière d’exportation. Vous devez vous conformer à toutes les réglementations
nationales et internationales en matière d’exportation concernant le Contenu Sous Licence. Ces
réglementations comprennent des restrictions sur les pays destinataires, les utilisateurs finaux et les
utilisations finales. Des informations supplémentaires sont disponibles sur le site www.microsoft.com/
exporting (en anglais).
7. SERVICES D'ASSISTANCE TECHNIQUE. Le Contenu Sous Licence étant fourni « en l'état », nous ne
fournissons pas nécessairement de services d'assistance technique.
8. RÉSILIATION. Sans préjudice de tout autre droit, Microsoft peut résilier le présent contrat si vous ne
vous conformez pas aux conditions générales de ce contrat. À la résiliation de ce contrat pour
quelque raison que ce soit, vous cesserez immédiatement toute utilisation du Contenu Sous Licence,
RÉSERVÉ À UNE UTILISATION FORMATEUR. UTILISATION ÉTUDIANT INTERDITE
X EULA
et vous supprimerez et détruirez définitivement toutes les copies du Contenu Sous Licence en votre
possession ou sous votre contrôle.
9. LIENS VERS DES SITES TIERS. Il se peut que vous utilisiez des liens vers des sites tiers suite à l'utilisa-
tion du Contenu Sous Licence. Les sites tiers ne sont pas sous le contrôle de Microsoft, et Microsoft
décline toute responsabilité quant au contenu des sites tiers, aux liens contenus sur les sites tiers et
aux modifications ou mises à jour apportées aux sites tiers. Microsoft n'est pas responsable de la
diffusion sur le Web ou toute autre forme de transmission reçues de sites tiers. Microsoft fournit ces
liens à des sites tiers uniquement pour vous aider, et l'inclusion d'un lien ne signifie en aucun cas que
Microsoft endosse le site tiers.
10. INTÉGRALITÉ DES ACCORDS. Le présent contrat ainsi que les termes concernant le Contenu Forma-
teur, les mises à jour et les suppléments constituent l’intégralité des accords en ce qui concerne le
Contenu Sous Licence, les mises à jour et les suppléments.
11. LOI APPLICABLE.
1. États-Unis. Si vous avez acquis le Contenu Sous Licence aux États-Unis, la loi de l’État de Washing-
ton régit l’interprétation de ce contrat et s’appliquent en cas de réclamation pour rupture dudit
contrat, sans donner d’effet aux dispositions régissant les conflits de lois. Les lois de l'État dans
lequel vous vivez régissent toutes les autres réclamations, notamment les réclamations fondées sur
les lois fédérales en matière de protection des consommateurs, de concurrence déloyale et de
délits.
2. En dehors des États-Unis. Si vous avez acquis le Contenu Sous Licence dans un autre pays, les lois
de ce pays s'appliquent.
12. EFFET JURIDIQUE. Le présent contrat décrit certains droits légaux. Vous pouvez bénéficier d’autres
droits prévus par les lois de votre pays. Vous pouvez également bénéficier de certains droits à l’égard
de la partie auprès de laquelle vous avez acquis le Contenu Sous Licence. Le présent contrat ne
modifie pas les droits que vous confèrent les lois de votre pays si celles-ci ne le permettent pas.
13. EXCLUSIONS DE GARANTIE. LE CONTENU SOUS LICENCE EST CONCÉDÉ SOUS LICENCE « EN
L'ÉTAT » ET « TEL QUE DISPONIBLE ». VOUS ASSUMEZ TOUS LES RISQUES LIÉS À SON UTILISA-
TION. MICROSOFT ET SES AFFILIÉS RESPECTIFS N'ACCORDENT AUCUNE GARANTIE OU CONDI-
TION EXPRESSE. VOUS POUVEZ BÉNÉFICIER DE DROITS SUPPLÉMENTAIRES RELATIFS AUX
CONSOMMATEURS EN VERTU DU DROIT DE VOTRE PAYS QUE CE CONTRAT NE PEUT MODIFIER.
LORSQUE CELA EST AUTORISÉ PAR LE DROIT LOCAL, MICROSOFT ET SES AFFILIÉS EXCLUENT
LES GARANTIES IMPLICITES DE QUALITÉ MARCHANDE, D’ADÉQUATION À UN USAGE PARTICU-
LIER ET D’ABSENCE DE CONTREFAÇON.
14. LIMITATION ET EXCLUSION DE RECOURS ET DE DOMMAGES. VOUS POUVEZ OBTENIR DE
MICROSOFT, DE SES AFFILIÉS RESPECTIFS ET DE SES FOURNISSEURS UNE INDEMNISATION EN
CAS DE DOMMAGES DIRECTS UNIQUEMENT DANS LA LIMITE DE 5,00 $ US. VOUS NE POUVEZ
PRÉTENDRE À AUCUNE INDEMNISATION POUR LES AUTRES DOMMAGES, Y COMPRIS LES
DOMMAGES SPÉCIAUX, INDIRECTS, INCIDENTS OU ACCESSOIRES ET LES PERTES DE BÉNÉFICES.
Cette limitation concerne
●● toute affaire relative au Contenu Sous Licence, aux services, au contenu (y compris le code)
figurant sur des sites Internet tiers ou dans des programmes tiers ; et
●● les réclamations pour rupture de contrat ou violation de garantie ou condition, les réclamations en
cas de responsabilité sans faute, de négligence ou autre délit dans la limite autorisée par la loi en
vigueur.
RÉSERVÉ À UNE UTILISATION FORMATEUR. UTILISATION ÉTUDIANT INTERDITE
EULA XI
Elle s'applique également même si Microsoft connaissait ou aurait dû connaître l’éventualité d’un tel
dommage. La limitation ou l’exclusion ci-dessus peut également ne pas vous être applicable si votre
pays n’autorise pas l’exclusion ou la limitation de responsabilité pour les dommages incidents,
indirects ou de quelque nature que ce soit.
Veuillez noter : ce Contenu Sous Licence étant distribué au Québec, Canada, certaines des clauses
de ce contrat sont fournies ci-dessous en français.
RÉSERVÉ À UNE UTILISATION FORMATEUR. UTILISATION ÉTUDIANT INTERDITE
Contents
■■ Module 0 Introduction . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1
Bienvenue sur le cours . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1
■■ Module 1 Explorer les principaux concepts relatifs aux données . . . . . . . . . . . . . . . . . . . . . . . . . 3
Explorer les principaux concepts relatifs aux données . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3
Explorer les rôles et les responsabilités dans le monde des données . . . . . . . . . . . . . . . . . . . . . . . . . . . 17
Décrire les concepts de données relationnelles . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 27
Explorer les concepts de données non relationnelles . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 38
Explorer les concepts d’analyse des données . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 51
■■ Module 2 Explorer les données relationnelles dans Azure . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 69
Explorer les offres de données relationnelles dans Azure . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 69
Explorer la mise en service et le déploiement des offres de bases de données relationnelles dans
Azure . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 86
Interroger les données relationnelles dans Azure . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 105
■■ Module 3 Explorer les données non relationnelles dans Azure . . . . . . . . . . . . . . . . . . . . . . . . . . . 133
Explorer les offres de données non relationnelles dans Azure . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 133
Explorer la mise en service et le déploiement des services de données non relationnelles dans Azure
165
Gérer les magasins de données non relationnelles dans Azure . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 194
■■ Module 4 Explorer l’analyse des entrepôts de données modernes dans Azure . . . . . . . . . . . . . 231
Examiner les composants d'un entrepôt de données moderne . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 231
Explorer l’ingestion des données dans Azure . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 243
Explorer le stockage et le traitement des données dans Azure . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 254
Commencer à créer avec Power BI . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 272
RÉSERVÉ À UNE UTILISATION FORMATEUR. UTILISATION ÉTUDIANT INTERDITE
Module 0 Introduction
Objectifs d’apprentissage
Au terme de cette formation, vous serez en mesure de :
●● Décrivez les principaux concepts de données dans Azure.
●● Expliquez les concepts des données relationnelles dans Azure.
●● Expliquez les concepts de données non relationnelles dans Azure.
●● Identifiez les composants d’un entrepôt de données moderne dans Azure.
Programme du cours
Ce cours comprend les modules suivants :
1 https://docs.microsoft.com/learn
RÉSERVÉ À UNE UTILISATION FORMATEUR. UTILISATION ÉTUDIANT INTERDITE
2
2 https://docs.microsoft.com/learn
RÉSERVÉ À UNE UTILISATION FORMATEUR. UTILISATION ÉTUDIANT INTERDITE
Module 1 Explorer les principaux concepts
relatifs aux données
Objectifs d’apprentissage
Dans cette leçon, vous allez :
●● Identifier comment les données sont définies et stockées
●● Identifier les caractéristiques des données relationnelles et non relationnelles
●● Décrire et différencier les charges de travail de données
●● Décrire et différencier les données par lots et en flux continu
RÉSERVÉ À UNE UTILISATION FORMATEUR. UTILISATION ÉTUDIANT INTERDITE
4
Les données semi-structurées sont des informations qui ne résident pas dans une base de données
relationnelle, mais qui possèdent quand même une certaine structure. Par exemple, des documents au
format JavaScript Object Notation (JSON). L’exemple ci-dessous montre une paire de documents
représentant des informations sur les clients. Dans les deux cas, chaque document comprend des docu-
ments enfants contenant le nom et l’adresse, mais les champs dans ces documents enfants varient d’un
client à l’autre.
## Document 1 ##
{
"customerID": "103248",
"name":
{
"first": "AAA",
"last": "BBB"
RÉSERVÉ À UNE UTILISATION FORMATEUR. UTILISATION ÉTUDIANT INTERDITE
6
},
"address":
{
"street": "Main Street",
"number": "101",
"city": "Acity",
"state": "NY"
},
"ccOnFile": "yes",
"firstOrder": "02/28/2003"
}
## Document 2 ##
{
"customerID": "103249",
"name":
{
"title": "Mr",
"forename": "AAA",
"lastname": "BBB"
},
"address":
{
"street": "Another Street",
"number": "202",
"city": "Bcity",
"county": "Gloucestershire",
"country-region": "UK"
},
"ccOnFile": "yes"
}
Il existe aussi d’autres types de données semi-structurées. Les exemples comprennent les magasins de
paires clé-valeur et les bases de données de graphiques.
Une base de données clé-valeur stocke des tableaux associatifs. Dans ces tableaux, une clé sert d’identifi-
ant unique afin de récupérer une valeur particulière. Ces valeurs sont quelconques : un numéro, une
chaîne ou encore un objet complexe tel qu’un fichier JSON.
Une base de données clé-valeur stocke des données en tant que collection unique, sans structure ni
relation. Cela la distingue d’une base de données relationnelle, dans laquelle les tableaux sont formés de
lignes et de colonnes comportant des types de données prédéfinis.
Vous pouvez utiliser une base de données de graphes pour stocker et interroger des informations sur des
relations complexes. Un graphe contient des nœuds (informations sur les objets) et des arêtes (informa-
tions sur les relations entre les objets). L’image ci-dessous montre un exemple de la façon dont vous
pouvez structurer les données dans une base de données de graphes.
RÉSERVÉ À UNE UTILISATION FORMATEUR. UTILISATION ÉTUDIANT INTERDITE
7
Les données ne sont pas toutes structurées ou même semi-structurées. Par exemple, les fichiers audio et
vidéo, tout comme les fichiers de données binaires, peuvent ne pas avoir une structure spécifique. On les
appelle des données non structurées.
●● Ingestion des données : L’ingestion de données est le processus qui consiste à capturer les données
brutes. Ces données peuvent être extraites de capteurs mesurant les informations environnementales
comme la température et la pression, de terminaux de point de vente enregistrant les articles achetés
par un client dans un supermarché, de données financières qui enregistrent les virements entre
comptes bancaires et de données météo des stations météo. Certaines de ces données peuvent
provenir d’un système OLTP distinct. Pour traiter et analyser ces données, vous devez d’abord les
stocker dans un référentiel. Le référentiel peut être un magasin de fichiers, une base de données de
document ou même une base de données relationnelle.
●● Transformation/Traitement des données : Les données brutes risquent de ne pas être dans un
format approprié pour les interroger. Les données peuvent contenir des anomalies qui doivent être
éliminées ou peuvent demander une sorte de transformation. Par exemple, vous risquez de devoir
convertir des dates ou des adresses dans un format standard. Une fois que les données sont ingérées
dans un référentiel de données, vous voudrez peut-être effectuer des opérations de nettoyage et
supprimer toutes les données douteuses ou non valides, ou effectuer des agrégations comme le
calcul des bénéfices, de la marge et d’autres métriques de performance clés (KPI). Les indicateurs de
performance clés (KPI) servent à mesurer la croissance et les performances des entreprises.
●● Requête de données : Une fois les données ingérées et transformées, vous pouvez interroger les
données pour les analyser. Vous pouvez rechercher des tendances ou essayer de déterminer la cause
des problèmes de vos systèmes. De nombreux systèmes de gestion de base de données fournissent
des outils pour vous permettre d’effectuer des requêtes ad hoc sur vos données et de générer
régulièrement des rapports.
●● Visualisation des données : Les données représentées sous forme de tables, avec des lignes et des
colonnes, ou sous forme de documents, ne sont pas toujours intuitives. La visualisation des données
peut souvent être utile comme outil d’examen des données. Vous pouvez générer des graphiques, tels
que des graphiques à barres ou des graphiques en courbes, tracer des résultats sur des cartes géo-
graphiques ou des graphiques en secteurs, ou illustrer l’évolution des données. Microsoft propose des
outils de visualisation comme Power BI pour fournir une représentation graphique complète de vos
données.
Les bases de données non relationnelles vous permettent de stocker des données dans un format très
similaire à la structure d’origine. Par exemple, dans une base de données de documents, vous pouvez
stocker les détails de chaque client dans un seul document, comme le montre l’exemple de l’unité
précédente. Extraire les coordonnées d’un client, y compris l’adresse, signifie lire un seul document. Il y a
cependant quelques inconvénients à utiliser une base de données de documents. Si deux clients cohabi-
tent et ont la même adresse, dans une base de données relationnelle, vous n’avez besoin de stocker les
informations d’adresse qu’une seule fois. Dans le diagramme ci-dessous, Jay et Frances Adams partagent
la même adresse.
Dans une base de données de documents, l’adresse serait dupliquée dans les documents de Jay et
Francis Adams. Cette duplication augmente non seulement le stockage requis, mais peut également
rendre la maintenance plus complexe (si l’adresse change, vous devez la modifier dans deux documents).
1 https://docs.microsoft.com/office/troubleshoot/access/database-normalization-description
RÉSERVÉ À UNE UTILISATION FORMATEUR. UTILISATION ÉTUDIANT INTERDITE
11
Une base de données transactionnelle doit adhérer aux propriétés ACID (atomicité, cohérence, isolation,
durabilité) pour garantir que la base de données reste cohérente lors du traitement des transactions.
●● L'atomicité garantit que chaque transaction est traitée comme une seule unité, laquelle réussit
complètement ou échoue complètement. Si l’une des instructions constituant une transaction échoue,
la transaction entière échoue et la base de données reste inchangée. Un système atomique doit
garantir l’atomicité dans toute situation, y compris les pannes de courant, les erreurs et les erreurs
systèmes.
●● La cohérence garantit qu’une transaction ne peut prendre les données de la base de données que d’un
état valide à un autre. Une base de données cohérente ne devrait jamais perdre ou créer de données
d’une manière qui ne peut être prise en compte. Dans l’exemple du virement bancaire décrit
précédemment, si vous ajoutez des fonds à un compte, il doit y avoir une déduction correspondante
des fonds quelque part, ou un enregistrement qui décrit la provenance des fonds, s’ils ont été reçus
de manière externe. Vous ne pouvez pas créer (ou perdre) soudainement de l’argent.
●● L’isolement garantit que l’exécution simultanée des transactions laisse la base de données dans le
même état qui aurait été obtenu si les transactions avaient été exécutées séquentiellement. Un
processus simultané ne peut pas afficher les données dans un état incohérent (par exemple, des fonds
auraient été déduits d’un compte, mais pas encore crédités sur un autre compte.)
●● La durabilité garantit qu’une fois qu’une transaction a été validée, elle le restera, même en cas de
défaillance du système telle qu’une panne de courant ou une erreur système.
Les systèmes de base de données qui traitent les charges de travail transactionnelles sont intrinsèque-
ment complexes. Ils doivent gérer des utilisateurs simultanés qui tentent éventuellement d’accéder aux
mêmes données et de les modifier en même temps, en traitant les transactions de manière isolée, tout en
maintenant la base de données cohérente et récupérable. De nombreux systèmes implantent la
cohérence relationnelle et l’isolement en appliquant des dispositifs de verrouillage aux données lors de
leur mise à jour. Le verrouillage empêche un autre processus de lire les données jusqu’à ce que le
système de verrouillage soit débloqué. Le verrouillage n’est débloqué que lorsque la transaction est
validée ou annulée. Un dispositif de verrouillage étendu peut entraîner de mauvaises performances, par
exemple lorsque les applications attendent que les systèmes de verrouillage soient débloqués.
Les bases de données distribuées sont largement utilisées dans de nombreuses organisations. Une base
de données distribuée est une base de données dans laquelle les données sont stockées dans différents
emplacements physiques. Elle peut être conservée dans plusieurs ordinateurs situés dans le même
emplacement physique (par exemple, un centre de données), ou peut être dispersée sur un réseau
d’ordinateurs interconnectés. Comparativement aux systèmes de base de données non distribués,
l’application d’une mise à jour de données vers une base de données distribuée prendra du temps si elle
soit s’appliquer sur plusieurs sites. Si vous avez besoin d’une cohérence transactionnelle dans ce scénario,
les verrous peuvent être conservés pendant très longtemps, en particulier en cas de défaillance du réseau
entre les bases de données à un moment critique. Pour contrer ce problème, de nombreux systèmes de
gestion de bases de données distribuées assouplissent les exigences d’isolement stricts des transactions
et mettent en œuvre la « cohérence éventuelle ». Dans cette forme de cohérence, lorsqu’une application
écrit des données, chaque modification est enregistrée par un serveur, puis propagée aux autres serveurs
du système de base de données distribuée de manière asynchrone. Bien que cette stratégie contribue à
minimiser la latence, elle peut entraîner des incohérences temporaires au niveau des données. La
cohérence finale est idéale là où l’application ne nécessite aucune garantie de commande. Les exemples
incluent le nombre de partages, de mentions « J’aime » ou de commentaires non filetés dans un système
de réseaux sociaux.
RÉSERVÉ À UNE UTILISATION FORMATEUR. UTILISATION ÉTUDIANT INTERDITE
13
●● Toutes les données d’entrée d’un travail par lots doivent être prêtes avant qu’un lot puisse être traité.
Cela signifie que les données doivent être soigneusement vérifiées. Les problèmes de données, les
erreurs et les pannes de programme qui se produisent pendant les travaux par lots risquent de
bloquer l’ensemble du processus. Les données d’entrée doivent être soigneusement vérifiées avant de
pouvoir relancer l’exécution du travail. Même des erreurs de données mineures, telles que des erreurs
typographiques dans les dates, peuvent empêcher l’exécution d’un travail par lots.
●● Analyse : Vous utilisez généralement le traitement par lots pour effectuer des analyses complexes. Le
traitement des données en flux continu est utilisé pour des fonctions de réponse simples, des
agrégats ou des calculs tels que des moyennes mobiles.
Question 2
Parmi les propositions suivantes, laquelle est un exemple de données non structurées ?
Une table Employé avec les colonnes ID d’employé, Nom d’employé et Désignation d’employé
Fichiers audio et vidéo
Une table dans la base de données SQL Server
Question 3
Parmi les propositions suivantes, laquelle est un exemple de jeu de données en flux continu ?
Données provenant de capteurs et d’appareils
Données de vente du mois dernier
Liste des salariés travaillant pour une entreprise
Résumé
Microsoft Azure fournit différentes technologies pour stocker des données relationnelles et non relation-
nelles. Chaque technologie a ses propres atouts et est adaptée à des scénarios spécifiques.
Au cours de cette leçon, vous apprendrez à :
●● Identifier comment les données sont définies et stockées
●● Identifier les caractéristiques des données relationnelles et non relationnelles
●● Décrire et différencier les charges de travail de données
●● Décrire et différencier les données par lots et en flux continu
En savoir plus
●● Introduction à la base de données Azure SQL2
●● Présentation du stockage Blob Azure3
2 https://docs.microsoft.com/azure/sql-database/sql-database-technical-overview
3 https://docs.microsoft.com/azure/storage/blobs/storage-blobs-introduction
RÉSERVÉ À UNE UTILISATION FORMATEUR. UTILISATION ÉTUDIANT INTERDITE
16
4 https://docs.microsoft.com/azure/cosmos-db/introduction
5 https://docs.microsoft.com/office/troubleshoot/access/database-normalization-description
RÉSERVÉ À UNE UTILISATION FORMATEUR. UTILISATION ÉTUDIANT INTERDITE
17
Objectifs d’apprentissage
Dans cette leçon, vous allez :
●● Examiner les rôles de travail des données
●● Examiner les tâches et les outils courants pour les rôles de travail des données
la maintenance et des aspects opérationnels des solutions de base de données, sur site et dans le cloud,
basées sur les services de données Azure et SQL Server. Il est responsable de la disponibilité globale et
des performances et optimisations cohérentes des solutions de base de données. Il travaille avec les
parties prenantes pour mettre en œuvre des politiques, des outils et des processus pour les plans de
sauvegarde et de récupération après une catastrophe naturelle ou une erreur d’origine humaine.
L’administrateur de base de données est également responsable de la gestion de la sécurité des données
dans la base de données, de l’octroi de privilèges sur les données et, le cas échéant, de l’octroi ou du
refus de l’accès aux utilisateurs.
Un ingénieur de données collabore avec les parties prenantes pour concevoir et mettre en œuvre des
actifs liés aux données qui incluent des pipelines d’ingestion de données, des activités de nettoyage et de
transformation et des banques de données pour les charges de travail analytiques. Il utilise un large
éventail de technologies de plateformes de données, y compris des bases de données relationnelles et
non relationnelles, des magasins de fichiers et des flux de données.
Il est également chargé de s’assurer que la confidentialité des données est préservée dans le cloud et
s’étend des banques de données sur site aux banques de données dans le cloud. Il est aussi responsable
de la gestion et de la surveillance des banques de données et des pipelines de données pour garantir
que les charges de données fonctionnent comme prévu.
Un analyste des données permet aux entreprises d’optimiser la valeur de leurs ressources de données. Il
est responsable de la conception et de la construction de modèles évolutifs, du nettoyage et de la
transformation des données, mais aussi de la mise en œuvre de capacités d’analyse avancées, par le biais
de rapports et de visualisations.
Un analyste des données transforme les données brutes en informations pertinentes, basées sur les
exigences métier identifiées, pour fournir des informations pertinentes.
RÉSERVÉ À UNE UTILISATION FORMATEUR. UTILISATION ÉTUDIANT INTERDITE
19
site, à la base de données Azure SQL, à PostgreSQL, à Azure SQL Data Warehouse et aux clusters Big Data
du serveur SQL, entre autres. Il s’agit d’un outil extensible, et vous pouvez télécharger et installer des
extensions de développeurs tiers qui se connectent à d’autres systèmes, ou fournir des assistants qui
aident à automatiser de nombreuses tâches administratives.
Une fonctionnalité utile de SQL Server Management Studio est la possibilité de générer des scripts
Transact-SQL pour presque toutes les fonctionnalités fournies par SSMS. Cela donne à l’administrateur de
base de données la possibilité de planifier et d’automatiser de nombreuses tâches courantes.
6 https://portal.azure.com/#home
RÉSERVÉ À UNE UTILISATION FORMATEUR. UTILISATION ÉTUDIANT INTERDITE
22
Vous pouvez utiliser le portail Azure pour gérer et ajuster dynamiquement des ressources comme la taille
de stockage des données et le nombre de cœurs disponibles pour le traitement de la base de données.
Ces tâches nécessiteraient l’assistance d’un administrateur système si vous exécutiez la base de données
sur site.
7 https://docs.microsoft.com/azure/azure-databricks/what-is-azure-databricks
8 https://docs.microsoft.com/azure/hdinsight/hdinsight-overview
9 https://docs.microsoft.com/azure/cosmos-db/introduction
RÉSERVÉ À UNE UTILISATION FORMATEUR. UTILISATION ÉTUDIANT INTERDITE
24
Question 2
Lequel des outils suivants est un outil de visualisation et de rapport ?
SQL Server Management Studio
Power BI
SQL
RÉSERVÉ À UNE UTILISATION FORMATEUR. UTILISATION ÉTUDIANT INTERDITE
26
Question 3
Lequel des rôles suivants n’est pas un rôle de tâche de données ?
Administrateur système
Analyste de données
Administrateur de base de données
Résumé
La gestion et l’utilisation des données constituent une compétence spécialisée. La plupart des organisa-
tions définissent des rôles pour les différentes tâches responsables de la gestion des données.
Dans cette leçon, vous avez acquis des notions sur :
●● Certains des rôles de travail courants pour la gestion des données
●● Les tâches généralement effectuées par ces rôles et les types d’outils qu’ils utilisent
En savoir plus
●● Aperçu d’Azure Databricks10
●● Aperçu d’Azure HDInsight11
●● Présentation d’Azure Cosmos DB12
●● Aperçu de Power BI13
●● Documentation technique de SQL Server14
●● Introduction à Azure Data Factory15
10 https://docs.microsoft.com/azure/azure-databricks/what-is-azure-databricks
11 https://docs.microsoft.com/azure/hdinsight/hdinsight-overview
12 https://docs.microsoft.com/azure/cosmos-db/introduction
13 https://docs.microsoft.com/power-bi/fundamentals/power-bi-overview
14 https://docs.microsoft.com/sql/sql-server/?view=sql-server-ver15
15 https://docs.microsoft.com/azure/data-factory/introduction
RÉSERVÉ À UNE UTILISATION FORMATEUR. UTILISATION ÉTUDIANT INTERDITE
27
Objectifs d’apprentissage
Dans cette leçon, vous allez :
●● Découvrez les caractéristiques des données relationnelles
●● Définir des tables, des index et des vues
●● Découvrir les offres de charge de travail de données relationnelles dans Azure
Vous concevez une base de données relationnelle en créant un modèle de données. Le modèle ci-des-
sous montre la structure des entités de l’exemple précédent. Dans ce diagramme, les colonnes marquées
PK sont la Clé primaire de la table. La clé primaire indique la colonne (ou la combinaison de colonnes) qui
identifie de manière unique chaque ligne. Chaque table doit avoir une clé primaire.
Le diagramme montre également les relations entre les tables. Les lignes qui relient les tables indiquent
le type de relation. Dans ce cas, la relation des clients aux commandes est 1 à plusieurs (un client peut
passer plusieurs commandes, mais chaque commande ne concerne qu’un seul client). De même, la
RÉSERVÉ À UNE UTILISATION FORMATEUR. UTILISATION ÉTUDIANT INTERDITE
29
relation entre les commandes et les produits est plusieurs à 1 (plusieurs commandes peuvent concerner
le même produit).
Les colonnes marquées FK sont des colonnes Clé étrangère. Elles font référence, ou sont liées, à la clé
primaire d’une autre table et sont utilisées pour entretenir des relations entre les tables. Une clé
étrangère aide également à identifier et à empêcher des anomalies, telles que des commandes pour des
clients qui n’existent pas dans la table Customers. Dans le modèle ci-dessous, les colonnes Customer ID
et Product ID de la table Orders sont liées au client qui a passé la commande et au produit commandé :
Les principales caractéristiques d’une base de données relationnelle sont les suivantes :
●● Toutes les données sont tabulaires. Les entités sont modélisées sous forme de tables, chaque instance
d’une entité est une ligne de la table et chaque propriété est définie en tant que colonne.
●● Toutes les lignes d’une même table ont le même ensemble de colonnes.
●● Une table peut contenir un nombre quelconque de lignes.
●● Une clé primaire identifie de manière unique chaque ligne d’une table. Deux lignes ne peuvent pas
partager la même clé primaire.
●● Une clé étrangère référence des lignes d’une autre table associée. Pour chaque valeur de la colonne
de clé étrangère, il doit exister une ligne dotée de la même valeur dans la colonne de clé primaire
correspondante dans l’autre table.
RÉSERVÉ À UNE UTILISATION FORMATEUR. UTILISATION ÉTUDIANT INTERDITE
30
REMARQUE : La création d’un modèle de base de données relationnelle pour une grande organisation
n’est pas une tâche facile. Plusieurs itérations peuvent s’avérer nécessaires pour définir des tables
correspondant aux caractéristiques décrites ci-dessus. Il est parfois nécessaire de fractionner une entité
en plusieurs tables. Ce processus s’appelle normalisation16.
La plupart des bases de données relationnelles prennent en charge le langage SQL (Structured Query
Language). Vous utilisez le langage SQL pour créer des tables, pour insérer, mettre à jour et supprimer
des lignes dans ces tables, ainsi que pour interroger les données. Vous utilisez la commande CREATE
TABLE pour créer une table, l’instruction INSERT pour stocker des données dans une table, l’instruction
UPDATE pour modifier les données d’une table et l’instruction DELETE pour supprimer des lignes d’une
table. L’instruction SELECT récupère les données d’une table. L’exemple de requête ci-dessous recherche
les informations de chaque client de l’exemple de base de données illustré ci-dessus.
SELECT CustomerID, CustomerName, CustomerAddress
FROM Customers
Plutôt que de récupérer chaque ligne, vous pouvez filtrer les données en utilisant une clause WHERE. La
requête suivante extrait l’ID de commande et l’ID de produit pour toutes les commandes passées par le
client 1.
SELECT OrderID, ProductID
FROM Orders
WHERE CustomerID = 'C1'
Vous pouvez combiner les données de plusieurs tables dans une requête à l’aide d’une opération de
jointure. Une opération de jointure suit les relations entre les tables et vous permet ainsi de récupérer les
données de plusieurs tables à la fois. La requête suivante récupère le nom de chaque client, ainsi que le
nom et la quantité du produit pour chaque commande qu’il a passée. Notez que chaque colonne est
qualifiée par la table à laquelle elle appartient :
SELECT Customers.CustomerName, Orders.QuantityOrdered, Products.ProductName
FROM Customers JOIN Orders
ON Customers.CustomerID = Orders.CustomerID
JOIN Products
ON Orders.ProductID = Products.ProductID
Vous pouvez trouver tous les détails sur SQL sur le site web de Microsoft, à la page Structured Query
Language (SQL)17.
16 https://docs.microsoft.com/office/troubleshoot/access/database-normalization-description
17 https://docs.microsoft.com/sql/odbc/reference/structured-query-language-sql
RÉSERVÉ À UNE UTILISATION FORMATEUR. UTILISATION ÉTUDIANT INTERDITE
31
Azure. De même, les sites de réseaux sociaux utilisent des bases de données pour stocker des données
sur des millions d’utilisateurs, chacun pouvant être lié à une infinité d’utilisateurs en un tissu très com-
plexe de relations. Ce type de données se prête davantage à l’utilisation d’une structure de base de
données de graphe plutôt qu’à celle d’une collection de tables relationnelles.
Les bases de données relationnelles sont couramment utilisées dans les systèmes de commerce électron-
ique, mais l’un de leurs principaux cas d’utilisation est le traitement transactionnel en ligne (OLTP). Les
applications OLTP se concentrent sur des tâches orientées transaction qui traitent un très grand nombre
de transactions par minute. Les bases de données relationnelles conviennent parfaitement aux applica-
tions OLTP, car elles prennent naturellement en charge les opérations d’insertion, de mise à jour et de
suppression. Une base de données relationnelle peut souvent être paramétrée pour permettre l’exécution
rapide de ces opérations. En outre, la nature du langage SQL permet aux utilisateurs d’effectuer aisément
des requêtes ad hoc sur les données.
Les solutions bancaires, les applications de vente en ligne, les systèmes de réservation de vols et de
nombreuses applications d’achat en ligne sont des exemples d’applications OLTP tirant parti des bases de
données relationnelles.
Vous pouvez créer de nombreux index sur une table. Ainsi, pour rechercher également toutes les com-
mandes d’un produit spécifique, il serait utile de créer un autre index sur la colonne Product ID de la
table Orders. Toutefois, les index ont un coût. Un index peut consommer de l’espace de stockage supplé-
mentaire et, chaque fois que vous insérez, mettez à jour ou supprimez des données dans une table, les
index de cette table doivent faire l’objet d’une maintenance. Ce travail supplémentaire peut ralentir les
opérations d’insertion, de mise à jour et de suppression, et générer des frais de traitement supplémen-
taires. Par conséquent, lorsque vous choisissez les index à créer, vous devez trouver un juste équilibre
entre des index susceptibles d’accélérer vos requêtes et le coût de l’exécution d’autres opérations. Dans
une table en lecture seule ou contenant des données rarement modifiées, un plus grand nombre d’index
améliore les performances des requêtes. Si une table est rarement interrogée, mais soumise à un grand
nombre d’insertions, de mises à jour et de suppressions (par exemple, une table utilisée en traitement
transactionnel en ligne), la création d’index sur cette table peut ralentir votre système.
Certains systèmes de gestion de bases de données relationnelles prennent également en charge des
index cluster. Un index cluster réorganise physiquement une table par la clé d’index. Cette organisation
peut encore améliorer les performances des requêtes, car le système de gestion de base de données rela-
tionnelle n’est pas tenu de suivre les références de l’index pour trouver les données correspondantes
dans la table sous-jacente. L’image ci-dessous montre la table Orders avec un index cluster sur la colonne
Customer ID.
Dans les systèmes de gestion de base de données qui les prennent en charge, une table peut avoir un
seul index cluster.
Vous pouvez interroger la vue et filtrer les données quasiment de la même façon qu’une table. La requête
suivante recherche les commandes du client C1 à l’aide de cette vue. Cette requête retourne uniquement
les commandes du produit P1 passées par ce client :
SELECT CustomerID, OrderID, Quantity
FROM P1Orders
WHERE CustomerID = "C1"
Une vue peut également joindre des tables. Si vous recherchez souvent les détails des clients et les
produits qu’ils ont commandés, vous pouvez créer une vue basée sur la requête de jointure indiquée
dans l’unité précédente :
CREATE VIEW CustomersProducts AS
SELECT Customers.CustomerName, Orders.QuantityOrdered, Products.ProductName
FROM Customers JOIN Orders
ON Customers.CustomerID = Orders.CustomerID
JOIN Products
ON Orders.ProductID = Products.ProductID
La requête suivante recherche le nom du client et les noms des produits pour toutes les commandes
passées par le client C2, à l’aide de cette vue :
SELECT CustomerName, ProductName
FROM CustomersProducts
WHERE CustomerID = "C2"
plus ou moins exactement comme auparavant dans son nouvel emplacement, à l’exception de quelques
changements mineurs de configuration (par exemple, de changements des adresses réseau) pour tenir
compte du changement d’environnement.
PaaS signifie Platform as a Service. Au lieu de créer une infrastructure virtuelle et d’installer et gérer
vous-même le logiciel de base de données, une solution PaaS le fait à votre place. Vous spécifiez les
ressources nécessaires (en fonction de la taille prévue de vos bases de données, du nombre d’utilisateurs
et des performances dont vous pensez avoir besoin) et Azure crée automatiquement les machines
virtuelles, les réseaux et les autres appareils nécessaires à votre place. En règle générale, vous pouvez
rapidement effectuer un scale-up ou un scale-down (augmenter ou diminuer la taille et le nombre de
ressources) au fur et à mesure que le volume des données et la quantité de travail effectuée varient.
Azure gère cette mise à l’échelle à votre place et vous n’avez pas à ajouter ni à supprimer manuellement
de machines virtuelles, ni à effectuer d’autre forme de configuration.
Azure offre plusieurs solutions PaaS pour les bases de données relationnelles, notamment Azure SQL
Database, Azure Database pour PostgreSQL, Azure Database pour MySQL et Azure Database for MariaDB.
Ces services exécutent des versions managées des systèmes de gestion de base de données en votre
nom. Il vous suffit de vous y connecter, de créer vos bases de données et d’y télécharger vos données.
Toutefois, vous constaterez peut-être que certaines restrictions fonctionnelles sont en place et que toutes
les fonctionnalités de votre système de gestion de base de données sélectionné ne sont pas disponibles.
Ces restrictions sont souvent dues à des problèmes de sécurité. Par exemple, ils peuvent exposer le
système d’exploitation et le matériel sous-jacents à vos applications. Dans ce cas, vous devrez peut-être
repenser vos applications pour supprimer toutes les dépendances de ces fonctionnalités.
L’image ci-dessous illustre les avantages et les inconvénients liés à l’exécution d’un système de gestion
de base de données (dans ce cas, SQL Server) localement, à l’aide de machines virtuelles dans Azure
(IaaS) ou d’Azure SQL Database (PaaS). Les mêmes considérations générales valent pour d’autres sys-
tèmes de gestion de base de données.
RÉSERVÉ À UNE UTILISATION FORMATEUR. UTILISATION ÉTUDIANT INTERDITE
36
Question 2
Qu’est-ce qu’un index ?
Une structure qui vous permet de localiser rapidement des lignes dans une table, en utilisant une
valeur indexée.
Une table virtuelle basée sur le jeu de résultats d’une requête.
Une structure comprenant des lignes et des colonnes que vous utilisez pour stocker des données.
RÉSERVÉ À UNE UTILISATION FORMATEUR. UTILISATION ÉTUDIANT INTERDITE
37
Résumé
Les bases de données relationnelles sont largement utilisées pour créer des applications du monde réel. Il
est important de comprendre les caractéristiques des données relationnelles. Une base de données
relationnelle repose sur des tables, Vous pouvez exécuter de nombreux systèmes de gestion de base de
données sur site et dans le cloud.
Dans cette leçon, vous avez acquis des notions sur :
●● Caractéristiques des données relationnelles
●● Que sont les tables, les index et les vues
●● Les différentes offres de charge de travail de données relationnelles disponibles dans Azure.
En savoir plus
●● Description des bases de la normalisation de base de données18
●● Structured Query Language (SQL)19
●● Présentation technique de SQL Database20
●● Documentation technique de SQL Server21
●● Offres de base de données PaaS et IaaS22
18 https://docs.microsoft.com/office/troubleshoot/access/database-normalization-description
19 https://docs.microsoft.com/sql/odbc/reference/structured-query-language-sql
20 https://docs.microsoft.com/azure/sql-database/sql-database-technical-overview
21 https://docs.microsoft.com/sql/sql-server/?view=sql-server-ver15
22 https://docs.microsoft.com/azure/sql-database/sql-database-paas-vs-sql-server-iaas
RÉSERVÉ À UNE UTILISATION FORMATEUR. UTILISATION ÉTUDIANT INTERDITE
38
Objectifs d’apprentissage
Dans cette leçon, vous allez :
●● Découvrir les caractéristiques des données non relationnelles
●● Définir des types de données non relationnelles
●● Décrire NoSQL et les types de bases de données non relationnelles
## Client 2
ID : 2
Title: Monsieur
Nom : Jeff Hay
Téléphone : [ Domicile : 0044-1999-333333 - Téléphone mobile : 0044-17545-
444444 ]
Adresse : [ Royaume-Uni : 86 High Street, Some Town, A County, GL8888, UK,
USA : 777 7th Street, Another City, CA, 90111 ]
Dans cet exemple, les champs sont précédés d'un nom. Les champs peuvent également avoir plusieurs
sous-champs, comportant également des noms. Dans cet exemple, les nombreux sous-champs sont
identifiés en étant placés entre crochets.
RÉSERVÉ À UNE UTILISATION FORMATEUR. UTILISATION ÉTUDIANT INTERDITE
40
Ajouter un nouveau client consiste à insérer une entité avec ses champs étiquetés de manière significa-
tive. Une application qui interroge ces données doit être prête à analyser les informations de l’entité
qu’elle récupère.
Les capacités de récupération de données d’une base de données non relationnelle peuvent varier.
Chaque entité doit avoir une valeur de clé unique. Les entités d’un ensemble sont généralement stockées
dans l’ordre clé-valeur. Dans l’exemple ci-dessus, la clé unique est le champ ID. Le type le plus simple de
base de données non relationnelle permet à une application de spécifier la clé unique ou une plage de
clés comme critère de requête. Dans l’exemple des clients, la base de données permettrait à une applica-
tion d’effectuer des requêtes concernant les clients seulement par leur ID. Le filtrage des données dans
d’autres champs nécessiterait d’analyser l’ensemble de toutes les entités, puis d’analyser chaque entité et,
enfin, d’appliquer tous les critères de requête à chaque entité pour trouver des correspondances. Dans
l’exemple ci-dessous, une requête qui récupère les détails d’un client par ID peut rapidement identifier
l’entité à extraire. Une requête qui tente de trouver tous les clients avec une adresse au Royaume-Uni
devrait parcourir chaque entité et, pour chaque entité, analyser ensuite chaque champ. Si la base de
données contient plusieurs millions d’entités, l’exécution de cette requête risque de prendre un temps
considérable.
Des systèmes non relationnels plus avancés prennent l’indexation en charge, de la même manière qu’un
index dans une base de données relationnelle. Les requêtes peuvent ensuite utiliser l’index pour identifier
et extraire des données basées sur des champs non clés. Les systèmes non relationnels comme Azure
Cosmos DB (un système de gestion de base de données non relationnelle disponible dans Azure)
prennent l’indexation en charge, même lorsque la structure des données indexées peut varier d’un
enregistrement à l’autre. Pour plus d’informations, consultez l’article Vue d’ensemble de l’indexation
dans Azure Cosmos DB23.
Lorsque vous concevez une base de données non relationnelle, il est important de comprendre les
capacités du système de gestion de base de données et les types de requêtes qu’il devra prendre en
charge.
REMARQUE : Les bases de données non relationnelles fournissent souvent leur propre langage pro-
priétaire pour gérer et interroger les données. Ce langage peut être procédural ou similaire à SQL. Cela
dépend de la manière dont la base de données est mise en œuvre par le système de gestion de base de
données (SGBD).
23 https://docs.microsoft.com/azure/cosmos-db/index-overview
RÉSERVÉ À UNE UTILISATION FORMATEUR. UTILISATION ÉTUDIANT INTERDITE
41
L’exemple ci-dessous présente les clients de l’unité précédente, formatés en tant que documents JSON :
{
"ID": "1",
"Name": "Mark Hanson",
"Telephone": [
{ "Home": "1-999-9999999" },
{ "Business": "1-888-8888888" },
{ "Cell": "1-777-7777777" }
],
"Address": [
{ "Home": [
{ "StreetAddress": "121 Main Street" },
{ "City": "Some City" },
{ "State": "NY" },
{ "Zip": "10110" }
] },
{ "Business": [
{ "StreetAddress": "87 Big Building" },
{ "City": "Some City" },
{ "State": "NY" },
{ "Zip": "10111" }
] }
]
}
{
"ID": "2",
"Title": "Mr",
"Name": "Jeff Hay",
"Telephone": [
{ "Home": "0044-1999-333333" },
{ "Mobile": "0044-17545-444444" }
],
"Address": [
{ "UK": [
{ "StreetAddress": "86 High Street" },
{ "Town": "Some Town" },
{ "County": "A County" },
{ "Postcode": "GL8888" },
{ "Region": "UK" }
] },
{ "US": [
{ "StreetAddress": "777 7th Street" },
{ "City": "Another City" },
{ "State": "CA" },
{ "Zip": "90111" }
] }
]
}
RÉSERVÉ À UNE UTILISATION FORMATEUR. UTILISATION ÉTUDIANT INTERDITE
43
Vous êtes libre de définir les champs que vous souhaitez. Le point important est que les données suivent
la syntaxe JSON. Lorsqu’une application lit un document, elle peut utiliser un analyseur JSON pour
décomposer le document en ses champs de composant et extraire les données individuelles.
D’autres formats que vous pouvez voir incluent Avro, ORC et Parquet :
●● Avro est un format basé sur les lignes. Il a été créé par Apache. Chaque enregistrement contient un
en-tête qui décrit la structure des données de l’enregistrement. Cet en-tête est stocké au format
JSON. Les données sont stockées sous forme d’informations binaires. Une application utilise les
informations de l’en-tête pour analyser les données binaires et extraire les champs qu’elle contient.
Avro est un format idéal pour compresser les données et minimiser les besoins de stockage et de
bande passante réseau.
●● ORC (format Optimized Row Columnar) organise les données en colonnes plutôt qu’en lignes. Il a été
développé par HortonWorks pour optimiser les opérations de lecture et d’écriture dans Apache Hive.
Hive est un système d’entrepôt de données qui prend en charge la synthèse et l’interrogation rapides
des données sur de très grands ensembles de données. Hive prend en charge les requêtes de type
SQL sur des données non structurées. Un fichier ORC contient des bandes de données. Chaque bande
contient les données d’une colonne ou d’un ensemble de colonnes. Une bande contient un index
dans les lignes de la bande, les données de chaque ligne et un pied de page contenant des informa-
tions statistiques (nombre, somme, maximum, minimum, etc.) pour chaque colonne.
●● Parquet est un autre format de données en colonnes. Il a été créé par Cloudera et Twitter. Un fichier
Parquet contient des groupes de lignes. Les données de chaque colonne sont stockées ensemble dans
le même groupe de lignes. Chaque groupe de lignes contient un ou plusieurs blocs de données. Un
fichier Parquet comprend des métadonnées qui décrivent l’ensemble des lignes trouvées dans chaque
bloc. Une application peut utiliser ces métadonnées pour localiser rapidement le bloc correct pour un
ensemble donné de lignes et récupérer les données dans les colonnes spécifiées pour ces lignes.
Parquet est spécialisé dans le stockage et le traitement efficaces des types de données imbriqués. Il
prend en charge des schémas de compression et de codage très efficaces.
utilisées pour une grande variété d’objectifs. Par conséquent, il existe un certain nombre de types
différents de systèmes de gestion de bases de données non relationnelles, chacun orienté vers un ensem-
ble spécifique de scénarios.
Dans cette unité, vous allez découvrir certains des types de bases de données non relationnelles les plus
courants.
Une requête spécifie les clés pour identifier les éléments à récupérer. Vous ne pouvez pas effectuer de
recherche sur des valeurs. Une application qui récupère des données à partir d’un magasin de paires
clé-valeur est responsable de l’analyse du contenu des valeurs retournées.
Les opérations d’écriture sont limitées à des insertions et à des suppressions. Si vous devez mettre à jour
un élément, vous devez récupérer cet élément, le modifier en mémoire (dans l’application), puis le
réécrire dans la base de données, en remplaçant l’original (donc une suppression et une insertion).
L’objectif principal d’un magasin de paires clé-valeur est la possibilité de lire et d’écrire des données très
rapidement. Les capacités de recherche sont secondaires. Un magasin de paires clé-valeur est un excel-
RÉSERVÉ À UNE UTILISATION FORMATEUR. UTILISATION ÉTUDIANT INTERDITE
45
lent choix pour l’ingestion de données, quand un volume important de données arrive sous la forme d’un
flux continu et qu’il doit être stocké immédiatement.
Stockage Table Azure est un exemple de magasin de paires clé-valeur. Cosmos DB implémente égale-
ment un magasin clé-valeur à l’aide de l’API Table24.
Une application peut récupérer des documents en utilisant la clé du document. La clé est un identifica-
teur unique pour le document. Certaines bases de données de documents créent automatiquement la clé
de document. D’autres permettent de spécifier un attribut du document pour l’utiliser comme clé.
L’application peut également interroger des documents en fonction de la valeur d’un ou plusieurs
champs. Certaines bases de données de documents prennent en charge l’indexation pour faciliter la
recherche rapide de documents basée sur un ou plusieurs champs indexés.
24 https://docs.microsoft.com/azure/cosmos-db/table-introduction
RÉSERVÉ À UNE UTILISATION FORMATEUR. UTILISATION ÉTUDIANT INTERDITE
46
Certains systèmes de gestion de base de données de documents prennent en charge les mises à jour sur
place, ce qui permet à une application de modifier les valeurs de champs spécifiques dans un document
sans réécrire la totalité du document. D’autres systèmes de gestion de base de données de documents
(comme Cosmos DB) peuvent seulement lire et écrire des documents entiers. Dans ce cas, une mise à jour
remplace l’intégralité du document par une nouvelle version. Cette approche permet de réduire la
fragmentation dans la base de données, ce qui peut à son tour améliorer les performances.
La plupart des bases de données de documents ingèrent de grands volumes de données plus rapidement
qu’une base de données relationnelle, mais elles ne sont pas aussi performantes qu’un magasin de paires
clé-valeur pour ce type de traitement. L’atout majeur d’une base de données de documents est sa
capacité en matière de requête.
Azure Cosmos DB implémente une approche de base de données de documents dans son API (SQL)
Core.
Le modèle relationnel prend en charge une approche très généralisée de l’implémentation de ce type de
relation, mais pour rechercher l’adresse d’un client donné, une application doit exécuter une requête qui
joint deux tables. S’il s’agit de la requête la plus courante effectuée par l’application, la surcharge associée
à l’exécution de cette opération de jointure peut rapidement devenir importante s’il y a un grand nombre
de requêtes et que les tables elles-mêmes sont volumineuses.
L’objectif d’une base de données de famille de colonnes est de gérer efficacement des situations telles
que celle-ci. Vous pouvez considérer qu’une base de données de famille de colonnes contient des
données tabulaires comprenant des lignes et des colonnes, mais que vous pouvez diviser les colonnes en
groupes qui sont appelés « familles de colonnes ». Chaque famille de colonnes contient un ensemble de
colonnes logiquement liées entre elles. L’image ci-dessous montre une façon de structurer les mêmes
informations que celles de l’image précédente en utilisant une base de données de famille de colonnes
pour regrouper les données en deux familles de colonnes contenant les informations de nom et
d’adresse des clients. D’autres façons d’organiser les colonnes sont possibles, mais vous devez implé-
menter vos familles de colonnes de façon à optimiser les requêtes les plus courantes effectuées par votre
application. Dans ce cas, les requêtes qui récupèrent les adresses des clients peuvent extraire les données
avec moins de lectures que ce qui serait requis dans la base de données relationnelle correspondante.
Ces requêtes peuvent extraire les données directement depuis la famille de colonnes AdresseInfo.
RÉSERVÉ À UNE UTILISATION FORMATEUR. UTILISATION ÉTUDIANT INTERDITE
48
L’illustration ci-dessus est conceptuelle et non pas physique : elle est destinée à montrer la structure
logique des données et non pas la façon dont elles peuvent être organisées physiquement. Chaque ligne
d’une base de données de famille de colonnes contient une clé, et vous pouvez extraire les données
d’une ligne en utilisant cette clé.
Dans la plupart des bases de données de familles de colonnes, les familles de colonnes sont stockées
séparément. Dans l’exemple précédent, la famille de colonnes CustomerInfo peut être conservée dans
une zone de stockage physique et la famille de colonnes AddressInfo dans une autre, selon une forme
simple de partitionnement vertical. Vous devez vraiment considérer la structure en termes de familles de
colonnes et non pas en termes de lignes. Les données d’une même entité qui s’étend sur plusieurs
familles de colonnes ont la même clé de ligne dans chaque famille de colonnes. Comme alternative à la
disposition conceptuelle montrée précédemment, vous pouvez visualiser les données présentées comme
la paire de structures physiques suivante.
Apache Cassandra est le système de gestion de base de données de famille de colonnes le plus large-
ment utilisé. Azure Cosmos DB prend en charge l’approche de la famille de colonnes via l’API Cassandra.
qui fournissent des informations sur ce nœud ou cette arête (comme les colonnes dans une table). De
plus, les arêtes peuvent avoir une direction indiquant la nature de la relation.
L’objectif d’une base de données de graphiques est de permettre à une application d’effectuer efficace-
ment des requêtes qui traversent le réseau de nœuds et d’arêtes, et d’analyser les relations entre les
entités. L’image ci-dessous montre la base de données du personnel d’une organisation structurée sous
forme de graphique. Les entités sont les employés et les services de l’organisation, et les arêtes indiquent
les lignes de dépendance hiérarchique et le service où les employés travaillent. Dans ce graphique, les
flèches sur les arêtes montrent la direction des relations.
Une structure telle que celle-ci permet d’effectuer directement des recherches comme « Trouver tous les
employés qui travaillent directement ou indirectement pour Sarah » ou « Qui travaille dans le même
service que John ? ». Pour les graphes étendus avec un grand nombre d’entités et de relations, vous
pouvez effectuer des analyses très complexes très rapidement, et de nombreuses bases de données de
graphes fournissent un langage de requête que vous pouvez utiliser pour parcourir efficacement un
réseau de relations. Vous pouvez souvent stocker les mêmes informations dans une base de données
relationnelle, mais le SQL nécessaire pour interroger ces informations peut nécessiter un grand nombre
d’opérations de jointure récursives et de sous-requêtes imbriquées.
Azure Cosmos DB prend en charge les bases de données de graphiques à l’aide de l’API Gremlin25. L’API
Gremlin est un langage standard pour la création et l’interrogation de graphes.
25 https://docs.microsoft.com/azure/cosmos-db/graph-introduction
RÉSERVÉ À UNE UTILISATION FORMATEUR. UTILISATION ÉTUDIANT INTERDITE
50
Question 2
Laquelle des caractéristiques suivantes s’applique aux bases de données non relationnelles ?
Les bases de données non relationnelles contiennent des tables avec des enregistrements plats à
colonnes fixes
Les bases de données non relationnelles vous obligent à utiliser des techniques de normalisation des
données pour réduire la duplication des données
Les bases de données non relationnelles sont soit sans schéma, soit avec des schémas assouplis
Question 3
Vous construisez un système qui contrôle la température dans un ensemble d’immeubles de bureaux et
règle la climatisation dans chaque pièce de chaque bloc pour maintenir une température ambiante agréa-
ble. Votre système doit gérer la climatisation dans plusieurs milliers de bâtiments répartis à travers le pays
ou la région, et chaque bâtiment contient généralement au moins 100 pièces climatisées. Quel est le type de
stockage de données NoSQL le plus approprié pour capturer les données de température afin de permettre
leur traitement rapide ?
Un magasin clé-valeur
Une base de données de familles de colonnes
Écrire les températures dans un objet blob dans le stockage Blob Azure
Résumé
Microsoft Azure fournit une variété de technologies pour stocker des données non relationnelles. Chaque
technologie a ses propres atouts et est adaptée à des scénarios spécifiques.
Vous avez abordé les éléments suivants :
●● Les caractéristiques des données non relationnelles
●● Les différents types de données non relationnelles
●● NoSQL et les types de bases de données non relationnelles
En savoir plus
●● Choisissez le bon magasin de données26
●● Bienvenue dans Azure Cosmos DB27
●● Indexation dans Azure Cosmos DB - Vue d’ensemble28
●● Introduction à Azure Cosmos DB : API Table29
●● Introduction à Azure Cosmos DB : API Gremlin30
●● Présentation du stockage Blob Azure31
26 https://docs.microsoft.com/azure/architecture/guide/technology-choices/data-store-overview
27 https://docs.microsoft.com/azure/cosmos-db/introduction
28 https://docs.microsoft.com/azure/cosmos-db/index-overview
29 https://docs.microsoft.com/azure/cosmos-db/table-introduction
30 https://docs.microsoft.com/azure/cosmos-db/graph-introduction
31 https://docs.microsoft.com/azure/storage/blobs/storage-blobs-introduction
RÉSERVÉ À UNE UTILISATION FORMATEUR. UTILISATION ÉTUDIANT INTERDITE
51
Objectifs d’apprentissage
Dans cette leçon, vous allez :
●● En savoir plus sur l’ingestion et le traitement des données
●● Découvrir la visualisation des données
●● Découvrir l’analyse des données
REMARQUE : Wrangling est le processus par lequel vous transformez et mappez les données brutes dans
un format plus approprié à l’analyse. Il peut impliquer l’écriture de code pour capturer, filtrer, nettoyer,
combiner et agréger des données provenant d’un grand nombre de sources.
Dans cette unité, vous allez découvrir deux étapes importantes de l’Analytique données : l’ingestion des
données et le traitement des données. Le diagramme ci-dessous montre comment ces étapes s’articulent.
REMARQUE : Le nettoyage des données est un terme générique qui englobe une série d’actions, comme
la suppression des anomalies, et l’application de filtres et de transformations dont l’exécution serait trop
longue lors l’étape d’ingestion.
L’objectif du traitement des données est de convertir les données brutes en un ou plusieurs modèles
d’entreprise. Un modèle d’entreprise décrit les données en termes d’entités métier significatives, et peut
agréger des éléments et synthétiser les informations. L’étape de traitement des données peut également
générer des modèles prédictifs ou d’autres modèles d’analytique à partir des données. Le traitement des
données peut être complexe, et impliquer des scripts automatisés et des outils comme Azure Databricks,
Azure Functions et Azure Cognitive Services pour examiner et remettre en forme les données, et générer
des modèles. Un analyste de données peut utiliser le machine learning pour déterminer des tendances
futures en fonction de ces modèles.
Une approche alternative est ELT. ELT est l’abréviation de Extraire, charger et transformer (Extract, Load,
Transform). Le processus diffère de l’ETL en cela que les données sont stockées avant d’être transformées.
Le moteur de traitement des données peut mettre en œuvre une approche itérative, en récupérant et en
traitant les données à partir du stockage, avant de réécrire les données transformées et les modèles dans
le stockage. L’ELT est plus adapté à la construction de modèles complexes qui dépendent de plusieurs
éléments dans la base de données, en utilisant souvent un traitement par lots régulier.
L’ELT est une approche scalable adaptée au cloud, car elle peut utiliser la grande puissance de traitement
disponible. L’approche plus orientée flux de l’ETL met davantage l’accent sur le débit. L’ELT peut cepend-
ant filtrer les données avant qu’elles ne soient stockées. De cette façon, l’ETL peut contribuer à la confi-
dentialité et à la conformité des données, en supprimant les données sensibles avant leur arrivée dans
vos modèles de données analytiques.
RÉSERVÉ À UNE UTILISATION FORMATEUR. UTILISATION ÉTUDIANT INTERDITE
55
Azure propose plusieurs options que vous pouvez utiliser pour implémenter les approches ELT et ETL. Par
exemple, si vous stockez des données dans Azure SQL Database, vous pouvez utiliser SQL Server Integra-
tion Services. Integration Services peut extraire et transformer des données à partir d’une grande variété
de sources, par exemple des fichiers de données XML, des fichiers plats et des sources de données
relationnelles, puis charger les données dans une ou plusieurs destinations.
Une autre approche plus généralisée consiste à utiliser Azure Data Factory. Azure Data Factory est un
service d’intégration de données cloud qui vous permet de créer des workflows basés sur les données,
pour orchestrer le déplacement des données et transformer des données à grande échelle. Azure Data
Factory vous permet de créer et de planifier des workflows basés sur les données (appelés pipelines) qui
peuvent ingérer des données provenant de différents magasins de données. Vous pouvez créer des
processus ETL complexes qui transforment visuellement les données avec des flux de données ou à l’aide
de Compute Services tels que Azure HDInsight Hadoop, Azure Databricks et Azure SQL Database.
●● Diagrammes linéaires : Les diagrammes linéaires mettent l’accent sur la forme générale d’une série
entière de valeurs, généralement au fil du temps.
●● Matrice : Un visuel de matrice est une structure tabulaire qui résume les données. Souvent, les con-
cepteurs de rapports incluent des matrices dans les rapports et les tableaux de bord pour permettre
aux utilisateurs de sélectionner un ou plusieurs éléments (lignes, colonnes, cellules) dans la matrice
pour mettre en évidence d’autres éléments visuels sur une page de rapport.
RÉSERVÉ À UNE UTILISATION FORMATEUR. UTILISATION ÉTUDIANT INTERDITE
58
●● Influenceurs clés : Un graphique d’influenceurs clés affiche les principaux contributeurs à un résultat
ou à une valeur sélectionnée. Les influenceurs clés sont un excellent choix pour vous aider à compren-
dre les facteurs qui influencent une métrique clé. Par exemple, ce qui pousse les clients à passer une
deuxième commande ou pourquoi les ventes ont été si élevées en juin dernier.
●● Carte proportionnelle : Les cartes proportionnelles sont des graphiques de rectangles colorés, avec
une taille représentant la valeur relative de chaque élément. Ils peuvent être hiérarchiques et contenir
des rectangles imbriqués dans les rectangles principaux.
RÉSERVÉ À UNE UTILISATION FORMATEUR. UTILISATION ÉTUDIANT INTERDITE
59
●● Nuage de points : Un nuage de points présente la relation entre deux valeurs numériques. Un dia-
gramme à bulles est un diagramme à nuage de points qui remplace les points de données par des
bulles, la taille de la bulle représentant une troisième dimension de données supplémentaire.
●● Carte choroplèthe. Si vous disposez de données géographiques, vous pouvez utiliser une carte
choroplèthe pour afficher en quoi une valeur diffère proportionnellement dans une zone géo-
graphique ou une région. Vous pouvez voir des différences relatives avec des ombres allant de la
lumière (moins fréquente / plus faible) à l’obscurité (plus fréquente / plus intensive).
Analyse descriptive
L’analyse descriptive permet de répondre aux questions sur une situation qui s’est produite, à partir de
données historiques. Les techniques d’analyse descriptive permettent de résumer les jeux de données
importants afin de décrire les résultats pour les parties prenantes.
En développant des indicateurs de performances clés, ces stratégies permettent de suivre la réussite ou
l’échec des objectifs clés. Certaines mesures, comme le retour sur investissement (ROI), sont utilisées dans
de nombreux secteurs d’activité. Des mesures spécifiques sont créées pour suivre le niveau de perfor-
mance dans certains secteurs d’activité.
Des exemples d’analyses descriptives incluent la génération de rapports pour fournir un aperçu des
données commerciales et financières d’une organisation.
Analyse diagnostique
L’analyse diagnostique permet de répondre aux questions sur les raisons expliquant une situation qui
s’est produite. Les techniques d’analyse diagnostique viennent compléter les analyses descriptives plus
simples. Elles utilisent les résultats provenant des analyses descriptives et approfondissent l’étude de la
cause. Les indicateurs de performance font l’objet d’une étude plus poussée pour savoir pourquoi ils se
sont améliorés ou dégradés. Cette étude comprend généralement trois étapes :
1. Identifier les anomalies présentes dans les données. Il peut s’agir de variations inattendues d’un
indicateur sur un marché donné.
2. Collecter les données liées à ces anomalies.
3. Utilisez les techniques statistiques nécessaires pour déterminer les liens et les tendances expliquant
ces anomalies.
Analyse prédictive
L’analyse prédictive permet de répondre aux questions sur une situation qui va se produire dans le futur.
Les techniques d’analyse prédictive utilisent des données historiques pour déterminer les tendances et
savoir si elles peuvent se reproduire. Les outils d’analyse prédictive fournissent des informations impor-
tantes sur une situation qui va se produire dans le futur. Les techniques incluent diverses méthodes
d’apprentissage statistique et d’apprentissage automatique, comme les réseaux neuronaux, les arbres de
décision et la régression.
Analyse prescriptive
L’analyse prescriptive permet de répondre aux questions sur les actions à entreprendre pour atteindre un
objectif. Il est possible de prendre des décisions axées sur les données en utilisant les informations issues
de l’analyse prédictive. Cette technique permet aux entreprises de prendre des décisions éclairées dans
un contexte d’incertitude. Les techniques d’analyse prescriptive reposent sur des stratégies d’apprentis-
sage automatique visant à identifier des tendances dans des jeux de données importants. Il est possible
d’estimer la probabilité d’obtenir des résultats différents en analysant les décisions et les événements
passés.
RÉSERVÉ À UNE UTILISATION FORMATEUR. UTILISATION ÉTUDIANT INTERDITE
62
Analyse cognitive
L'analyse cognitive tente d’établir des inférences à partir de données et de modèles existants, de tirer des
conclusions basées sur des bases de connaissances existantes, puis de réintégrer ces résultats dans la
base de connaissances pour des inférences futures et constituer une boucle de rétroaction d'auto-ap-
prentissage. L'analyse cognitive permet de comprendre ce qui pourrait se passer si les circonstances
changent, et comment vous pouvez gérer ces situations.
Les inférences ne sont pas des requêtes structurées basées sur une base de données de règles, mais
plutôt des hypothèses non structurées collectées à partir d'un certain nombre de sources, exprimées
avec divers degrés de confiance. Une analyse cognitive efficace dépend des algorithmes d’apprentissage
automatique. Elle utilise plusieurs concepts de traitement automatique du language (NLP) pour donner
un sens à des sources de données auparavant inexploitées, comme les journaux de conversation du
centre d’appels et les critiques de produits.
Théoriquement, en tirant parti des avantages de l’informatique parallèle et/ou distribuée massive et de la
baisse des coûts du stockage des données et de la puissance de calcul, il n'y a pas de limite au dévelop-
pement cognitif que ces systèmes peuvent réaliser.
Question 2
Lequel des visuels suivants affiche les principaux contributeurs à un résultat ou à une valeur sélectionnée ?
Influenceurs clés
Colonne et graphique à barres
Graphique matriciel
Question 3
Quel type d’analyse permet de répondre aux questions sur ce qui a eu lieu dans le passé ?
Analyse descriptive
Analyse prescriptive
Analyse prédictive
Résumé
Les organisations ont d’énormes quantités de données. L’objectif de l’analyse des données est de
découvrir des insights importants qui peuvent vous aider à faire progresser votre entreprise.
RÉSERVÉ À UNE UTILISATION FORMATEUR. UTILISATION ÉTUDIANT INTERDITE
63
En savoir plus
●● Créer des rapports et des tableaux de bord dans Power BI - Documentation32
●● Azure Databricks33
●● Azure Cognitive Services34
●● Extraire, transformer et charger (ETL)35
32 https://docs.microsoft.com/power-bi/create-reports/
33 https://azure.microsoft.com/services/databricks/
34 https://docs.microsoft.com/azure/cognitive-services/what-are-cognitive-services
35 https://docs.microsoft.com/azure/architecture/data-guide/relational-data/etl
RÉSERVÉ À UNE UTILISATION FORMATEUR. UTILISATION ÉTUDIANT INTERDITE
64
Answers
Question 1
Comment les données d’une table relationnelle sont-elles organisées ?
■■ Lignes et colonnes
En-tête et pied de page
Pages et paragraphes
Explanation
Réponse correcte. Les données structurées sont généralement des données tabulaires qui sont représentées
par des lignes et des colonnes dans une table de base de données.
Question 2
Parmi les propositions suivantes, laquelle est un exemple de données non structurées ?
Une table Employé avec les colonnes ID d’employé, Nom d’employé et Désignation d’employé
■■ Fichiers audio et vidéo
Une table dans la base de données SQL Server
Explanation
Réponse correcte. Les fichiers audio et vidéo sont des données non structurées.
Question 3
Parmi les propositions suivantes, laquelle est un exemple de jeu de données en flux continu ?
■■ Données provenant de capteurs et d’appareils
Données de vente du mois dernier
Liste des salariés travaillant pour une entreprise
Explanation
Réponse correcte. Les flux de capteurs et d’appareils sont des exemples de jeu de données en flux continu,
car ils sont diffusés en continu.
Question 1
Laquelle des tâches suivantes est un rôle d’administrateur de base de données ?
■■ Sauvegarde et restauration des bases de données
Création de tableaux de bord et de rapports
Identification des problèmes de qualité des données
Explanation
Réponse correcte. Les administrateurs de base de données sauvegarderont la base de données et restaurer-
ont la base de données en cas de perte ou d’endommagement des données.
RÉSERVÉ À UNE UTILISATION FORMATEUR. UTILISATION ÉTUDIANT INTERDITE
65
Question 2
Lequel des outils suivants est un outil de visualisation et de rapport ?
SQL Server Management Studio
■■ Power BI
SQL
Explanation
Réponse correcte. Power BI est un outil standard permettant de créer des tableaux de bord et des rapports
graphiques riches.
Question 3
Lequel des rôles suivants n’est pas un rôle de tâche de données ?
■■ Administrateur système
Analyste de données
Administrateur de base de données
Explanation
Réponse correcte. Les administrateurs système gèrent les composants d’infrastructure tels que les réseaux,
machines virtuelles et autres appareils physiques dans un centre de données
Question 1
Laquelle des affirmations suivantes est une caractéristique d’une base de données relationnelle ?
Toutes les données doivent être stockées sous forme de chaînes de caractères.
■■ Une ligne dans une table représente une seule entité.
Différentes lignes dans la même table peuvent contenir différentes colonnes.
Explanation
Réponse correcte. Chaque ligne d’une table contient les données d’une seule entité de cette table.
Question 2
Qu’est-ce qu’un index ?
■■ Une structure qui vous permet de localiser rapidement des lignes dans une table, en utilisant une
valeur indexée.
Une table virtuelle basée sur le jeu de résultats d’une requête.
Une structure comprenant des lignes et des colonnes que vous utilisez pour stocker des données.
Explanation
Réponse correcte. Vous créez des index pour aider à accélérer les requêtes.
RÉSERVÉ À UNE UTILISATION FORMATEUR. UTILISATION ÉTUDIANT INTERDITE
66
Question 1
Lequel des services suivants doit-on utiliser pour implémenter une base de données non relationnelle ?
■■ Azure Cosmos DB
Base de données SQL Azure
The Gremlin API
Explanation
Réponse correcte. Cosmos DB prend en charge plusieurs modèles courants de bases de données non
relationnelles pf, notamment des magasins de données clé-valeur, des bases de données de graphiques, des
bases de données de documents et des magasins de familles de colonnes.
Question 2
Laquelle des caractéristiques suivantes s’applique aux bases de données non relationnelles ?
Les bases de données non relationnelles contiennent des tables avec des enregistrements plats à
colonnes fixes
Les bases de données non relationnelles vous obligent à utiliser des techniques de normalisation des
données pour réduire la duplication des données
■■ Les bases de données non relationnelles sont soit sans schéma, soit avec des schémas assouplis
Explanation
Réponse correcte. Chaque entité dans une base de données non relationnelle n’a que les champs dont elle a
besoin, et ces champs peuvent varier entre différentes entités.
Question 3
Vous construisez un système qui contrôle la température dans un ensemble d’immeubles de bureaux et
règle la climatisation dans chaque pièce de chaque bloc pour maintenir une température ambiante
agréable. Votre système doit gérer la climatisation dans plusieurs milliers de bâtiments répartis à travers
le pays ou la région, et chaque bâtiment contient généralement au moins 100 pièces climatisées. Quel est
le type de stockage de données NoSQL le plus approprié pour capturer les données de température afin
de permettre leur traitement rapide ?
■■ Un magasin clé-valeur
Une base de données de familles de colonnes
Écrire les températures dans un objet blob dans le stockage Blob Azure
Explanation
Réponse correcte. Un magasin clé-valeur peut ingérer rapidement de gros volumes de données. Un ther-
momètre dans chaque pièce peut envoyer les données à la base de données.
Question 1
Qu’est-ce que l’ingestion de données ?
Le processus de transformation des données brutes en modèles contenant des informations significa-
tives.
Analyser des données pour les anomalies,
■■ Capturer des données brutes en diffusion en continu à partir de diverses sources et les stocker
Explanation
Réponse correcte. Le but de l’ingestion de données est de recevoir des données brutes et de les enregistrer le
plus rapidement possible. Les données peuvent ensuite être traitées et analysées.
RÉSERVÉ À UNE UTILISATION FORMATEUR. UTILISATION ÉTUDIANT INTERDITE
67
Question 2
Lequel des visuels suivants affiche les principaux contributeurs à un résultat ou à une valeur sélectionnée
?
■■ Influenceurs clés
Colonne et graphique à barres
Graphique matriciel
Explanation
Réponse correcte. Un graphique d’influenceurs clés affiche les principaux contributeurs à un résultat ou à
une valeur sélectionnée. Les influenceurs clés sont un excellent choix pour vous aider à comprendre les
facteurs qui influencent une métrique clé.
Question 3
Quel type d’analyse permet de répondre aux questions sur ce qui a eu lieu dans le passé ?
■■ Analyse descriptive
Analyse prescriptive
Analyse prédictive
Explanation
Réponse correcte. L’analyse descriptive permet de répondre aux questions concernant ce qui s’est passé.
RÉSERVÉ À UNE UTILISATION FORMATEUR. UTILISATION ÉTUDIANT INTERDITE
Module 2 Explorer les données relationnelles
dans Azure
REMARQUE : Une procédure stockée est un bloc de code qui s’exécute dans votre base de données. Les
applications utilisent souvent des procédures stockées car elles sont optimisées pour s’exécuter dans
l’environnement de base de données et peuvent accéder aux données très rapidement. Un serveur lié est
une connexion entre deux serveurs de base de données. SQL Server peut utiliser des serveurs liés pour
exécuter des requêtes sur un serveur pouvant inclure des données récupérées à partir d’autres serveurs.
Ces requêtes sont appelées requêtes distribuées.
Dans cette leçon, vous découvrirez les options disponibles lors du choix d’une plateforme de données
relationnelles pour l’hébergement d’une base de données dans Azure.
Objectifs d’apprentissage
Dans cette leçon, vous allez :
●● Identifier les services de données relationnels Azure
●● Explorer les considérations lors du choix d’un service de données relationnelles
ressources) au fur et à mesure que le volume des données et la quantité de travail effectuée varient.
Azure gère cette mise à l’échelle à votre place et vous n’avez pas à ajouter ni à supprimer manuellement
de machines virtuelles, ni à effectuer d’autre forme de configuration.
SaaS est l’abréviation de Software as a Service (Logiciel en tant que service). Les offres SaaS sont
généralement des packages logiciels spécifiques installés et exécutés sur du matériel virtuel dans le
cloud. Les packages SaaS sont généralement des applications hébergées plutôt que des logiciels plus
généralistes tels qu’un SGBD. Les packages SaaS courants disponibles sur Azure incluent Microsoft 365
(anciennement Office 365).
REMARQUE : Microsoft fournit également des services de données pour les systèmes de gestion de base
de données non relationnelle, par exemple Cosmos DB.
L’utilisation d’Azure Data Services réduit le temps que vous devez consacrer à l’administration d’un SGBD.
Toutefois, ces services peuvent également limiter la plage de tâches d’administration personnalisées que
vous pouvez effectuer, car l’exécution manuelle de certaines tâches peut risquer de compromettre la
manière dont le service s’exécute. Par exemple, certains SGBD vous permettent d’installer des logiciels
personnalisés dans une base de données ou d’exécuter des scripts dans le cadre d’une opération de base
de données. Ces logiciels risquent de ne pas être pris en charge par le service de données. Or, si une
application est autorisée à exécuter un script à partir d’une base de données, cela peut affecter la sécurité
du service. Vous devez tenir compte de ces restrictions dans votre travail.
En plus de réduire la charge de travail administrative, Azure Data Services veille à ce que vos bases de
données soient disponibles au moins 99,99 % du temps.
Des coûts sont associés à l’exécution d’une base de données dans Azure Data Services. Le prix de base de
chaque service couvre l’infrastructure et les licences sous-jacentes ainsi que les frais d’administration. De
RÉSERVÉ À UNE UTILISATION FORMATEUR. UTILISATION ÉTUDIANT INTERDITE
72
plus, ces services sont conçus pour être toujours actifs. Cela signifie que vous ne pouvez pas arrêter une
base de données et la redémarrer plus tard.
Toutes les fonctionnalités d’un système de gestion de base de données ne sont pas disponibles dans
Azure Data Services. En effet, Azure Data Services se charge de gérer le système et de le maintenir
opérationnel sur le matériel situé dans un centre de données Azure. L’exposition de certaines fonctions
d’administration peut rendre la plateforme sous-jacente vulnérable à une utilisation abusive, et même
soulever des problèmes de sécurité. C’est la raison pour laquelle vous n’avez aucun contrôle direct sur la
plateforme sur laquelle les services s’exécutent. Si vous avez besoin de plus de contrôle que ne le permet
Azure Data Services, vous pouvez installer votre système de gestion de base de données sur une machine
virtuelle qui s’exécute dans Azure. L’unité suivante décrit cette approche plus en détail pour SQL Server.
Toutefois, les mêmes problèmes s’appliquent aux autres systèmes de gestion de base de données pris en
charge par Azure Data Services.
L’image ci-dessous montre les différentes façons dont vous pouvez exécuter un SGBD tel que SQL Server,
en commençant par un système local dans l’angle supérieur droit, jusqu’à PaaS dans l’angle inférieur
gauche. Le diagramme illustre les avantages du passage à l’approche PaaS.
REMARQUE : Le terme « lift-and-shift » qualifie la manière dont vous pouvez déplacer une base de
données directement d’un serveur local vers une machine virtuelle Azure sans que vous ayez à y apporter
des modifications. Les applications qui se sont déjà connectées à la base de données sur site peuvent
être rapidement reconfigurées pour se connecter à la base de données exécutée sur la machine virtuelle,
mais elles resteront inchangées.
Cas d’utilisation
Cette approche est optimisée pour la migration des applications existantes vers Azure ou pour l’extension
des applications locales existantes vers le cloud lors de déploiements hybrides.
REMARQUE : Un déploiement hybride est un système qui fonctionne en partie sur site et en partie dans le
cloud. Votre base de données peut faire partie d’un système plus vaste qui s’exécute sur site, bien que les
éléments de base de données puissent être hébergés dans le cloud.
RÉSERVÉ À UNE UTILISATION FORMATEUR. UTILISATION ÉTUDIANT INTERDITE
74
Vous pouvez utiliser SQL Server dans une machine virtuelle pour développer et tester des applications
SQL Server traditionnelles. Avec une machine virtuelle, vous disposez de tous les droits d’administration
sur le SGBD et le système d’exploitation. C’est un choix parfait lorsqu’une organisation dispose déjà de
ressources informatiques pour maintenir les machines virtuelles.
Ces fonctionnalités vous permettent de :
●● Créer des scénarios de développement et de test rapides lorsque vous ne souhaitez pas acheter de
matériel SQL Server local non destiné à la production.
●● Se tenir prêt pour les applications existantes qui nécessitent une migration rapide vers le cloud avec
des changements minimes ou sans changement.
●● Effectuer un scale-up de la plateforme sur laquelle SQL Server s’exécute en allouant plus de mémoire,
de puissance de processeur et d’espace disque à la machine virtuelle. Vous pouvez rapidement
redimensionner une machine virtuelle Azure sans avoir à réinstaller le logiciel qui s’y exécute.
Avantages de productivité
L’exécution de SQL Server sur des machines virtuelles permet de répondre à des besoins de productivité
uniques et diversifiés, grâce à une combinaison de déploiements sur site et hébergés dans le cloud, tout
en utilisant le même ensemble de produits serveur, d’outils de développement et d’expertise dans ces
environnements.
Il n’est pas toujours facile pour les entreprises de transformer leur SGBD en un service entièrement géré.
Il peut y avoir des exigences spécifiques qui doivent être satisfaites pour migrer vers un service géré et
qui nécessitent d’apporter des modifications à la base de données et aux applications qui l’utilisent. C’est
pour cette raison que l’utilisation de machines virtuelles peut constituer une solution, mais leur utilisation
n’élimine pas la nécessité d’administrer votre SGBD aussi soigneusement que vous le feriez sur site.
1 https://docs.microsoft.com/azure/sql-database/sql-database-single-database
RÉSERVÉ À UNE UTILISATION FORMATEUR. UTILISATION ÉTUDIANT INTERDITE
76
Pool élastique
Cette option est similaire à la base de données unique, sauf que, par défaut, plusieurs bases de données
peuvent partager les mêmes ressources, telles que la mémoire, l’espace de stockage de données et la
puissance de traitement. Les ressources sont désignées sous le nom de pool. Vous créez le pool et seules
vos bases de données peuvent l’utiliser. Ce modèle est utile si vous disposez de bases de données dont
les besoins en ressources varient dans le temps. Il permet aussi de réduire les coûts. Par exemple, à la fin
du mois, votre base de données de paie peut nécessiter une puissance de traitement importante de la
part du processeur, lorsque vous gérez le traitement de la paie, mais à d’autres moments, la base de
données peut devenir beaucoup moins active. Vous pouvez utiliser une autre base de données pour
exécuter des rapports. Cette base de données peut devenir active pendant plusieurs jours au milieu du
mois, à mesure que les rapports de gestion sont générés, mais avec une charge plus légère à d’autres
RÉSERVÉ À UNE UTILISATION FORMATEUR. UTILISATION ÉTUDIANT INTERDITE
77
moments. Le pool élastique vous permet d’utiliser les ressources disponibles dans le pool, puis de libérer
les ressources une fois le traitement terminé.
Cas d’utilisation
Azure SQL Database vous offre la meilleure option pour un faible coût, avec une administration minimale.
Il n’est pas entièrement compatible avec les installations SQL Server locales. Il est souvent utilisé dans les
nouveaux projets cloud, où la conception de l’application peut s’adapter à toutes les modifications
requises de vos applications.
REMARQUE : Vous pouvez utiliser l’Assistant Migration de données pour détecter les problèmes de
compatibilité avec vos bases de données, qui peuvent avoir un impact sur les fonctionnalités de base de
données dans Azure SQL Database. Pour plus d’informations, consultez l’article Vue d’ensemble de
l’Assistant Migration de données2.
2 https://docs.microsoft.com/sql/dma/dma-overview
RÉSERVÉ À UNE UTILISATION FORMATEUR. UTILISATION ÉTUDIANT INTERDITE
78
Avantages de productivité
Azure SQL Database met à jour et corrige automatiquement le logiciel SQL Server pour garantir que vous
exécutez toujours la version la plus récente et la plus sécurisée du service.
Les fonctionnalités de scalabilité d’Azure SQL Database garantissent que vous pouvez augmenter les
ressources disponibles pour stocker et traiter les données, sans avoir à effectuer une mise à niveau
manuelle coûteuse.
Le service offre des garanties de haute disponibilité, pour garantir que vos bases de données sont
disponibles au moins 99,99 % du temps. Azure SQL Database prend en charge la restauration à un
moment donné, ce qui vous permet de restaurer une base de données dans l’état dans lequel elle se
trouvait à un moment spécifique. Les bases de données peuvent être répliquées dans différentes régions
pour fournir une assurance supplémentaire et une récupération d’urgence.
La protection avancée contre les menaces fournit des fonctionnalités de sécurité avancées, telles que des
évaluations de vulnérabilité, pour permettre de détecter et de résoudre les problèmes de sécurité
potentiels liés à vos bases de données. La protection contre les menaces détecte également les activités
anormales qui indiquent des tentatives inhabituelles et potentiellement nuisibles d’accéder à votre base
de données ou de l’exploiter. Il surveille en permanence votre base de données pour détecter les activités
suspectes et fournit des alertes de sécurité immédiates sur les vulnérabilités potentielles, les attaques par
injection SQL et les modèles d’accès anormaux aux bases de données. Les alertes de détection des
menaces fournissent des détails sur l’activité suspecte et recommandent des actions pour enquêter et
pour atténuer la menace.
L’audit suit les événements de base de données et les consigne dans un journal d’audit dans votre
compte de stockage Azure. L’audit peut vous aider à maintenir la conformité réglementaire, à retracer
l’activité de la base de données et à mieux comprendre les écarts et les anomalies qui pourraient indiquer
des préoccupations commerciales ou des violations présumées de la sécurité.
SQL Database permet de sécuriser vos données grâce au chiffrement. Pour les données en mouvement, il
utilise la sécurité de la couche de transport. Pour les données au repos, il utilise Transparent Data Encryp-
tion (chiffrement transparent des données). Pour les données en cours d’utilisation, il utilise toujours le
chiffrement.
Dans le scénario Wide World Importers, les serveurs liés sont utilisés pour effectuer des requêtes dis-
tribuées. Toutefois, ni la base de données unique ni le pool élastique ne prennent en charge les serveurs
liés. Si vous souhaitez utiliser une base de données unique ou un pool élastique, vous devrez peut-être
modifier les requêtes qui utilisent des serveurs liés et retravailler les opérations qui dépendent de ces
fonctionnalités.
limites et, de ce fait, peuvent ne pas convenir. Dans ces cas-là, Azure SQL Database Managed Instance
peut être une excellente solution à retenir.
3 https://docs.microsoft.com/azure/sql-database/sql-database-managed-instance
RÉSERVÉ À UNE UTILISATION FORMATEUR. UTILISATION ÉTUDIANT INTERDITE
80
Cas d’utilisation
Utilisez Azure SQL Database Managed Instance si vous souhaitez effectuer une migration lift-and-shift
d’une instance SQL Server locale et de toutes les bases de données correspondantes vers le cloud, sans
créer de surcharge de gestion liée à l’exécution de SQL Server sur une machine virtuelle.
Azure SQL Database Managed Instance fournit des fonctionnalités non disponibles avec les options Base
de données unique ou Pool élastique. Servez-vous de Managed Instance si votre système utilise des fonc-
tionnalités comme des serveurs liés, Service Broker (un système de traitement de messages qui permet
de répartir les tâches entre les serveurs) ou Database Mail (qui permet à votre base de données d’envoyer
des courriers électroniques aux utilisateurs). Pour vérifier la compatibilité avec un système local existant,
vous pouvez installer AMD (Assistant Migration de données)4. Cet outil analyse vos bases de données
sur SQL Server et signale les problèmes risquant de bloquer la migration vers une instance gérée.
Avantages de productivité
SQL Database Managed Instance offre tous les avantages de gestion et de sécurité disponibles lors de
l’utilisation d’une base de données unique et d’un pool élastique. Le déploiement d’une instance gérée
permet à un administrateur système de gagner du temps sur les tâches administratives, car le service SQL
Database exécute automatiquement ou simplifie considérablement ces tâches. Les tâches automatiques
comprennent l’installation du système d’exploitation et du système de gestion de base de données
(SGBD), ainsi que l’application de correctifs pour ces derniers, le redimensionnement et la configuration
dynamiques d’instances, les sauvegardes, la réplication de bases de données (y compris les bases de
données système), la configuration haute disponibilité et la configuration des flux de données de surveil-
lance de l’intégrité et des performances.
Managed Instance est quasiment 100 % compatible avec SQLServer Enterprise Edition, exécuté en local.
L’option de déploiement de SQL Database Managed Instance prend en charge les connexions classiques
au moteur de base de données SQL Server et les connexions intégrées à Azure Active Directory (AD). Les
connexions au moteur de base de données SQL Server classiques requièrent un nom d’utilisateur et un
mot de passe. Vous devez saisir vos informations d’identification chaque fois que vous vous connectez au
serveur. Les connexions Azure AD utilisent les identifiants associés aux infos d’identification actives sur
votre ordinateur. Vous n’avez donc pas besoin de les indiquer chaque fois que vous vous connectez au
serveur.
Dans le scénario Wide World Importers, il convient peut-être mieux d’utiliser SQL Database Managed
Instance plutôt qu’une base de données unique ou un pool élastique. SQL Database Managed Instance
prend en charge les serveurs liés, même si une partie des autres fonctionnalités avancées requises par la
base de données risquent de ne pas être disponibles. Pour obtenir une correspondance parfaite, vous
n’aurez peut-être pour seul recours que d’exécuter SQL Server sur une machine virtuelle. Vous devrez
néanmoins trouver un juste équilibre entre les avantages d’une fonctionnalité globale et la surcharge
administrative et de maintenance requise.
4 https://www.microsoft.com/download/details.aspx?id=53595
RÉSERVÉ À UNE UTILISATION FORMATEUR. UTILISATION ÉTUDIANT INTERDITE
81
5 https://docs.microsoft.com/azure/dms/tutorial-postgresql-azure-postgresql-online
RÉSERVÉ À UNE UTILISATION FORMATEUR. UTILISATION ÉTUDIANT INTERDITE
84
Question 2
Parmi les affirmations suivantes, laquelle est vraie concernant l’exécution de SQL Server sur une machine
virtuelle ?
Vous devez installer et maintenir vous-même le logiciel du système de gestion de base de données,
mais les sauvegardes sont automatisées.
L'installation et la maintenance du logiciel sont automatisées, mais vous devez effectuer vos propres
sauvegardes.
Vous êtes responsable de toutes les tâches d’installation et de maintenance du logiciel, mais aussi de
l’exécution des sauvegardes.
Question 3
Parmi les affirmations suivantes, laquelle est vraie concernant Azure SQL Database ?
Un scale-up ne prend effet que lorsque vous redémarrez la base de données.
Un scale-out ne prend effet que lorsque vous redémarrez la base de données.
Le scale-up ou le scale-out prendra effet sans redémarrage de la base de données SQL.
Question 4
Quand vous utilisez Azure SQL Database Managed Instance, quelle est la manière la plus simple d’implé-
menter des sauvegardes ?
Configuration manuelle du serveur SQL.
Créer une tâche planifiée à sauvegarder.
Les sauvegardes sont automatiquement gérées.
RÉSERVÉ À UNE UTILISATION FORMATEUR. UTILISATION ÉTUDIANT INTERDITE
85
Question 5
Quelle est la meilleure façon de transférer les données d’une base de données PostgreSQL s’exécutant
localement vers une base de données s’exécutant via le service Azure Database pour PostgreSQL ?
Exporter les données depuis la base de données locale et les importer manuellement dans la base de
données exécutée dans Azure.
Télécharger un fichier de sauvegarde de base de données PostgreSQL dans la base de données
exécutée dans Azure.
Utiliser les services de migration de base de données Azure.
Résumé
Dans cette leçon, vous avez appris les options de déploiement PaaS et IaaS pour exécuter des bases de
données dans le cloud. Vous avez vu qu’Azure Data Services fournit toute une gamme de services PaaS
pour l’exécution de bases de données relationnelles dans Azure. Vous avez vu de quelle façon les options
d’une approche PaaS prennent en charge l’automatisation des tâches de gestion et d’administration par
rapport à une approche IaaS.
Ressources complémentaires
●● Choisir l’option de déploiement appropriée6
●● Qu’est-ce qu’une base de données Azure SQL Database unique7
●● Qu’est-ce qu’Azure SQL Database Managed Instance ?8
●● Assistant Migration de données (DMA)9
●● Azure Database Migration Service (DMS)10
●● Choisir le magasin de données correct11
6 https://docs.microsoft.com/azure/sql-database/sql-database-paas-vs-sql-server-iaas
7 https://docs.microsoft.com/azure/sql-database/sql-database-single-database
8 https://docs.microsoft.com/azure/sql-database/sql-database-managed-instance
9 https://www.microsoft.com/download/details.aspx?id=53595
10 https://docs.microsoft.com/azure/dms/dms-overview
11 https://docs.microsoft.com/azure/architecture/guide/technology-choices/data-store-overview
RÉSERVÉ À UNE UTILISATION FORMATEUR. UTILISATION ÉTUDIANT INTERDITE
86
Objectifs d’apprentissage
Dans cette leçon, vous allez :
●● Fournir des services de données relationnelles
●● Configurer les services de données relationnelles
●● Explorer les problèmes de connectivité de base
●● Découvrir la sécurité des données
La façon dont le fournisseur de services approvisionne les ressources est opaque et vous n’avez pas à
vous soucier du fonctionnement de ce processus. Tout ce que vous avez à faire est de spécifier des
paramètres qui déterminent la taille des ressources requises (espace disque, mémoire, puissance de calcul
et bande passante du réseau). Ces paramètres sont déterminés en estimant la taille de la charge de travail
que vous prévoyez d’exécuter à l’aide du service. Dans de nombreux cas, vous pouvez modifier ces
paramètres après la création du service, en augmentant peut-être la quantité d’espace de stockage ou de
mémoire, si la charge de travail est supérieure à ce que vous aviez initialement prévu. L’action d’aug-
menter (ou de diminuer) les ressources utilisées par un service est appelée mise à l’échelle.
La vidéo suivante résume le processus qu’Azure effectue lorsque vous approvisionnez un service.
https://www.microsoft.com/videoplayer/embed/RE4zTud
Azure fournit plusieurs outils que vous pouvez utiliser pour approvisionner les services :
●● Le portail Azure. C’est le moyen le plus pratique de fournir un service à la plupart des utilisateurs. Le
portail Azure affiche une série de pages spécifiques au service, qui vous invitent à indiquer les para-
mètres requis et il valide ces paramètres avant d’approvisionner réellement le service.
●● L’interface de ligne de commande (CLI) d’Azure. L’interface de ligne de commande offre un ensemble
de commandes que vous pouvez exécuter à partir de l’invite de commande du système d’exploitation
ou du Cloud Shell dans le portail Azure. Vous pouvez utiliser ces commandes pour créer et gérer des
ressources Azure. La CLI convient si vous devez automatiser la création de services. Vous pouvez
stocker les commandes CLI dans des scripts et vous pouvez exécuter ces scripts par programme. La
CLI peut s’exécuter sur les ordinateurs Windows, macOS et Linux. Pour obtenir des informations
détaillées sur Azure CLI, consultez l’article Qu’est-ce qu’Azure CLI12.
●● Azure PowerShell. De nombreux administrateurs sont familiarisés avec l’utilisation des commandes
PowerShell pour créer des scripts et automatiser les tâches administratives. Azure offre une série de
commandlets (commandes spécifiques à Azure) que vous pouvez utiliser dans PowerShell pour créer
et gérer des ressources Azure. Vous trouverez plus d’informations sur Azure PowerShell en ligne, à
l’adresse Documentation Azure PowerShell13. Comme la CLI, PowerShell est disponible pour Win-
dows, macOS et Linux.
●● Modèles Azure Resource Manager. Un modèle Azure Resource Manager décrit le ou les services que
vous souhaitez déployer dans un fichier texte, dans un format appelé JSON (JavaScript Object Nota-
tion). L’exemple ci-dessous présente un modèle que vous pouvez utiliser pour approvisionner une
instance de la base de données Azure SQL.
"resources": [
{
"name": "sql-server-dev",
"type": "Microsoft.Sql/servers",
"apiVersion": "2014-04-01-preview",
"location": "[parameters('location')]",
"tags": {
12 https://docs.microsoft.com/cli/azure/what-is-azure-cli
13 https://docs.microsoft.com/powershell/azure
RÉSERVÉ À UNE UTILISATION FORMATEUR. UTILISATION ÉTUDIANT INTERDITE
88
"displayName": "SqlServer"
}
"properties": {}
}
]
Vous envoyez le modèle à Azure à l’aide de la commande az deployment group create dans
l’interface de ligne de commande Azure ou de la commande New-AzResourceGroupDeployment
dans Azure PowerShell. Pour plus d’informations sur la création et l’utilisation de modèles Azure Resource
Manager pour approvisionner des ressources Azure, consultez l’article Que sont les modèles ARM ?14
https://www.microsoft.com/videoplayer/embed/RE4AkhG
14 https://docs.microsoft.com/azure/azure-resource-manager/templates/overview
RÉSERVÉ À UNE UTILISATION FORMATEUR. UTILISATION ÉTUDIANT INTERDITE
89
Les processus d’approvisionnement d’Azure Database pour PostgreSQL et d’Azure Database pour MySQL
sont très similaires.
REMARQUE : PostgreSQL vous offre également l’option hyperscale, qui prend en charge les charges de
travail ultra-hautes performances.
●● Excellente prise en charge des applications multi-locataires, des analyses opérationnelles en temps
réel et des charges de travail transactionnelles à haut débit
Les informations ci-dessous résument les champs et les paramètres requis lors de l’approvisionnement
d’un service de base de données PostgreSQL ou MySQL :
Vous pouvez choisir entre trois niveaux de tarification, chacun étant conçu pour prendre en charge
différentes charges de travail :
●● De base. Ce niveau convient aux charges de travail qui nécessitent des performances de calcul et
d’E/S légères. Il s’agit par exemple des serveurs utilisés pour le développement, les tests ou les
applications à petite échelle ou rarement utilisées.
●● Usage général. Utilisez ce niveau de tarification pour les charges de travail d’entreprise qui nécessi-
tent un calcul et une mémoire équilibrés avec un débit d’E/S variable. Les exemples incluent des
serveurs pour l’hébergement d’applications web et mobiles et d’autres applications d’entreprise.
●● Mémoire optimisée Ce niveau prend en charge les charges de travail de base de données hautes
performances qui nécessitent des performances en mémoire, pour un traitement des transactions plus
rapide et une concurrence accrue. Les exemples incluent les serveurs pour le traitement des données
en temps réel et les applications transactionnelles ou analytiques hautes performances.
RÉSERVÉ À UNE UTILISATION FORMATEUR. UTILISATION ÉTUDIANT INTERDITE
92
Vous pouvez affiner les ressources disponibles pour le niveau sélectionné. Vous pourrez augmenter ces
ressources ultérieurement, si nécessaire.
REMARQUE : La page Configurer affiche les performances fournies par les configurations à usage
général et à mémoire optimisée en termes d’IOPS. IOPS est un acronyme pour Input/Output Operations
per seconds (Opérations d’entrée/sortie par seconde). Elle constitue une mesure de la capacité de lecture et
d’écriture disponible à l’aide des ressources configurées.
●● Nom d’utilisateur administrateur. Un compte de connexion à utiliser lorsque vous vous connectez
au serveur. Le nom de connexion de l’administrateur ne peut pas être azure_superuser, admin,
administrator, root, guest ou public.
●● Mot de passe. Créez un nouveau mot de passe pour le compte administrateur du serveur. Il doit
contenir de 8 à 128 caractères. Votre mot de passe doit contenir des caractères appartenant à trois
des catégories suivantes : Lettres majuscules anglaises, lettres minuscules anglaises, chiffres (0-9) et
caractères non alphanumériques (!, $, #,%, etc.).
Après avoir spécifié les paramètres appropriés, sélectionnez Revoir + créer pour approvisionner le
serveur.
Dans la section Réseaux virtuels, vous pouvez spécifier les réseaux virtuels autorisés à acheminer le trafic
vers le service. Quand vous créez des éléments comme des applications web et des machines virtuelles,
vous pouvez les ajouter à un réseau virtuel. Si ces applications et machines virtuelles nécessitent l’accès à
votre ressource, ajoutez le réseau virtuel contenant ces éléments à la liste des réseaux autorisés.
Si vous devez vous connecter au service à partir d’un ordinateur local, dans la section Pare-feu, ajoutez
l’adresse IP de l’ordinateur. Ce paramètre crée une règle de pare-feu qui permet au trafic d’atteindre le
service à partir de cette adresse.
L’image ci-dessous présente la page Pare-feu et réseaux virtuels pour une base de données Azure SQL.
Vous accéderez à une page similaire pour MySQL et PostgreSQL.
REMARQUE : Azure SQL Database communique par le biais du port 1433. Si vous essayez de vous
connecter à partir d’un réseau d’entreprise, le trafic sortant sur le port 1433 peut être bloqué par le
pare-feu de votre réseau. Dans ce cas, vous ne pouvez pas vous connecter à votre serveur Azure SQL
Database, sauf si votre service informatique ouvre le port 1433.
IMPORTANT : La règle de pare-feu 0.0.0.0 permet à tous les services Azure de franchir la règle de
pare-feu au niveau du serveur et de tenter de se connecter à une base de données unique ou mise en
pool par le biais du serveur.
RÉSERVÉ À UNE UTILISATION FORMATEUR. UTILISATION ÉTUDIANT INTERDITE
94
Configurer l’authentification
Avec l’authentification Azure AD (Active Directory), vous pouvez gérer les identités des utilisateurs de
base de données et d’autres services Microsoft de manière centralisée. La gestion centralisée des ID
fournit un emplacement unique pour gérer les utilisateurs de base de données et simplifie la gestion des
autorisations.
Vous pouvez utiliser ces identités et configurer l’accès à vos services de données relationnelles.
Pour obtenir des informations détaillées sur l’utilisation d’Azure AD avec la base de données Azure SQL,
visitez la page Qu’est-ce que l’authentification Azure Active Directory pour la base de données SQL16
sur le site web de Microsoft. Vous pouvez également authentifier les utilisateurs qui se connectent à
Azure Database pour PostgreSQL17 et Azure Database pour MySQL18 avec AD.
15 https://docs.microsoft.com/azure/private-link/private-endpoint-overview
16 https://docs.microsoft.com/azure/sql-database/sql-database-aad-authentication
17 https://docs.microsoft.com/azure/postgresql/concepts-aad-authentication
18 https://docs.microsoft.com/azure/mysql/concepts-azure-ad-authentication
RÉSERVÉ À UNE UTILISATION FORMATEUR. UTILISATION ÉTUDIANT INTERDITE
95
Vous pouvez contrôler l’accès aux ressources en créant des attributions de rôle avec RBAC Azure. Une
attribution de rôle est constituée de trois éléments : un principal de sécurité, une définition de rôle et une
étendue.
●● Un principal de sécurité est un objet qui représente un utilisateur, un groupe, un principal de service
ou une identité managée qui demande l’accès aux ressources Azure.
●● Une définition de rôle, souvent abrégée en rôle, est un ensemble d’autorisations. Une définition de
rôle liste les opérations qui peuvent être effectuées, par exemple lire, écrire et supprimer. Les rôles
peuvent avoir des noms généraux (par exemple « propriétaire ») ou spécifiques (par exemple « lecteur
de machine virtuelle »). Azure met à votre disposition plusieurs rôles intégrés, notamment :
●● Propriétaire - : a un droit d’accès complet à toutes les ressources, y compris le droit de déléguer
l’accès à d’autres.
●● Contributeur - : peut créer et gérer tous les types de ressources Azure, mais ne peut pas accorder
l’accès à d’autres utilisateurs.
●● Lecteur : peut afficher les ressources Azure existantes.
●● Administrateur d’accès utilisateur - : vous permet de gérer l’accès des utilisateurs aux ressourc-
es Azure.
Vous pouvez également créer vos propres rôles personnalisés. Pour des informations détaillées, voir
Créer ou mettre à jour des rôles personnalisés Azure à l’aide du portail Azure19 sur le site web de
Microsoft.
●● Une étendue répertorie l’ensemble de ressources auxquelles s’applique l’accès. Quand vous attribuez
un rôle, vous pouvez limiter les actions autorisées de façon plus poussée en définissant une étendue.
Une étendue est utile par exemple si vous voulez attribuer le rôle Contributeur de site web à
quelqu’un, mais seulement pour un groupe de ressources.
Vous ajoutez des attributions de rôle à une ressource dans le portail Azure via la page Contrôle d’accès
(IAM). L’onglet Attributions de rôle vous permet d’associer un rôle à un principal de sécurité, en définis-
sant le niveau d’accès du rôle à la ressource. Pour plus d’informations, lisez Ajouter ou supprimer des
attributions de rôle Azure à l’aide du portail Azure20.
19 https://docs.microsoft.com/azure/role-based-access-control/custom-roles-portal
20 https://docs.microsoft.com/azure/role-based-access-control/role-assignments-portal
RÉSERVÉ À UNE UTILISATION FORMATEUR. UTILISATION ÉTUDIANT INTERDITE
96
Configurer DoSGuard
Les attaques par déni de service (DoS) sont réduites par un service de passerelle SQL Database appelé
DoSGuard. DoSGuard suit activement les échecs de connexion à partir d’adresses IP. Suite à plusieurs
RÉSERVÉ À UNE UTILISATION FORMATEUR. UTILISATION ÉTUDIANT INTERDITE
100
échecs de connexion à partir d’une adresse IP spécifique au cours d’une période donnée, l’adresse IP est
bloquée pour accéder aux ressources du service pendant un court instant.
En outre, la passerelle de base de données Azure SQL effectue les tâches suivantes :
●● Elle valide toutes les connexions aux serveurs de base de données, et ce, afin de s’assurer qu’elles
proviennent de clients authentiques.
●● Elle chiffre toutes les communications entre un client et les serveurs de base de données.
●● Elle inspecte chaque paquet réseau envoyé via une connexion client. La passerelle valide les informa-
tions de connexion du paquet et les transmet au serveur physique approprié en fonction du nom de
la base de données spécifié dans la chaîne de connexion.
REMARQUE : Les connexions à votre serveur Azure Database pour PostgreSQL communiquent via le port
5432. Lorsque vous tentez de vous connecter à partir d’un réseau d’entreprise, il se peut que le trafic
sortant sur le port 5432 ne soit pas autorisé par le pare-feu de votre réseau. Dans ce cas, vous ne pourriez
pas vous connecter à votre serveur, à moins que votre service informatique n’ouvre le port 5432.
Si vous connaissez PostgreSQL, vous constaterez que tous les paramètres ne sont pas pris en charge dans
Azure. La page Paramètres du serveur21 du site web de Microsoft décrit les paramètres PostgreSQL
disponibles.
PostgreSQL vous permet en outre d’étendre les fonctionnalités de votre base de données à l’aide d’ex-
tensions. Les extensions regroupent plusieurs objets SQL associés dans un seul package qui peut être
chargé ou supprimé de votre base de données, avec une seule commande. Après avoir été chargées dans
la base de données, les extensions fonctionnent comme des fonctionnalités intégrées. Une extension doit
être préalablement installée dans votre base de données avant de pouvoir être utilisée. Pour installer une
extension particulière, exécutez la commande CREATE EXTENSION de l’outil psql pour charger les objets
packagés dans votre base de données. Les extensions PostgreSQL ne sont pas toutes prises en charge
dans Azure. Pour une liste complète, consultez l’article Extensions PostgreSQL dans Azure Database
pour PostgreSQL22.
21 https://docs.microsoft.com/azure/postgresql/concepts-servers#server-parameters
22 https://docs.microsoft.com/azure/postgresql/concepts-extensions
RÉSERVÉ À UNE UTILISATION FORMATEUR. UTILISATION ÉTUDIANT INTERDITE
102
Les réplicas en lecture contribuent à améliorer les performances et l’étendue des charges de travail
gourmandes en lecture. Les charges de travail en lecture peuvent être isolées sur les réplicas, tandis que
les charges de travail en écriture peuvent être dirigées vers le maître.
Un scénario courant consiste à faire en sorte que les charges de travail BI et analytiques utilisent des
réplicas en lecture comme source de données pour la création de rapports.
Étant donné que les réplicas sont en lecture seule, elles ne réduisent pas directement la charge des
opérations d’écriture sur le maître. Cette fonctionnalité n’est pas destinée aux charges de travail gour-
mandes en écriture.
Les réplicas sont de nouveaux serveurs que vous gérez de la même manière que les serveurs Azure
Database pour PostgreSQL. Pour chaque réplica en lecture, vous êtes facturé pour le calcul provisionné
dans les vCores et le stockage en Go/mois.
Utilisez la page Réplication pour un serveur PostgreSQL dans le portail Azure pour ajouter des réplicas
en lecture à votre base de données :
REMARQUE : Les connexions à votre serveur Azure Database pour MySQL communiquent via le port
3306. Lorsque vous tentez de vous connecter à partir d’un réseau d’entreprise, il se peut que le trafic
sortant sur le port 3306 ne soit pas autorisé par le pare-feu de votre réseau. Si tel est le cas, vous ne
pouvez pas vous connecter à votre serveur, à moins que votre service informatique n’ouvre le port 3306.
RÉSERVÉ À UNE UTILISATION FORMATEUR. UTILISATION ÉTUDIANT INTERDITE
103
IMPORTANT : Par défaut, la sécurité de la connexion SSL est requise et appliquée sur votre serveur Azure
Database pour MySQL.
Vous trouverez plus d’informations sur les paramètres disponibles pour MySQL dans Azure sur la page
Comment configurer les paramètres serveur dans Azure Database pour MySQL à l’aide du portail
Azure23 sur le site web de Microsoft.
23 https://docs.microsoft.com/azure/mysql/howto-server-parameters
RÉSERVÉ À UNE UTILISATION FORMATEUR. UTILISATION ÉTUDIANT INTERDITE
104
Résumé
Dans cette leçon, vous avez appris à provisionner et à déployer des bases de données relationnelles à
l’aide de différents types de magasins de données. Vous avez appris à déployer les services de données
Azure via le portail Azure, Azure CLI et Azure PowerShell. Vous avez également appris à configurer la
connectivité à ces bases de données pour autoriser l’accès à partir d’un site local ou au sein d’un réseau
virtuel Azure. Vous avez également appris à protéger votre base de données à l’aide d’outils tels que le
pare-feu et en configurant l’authentification.
Autres ressources
●● Créer une base de données Azure Database pour PostgreSQL25
●● Créer une Azure Database pour MySQL26
●● Créer une base de données unique Azure27
●● Documentation de base de données SQL Azure28
●● Paramètres du serveur PostgreSQL29
●● Extensions PostgreSQL dans Azure Database pour PostgreSQL - Serveur unique30
●● Comment configurer les paramètres de serveur dans Azure Database pour MySQL à l’aide du
portail Azure31
24 https://docs.microsoft.com/learn/modules/explore-provision-deploy-relational-database-offerings-azure/7-exercise-provision-relational-
azure-data-services?pivots=azuresqls
25 https://docs.microsoft.com/azure/postgresql/quickstart-create-server-database-portal
26 https://docs.microsoft.com/azure/mysql/quickstart-create-mysql-server-database-using-azure-portal
27 https://docs.microsoft.com/azure/sql-database/sql-database-single-database-quickstart-guide
28 https://docs.microsoft.com/azure/sql-database
29 https://docs.microsoft.com/azure/postgresql/concepts-servers#server-parameters
30 https://docs.microsoft.com/azure/postgresql/concepts-extensions
31 https://docs.microsoft.com/azure/mysql/howto-server-parameters
RÉSERVÉ À UNE UTILISATION FORMATEUR. UTILISATION ÉTUDIANT INTERDITE
105
Objectifs d’apprentissage
Dans cette leçon, vous allez :
●● Décrire les techniques de requête pour les données à l’aide du langage SQL
●● Interroger les données relationnelles
Présentation de SQL
SQL signifie langage de requête structuré. SQL est utilisé pour communiquer avec une base de données
relationnelle. Il s’agit du langage standard pour les systèmes de gestion de bases de données relation-
nelles. Les instructions SQL sont utilisées pour effectuer des tâches telles que la mise à jour des données
dans une base de données ou la récupération des données d’une base de données. Certains systèmes de
gestion de base de données relationnelle courants qui utilisent SQL incluent Microsoft SQL Server,
MySQL, PostgreSQL, MariaDB et Oracle.
REMARQUE : SQL a été normalisé à l’origine par l’American National Standards Institute (ANSI) en 1986,
et par l’Organisation internationale de normalisation (ISO) en 1987. Depuis lors, la norme a été étendue à
plusieurs reprises car les fournisseurs de bases de données relationnelles ont ajouté de nouvelles fonc-
tionnalités à leurs systèmes. En outre, la plupart des fournisseurs de bases de données incluent leurs
propres extensions propriétaires, qui ne font pas partie de la norme, ce qui a abouti à une variété de
dialectes de SQL.
Dans cette unité, vous découvrirez SQL. Vous apprendrez comment l’utiliser pour interroger et maintenir
des données dans une base de données, ainsi que les différents dialectes disponibles.
RÉSERVÉ À UNE UTILISATION FORMATEUR. UTILISATION ÉTUDIANT INTERDITE
106
Instruction Description
SELECT Sélectionner/Lire des lignes dans une table
INSERTION Insérer de nouvelles lignes dans une table
UPDATE Modifier / Mettre à jour les lignes existantes
DELETE Supprimer les lignes existantes dans une table
La forme de base d’une instruction INSERT insérera une ligne à la fois. Par défaut, les instructions
SELECT, UPDATE et DELETE sont appliquées à chaque ligne d’une table. Vous appliquez généralement
une clause WHERE avec ces instructions pour spécifier les critères. Seules les lignes qui correspondent à
ces critères seront sélectionnées, mises à jour ou supprimées.
AVERTISSEMENT : SQL ne fournit pas les invites Êtes-vous sûr ?, soyez donc prudent lorsque vous utilisez
DELETE ou UPDATE sans clause WHERE car vous pouvez perdre ou modifier beaucoup de données.
Le code suivant est un exemple d’instruction SQL qui sélectionne toutes les lignes qui correspondent à un
seul filtre d’une table. La clause FROM spécifie la table à utiliser :
RÉSERVÉ À UNE UTILISATION FORMATEUR. UTILISATION ÉTUDIANT INTERDITE
107
SELECT *
FROM MyTable
WHERE MyColumn2 = 'contoso'
Si une requête renvoie plusieurs lignes, elles n’apparaissent pas nécessairement dans une séquence
spécifique. Si vous souhaitez trier les données, vous pouvez ajouter une clause ORDER BY. Les données
seront triées selon la colonne spécifiée :
SELECT *
FROM MyTable
ORDER BY MyColumn1
Vous pouvez également exécuter des instructions SELECT qui extraient des données de plusieurs tables à
l’aide de la clause JOIN. Les jointures indiquent comment les lignes d’une table sont connectées aux
lignes de l’autre pour déterminer les données à renvoyer. Une condition de jointure définit la manière
dont deux tables sont liées dans une requête en :
●● Spécifiant la colonne de chaque table à utiliser pour la jointure. Une condition de jointure typique
spécifie une clé étrangère d’une table et sa clé primaire associée dans l’autre table.
●● Spécification d’un opérateur logique (par exemple, = ou <>,) à utiliser pour comparer les valeurs des
colonnes.
La requête suivante présente un exemple qui joint deux tables, nommées Inventory et CustomerOrder. Il
récupère toutes les lignes où la valeur de la colonne ID dans la table Inventory correspond à la valeur
dans la colonne InventoryId dans la table Inventory qui correspond à la valeur de la colonne InventoryID
dans la table CustomerOrder.
SELECT *
FROM Inventory
JOIN CustomerOrder
WHERE Inventory.ID = CustomerOrder.InventoryID
SQL fournit des fonctions d’agrégation. Une fonction d’agrégation calcule un seul résultat sur un ensem-
ble de lignes ou sur une table entière. L’exemple ci-dessous trouve la valeur minimale dans la colonne
MyColumn1 sur toutes les lignes du tableau MyTable :
SELECT MIN(MyColumn1)
FROM MyTable
Un certain nombre d’autres fonctions d’agrégation sont disponibles, notamment MAX (qui renvoie la plus
grande valeur d’une colonne), AVG (qui renvoie la valeur moyenne, mais uniquement si la colonne
contient des données numériques) et SUM (qui renvoie la somme de tous les valeurs dans la colonne,
mais encore une fois, uniquement si la colonne est numérique).
L’exemple suivant présente la marche à suivre pour mettre à jour une ligne existante à l’aide de SQL. Il
modifie la valeur de la deuxième colonne, mais uniquement pour les lignes qui ont la valeur 3 dans
MyColumn3. Toutes les autres lignes restent inchangées :
UPDATE MyTable
SET MyColumn2 = 'contoso'
WHERE MyColumn1 = 3
RÉSERVÉ À UNE UTILISATION FORMATEUR. UTILISATION ÉTUDIANT INTERDITE
108
AVERTISSEMENT : Si vous omettez la clause WHERE, une instruction UPDATE va modifier chaque ligne
de la table.
Utilisez l’instruction DELETE pour supprimer des lignes. Spécifiez la table dans laquelle les lignes doivent
être supprimées, ainsi qu’une clause WHERE qui identifie les lignes à supprimer :
DELETE FROM MyTable
WHERE MyColumn2 = 'contoso'
AVERTISSEMENT : Si vous omettez la clause WHERE, une instruction DELETE supprimera chaque ligne
de la table.
L’instruction INSERT prend une forme légèrement différente. Vous spécifiez un tableau et des colonnes
dans une clause INTO, ainsi qu’une liste de valeurs à stocker dans ces colonnes. SQL standard prend
uniquement en charge l’insertion d’une ligne à la fois, comme illustré dans l’exemple suivant. Certains
dialectes vous permettent de spécifier plusieurs clauses VALUES pour ajouter plusieurs lignes à la fois :
INSERT INTO MyTable(MyColumn1, MyColumn2, MyColumn3)
VALUES (99, 'contoso', 'hello')
Instruction Description
CREATE Créer un nouvel objet dans la base de données, tel
qu’une table ou une vue.
ALTER Modifier la structure d’un objet. Par exemple, en
modifiant une table pour ajouter une nouvelle
colonne.
DROP Supprimer un objet de la base de données.
RENAME Renommer un objet existant.
AVERTISSEMENT : L’instruction DROP est très puissante. Lorsque vous annulez une table, toutes les
lignes de cette table sont perdues. À moins d’avoir une sauvegarde, vous ne pourrez pas récupérer ces
données.
L’exemple suivant crée une nouvelle table de base de données. Les éléments entre parenthèses spécifient
les détails de chaque colonne, y compris le nom, le type de données, si la colonne doit toujours contenir
une valeur (NON NULL) et si les données de la colonne sont utilisées pour identifier une ligne de manière
unique (CLÉ PRIMAIRE). Chaque table doit avoir une clé primaire, bien que SQL n’applique pas cette
règle.
REMARQUE : Les colonnes marquées comme NON NULL sont appelées colonnes obligatoires. Si vous
omettez la clause NON NULL, vous pouvez créer des lignes qui ne contiennent pas de valeur dans la
colonne. On dit qu’une colonne vide dans une ligne a une valeur NULL.
CREATE TABLE MyTable
(
MyColumn1 INT NOT NULL PRIMARY KEY,
MyColumn2 VARCHAR(50) NOT NULL,
RÉSERVÉ À UNE UTILISATION FORMATEUR. UTILISATION ÉTUDIANT INTERDITE
109
Les types de données disponibles pour les colonnes d’une table varient selon les systèmes de gestion de
base de données. Cependant, la plupart des systèmes de gestion de base de données prennent en
charge les types numériques tels que INT et les types chaîne tels que VARCHAR (VARCHAR signifie «
variable length character data »). Pour plus d’informations, consultez la documentation du système de
gestion de base de données sélectionné (SGBD).
Certains outils et applications exigent une chaîne de connexion qui identifie le serveur, la base de
données, le nom du compte et le mot de passe. Vous pouvez trouver ces informations sur la page
Aperçu pour une base de données dans le portail Azure. Sélectionnez Afficher les chaînes de connex-
ion de la base de données.
REMARQUE : La chaîne de connexion à la base de données qui est indiquée sur le portail Azure n’inclut
pas le mot de passe du compte. Vous devez contacter votre administrateur de base de données pour
obtenir ces informations.
Saisissez votre requête SQL dans le volet de requête, puis cliquez sur Exécuter pour l’exécuter. Toutes les
lignes renvoyées apparaissent dans le volet Résultats. Le volet Messages affiche des informations telles
que le nombre de lignes renvoyées ou toute erreur survenue :
RÉSERVÉ À UNE UTILISATION FORMATEUR. UTILISATION ÉTUDIANT INTERDITE
112
Vous pouvez également entrer des instructions INSERT, UPDATE, DELETE, CREATE et DROP dans le volet
de requête.
Si la commande de connexion réussit, vous verrez une invite 1>. Vous pouvez saisir des commandes SQL,
puis saisir GO sur une ligne seule pour les exécuter.
32 https://docs.microsoft.com/sql/tools/sqlcmd-utility
RÉSERVÉ À UNE UTILISATION FORMATEUR. UTILISATION ÉTUDIANT INTERDITE
113
Paramètre Description
Nom du serveur Nom complet du serveur. Vous trouverez le nom
du serveur sur le portail Azure, comme évoqué
précédemment.
Authentification Connexion SQL ou authentification Windows. À
moins que vous n’utilisiez Azure Active Directory,
sélectionnez Connexion SQL.
Nom d’utilisateur Nom d’utilisateur du compte d’administrateur de
serveur. Spécifiez le nom d’utilisateur du compte
qui a été utilisé pour créer le serveur.
Mot de passe Mot de passe que vous avez spécifié lors du
provisionnement du serveur.
Nom de la base de données Nom de la base de données à laquelle vous
souhaitez vous connecter.
Groupe de serveurs Si vous avez de nombreux serveurs, vous pouvez
créer des groupes pour chaque catégorie. Ces
groupes ont pour but de faciliter la gestion des
serveurs dans Azure Data Studio et n’affectent pas
la base de données ni le serveur dans Azure.
33 https://docs.microsoft.com/sql/azure-data-studio/download-azure-data-studio
RÉSERVÉ À UNE UTILISATION FORMATEUR. UTILISATION ÉTUDIANT INTERDITE
114
2. Sélectionnez Connecter.
Si votre serveur ne dispose pas d’une règle de pare-feu autorisant Azure Data Studio à se connecter,
le formulaire « Créer une règle de pare-feu » s’ouvre. Renseignez le formulaire pour créer une nouvel-
le règle de pare-feu. Pour plus de détails, consultez l’article Créer une règle de pare-feu au niveau
du serveur à l’aide du portail Azure34.
3. Une fois la connexion réussie, votre serveur est disponible dans la barre latérale SERVEURS sur la
page Connexions. Vous pouvez maintenant utiliser la commande Nouvelle requête pour créer et
exécuter des scripts de commandes SQL.
34 https://docs.microsoft.com/azure/azure-sql/database/firewall-create-server-level-portal-quickstart
RÉSERVÉ À UNE UTILISATION FORMATEUR. UTILISATION ÉTUDIANT INTERDITE
115
L’exemple ci-dessous utilise des commandes Transact-SQL pour créer une base de données (les com-
mandes CREATE DATABASE et ALTER DATABASE font partie du dialecte Transact-SQL, mais pas du langage
SQL standard). Le script crée ensuite une nouvelle table nommée Customers et y insère quatre lignes. Là
encore, la version de l’instruction INSERT, avec les quatre clauses VALUES, font partie du dialecte Trans-
act-SQL. Les caractères -- commencent un commentaire dans Transact-SQL. Les caractères [ and ]
entourent les identificateurs, tels que le nom d’une table, d’une base de données, d’une colonne ou d’un
type de données. Le caractère N devant une chaîne indique que la chaîne utilise le jeu de caractères
Unicode.
REMARQUE : Vous ne pouvez pas créer de bases de données SQL à partir d’une connexion dans Azure
Data Studio si vous exécutez une base de données unique SQL Database ou des pools élastiques. Vous
ne pouvez créer des bases de données de cette manière que si vous utilisez SQL Database Managed
Instance.
IF NOT EXISTS (
SELECT name
FROM sys.databases
WHERE name = N'TutorialDB'
)
CREATE DATABASE [TutorialDB];
GO
Pour exécuter le script, sélectionnez Exécution dans la barre d’outils. Les notifications s’affichent dans le
volet Messages et indiquent la progression des requêtes.
RÉSERVÉ À UNE UTILISATION FORMATEUR. UTILISATION ÉTUDIANT INTERDITE
117
Paramètre Valeur
Type de serveur Moteur de base de données
Nom du serveur Le nom complet du serveur, à partir de la page
Aperçu dans le portail Azure
Authentification Authentification SQL Server
Connexion ID d’utilisateur du compte d’administrateur de
serveur utilisé pour créer le serveur.
Mot de passe Mot de passe du compte d’administrateur de
serveur
35 https://docs.microsoft.com/sql/ssms/download-sql-server-management-studio-ssms
RÉSERVÉ À UNE UTILISATION FORMATEUR. UTILISATION ÉTUDIANT INTERDITE
118
Paramètre Valeur
Nom du serveur Le nom complet du serveur, à partir de la page
Aperçu dans le portail Azure
Authentification Authentification SQL Server
Connexion ID d’utilisateur du compte d’administrateur de
serveur utilisé pour créer le serveur
Mot de passe Mot de passe du compte d’administrateur de
serveur
36 https://visualstudio.microsoft.com/downloads/
RÉSERVÉ À UNE UTILISATION FORMATEUR. UTILISATION ÉTUDIANT INTERDITE
120
Paramètre Valeur
Nom de la base de données Nom de votre base de données
3. Dans la fenêtre Requête, saisissez votre requête SQL, puis sélectionnez le bouton Exécuter dans la
barre d’outils. Les résultats apparaissent dans le volet Résultats.
RÉSERVÉ À UNE UTILISATION FORMATEUR. UTILISATION ÉTUDIANT INTERDITE
121
Comme pour Azure SQL Database, vous devez ouvrir le pare-feu PostgreSQL pour permettre aux applica-
tions clientes de se connecter au service. Pour des informations détaillées, consultez l’article Règles de
pare-feu dans Azure Database pour PostgreSQL - Serveur unique37.
37 https://docs.microsoft.com/azure/postgresql/concepts-firewall-rules
38 https://postgresql.org
RÉSERVÉ À UNE UTILISATION FORMATEUR. UTILISATION ÉTUDIANT INTERDITE
122
REMARQUE : Vous pouvez entrer des commandes sur plusieurs lignes. Le caractère point-virgule fait
office d’indicateur de fin de commande.
4. Dans psql, vous pouvez exécuter la commande \c Adventureworks pour vous connecter à la base
de données.
5. Vous pouvez créer des tables et insérer des données à l’aide des commandes CREATE et INSERT,
comme indiqué dans les exemples suivants :
CREATE TABLE PEOPLE(NAME TEXT NOT NULL, AGE INT NOT NULL);
INSERT INTO PEOPLE(NAME, AGE) VALUES ('Bob', 35);
INSERT INTO PEOPLE(NAME, AGE) VALUES ('Sarah', 28);
CREATE TABLE LOCATIONS(CITY TEXT NOT NULL, STATE TEXT NOT NULL);
INSERT INTO LOCATIONS(CITY, STATE) VALUES ('New York', 'NY');
INSERT INTO LOCATIONS(CITY, STATE) VALUES ('Flint', 'MI');
6. Vous pouvez récupérer les données que vous avez ajoutées à l’aide des commandes SQL suivantes :
SELECT * FROM PEOPLE;
SELECT * FROM LOCATIONS;
2. Dans la boîte de dialogue Connexion, dans la zone de liste déroulante Type de connexion, sélection-
nez PostgreSQL.
3. Renseignez les champs restants en utilisant le nom du serveur, le nom d’utilisateur et le mot de passe
du serveur PostgreSQL.
RÉSERVÉ À UNE UTILISATION FORMATEUR. UTILISATION ÉTUDIANT INTERDITE
124
Paramètre Description
Nom du serveur Nom complet du serveur qui figure sur le portail
Azure.
Nom d’utilisateur Nom de l’utilisateur avec lequel vous souhaitez
vous connecter. Vous devez utiliser le format
indiqué dans le portail Azure, <user-
name>@<hostname>.
Mot de passe Mot de passe du compte avec lequel vous vous
connectez.
Nom de la base de données Renseignez ce champ si vous souhaitez que la
connexion spécifie une base de données.
Groupe de serveurs Cette option vous permet d’attribuer cette
connexion à un groupe de serveurs spécifique que
vous créez.
Nom (facultatif) Cette option vous permet de spécifier un nom
convivial pour votre serveur.
4. Sélectionnez Connecter pour établir la connexion. Une fois connecté, votre serveur s’ouvre dans la
barre latérale SERVEURS. Vous pouvez développer le nœud Bases de données pour vous connecter
RÉSERVÉ À UNE UTILISATION FORMATEUR. UTILISATION ÉTUDIANT INTERDITE
125
aux bases de données présentes sur le serveur et afficher leur contenu. Utilisez la commande Nouvel-
le requête dans la barre d’outils pour créer et exécuter des requêtes.
L’exemple suivant ajoute une nouvelle table à la base de données et y insère quatre lignes.
-- Créez une nouvelle table et nommez-la 'customers'
CREATE TABLE customers(
customer_id SERIAL PRIMARY KEY,
name VARCHAR (50) NOT NULL,
location VARCHAR (50) NOT NULL,
email VARCHAR (50) NOT NULL
);
5. Dans la barre d’outils, sélectionnez Exécuter pour exécuter la requête. Comme avec Azure SQL, les
notifications apparaissent dans le volet MESSAGES pour afficher la progression de la requête.
6. Pour interroger les données, entrez une instruction SELECT, puis cliquez sur Exécuter :
RÉSERVÉ À UNE UTILISATION FORMATEUR. UTILISATION ÉTUDIANT INTERDITE
126
Vous devez également ouvrir le pare-feu MySQL pour permettre aux applications clientes de se connecter
au service. Pour des informations détaillées, consultez l’article Règles de pare-feu d’un serveur de base
de données Azure pour MySQL39.
39 https://docs.microsoft.com/azure/mysql/concepts-firewall-rules
RÉSERVÉ À UNE UTILISATION FORMATEUR. UTILISATION ÉTUDIANT INTERDITE
127
3. Dans la boîte de dialogue Se connecter à la base de données, saisissez les informations suivantes
sous l’onglet Paramètres :
40 https://dev.mysql.com/downloads/workbench
RÉSERVÉ À UNE UTILISATION FORMATEUR. UTILISATION ÉTUDIANT INTERDITE
128
Paramètre Description
Connexion stockée Laisser vide
Méthode de connexion Standard (TCP/IP)
Nom d’hôte Spécifiez le nom complet du serveur qui figure sur
le portail Azure
Port 3306
Nom d’utilisateur Saisissez le nom d’utilisateur de connexion de
l’administrateur du serveur à partir du portail
Azure, au format <username><nombasededon-
nées>
Mot de passe Sélectionnez Magasin dans Coffre, et saisissez le
mot de passe administrateur spécifié lors de la
création du serveur
4. Sélectionnez OK pour créer la connexion. Si la connexion est établie, l’éditeur de requête s’ouvre.
5. Vous pouvez utiliser cet éditeur pour créer et exécuter des scripts de commandes SQL. L’exemple
suivant crée une base de données nommée quickstartdb, puis ajoute une table nommée stock. Il insère
des lignes, puis lit les lignes. Il modifie les données avec une instruction de mise à jour et lit de
nouveau les lignes. Enfin, il supprime une ligne puis lit de nouveau les lignes.
-- Create a database
-- DROP DATABASE IF EXISTS quickstartdb;
CREATE DATABASE quickstartdb;
USE quickstartdb;
-- Read
SELECT * FROM inventory;
-- Update
UPDATE inventory SET quantity = 200 WHERE id = 1;
SELECT * FROM inventory;
-- Delete
DELETE FROM inventory WHERE id = 2;
SELECT * FROM inventory;
6. Pour exécuter l’exemple de code SQL, sélectionnez l’icône représentant un éclair dans la barre d’outils.
Les résultats de la requête apparaissent dans la section Grille de résultats, au milieu de la page. La
liste Sortie en bas de la page affiche l’état de chaque commande au fur et à mesure de son exécution.
Accédez au module Utiliser SQL pour interroger Azure SQL Database41 sur Microsoft Learn, puis suivez
les instructions pour interroger la base de données afin de trouver le nombre de produits dans la base de
données et le nombre d’articles en stock pour un produit particulier.
Résumé
Dans cette leçon, vous avez appris à utiliser SQL pour stocker et récupérer des données dans la base de
données Azure SQL, Azure Database pour PostgreSQL et Azure Database pour MySQL. Vous avez vu
comment vous connecter à ces systèmes de gestion de base de données à l’aide de certains outils
courants.
En savoir plus
●● Utilitaire sqlcmd42
●● Télécharger et installer Azure Data Studio43
●● Télécharger SQL Server Management Studio (SSMS)44
●● Tutoriel : Concevoir une base de données relationnelle dans une base de données unique dans
Azure SQL à l’aide de SSMS45
●● Téléchargements de la communauté MySQL46
●● Azure Database pour MySQL : Utiliser MySQL Workbench pour se connecter et interroger des
données47
●● Démarrage rapide : Utilisez l’éditeur de requêtes du portail Azure pour interroger une base de
données48
●● Requêtes DML avec SQL49
●● Jointures (SQL Server)50
41 https://docs.microsoft.com/learn/modules/query-relational-data/6-perform-query
42 https://docs.microsoft.com/sql/tools/sqlcmd-utility
43 https://docs.microsoft.com/sql/azure-data-studio/download-azure-data-studio
44 https://docs.microsoft.com/sql/ssms/download-sql-server-management-studio-ssms
45 https://docs.microsoft.com/azure/sql-database/sql-database-design-first-database
46 https://dev.mysql.com/downloads/workbench
47 https://docs.microsoft.com/azure/mysql/connect-workbench
48 https://docs.microsoft.com/azure/azure-sql/database/connect-query-portal
49 https://docs.microsoft.com/sql/t-sql/queries/queries
50 https://docs.microsoft.com/sql/relational-databases/performance/joins
RÉSERVÉ À UNE UTILISATION FORMATEUR. UTILISATION ÉTUDIANT INTERDITE
131
Answers
Question 1
Quel est le déploiement qui nécessite le moins de changements durant la migration d’une solution SQL
Server locale ?
Azure SQL Database Managed Instance
■■ Un serveur SQL en cours d'exécution sur une machine virtuelle
Base de données unique Azure SQL Database
Explanation
C’est correct. SQL Server s’exécutant sur une machine virtuelle prend en charge les mêmes éléments qu’une
solution locale.
Question 2
Parmi les affirmations suivantes, laquelle est vraie concernant l’exécution de SQL Server sur une machine
virtuelle ?
Vous devez installer et maintenir vous-même le logiciel du système de gestion de base de données,
mais les sauvegardes sont automatisées.
L'installation et la maintenance du logiciel sont automatisées, mais vous devez effectuer vos propres
sauvegardes.
■■ Vous êtes responsable de toutes les tâches d’installation et de maintenance du logiciel, mais aussi de
l’exécution des sauvegardes.
Explanation
C’est correct. Si SQL Server s’exécute sur une machine virtuelle, vous êtes responsable des mises à jour
correctives et des sauvegardes.
Question 3
Parmi les affirmations suivantes, laquelle est vraie concernant Azure SQL Database ?
Un scale-up ne prend effet que lorsque vous redémarrez la base de données.
Un scale-out ne prend effet que lorsque vous redémarrez la base de données.
■■ Le scale-up ou le scale-out prendra effet sans redémarrage de la base de données SQL.
Explanation
C’est exact, vous pouvez effectuer un scale-up ou un scale-out sans interrompre l’utilisation de la base de
données.
Question 4
Quand vous utilisez Azure SQL Database Managed Instance, quelle est la manière la plus simple d’implé-
menter des sauvegardes ?
Configuration manuelle du serveur SQL.
Créer une tâche planifiée à sauvegarder.
■■ Les sauvegardes sont automatiquement gérées.
Explanation
C’est correct. Une instance managée permet d’effectuer des sauvegardes automatiques et des restaurations
à un instant dans le passé.
RÉSERVÉ À UNE UTILISATION FORMATEUR. UTILISATION ÉTUDIANT INTERDITE
132
Question 5
Quelle est la meilleure façon de transférer les données d’une base de données PostgreSQL s’exécutant
localement vers une base de données s’exécutant via le service Azure Database pour PostgreSQL ?
Exporter les données depuis la base de données locale et les importer manuellement dans la base de
données exécutée dans Azure.
Télécharger un fichier de sauvegarde de base de données PostgreSQL dans la base de données
exécutée dans Azure.
■■ Utiliser les services de migration de base de données Azure.
Explanation
C’est correct. Azure Database Migration Service offre le moyen le plus sûr d’envoyer (push) votre base de
données PostgreSQL locale vers Azure.
RÉSERVÉ À UNE UTILISATION FORMATEUR. UTILISATION ÉTUDIANT INTERDITE
Module 3 Explorer les données non relation-
nelles dans Azure
Objectifs d’apprentissage
Dans cette leçon, vous allez :
●● Découvrez les cas d’utilisation et les avantages de gestion de l’utilisation de Stockage Table Azure
RÉSERVÉ À UNE UTILISATION FORMATEUR. UTILISATION ÉTUDIANT INTERDITE
134
●● Découvrez les cas d’utilisation et les avantages de gestion de l’utilisation de Stockage Blob Azure
●● Découvrez les cas d’utilisation et les avantages de gestion de l’utilisation du stockage de fichiers
Azure
●● Découvrez les cas d’utilisation et les avantages de gestion de l’utilisation d’Azure Cosmos DB
Pour garantir un accès rapide, Stockage Table Azure divise les tables en partitions. Le partitionnement est
un mécanisme de regroupement de lignes associées, basé sur une propriété commune ou clé de parti-
tion. Les lignes qui partagent la même clé de partition seront stockées ensemble. Le partitionnement aide
non seulement à organiser les données, mais peut également améliorer l’évolutivité et les performances :
●● Les partitions sont indépendantes les unes des autres et peuvent augmenter ou diminuer à mesure
que des lignes sont ajoutées ou supprimées d’une partition. Une table peut contenir n’importe quel
nombre de partitions.
●● Lorsque vous recherchez des données, vous pouvez inclure la clé de partition dans les critères de
recherche. Cela permet de réduire le volume de données à examiner et améliore les niveaux de
performances en réduisant la quantité d'E/S (lectures et écritures) nécessaires pour localiser les
données.
Dans un Stockage Table Azure, la clé comprend deux éléments : la clé de partition, qui identifie la parti-
tion contenant la ligne (comme décrit ci-dessus) et une clé de ligne qui est unique pour chaque ligne de
la même partition. Les éléments de la même partition sont stockés dans l’ordre des clés de ligne. Si une
application ajoute une nouvelle ligne à une table, Azure s’assure que la ligne est placée à la bonne
position dans la table. Dans l’exemple ci-dessous, tiré d’un scénario IoT, la clé de ligne est une valeur de
date et d’heure.
RÉSERVÉ À UNE UTILISATION FORMATEUR. UTILISATION ÉTUDIANT INTERDITE
136
Ce schéma permet à une application d’exécuter rapidement des requêtes ponctuelles, qui identifient une
seule ligne et des requêtes de plage, qui extraient un bloc contigu de lignes dans une partition.
Dans une requête ponctuelle, lorsqu’une application récupère une seule ligne, la clé de partition permet à
Azure de se concentrer rapidement sur la partition correcte, et la clé de ligne permet à Azure d’identifier
la ligne dans cette partition. Vous pouvez avoir des centaines de millions de lignes, mais si vous avez
défini avec soin la partition et les clés de ligne lorsque vous avez conçu votre application, l’extraction de
données peut être très rapide. La clé de partition et la clé de ligne définissent efficacement un index
clusterisé sur les données.
RÉSERVÉ À UNE UTILISATION FORMATEUR. UTILISATION ÉTUDIANT INTERDITE
137
Dans une requête de plage, l’application recherche un ensemble de lignes dans une partition, en spécifi-
ant le point de début et de fin de l’ensemble comme clés de ligne. Ce type de requête est également très
rapide, à condition que vous ayez conçu vos clés de ligne en fonction des exigences des requêtes
effectuées par votre application.
Les colonnes d’une table peuvent contenir des données numériques, de chaîne ou binaires, d’une taille
maximale de 64 Ko. Une table peut avoir jusqu’à 252 colonnes, en dehors des clés de partition et de
RÉSERVÉ À UNE UTILISATION FORMATEUR. UTILISATION ÉTUDIANT INTERDITE
138
ligne. La taille de ligne maximale est de 1 Mo. Pour plus d’informations, consultez l’article Comprendre le
modèle de données du service de table1.
1 https://docs.microsoft.com/rest/api/storageservices/Understanding-the-Table-Service-Data-Model
RÉSERVÉ À UNE UTILISATION FORMATEUR. UTILISATION ÉTUDIANT INTERDITE
139
3. Sur la page Nouveau, sélectionnez Compte de stockage - blob, fichier, table, file d’attente
RÉSERVÉ À UNE UTILISATION FORMATEUR. UTILISATION ÉTUDIANT INTERDITE
140
4. Sur la page Créer un compte de stockage, saisissez les détails suivants, puis sélectionnez Examiner
et créer.
RÉSERVÉ À UNE UTILISATION FORMATEUR. UTILISATION ÉTUDIANT INTERDITE
141
Champ Valeur
Abonnement Sélectionnez votre abonnement Azure
Groupe de ressources Sélectionnez Créer, puis spécifiez le nom d’un
nouveau groupe de ressources Azure. Utilisez un
nom de votre choix, tel que mongroupedestockage
Nom du compte de stockage Entrez un nom de votre choix pour le compte de
stockage. Le nom doit cependant être unique
Emplacement Sélectionnez votre emplacement le plus proche
Niveau de performance Standard
Type de compte StorageV2 (usage général v2)
Réplication Stockage géoredondant avec accès en lecture
(RA-GRS)
Niveau d’accès Chaud
5. Sur la page de validation, cliquez sur Créer, puis attendez que le nouveau compte de stockage soit
configuré.
RÉSERVÉ À UNE UTILISATION FORMATEUR. UTILISATION ÉTUDIANT INTERDITE
142
6. Lorsque la page Votre déploiement est terminé apparaît, sélectionnez Accéder à la ressource.
9. Dans la boîte de dialogue Ajouter une table, entrez tabletest pour le nom de la table, puis sélection-
nez OK.
11. Sur la page Explorateur de stockage, développez Tables, puis sélectionnez tabletest. Sélectionnez
Ajouter pour insérer une nouvelle entité dans la table.
REMARQUE : Dans Explorateur de stockage, les lignes sont également appelées entités.
12. Dans la boîte de dialogue Ajouter une entité, entrez vos propres valeurs pour les propriétés Parti-
tionKey et RowKey, puis sélectionnez Ajouter une propriété. Ajoutez une propriété de type chaîne
appelée Nom et définissez la valeur à votre nom. Sélectionnez à nouveau Ajouter une propriété,
puis ajoutez une propriété Double (numérique) nommée Âge et enfin, définissez la valeur en fonction
de votre âge. Cliquez sur Insérer pour enregistrer l’entité.
RÉSERVÉ À UNE UTILISATION FORMATEUR. UTILISATION ÉTUDIANT INTERDITE
145
13. Vérifiez que le nouveau compte de stockage a bien été créé. L’entité doit contenir les valeurs que vous
avez spécifiées, ainsi qu’un horodatage contenant la date et l’heure de création de l’entité.
14. Si le temps le permet, essayez de créer des entités supplémentaires. Toutes les entités ne doivent pas
avoir les mêmes propriétés. Vous pouvez utiliser la fonction Éditer pour modifier les valeurs de l’entité
RÉSERVÉ À UNE UTILISATION FORMATEUR. UTILISATION ÉTUDIANT INTERDITE
146
et ajouter ou supprimer des propriétés. La fonction Requête vous permet de rechercher des entités
qui ont des propriétés avec un ensemble spécifié de valeurs.
Le stockage Blob fournit trois niveaux d’accès, qui permettent d’équilibrer la latence d’accès et le coût de
stockage :
●● Le niveau Chaud est la valeur par défaut. Vous utilisez ce niveau pour les objets blob auxquels vous
accédez fréquemment. Les données blob sont stockées sur un support hautes performances.
●● Le niveau Froid. Ce niveau a des performances inférieures et des frais de stockage réduits par rapport
au niveau Chaud. Utilisez le niveau Froid pour les données rarement consultées. Il est courant que les
objets blob nouvellement créés soient fréquemment consultés au début, mais moins avec le temps.
Dans ces situations, vous pouvez créer l’objet blob au niveau Chaud, mais le migrer ultérieurement
vers le niveau Froid. Vous pouvez migrer un objet blob du niveau Froid vers le niveau Chaud.
●● Le niveau Archive. Ce niveau offre le coût de stockage le plus bas, mais avec une latence accrue. Le
niveau Archive est destiné aux données historiques qui ne doivent pas être perdues, mais qui sont
rarement utilisées. Les objets blob du niveau Archive sont effectivement stockés dans un état hors
ligne. La latence de lecture typique pour les niveaux Chaud et Froid est de quelques millisecondes,
mais pour le niveau Archive, cette latence peut se compter en heures. Pour récupérer un objet blob de
niveau Archive, vous devez modifier le niveau d’accès sur Chaud ou Froid. L’objet blob sera alors
réhydraté. Vous ne pourrez lire l’objet blob que lorsque le processus de réhydratation sera terminé.
Vous pouvez créer des stratégies de gestion du cycle de vie pour des objets blob dans un compte de
stockage. Une stratégie de gestion du cycle de vie peut faire passer automatiquement un objet blob du
niveau Chaud vers le niveau Froid, puis vers le niveau Archive, à mesure qu’il vieillit et est utilisé moins
fréquemment (la stratégie est basée sur le nombre de jours depuis la modification). Une stratégie de
gestion du cycle de vie peut également organiser la suppression des objets blob obsolètes.
RÉSERVÉ À UNE UTILISATION FORMATEUR. UTILISATION ÉTUDIANT INTERDITE
148
2 https://docs.microsoft.com/azure/storage/blobs/storage-blob-static-website
3 https://docs.microsoft.com/azure/storage/blobs/data-lake-storage-introduction
RÉSERVÉ À UNE UTILISATION FORMATEUR. UTILISATION ÉTUDIANT INTERDITE
149
3. Dans la page Comptes de stockage, sélectionnez le compte de stockage que vous avez créé dans
l’unité précédente.
4. Sur la page Aperçu de votre compte de stockage, sélectionnez Explorateur de stockage.
5. Dans la page Explorateur de stockage, cliquez avec le bouton droit sur CONTENEURS BLOB, puis
sélectionnez Créer un conteneur d’objets blob.
RÉSERVÉ À UNE UTILISATION FORMATEUR. UTILISATION ÉTUDIANT INTERDITE
150
6. Dans la boîte de dialogue Nouveau conteneur, attribuez un nom à votre conteneur, acceptez le
niveau d’accès public par défaut, puis sélectionnez Créer.
RÉSERVÉ À UNE UTILISATION FORMATEUR. UTILISATION ÉTUDIANT INTERDITE
151
7. Dans la fenêtre Explorateur de stockage, développez CONTENEURS BLOB, puis sélectionnez votre
nouveau conteneur d’objets blob.
9. Dans la boîte de dialogue Charger un objet blob, cliquez sur le bouton Fichiers pour sélectionner un
fichier de votre choix sur votre ordinateur, puis sélectionnez Charger
10. Une fois le téléchargement terminé, fermez la boîte de dialogue Charger un objet blob. Vérifiez que
l’objet blob de blocs apparaît dans votre conteneur.
RÉSERVÉ À UNE UTILISATION FORMATEUR. UTILISATION ÉTUDIANT INTERDITE
152
11. Si vous avez le temps, vous pouvez tester le chargement d’autres fichiers en tant qu’objets blob de
blocs. Vous pouvez également télécharger des objets blob sur votre ordinateur en cliquant sur le
bouton Télécharger.
Vous créez un stockage de fichiers Azure dans un compte de stockage. Azure File Storage vous permet de
partager jusqu’à 100 To de données dans un seul compte de stockage. Ces données peuvent être
réparties sur un nombre illimité de partages de fichiers dans le compte. La taille maximale d’un seul
fichier est de 1 Tio, mais vous pouvez définir des quotas pour limiter la taille de chaque partage en
dessous de ce chiffre. Actuellement, Azure File Storage prend en charge jusqu’à 2 000 connexions
simultanées par fichier partagé.
Une fois que vous avez créé un compte de stockage, vous pouvez charger des fichiers sur Azure File
Storage à l’aide du portail Azure ou d’outils tels que l’utilitaire AzCopy. Vous pouvez également utiliser le
service Azure File Sync pour synchroniser les copies mises en cache localement des fichiers partagés avec
les données dans Azure File Storage.
Azure File Storage propose deux niveaux de performances. Le niveau Standard, qui utilise du matériel
basé sur le disque dur dans un centre de données, et le niveau Premium, qui utilise des disques SSD. Le
niveau Premium offre un débit plus élevé, mais est facturé à un taux plus élevé.
Les clients peuvent désormais stocker des données de serveur telles que des fichiers journaux, des
données d’événements et des sauvegardes dans le cloud pour tirer parti de la disponibilité, de la
durabilité, de la scalabilité et de la redondance géographique intégrées à la plateforme de stockage
Azure. Avec le chiffrement dans SMB 3.0, vous pouvez monter en toute sécurité des partages Azure
File Storage depuis n’importe où. Les applications s’exécutant dans le cloud peuvent partager des
données avec des applications sur site en utilisant les mêmes garanties de cohérence implémentées
par les serveurs SMB sur site.
●● Intégrer des applications modernes avec Azure File Storage.
En tirant parti de l’API REST moderne qu’Azure File Storage implémente en plus de SMB 3.0, vous
pouvez intégrer des applications héritées avec des applications cloud modernes ou développer de
nouvelles applications basées sur des fichiers ou des partages de fichiers.
●● Simplifier l’hébergement des données de charge de travail haute disponibilité (HA).
Azure File Storage offre une disponibilité continue, ce qui simplifie l’effort d’héberger les données de
charge de travail HA dans le cloud. Les poignées persistantes activées dans SMB 3.0 augmentent la
disponibilité du partage de fichiers, ce qui permet d’héberger des applications telles que SQL Server
et IIS dans Azure avec des données stockées dans un stockage de fichiers partagé.
REMARQUE : N’utilisez pas Azure File Storage pour les fichiers qui peuvent être écrits simultanément par
plusieurs processus concomitants. Plusieurs rédacteurs nécessitent une synchronisation minutieuse. Dans
le cas contraire, les modifications apportées par un processus risquent d’être écrasées par un autre.
L’autre solution consiste à verrouiller le fichier au fur et à mesure de son écriture, puis à libérer le verrou
une fois l’opération d’écriture terminée. Cependant, cette approche peut avoir un impact majeur sur la
concurrence et limiter le niveau de performance.
Azure Files Storage est un service entièrement géré. Vos données partagées sont répliquées localement
dans une région, mais peuvent également être géorépliquées dans une deuxième région.
Azure vise à fournir jusqu’à 300 Mo par seconde de débit pour un seul partage de fichiers Standard, mais
vous pouvez augmenter la capacité de débit en créant un partage de fichiers Premium, moyennant des
frais supplémentaires.
Toutes les données sont chiffrées au repos et vous pouvez activer le chiffrement des données en transit
entre Azure File Storage et vos applications.
Pour plus d’informations sur la gestion et la planification de l’utilisation d’Azure File Storage, consultez
l’article Planification d’un déploiement Azure Files4.
4 https://docs.microsoft.com/azure/storage/files/storage-files-planning
RÉSERVÉ À UNE UTILISATION FORMATEUR. UTILISATION ÉTUDIANT INTERDITE
155
5. Sur la page Explorateur de stockage, cliquez avec le bouton droit sur PARTAGES DE FICHIERS, puis
sélectionnez Créer un partage de fichiers.
6. Dans la boîte de dialogue Nouveau partage de fichiers, entrez un nom pour votre partage de
fichiers, laissez Quota vide, puis sélectionnez Créer.
RÉSERVÉ À UNE UTILISATION FORMATEUR. UTILISATION ÉTUDIANT INTERDITE
156
8. Dans la boîte de dialogue Charger des fichiers, utilisez le bouton de fichiers pour sélectionner un
fichier de votre choix sur votre ordinateur, puis sélectionnez Charger
RÉSERVÉ À UNE UTILISATION FORMATEUR. UTILISATION ÉTUDIANT INTERDITE
157
9. Une fois le chargement terminé, fermez la boîte de dialogue Charger des fichiers. Vérifiez que le
fichier apparaît dans le partage de fichiers.
Conseil : Si le fichier n’apparaît pas, cliquez avec le bouton droit sur PARTAGES DE FICHIERS, puis
sélectionnez Actualiser.
ci-dessous montre deux documents représentant des informations client. Dans les deux cas, chaque
document client comprend des documents enfants contenant le nom et l’adresse, mais les champs de ces
documents enfants varient selon les clients.
## Document 1 ##
{
"customerID": "103248",
"name":
{
"first": "AAA",
"last": "BBB"
},
"address":
{
"street": "Main Street",
"number": "101",
"city": "Acity",
"state": "NY"
},
"ccOnFile": "yes",
"firstOrder": "02/28/2003"
}
## Document 2 ##
{
"customerID": "103249",
"name":
{
"title": "Mr",
"forename": "AAA",
"lastname": "BBB"
},
"address":
{
"street": "Another Street",
"number": "202",
"city": "Bcity",
"county": "Gloucestershire",
"country-region": "UK"
},
"ccOnFile": "yes"
}
Un document peut contenir jusqu’à 2 Mo de données, y compris de petits objets binaires. Si vous devez
stocker des objets blob plus volumineux dans le cadre d’un document, utilisez le stockage Blob Azure et
ajoutez une référence à l’objet blob dans le document.
Cosmos DB dispose d’API qui vous permettent d’accéder à ces documents à l’aide d’un ensemble
d’interfaces bien connues.
REMARQUE : Une API est une interface de programmation d’applications. Les systèmes de gestion de
base de données (et autres frameworks logiciels) fournissent un ensemble d’API que les développeurs
RÉSERVÉ À UNE UTILISATION FORMATEUR. UTILISATION ÉTUDIANT INTERDITE
159
peuvent utiliser pour écrire des programmes qui doivent accéder aux données. Les API seront souvent
différentes pour différents systèmes de gestion de base de données.
Les API actuellement prises en charge par Cosmos DB incluent :
●● API SQL. Cette interface fournit un langage de requête de type SQL sur les documents, et permet
d’identifier et de récupérer des documents en utilisant des instructions SELECT. L’exemple ci-dessous
trouve l’adresse du client 103248 dans les documents ci-dessus :
SELECT a.address
FROM customers a
WHERE a.customerID = "103248"
●● API Table. Cette interface vous permet d’utiliser l’API Stockage Table Azure pour stocker et récupérer
des documents. Le but de cette interface est de vous permettre de passer du stockage Table à
Cosmos DB sans avoir à modifier vos applications existantes.
●● API MongoDB. MongoDB est une autre base de données de documents bien connue, avec sa propre
interface de programmation. De nombreuses organisations exécutent MongoDB sur site. Vous pouvez
utiliser l’API MongoDB pour Cosmos DB afin de permettre à une application MongoDB de s’exécuter
sans modification sur une base de données Cosmos DB. Vous pouvez migrer les données de la base
de données MongoDB vers Cosmos DB s’exécutant dans le cloud, tout en continuant à exécuter vos
applications existantes pour accéder à ces données.
●● API Cassandra. Cassandra est un système de gestion de base de données à familles de colonnes. Il
s’agit d’un autre système de gestion de base de données que de nombreuses organisations exécutent
sur site. L’API Cassandra pour Cosmos DB fournit une interface de programmation de type Cassandra
pour Cosmos DB. Les demandes de l’API Cassandra sont mappées aux demandes de document de
Cosmos DB. Comme pour l’API MongoDB, l’objectif principal de l’API Cassandra est de vous permettre
de migrer rapidement les bases de données et les applications Cassandra vers Cosmos DB.
●● API Gremlin. L’API Gremlin implémente une interface de base de données graphique vers Cosmos DB.
Un graphique est une collection d’objets de données et de relations dirigées. Les données sont
toujours conservées sous la forme d’un ensemble de documents dans Cosmos DB, mais l’API Gremlin
vous permet d’effectuer des requêtes graphiques sur les données. En utilisant l’API Gremlin, vous
pouvez parcourir les objets et les relations dans le graphique pour découvrir toutes sortes de relations
complexes, telles que « Quel est le nom de l’animal de compagnie du propriétaire de Sam ? » dans le
graphique ci-dessous.
REMARQUE : L’objectif principal des API Table, MongoDB, Cassandra et Gremlin est de prendre en
charge les applications existantes. Si vous créez une nouvelle application et une nouvelle base de don-
nées, vous devez utiliser l’API SQL.
RÉSERVÉ À UNE UTILISATION FORMATEUR. UTILISATION ÉTUDIANT INTERDITE
160
Les documents d’une base de données Cosmos DB sont organisés en conteneurs. Les documents d’un
conteneur sont regroupés en partitions. Une partition contient un ensemble de documents qui partagent
une clé de partition commune. Vous désignez l’un des champs de vos documents comme clé de partition.
Vous devez sélectionner une clé de partition qui rassemble tous les documents associés. Cette approche
permet de réduire la quantité d’E/S (lectures de disque) que les requêtes peuvent devoir effectuer lors de
la récupération d’un ensemble de documents pour une entité donnée. Par exemple, dans une base de
données de documents pour un système de commerce électronique enregistrant les détails des clients et
les commandes qu’ils ont passées, vous pouvez partitionner les données par ID client et stocker les
détails du client et de la commande pour chaque client dans la même partition. Pour trouver toutes les
informations et toutes les commandes d’un client, il vous suffit d’interroger cette seule partition :
Il existe une similitude superficielle entre un conteneur Cosmos DB et une table dans le stockage Azure
Table : dans les deux cas, les données sont partitionnées et les documents (lignes dans une table) sont
identifiés par un ID unique dans une partition. Cependant, la similitude s’arrête là. Contrairement au
stockage Azure Table, les documents d’une partition Cosmos DB ne sont pas triés par ID. Au lieu de cela,
Cosmos DB gère un index distinct. Cet index contient non seulement les ID document, mais suit égale-
ment la valeur de tous les autres champs de chaque document. Cet index est créé et maintenu automa-
tiquement. Cet index vous permet d’effectuer des requêtes qui spécifient des critères référençant tous les
RÉSERVÉ À UNE UTILISATION FORMATEUR. UTILISATION ÉTUDIANT INTERDITE
161
champs d’un conteneur, sans qu’il soit nécessaire d’analyser toute la partition pour trouver ces données.
Pour une description détaillée du fonctionnement de l’indexation Cosmos DB, consultez l’article Vue
d’ensemble de l’indexation dans Azure Cosmos DB.5
5 https://docs.microsoft.com/azure/cosmos-db/index-overview
6 https://docs.microsoft.com/azure/cosmos-db/consistency-levels
RÉSERVÉ À UNE UTILISATION FORMATEUR. UTILISATION ÉTUDIANT INTERDITE
162
données de jeux doit être rapide et être capable de gérer des pics massifs de demandes lors des
lancements de nouveaux jeux et des mises à jour de fonctionnalités.
●● Applications web et mobiles. Azure Cosmos DB est couramment utilisé dans les applications web et
mobiles et convient parfaitement à la modélisation des interactions sociales, à l’intégration à des
services tiers et à la création de riches expériences personnalisées. Les kits de développement logiciel
Cosmos DB permettent de créer de riches applications iOS et Android à l’aide de la populaire infra-
structure Xamarin.
Pour plus d’informations sur les utilisations de Cosmos DB, consultez l’article Cas d’utilisation courants
d’Azure Cosmos DB7.
Question 2
Quand devez-vous utiliser un objet blob de blocs et quand devez-vous utiliser un objet blob de pages ?
Utiliser un objet blob de blocs pour les données non structurées qui nécessitent un accès aléatoire
pour effectuer des lectures et des écritures. Utilisez un objet blob de page pour les objets discrets qui
changent rarement.
Utiliser un objet blob de bloc pour les données actives stockées à l’aide du niveau d’accès aux
données chaudes et un objet blob de page pour les données stockées à l’aide des niveaux d’accès aux
données froides ou archivées.
Utiliser un bloc de page pour les objets blob qui nécessitent un accès aléatoire en lecture et en
écriture. Utilisez un objet blob de blocs pour les objets discrets qui changent rarement.
Question 3
Pourquoi pouvez-vous utiliser le stockage de fichiers Azure ?
À partager des fichiers stockés sur site avec des utilisateurs situés sur d’autres sites.
À permettre aux utilisateurs de différents sites de partager des fichiers.
À stocker de gros fichiers de données binaires contenant des images ou d’autres données non
structurées.
7 https://docs.microsoft.com/azure/cosmos-db/use-cases
RÉSERVÉ À UNE UTILISATION FORMATEUR. UTILISATION ÉTUDIANT INTERDITE
163
Question 4
Vous construisez un système qui contrôle la température dans un ensemble d’immeubles de bureaux et
règle la climatisation dans chaque pièce de chaque bloc pour maintenir une température ambiante agréa-
ble. Votre système doit gérer la climatisation dans plusieurs milliers de bâtiments répartis à travers le pays
ou la région et, en règle générale, chaque bâtiment contient au moins 100 chambres climatisées. Quel est le
type de stockage de données NoSQL le plus approprié pour capturer les données de température afin de
permettre leur traitement rapide ?
Envoyer les données à une base de données Azure Cosmos DB et utiliser Azure Functions pour traiter
les données.
Stocker les données dans un fichier stocké dans un partage créé à l’aide d'Azure File Storage.
Écrire les températures dans un objet blob dans le stockage Blob Azure.
Résumé
Microsoft Azure offre une gamme de technologies pour stocker des données non relationnelles. Chaque
technologie a ses propres atouts et est adaptée à des scénarios spécifiques.
Dans cette leçon, vous avez découvert les technologies suivantes et comment vous pouvez les utiliser
pour répondre aux exigences de divers scénarios :
●● Stockage Table Azure
●● Stockage Blob Azure
●● Stockage des fichiers Azure
●● Azure Cosmos DB
En savoir plus
●● Comprendre le modèle de données du service de Table8
●● Guide de conception de tables de stockage Table Azure : Tables évolutives et performantes9
●● Présentation du stockage Blob Azure10
●● Présentation d’Azure Data Lake Storage Gen211
●● Hébergement de site web statique dans le stockage Azure12
●● Qu’est-ce qu’Azure Files ?13
●● Planification d’un déploiement Azure Files14
●● Bienvenue dans Azure Cosmos DB15
●● Indexation dans Azure Cosmos DB - Vue d’ensemble16
8 https://docs.microsoft.com/rest/api/storageservices/Understanding-the-Table-Service-Data-Model
9 https://docs.microsoft.com/azure/cosmos-db/table-storage-design-guide
10 https://docs.microsoft.com/azure/storage/blobs/storage-blobs-introduction
11 https://docs.microsoft.com/azure/storage/blobs/data-lake-storage-introduction
12 https://docs.microsoft.com/azure/storage/blobs/storage-blob-static-website
13 https://docs.microsoft.com/azure/storage/files/storage-files-introduction
14 https://docs.microsoft.com/azure/storage/files/storage-files-planning
15 https://docs.microsoft.com/azure/cosmos-db/introduction
16 https://docs.microsoft.com/azure/cosmos-db/index-overview
RÉSERVÉ À UNE UTILISATION FORMATEUR. UTILISATION ÉTUDIANT INTERDITE
164
17 https://docs.microsoft.com/azure/cosmos-db/consistency-levels
RÉSERVÉ À UNE UTILISATION FORMATEUR. UTILISATION ÉTUDIANT INTERDITE
165
Objectifs d’apprentissage
Dans cette leçon, vous allez :
●● Fournir des services de données non relationnelles
●● Configurer les services de données non relationnels
●● Explorer les problèmes de connectivité de base
●● Explorer les composants de sécurité des données
https://www.microsoft.com/videoplayer/embed/RE4zTud
Azure fournit plusieurs outils que vous pouvez utiliser pour provisionner des services :
●● Le portail Azure. Il s’agit pour la plupart des utilisateurs du moyen le plus pratique de provisionner un
service. Le portail Azure affiche une série de pages spécifiques au service, vous invitant à entrer les
paramètres nécessaires. Ensuite, il valide ces paramètres avant de provisionner le service.
●● L’interface de ligne de commande (CLI) d’Azure. Elle offre un ensemble de commandes que vous
pouvez exécuter à partir de l’invite de commandes du système d’exploitation ou de Cloud Shell dans
le portail Azure. Vous pouvez utiliser ces commandes pour créer et gérer des ressources Azure. L’inter-
face CLI est particulièrement appropriée si vous devez automatiser la création de services : vous
pouvez stocker des commandes CLI dans des scripts et exécuter ces scripts programmatiquement.
L’interface CLI peut s’exécuter sur des ordinateurs Windows, macOS et Linux. Pour obtenir des
informations détaillées sur Azure CLI, consultez l’article Qu’est-ce qu’Azure CLI18.
●● Azure PowerShell. De nombreux administrateurs ont l’habitude d’utiliser des commandes PowerShell
pour écrire des scripts et automatiser les tâches d’administration. Azure offre une série d’applets de
commande (des commandes spécifiques à Azure) que vous pouvez utiliser dans PowerShell pour créer
et gérer des ressources Azure. Vous trouverez plus d’informations sur Azure PowerShell en ligne, à
l’adresse Documentation Azure PowerShell19. Comme l’interface CLI, PowerShell est disponible pour
Windows, macOS et Linux.
●● Modèles Azure Resource Manager. Un modèle Azure Resource Manager décrit le service (ou les
services) que vous voulez déployer dans un fichier texte au format JSON (JavaScript Object Notation).
L’exemple ci-dessous montre un modèle que vous pouvez utiliser pour provisionner un compte
Stockage Azure.
18 https://docs.microsoft.com/cli/azure/what-is-azure-cli
19 https://docs.microsoft.com/powershell/azure
RÉSERVÉ À UNE UTILISATION FORMATEUR. UTILISATION ÉTUDIANT INTERDITE
167
"resources": [
{
"type": "Microsoft.Storage/storageAccounts",
"apiVersion": "2016-01-01",
"name": "mystorageaccount",
"location": "westus",
"sku": {
"name": "Standard_LRS"
},
"kind": "Storage",
"properties": {}
}
]
Vous envoyez le modèle à Azure à l’aide de la commande az deployment group create dans
l’interface de ligne de commande Azure ou de la commande New-AzResourceGroupDeployment
dans Azure PowerShell. Pour plus d’informations sur la création et l’utilisation de modèles Azure Resource
Manager pour approvisionner des ressources Azure, consultez l’article Que sont les modèles ARM ?20
https://www.microsoft.com/videoplayer/embed/RE4AwNK
Si vous préférez utiliser Azure CLI ou Azure PowerShell, vous pouvez exécuter les commandes suivantes
pour créer un compte Cosmos DB. Les paramètres de ces commandes correspondent à de nombreuses
options que vous pouvez sélectionner à l’aide du portail Azure. Les exemples ci-dessous créent un
20 https://docs.microsoft.com/azure/azure-resource-manager/templates/overview
RÉSERVÉ À UNE UTILISATION FORMATEUR. UTILISATION ÉTUDIANT INTERDITE
168
compte pour l’API Core (SQL), avec une géo-redondance entre les régions EastUS et WestUS, et la prise
en charge multirégion des écritures. Pour plus d’informations sur ces commandes, consultez la page az
cosmosdb create21 pour Azure CLI, ou la page Nouveau-AzCosmosDBAccount22 pour PowerShell.
## Azure CLI
az cosmosdb create \
--subscription <your-subscription> \
--resource-group <resource-group-name> \
--name <cosmosdb-account-name> \
--locations regionName=eastus failoverPriority=0 \
--locations regionName=westus failoverPriority=1 \
--enable-multiple-write-locations
## Azure PowerShell
New-AzCosmosDBAccount `
-ResourceGroupName "<resource-group-name>" `
-Name "<cosmosbd-account-name>" `
-Location @("West US", "East US") `
-EnableMultipleWriteLocations
REMARQUE : Pour utiliser Azure PowerShell pour provisionner un compte Cosmos DB, vous devez
d’abord installer le module Az.CosmosDB PowerShell :
Install-Module -Name Az.CosmosDB
L’autre option de déploiement consiste à utiliser un modèle Resource Manager Azure. Le modèle pour
Cosmos DB peut être assez long, en raison du nombre de paramètres. Pour vous faciliter la vie, Microsoft
a publié un certain nombre d’exemples de modèles permettant de gérer différentes configurations. Vous
pouvez télécharger ces modèles à partir du site web de Microsoft, sur Gérer les ressources de l’API Core
(SQL) Azure Cosmos DB à l’aide de modèles Azure Resource Manager23.
21 https://docs.microsoft.com/cli/azure/cosmosdb?view=azure-cli-latest#az-cosmosdb-create
22 https://docs.microsoft.com/powershell/module/az.cosmosdb/new-azcosmosdbaccount
23 https://docs.microsoft.com/azure/cosmos-db/manage-sql-with-resource-manager
RÉSERVÉ À UNE UTILISATION FORMATEUR. UTILISATION ÉTUDIANT INTERDITE
169
vous créez une base de données ou lorsque vous créez des conteneurs individuels dans une base de
données. Si vous spécifiez le débit pour une base de données, tous les conteneurs de cette base de
données partagent ce débit. Si vous spécifiez le débit d’un conteneur, le conteneur obtient ce débit pour
lui-même.
Si vous sous-approvisionnez (en spécifiant trop peu de RU/s), Cosmos DB commencera à limiter les
performances. Une fois la limitation commencée, les requêtes seront invitées à être redemandées plus
tard, lorsque’il y aura des ressources disponibles pour les satisfaire. Si une application fait trop de
tentatives pour réessayer de demander une requête limitée, la requête peut être abandonnée. Le débit
minimum que vous pouvez allouer à une base de données ou à un conteneur est de 400 RU/s. Vous
pouvez à tout moment augmenter et diminuer les RU/s pour un conteneur. Allouer plus de RU/s aug-
mente le coût. Cependant, une fois que vous avez alloué le débit à une base de données ou à un conte-
neur, vous serez facturé pour les ressources provisionnées, que vous les utilisiez ou non.
REMARQUE : Si vous avez appliqué la remise de niveau gratuite à votre compte Cosmos DB, vous
obtenez gratuitement les 400 premières RU/s pour une seule base de données ou un seul conteneur. 400
RU/s est une capacité suffisante pour la plupart des bases de données petites à modérées.
La vidéo suivante présente la marche à suivre pour utiliser le portail Azure pour créer une base de
données et un conteneur.
https://www.microsoft.com/videoplayer/embed/RE4AkhH
Si vous préférez utiliser Azure CLI ou Azure PowerShell, vous pouvez exécuter les commandes suivantes
pour créer des documents et des conteneurs. Le code ci-dessous montre quelques exemples :
## Azure CLI - Créer une base de données
Set-AzCosmosDBSqlDatabase `
RÉSERVÉ À UNE UTILISATION FORMATEUR. UTILISATION ÉTUDIANT INTERDITE
170
-ResourceGroupName "<resource-group-name>" `
-AccountName "<cosmos-db-account-name>" `
-Name "<database-name>" `
-Throughput <number-of-RU/s>
Set-AzCosmosDBSqlContainer `
-ResourceGroupName "<resource-group-name>" `
-AccountName "<cosmos-db-account-name>" `
-DatabaseName "<database-name>" `
-Name "<container-name>" `
-PartitionKeyKind Hash `
-PartitionKeyPath "<key-field-in-documents>"
●● Le stockage Premium utilise des disques SSD et présente une latence beaucoup plus faible et de
meilleures performances de lecture/écriture que le stockage Standard. Les disques SSD sont mieux
utilisés pour les applications exigeantes en E/S, telles que les bases de données. Vous pouvez
également utiliser le stockage Premium pour contenir des disques de machine virtuelle Azure. Un
compte de stockage Premium est plus cher qu’un compte standard.
REMARQUE : Le stockage Data Lake n’est disponible qu’avec un compte de stockage Standard, et
non Premium.
●● Genre de compte. Le stockage Azure prend en charge plusieurs types de compte différents :
●● General-purpose v2. Vous pouvez utiliser ce type de compte de stockage pour les objets blob, les
fichiers, les files d’attente et les tables. De plus, il est recommandé pour la plupart des scénarios
qui nécessitent le stockage Azure. Si vous souhaitez approvisionner Azure Data Lake Storage, vous
devez spécifier ce type de compte.
●● General-purpose v1. Type de compte hérité pour les objets blob, les fichiers, les files d’attente et
les tables. Utilisez des comptes à usage général v2 lorsque cela est possible.
●● BlockBlobStorage. Ce type de compte de stockage n’est disponible que pour les comptes
Premium. Vous utilisez ce type de compte pour bloquer les objets blob et ajouter des objets blob.
Il est recommandé pour les scénarios avec des taux de transaction élevés, des scénarios qui
utilisent des objets plus petits ou des scénarios qui nécessitent une latence de stockage constam-
ment faible.
●● FileStorage. Ce type est également disponible pour les comptes Premium uniquement. Vous
l’utilisez pour créer des comptes de stockage de fichiers uniquement avec des caractéristiques de
performances supérieures. Il est recommandé pour les applications d’entreprise ou à grande
échelle. Utilisez ce type si vous créez un compte pour prendre en charge le stockage de fichiers.
●● BlobStorage. Il s’agit d’un autre type de compte hérité, qui ne peut contenir que des objets blob.
Utilisez plutôt des comptes general-purpose v2, lorsque cela est possible. Vous pouvez utiliser ce
type de compte pour Azure Data Lake Storage, mais le type de compte general-purpose v2 est
préférable.
●● Réplication. Les données d’un compte de stockage Azure sont toujours répliquées trois fois dans la
région que vous spécifiez comme emplacement principal du compte. Le stockage Azure propose deux
options pour la réplication de vos données dans la région principale :
●● Le stockage localement redondant (LRS) copie vos données de manière synchrone trois fois
dans un même emplacement physique de la région. Même si LRS est l’option de réplication la
moins coûteuse, elle n’est pas recommandée pour les applications nécessitant une haute disponi-
bilité.
●● Le stockage géoredondant (GRS) copie vos données de manière synchrone trois fois dans un
même emplacement physique dans la région principale à l’aide de LRS. Il copie ensuite vos
données de manière asynchrone vers un emplacement physique unique dans la région secondaire.
Cette forme de réplication protège contre les pannes régionales.
●● La réplication Stockage géoredondant à accès en lecture (RA-GRS) est une extension de GRS
qui fournit un accès direct en lecture seule aux données de l’emplacement secondaire. En re-
vanche, l’option GRS n’expose pas les données dans l’emplacement secondaire, et elle n’est
utilisée que pour se remettre d’une défaillance dans l’emplacement principal. La réplication
RA-GRS permet de stocker une copie en lecture seule des données à proximité des utilisateurs
situés dans un emplacement géographiquement éloigné, ce qui contribue à réduire les temps de
latence de lecture.
RÉSERVÉ À UNE UTILISATION FORMATEUR. UTILISATION ÉTUDIANT INTERDITE
173
REMARQUE : Pour maintenir le niveau de performance, les comptes de stockage Premium prennent
uniquement en charge la réplication LRS. En effet, la réplication est effectuée de manière synchrone
pour maintenir l’intégrité des données. La réplication des données dans une région éloignée peut
augmenter la latence au point de faire perdre tout avantage à l’utilisation d’un stockage Premium.
●● Niveau d’accès. Cette option n’est disponible que pour les comptes de stockage Standard. Vous
pouvez choisir entre les niveaux Chaud et Froid.
Le niveau d’accès Chaud présente des coûts de stockage plus élevés que les niveaux Froid et Archive,
mais offre les coûts d’accès les plus bas. Les exemples de scénarios d’utilisation pour le niveau d’accès
Chaud sont les suivants :
●● Les données en cours d’utilisation ou susceptibles d’être consultées (lues et écrites) fréquemment.
●● Les données préparées pour le traitement et la migration éventuelle vers le niveau d’accès Froid.
Le niveau d’accès Froid a des coûts de stockage inférieurs et des coûts d’accès plus élevés par rapport
au stockage Chaud. Ce niveau est destiné aux données qui resteront dans le niveau Froid pendant au
moins 30 jours. Voici quelques exemples de scénarios d’utilisation pour le niveau d’accès Froid :
●● Ensembles de données de sauvegarde à court terme et de récupération d’urgence.
●● Les contenus multimédias plus anciens ne sont plus consultés fréquemment, mais ils restent
disponibles immédiatement lors de l’accès.
●● Ensembles de données volumineux qui doivent être stockés de manière rentable tandis que
davantage de données sont collectées pour un traitement futur. Par exemple, le stockage à long
terme de données scientifiques ou de données de télémétrie brutes d’une installation de fabrica-
tion.
La propriété SKU est la combinaison du niveau de performance et des options de réplication. Il peut
s’agir de Premium_LRS, Premium_ZRS, Standard_GRS, Standard_GZRS, Standard_LRS, Standard_RAGRS,
Standard_RAGZRS ou de Standard_ZRS.
REMARQUE : ZRS, dans certaines de ces références, signifie Stockage redondant interzone (Zone Redun-
dant Storage). Le stockage redondant interzone réplique vos données de stockage Azure de manière
synchrone sur trois zones de disponibilité Azure dans la région principale. Chaque zone de disponibilité
est un emplacement physique distinct avec une alimentation, un refroidissement et un réseau in-
dépendants. Ceci est utile pour les applications nécessitant une haute disponibilité.
Le paramètre kind doit être l’un des paramètres BlobStorage, BlockBlobStorage, FileStorage, Storage ou
StorageV2.
Le paramètre access-tier peut être Froid ou Chaud.
RÉSERVÉ À UNE UTILISATION FORMATEUR. UTILISATION ÉTUDIANT INTERDITE
174
Les valeurs des propriétés SkuName, Kind et AccessTier sont les mêmes que celles de la commande Azure
CLI.
Une fois le compte de stockage créé, vous pouvez ajouter un ou plusieurs conteneurs Data Lake Storage
au compte. Chaque conteneur prend en charge une structure de répertoires pour stocker les fichiers Data
Lake.
RÉSERVÉ À UNE UTILISATION FORMATEUR. UTILISATION ÉTUDIANT INTERDITE
176
La page Conteneurs permet de créer et de gérer des conteneurs. Chaque conteneur doit avoir un nom
unique dans le compte de stockage. Vous pouvez également spécifier le niveau d’accès. Par défaut, les
données contenues dans un conteneur ne sont accessibles que par le propriétaire du conteneur. Vous
pouvez définir le niveau d’accès à l’objet blob pour permettre au public d’accéder en lecture à tous les
objets blob créés dans le conteneur, ou au conteneur pour autoriser l’accès en lecture de tout le contenu
du conteneur, y compris la possibilité de répertorier tous les objets blob. Vous pouvez également config-
urer le contrôle d’accès en fonction du rôle (RBAC) pour un objet blob, si vous avez besoin d’un niveau de
sécurité plus granulaire.
RÉSERVÉ À UNE UTILISATION FORMATEUR. UTILISATION ÉTUDIANT INTERDITE
178
Une fois que vous avez approvisionné un conteneur, vos applications peuvent charger des objets blob
dans le conteneur.
Le paramètre public-access peut être blob, container, ou off (pour un accès privé uniquement).
Get-AzStorageAccount `
-ResourceGroupName "<resource-group>" `
-Name "<storage-account-name>" | New-AzStorageContainer `
-Name "<container-name>" `
-Permission <permission>
Sur la page Partages de fichiers, créez un nouveau partage de fichiers. Donnez un nom au partage de
fichiers et définissez éventuellement un quota pour limiter la taille des fichiers sur le partage. La taille
totale de tous les fichiers sur tous les partages de fichiers dans un compte de stockage ne peut pas
dépasser 5120 Go.
RÉSERVÉ À UNE UTILISATION FORMATEUR. UTILISATION ÉTUDIANT INTERDITE
180
Une fois le partage de fichiers créé, les applications peuvent lire et écrire des fichiers partagés à l’aide du
partage de fichiers.
atténuent ce risque en exigeant une authentification avant d’accorder l’accès. L’authentification est
décrite plus loin dans cette unité.
REMARQUE : Un réseau virtuel Azure (VNet) est une représentation de votre propre réseau dans le cloud.
Un réseau virtuel vous permet de connecter des machines virtuelles à des services Azure, de la même
manière que si vous utilisiez un réseau physique local. Azure garantit que chaque réseau virtuel est isolé
des autres réseaux virtuels créés par d’autres utilisateurs et d’Internet. Azure vous permet de spécifier les
machines (réelles et virtuelles) et les services autorisés à accéder aux ressources sur le réseau virtuel et les
ports qu’ils peuvent utiliser.
24 https://docs.microsoft.com/azure/storage/common/storage-network-security
RÉSERVÉ À UNE UTILISATION FORMATEUR. UTILISATION ÉTUDIANT INTERDITE
182
Configurer l’authentification
De nombreux services incluent une clé d’accès que vous pouvez spécifier lorsque vous essayez de vous
connecter au service. Si vous fournissez une clé incorrecte, l’accès vous sera refusé. L’image ci-dessous
montre comment trouver la clé d’accès pour un compte de stockage Azure. Vous devez sélectionner Clés
d’accès dans la section Paramètres de la page principale du compte. De nombreux autres services
permettent d’afficher la clé d’accès de la même manière, à partir du portail Azure. Si votre clé est com-
promise, vous pouvez générer une nouvelle clé d’accès.
25 https://docs.microsoft.com/azure/private-link/private-endpoint-overview
RÉSERVÉ À UNE UTILISATION FORMATEUR. UTILISATION ÉTUDIANT INTERDITE
183
REMARQUE : En fait, les services Azure fournissent deux clés, étiquetées clé1 et clé2. Une application
peut utiliser l’une ou l’autre de ces clés pour se connecter au service.
Tout utilisateur ou application connaissant la clé d’accès d’une ressource peut se connecter à cette
ressource. Cependant, les clés d’accès fournissent un niveau d’authentification plutôt grossier. De plus, si
vous devez régénérer une clé d’accès (après une divulgation accidentelle, par exemple), vous devrez
peut-être mettre à jour toutes les applications qui se connectent à l’aide de cette clé.
Azure Active Directory (Azure AD) offre une sécurité et une facilité d’utilisation meilleures en ce qui
concerne l’autorisation de clé d’accès. Microsoft recommande d’utiliser l’autorisation Azure AD lorsque
cela est possible pour minimiser les vulnérabilités de sécurité potentielles inhérentes à l’utilisation des
clés d’accès.
Azure AD constitue un service Azure distinct. Vous ajoutez des utilisateurs et d’autres principaux de
sécurité (comme une application) à un domaine de sécurité géré par Azure AD. La vidéo suivante décrit le
fonctionnement de l’authentification avec Azure.
https://www.microsoft.com/videoplayer/embed/RE4A94T
Pour obtenir des informations détaillées sur l’utilisation d’Azure AD, visitez la page Présentation d’Azure
Active Directory26 sur le site web de Microsoft.
26 https://docs.microsoft.com/azure/active-directory/fundamentals/active-directory-whatis
RÉSERVÉ À UNE UTILISATION FORMATEUR. UTILISATION ÉTUDIANT INTERDITE
184
27 https://docs.microsoft.com/azure/role-based-access-control/custom-roles-portal
RÉSERVÉ À UNE UTILISATION FORMATEUR. UTILISATION ÉTUDIANT INTERDITE
185
sant le niveau d’accès du rôle à la ressource. Pour plus d’informations, lisez Ajouter ou supprimer des
attributions de rôle Azure à l’aide du portail Azure28.
28 https://docs.microsoft.com/azure/role-based-access-control/role-assignments-portal
RÉSERVÉ À UNE UTILISATION FORMATEUR. UTILISATION ÉTUDIANT INTERDITE
186
Azure Cosmos DB
Configurer la réplication
Azure Cosmos DB vous permet de répliquer les bases de données et les conteneurs de votre compte
dans plusieurs régions. Lorsque vous approvisionnez initialement un compte, vous pouvez spécifier que
vous souhaitez copier des données dans une autre région. Vous n’avez pas le contrôle sur la région
utilisée, car la prochaine région la plus proche est automatiquement sélectionnée. La page Répliquer les
données à l'échelle mondiale permet de configurer la réplication plus en détail. Vous pouvez répliquer
des données dans plusieurs régions et sélectionner les régions à utiliser. De cette façon, vous pouvez
choisir les régions les plus proches de vos consommateurs, afin de minimiser la latence des demandes
faites par ces consommateurs.
Vous pouvez également utiliser cette page pour configurer le basculement automatique afin de garantir
une haute disponibilité. Si les bases de données de la région primaire (la région dans laquelle vous avez
RÉSERVÉ À UNE UTILISATION FORMATEUR. UTILISATION ÉTUDIANT INTERDITE
187
créé le compte) deviennent indisponibles, l’une des régions répliquées prendra en charge le traitement et
deviendra la nouvelle région primaire.
Par défaut, seule la région dans laquelle vous avez créé le compte prend en charge les opérations
d'écriture. Les répliques sont toutes en lecture seule. Cependant, vous pouvez activer les écritures
multirégionales. Les écritures multirégionales risquent cependant de provoquer des conflits si des
applications exécutées dans différentes régions modifient les mêmes données. Dans ce cas, l’écriture la
plus récente supplantera les modifications apportées précédemment lorsque les données sont répliquées,
bien que vous puissiez écrire votre propre code pour appliquer une stratégie différente.
La réplication est asynchrone. Il est donc probable qu’il y ait un décalage entre une modification apportée
dans une région et le moment où ce changement devient visible dans d’autres régions.
REMARQUE : Chaque réplica augmente le coût du service Cosmos DB. Par exemple, si vous répliquez
votre compte dans deux régions, vos coûts seront trois fois supérieurs à ceux d’un compte non répliqué.
Configurer la cohérence
Au sein d’une même région, Cosmos DB utilise un cluster de serveurs. Cette approche permet d’améliorer
la scalabilité et la disponibilité. Une copie de toutes les données est conservée sur chaque serveur du
cluster. La vidéo suivante explique comment cela fonctionne et les effets que cela peut avoir sur la
cohérence.
https://www.microsoft.com/videoplayer/embed/RE4AbG9
RÉSERVÉ À UNE UTILISATION FORMATEUR. UTILISATION ÉTUDIANT INTERDITE
188
Cosmos DB vous permet de spécifier comment ces incohérences doivent être gérées. Il offre les options
suivantes :
●● Éventuel. Cette option est la moins compatible. Ceci s’appuie sur la situation qui vient d’être décrite.
Les modifications ne seront pas perdues : elles apparaîtront éventuellement, mais il est possible
qu’elles n’apparaissent pas immédiatement. De plus, si une application apporte plusieurs modifica-
tions, certaines de ces modifications peuvent être immédiatement visibles, mais d’autres peuvent être
retardées. Les modifications peuvent apparaître dans le désordre.
●● Préfixe cohérent. Cette option garantit que les modifications apparaîtront dans l’ordre, bien qu’il
puisse y avoir un délai avant qu’elles ne deviennent visibles. Pendant cette période, les applications
peuvent afficher d’anciennes données.
●● Session. Si une application apporte un certain nombre de modifications, elles seront toutes visibles
par cette application, et dans l’ordre. D’autres applications peuvent afficher d’anciennes données, bien
que toutes les modifications apparaissent dans l’ordre, comme elles le font pour l’option Préfixe
cohérent. Cette forme de cohérence est parfois appelée lire vos propres écritures.
●● Obsolescence limitée. Il y a un décalage entre l’écriture et la lecture des données mises à jour. Vous
spécifiez cette obsolescence sous forme de période ou de nombre de versions précédentes pour
lesquelles les données seront incohérentes.
●● Forte : Dans ce cas, toutes les écritures ne sont visibles pour les clients qu’une fois que les modifica-
tions ont été confirmées avoir été écrites dans tous les réplicas. Cette option n’est pas disponible si
vous devez distribuer vos données dans plusieurs régions du monde.
La cohérence à terme offre la latence et la cohérence les plus faibles. Une forte cohérence produit la
latence la plus élevée, mais aussi la plus grande cohérence. Vous devez sélectionner un niveau de
cohérence par défaut qui équilibre les performances et les exigences de vos applications.
Vous pouvez modifier la cohérence par défaut d’un compte Cosmos DB à l’aide de la page Cohérence
par défaut dans le portail Azure. Les applications peuvent supplanter le niveau de cohérence par défaut
pour les opérations de lecture individuelles. Toutefois, elles ne peuvent pas augmenter la cohérence
au-dessus de celle spécifiée sur cette page. Elles ne peuvent que la diminuer.
RÉSERVÉ À UNE UTILISATION FORMATEUR. UTILISATION ÉTUDIANT INTERDITE
189
Configuration générale
La page Configuration d’un compte de stockage vous permet de modifier certains paramètres généraux
du compte. Vous pouvez :
●● Activer ou désactiver les communications sécurisées avec le service. Par défaut, toutes les demandes
et réponses sont chiffrées à l’aide du protocole HTTPS lorsqu’elles circulent sur Internet. Vous pouvez
désactiver le chiffrement si nécessaire, bien que cela ne soit pas recommandé.
●● Basculer le niveau d’accès par défaut entre Froid et Chaud.
●● Modifier la manière dont le compte est répliqué.
●● Activer ou désactiver l’intégration avec Azure AD pour les demandes qui accèdent aux partages de
fichiers.
D’autres options, comme le genre de compte et le niveau de performance, sont affichées sur cette page à
titre informatif seulement ; vous ne pouvez pas les modifier.
Configurer le chiffrement
Toutes les données détenues dans un compte de stockage Azure sont automatiquement chiffrées. Par
défaut, le chiffrement est effectué à l’aide de clés gérées et détenues par Microsoft. Si vous préférez, vous
pouvez fournir vos propres clés de chiffrement.
RÉSERVÉ À UNE UTILISATION FORMATEUR. UTILISATION ÉTUDIANT INTERDITE
190
Pour utiliser vos propres clés, ajoutez-les à Azure Key Vault. Vous devrez ensuite fournir les détails du
coffre et de la clé, ou l’URI de la clé dans le coffre. Toutes les nouvelles données seront chiffrées au fur et
à mesure qu’elles sont écrites. Les données existantes seront chiffrées à l’aide d’un processus exécuté en
arrière-plan ; ce processus peut prendre un peu de temps.
29 https://docs.microsoft.com/fr-fr/learn/modules/explore-provision-deploy-non-relational-data-services-azure/7-exercise-provision-non-
relational-azure
30 https://docs.microsoft.com/fr-fr/learn/modules/explore-provision-deploy-non-relational-data-services-azure/7-exercise-provision-non-
relational-azure
RÉSERVÉ À UNE UTILISATION FORMATEUR. UTILISATION ÉTUDIANT INTERDITE
192
Question 2
Qu’est-ce qu’un principal de sécurité ?
Une collection nommée d’autorisations qui peuvent être accordées à un service, comme la possibilité
d’utiliser le service pour lire, écrire et supprimer des données. Propriétaire et Contributeur sont des
exemples dans Azure.
Un ensemble de ressources gérées par un service auquel vous pouvez accorder l’accès.
Un objet qui représente un utilisateur, un groupe, un service ou une identité managée qui demande
l’accès aux ressources Azure.
Question 3
Parmi les éléments suivants, lequel présente l’avantage d’utiliser la réplication multirégionale avec Cosmos
DB ?
Les données seront toujours cohérentes dans chaque région.
La disponibilité est accrue.
Sécurité accrue pour vos données.
Résumé
L’approvisionnement consiste à créer une instance d’un service. Azure prend en charge l’allocation des
ressources requises pour exécuter un service dans le cadre du processus d’approvisionnement. Une fois
que vous avez approvisionné un service, vous pouvez le configurer pour permettre à vos applications et à
vos utilisateurs d’accéder à ce service.
Au cours de cette leçon, vous apprendrez à :
●● Fournir des services de données non relationnelles
●● Configurer les services de données non relationnels
●● Explorer les problèmes de connectivité de base
●● Explorer les composants de sécurité des données
RÉSERVÉ À UNE UTILISATION FORMATEUR. UTILISATION ÉTUDIANT INTERDITE
193
En savoir plus
●● Qu’est-ce qu’Azure CLI ?31
●● Documentation Azure PowerShell32
●● Que sont les modèles Azure Resource Manager ?33
●● Notebooks Jupyter intégrés dans Azure Cosmos DB34
●● Qu’est-ce que le point de terminaison privé Azure ?35
●● Gérer les ressources API d’Azure Cosmos DB Core (SQL) avec les modèles Azure Resource
Manager36
●● Configurer les pare-feu et les réseaux virtuels Azure Storage37
●● Créer ou mettre à jour des rôles personnalisés Azure à l’aide du portail Azure38
●● Ajouter ou supprimer des attributions de rôle Azure à l’aide du portail Azure39
●● Qu’est-ce qu’Azure Active Directory ?40
31 https://docs.microsoft.com/cli/azure/what-is-azure-cli
32 https://docs.microsoft.com/powershell/azure
33 https://docs.microsoft.com/azure/azure-resource-manager/templates/overview
34 https://azure.microsoft.com/blog/analyze-and-visualize-your-data-with-azure-cosmos-db-notebooks/
35 https://docs.microsoft.com/azure/private-link/private-endpoint-overview
36 https://docs.microsoft.com/azure/cosmos-db/manage-sql-with-resource-manager
37 https://docs.microsoft.com/azure/storage/common/storage-network-security
38 https://docs.microsoft.com/azure/role-based-access-control/custom-roles-portal
39 https://docs.microsoft.com/azure/role-based-access-control/role-assignments-portal
40 https://docs.microsoft.com/azure/active-directory/fundamentals/active-directory-whatis
RÉSERVÉ À UNE UTILISATION FORMATEUR. UTILISATION ÉTUDIANT INTERDITE
194
Objectifs d’apprentissage
Dans cette leçon, vous allez :
●● Téléchargez des données dans une base de données Cosmos DB, puis découvrez comment interroger
ces données.
●● Charger et télécharger des données dans un compte de stockage Azure.
## Document 1 ##
{
"customerID": "103248",
"name":
{
"first": "AAA",
"last": "BBB"
},
"address":
{
"street": "Main Street",
"number": "101",
"city": "Acity",
"state": "NY"
},
"ccOnFile": "yes",
"firstOrder": "02/28/2003"
}
## Document 2 ##
{
"customerID": "103249",
"name":
{
"title": "Mr",
"forename": "AAA",
"lastname": "BBB"
},
"address":
{
"street": "Another Street",
"number": "202",
"city": "Bcity",
"county": "Gloucestershire",
"country-region": "UK"
},
"ccOnFile": "yes"
}
Les documents d’une base de données Cosmos DB sont organisés en conteneurs. Les documents d’un
conteneur sont regroupés en partitions. Une partition contient un ensemble de documents qui partagent
une clé de partition commune. C’est à vous de désigner l’un des champs dans vos documents comme clé
de partition. Vous devez sélectionner une clé de partition qui regroupe tous les documents associés.
Cette approche contribue à réduire la quantité d’opérations de lecture sur disque que les requêtes
effectuent lors de la récupération d’un ensemble de documents pour une entité donnée. Par exemple,
dans une base de données de documents pour un système de commerce électronique enregistrant les
détails des clients et les commandes passées, vous pouvez partitionner les données par ID de client et
stocker les détails des clients et des commandes de chaque client dans la même partition. Pour trouver
toutes les informations et commandes d’un client, il vous suffit d’interroger cette partition :
RÉSERVÉ À UNE UTILISATION FORMATEUR. UTILISATION ÉTUDIANT INTERDITE
196
Cosmos DB est un service dont le rôle est fondamental dans Azure. Cosmos DB est utilisé par de nom-
breux produits Microsoft pour les applications stratégiques exécutées à l’échelle mondiale, notamment
Skype, Xbox, Office 365 et Azure. Cosmos DB est parfaitement adapté aux secteurs suivants : Internet des
objets et télématique, vente au détail et marketing, jeux, applications web et mobiles. Pour plus d’infor-
mations sur les utilisations de Cosmos DB, consultez l’article Cas d’utilisation courants d’Azure Cosmos
DB41.
41 https://docs.microsoft.com/azure/cosmos-db/use-cases
RÉSERVÉ À UNE UTILISATION FORMATEUR. UTILISATION ÉTUDIANT INTERDITE
197
SELECT c.address
FROM customers c
WHERE c.customerID = "103248"
Cosmos DB fournit également d’autres API qui vous permettent d’accéder à ces documents à l’aide des
ensembles de commandes d’autres systèmes de gestion de base de données NoSQL. Ces API sont les
suivantes :
●● API Table. Cette interface vous permet d’utiliser l’API Stockage Table Azure pour stocker et récupérer
des documents. Son objectif est de vous permettre de passer de Stockage Table à Cosmos DB sans
avoir à modifier vos applications existantes.
●● API MongoDB. MongoDB est une autre base de données de documents bien connue avec sa propre
interface de programmation. Elle est utilisée localement par de nombreuses organisations. Grâce à
l’API MongoDB pour Cosmos DB, une application MongoDB peut s’exécuter sans aucune modification
sur une base de données Cosmos DB. Vous pouvez migrer les données de la base de données
MongoDB vers Cosmos DB dans le cloud, mais continuer à exécuter vos applications existantes pour
accéder à ces données.
●● API Cassandra. Cassandra est un système de gestion de base de données de type « famille de col-
onnes ». Il s’agit d’un autre système de gestion de base de données utilisé localement par de nom-
breuses organisations. L’API Cassandra pour Cosmos DB fournit une interface de programmation de
type Cassandra pour Cosmos DB. Les demandes de l’API Cassandra sont mappées aux demandes de
document Cosmos DB. Comme pour l’API MongoDB, l’objectif principal de l’API Cassandra est de
vous permettre de migrer rapidement des applications et des bases de données Cassandra vers
Cosmos DB.
●● API Gremlin. L’API Gremlin implémente une interface de base de données de graphe pour Cosmos DB.
Un graphe est une collection d’objets de données et de relations dirigées. Les données sont toujours
conservées sous la forme d’un ensemble de documents dans Cosmos DB, mais l’API Gremlin vous
permet d’effectuer des requêtes de graphe sur ces données. En utilisant l’API Gremlin, vous pouvez
parcourir les objets et les relations dans le graphique pour découvrir toutes sortes de relations
complexes, telles que « Quel est le nom de l’animal de compagnie du propriétaire de Sam ? » dans le
graphique ci-dessous.
Les API Table, MongoDB et Cassandra servent principalement à prendre en charge les applications
existantes écrites avec ces magasins de données. Si vous générez une nouvelle application et une
nouvelle base de données, vous devez utiliser l’API SQL ou l’API Gremlin.
RÉSERVÉ À UNE UTILISATION FORMATEUR. UTILISATION ÉTUDIANT INTERDITE
198
42 https://docs.microsoft.com/azure/data-factory/connector-azure-cosmos-db
43 https://docs.microsoft.com/azure/cosmos-db/tutorial-sql-api-dotnet-bulk-import
44 https://docs.microsoft.com/azure/cosmos-db/create-sql-api-dotnet-v4
RÉSERVÉ À UNE UTILISATION FORMATEUR. UTILISATION ÉTUDIANT INTERDITE
199
Si vous avez déjà créé le conteneur, utilisez les paramètres Mettre à l’échelle de la base de données sur
la page Explorateur de données de votre base de données dans le portail Azure pour spécifier le débit
maximal, ou définissez le débit sur Mise à l’échelle automatique.
Une fois les données chargées, vous pourrez peut-être diminuer les ressources de débit pour réduire les
coûts de la base de données.
RÉSERVÉ À UNE UTILISATION FORMATEUR. UTILISATION ÉTUDIANT INTERDITE
200
Type Opérateur
Unaire +, -, ~, NOT
Arithmétique +,-,*,/,%
Au niveau du bit |, &, ^, <<, >>, >>>
Logique ET, OU
Comparaison =, !=, <, >, <=, >=, <>
Chaîne (concaténation) ||
Ternaire (if) ?
L’API SQL prend également en charge :
●● L’opérateur DISTINCT que vous utilisez dans le cadre de la clause SELECT pour éliminer les doublons
dans les données de résultat.
●● L’opérateur TOP que vous pouvez utiliser pour récupérer uniquement les premières lignes retournées
par une requête susceptible de générer un jeu de résultats volumineux.
●● L’opération BETWEEN que vous utilisez dans le cadre de la clause WHERE pour définir une plage
inclusive de valeurs. Le champ de condition BETWEEN a AND b équivaut à la condition field >= a
AND field <= b.
●● L’opérateur IS_DEFINED que vous pouvez utiliser pour détecter l’existence d’un champ spécifié dans
un document.
La requête ci-dessous montre quelques exemples utilisant ces opérateurs.
// Répertoriez toutes les villes des clients (en supprimant les doublons)
vivant dans des États avec des codes entre AK (Alaska) et MD (Maryland)
SELECT DISTINCT c.Address.City
FROM c
RÉSERVÉ À UNE UTILISATION FORMATEUR. UTILISATION ÉTUDIANT INTERDITE
202
L’API SQL prend également en charge un grand nombre de fonctions mathématiques, trigonométriques,
de chaîne, de tableau et spatiales. Pour obtenir des informations détaillées sur la syntaxe des requêtes,
ainsi que sur les fonctions et opérateurs pris en charge par l’API Cosmos DB SQL, visitez la page Prise en
main des requêtes SQL dans Azure Cosmos DB45 sur le site web de Microsoft.
45 https://docs.microsoft.com/azure/cosmos-db/sql-api-sql-query
RÉSERVÉ À UNE UTILISATION FORMATEUR. UTILISATION ÉTUDIANT INTERDITE
203
Dans le volet de requête qui apparaît, vous pouvez entrer une requête SQL. Sélectionnez Exécuter la
requête pour l’exécuter. Les résultats sont présentés sous la forme d’une liste de documents JSON
RÉSERVÉ À UNE UTILISATION FORMATEUR. UTILISATION ÉTUDIANT INTERDITE
204
Vous pouvez enregistrer le texte de la requête si vous souhaitez la réexécuter plus tard. La requête est
enregistrée dans un conteneur distinct. Vous pouvez le récupérer plus tard en utilisant la commande
Open Query dans la barre d’outils.
RÉSERVÉ À UNE UTILISATION FORMATEUR. UTILISATION ÉTUDIANT INTERDITE
205
REMARQUE : La page Articles vous permet également de modifier et de supprimer des documents.
Sélectionnez un document dans la liste pour le faire apparaître dans le volet principal. Vous pouvez
modifier n’importe quel champ et sélectionnez Mettre à jour pour enregistrer les modifications. Sélec-
tionnez Supprimer pour supprimer le document de la collection. La commande Nouvel article permet
d’ajouter manuellement un nouveau document à la collection. Vous pouvez utiliser Télécharger l’élé-
ment pour créer de nouveaux documents à partir d’un fichier contenant des données JSON.
RÉSERVÉ À UNE UTILISATION FORMATEUR. UTILISATION ÉTUDIANT INTERDITE
206
Vous créez un conteneur dans un compte de stockage Azure. Pour cela, vous pouvez soit utiliser le portail
Azure, soit utiliser Azure CLI ou Azure PowerShell à partir de la ligne de commande.
Dans la page Containers (Conteneurs), sélectionnez + Container et indiquez un nom pour le nouveau
conteneur. Vous pouvez également spécifier le niveau d’accès public. Pour un conteneur qui sera utilisé
pour contenir des objets blob, le niveau d’accès le plus approprié est Blob. Ce paramètre prend en
charge l’accès anonyme en lecture seule pour les objets blob. Toutefois, les clients non authentifiés ne
peuvent pas lister les objets blob dans le conteneur. Cela signifie qu’ils ne peuvent télécharger un objet
blob que s’ils connaissent son nom et son emplacement dans le conteneur.
RÉSERVÉ À UNE UTILISATION FORMATEUR. UTILISATION ÉTUDIANT INTERDITE
208
46 https://docs.microsoft.com/cli/azure/storage/container?view=azure-cli-latest#az-storage-container-create
RÉSERVÉ À UNE UTILISATION FORMATEUR. UTILISATION ÉTUDIANT INTERDITE
209
Dans la barre d’outils de la page du conteneur, sélectionnez Charger. Dans la boîte de dialogue Charger
un objet blob, accédez au fichier contenant les données à charger. La section déroulante Avancé vous
permet de modifier les options par défaut. Vous pouvez ainsi spécifier le nom d’un dossier dans le
conteneur (le dossier est créé s’il n’existe pas), le type d’objet blob et le niveau d’accès. L’objet blob créé
est nommé en fonction du fichier chargé.
47 https://docs.microsoft.com/powershell/module/az.storage/new-azstoragecontainer
RÉSERVÉ À UNE UTILISATION FORMATEUR. UTILISATION ÉTUDIANT INTERDITE
210
REMARQUE : Vous pouvez sélectionner plusieurs fichiers. Chaque fichier est chargé dans des objets blob
séparés.
Si vous avez besoin de charger plusieurs fichiers, utilisez la commande az storage blob up-
load-batch. Cette commande prend le nom d’un dossier local à la place d’un nom de fichier, puis
charge les fichiers de ce dossier dans des objets blob distincts. L’exemple ci-dessous charge tous les
fichiers gif du dossier data vers le dossier bikes du conteneur images.
az storage blob upload-batch \
--account-name contosodata \
--source "\data" \
--pattern "*.gif" \
--destination "images\bikes"
48 https://docs.microsoft.com/cli/azure/storage/blob?view=azure-cli-latest#az-storage-blob-upload
RÉSERVÉ À UNE UTILISATION FORMATEUR. UTILISATION ÉTUDIANT INTERDITE
211
Azure PowerShell n’inclut pas de commande de chargement d’objets blob par lots pour l’instant. Si vous
avez besoin de charger plusieurs fichiers, vous pouvez écrire votre propre script PowerShell (utilisez le
cmdlet Get-ChildItem) pour identifier les fichiers et charger chacun d’eux individuellement.
49 https://docs.microsoft.com/powershell/module/azure.storage/set-azurestorageblobcontent
RÉSERVÉ À UNE UTILISATION FORMATEUR. UTILISATION ÉTUDIANT INTERDITE
212
50 https://docs.microsoft.com/cli/azure/storage/blob?view=azure-cli-latest#az-storage-blob-list
51 https://docs.microsoft.com/powershell/module/az.storage/Get-AzStorageBlob
RÉSERVÉ À UNE UTILISATION FORMATEUR. UTILISATION ÉTUDIANT INTERDITE
213
52 https://docs.microsoft.com/cli/azure/storage/blob?view=azure-cli-latest#az-storage-blob-download
53 https://docs.microsoft.com/cli/azure/storage/blob?view=azure-cli-latest#az-storage-blob-download-batch
RÉSERVÉ À UNE UTILISATION FORMATEUR. UTILISATION ÉTUDIANT INTERDITE
214
AVERTISSEMENT : Si vous avez créé le compte de stockage avec prise en charge des espaces de noms
hiérarchiques (pour Data Lake Storage), l’option de suppression réversible n’est pas disponible. Toutes les
opérations de suppression d’objet blob sont donc définitives.
54 https://docs.microsoft.com/powershell/module/az.storage/get-azstorageblobcontent
RÉSERVÉ À UNE UTILISATION FORMATEUR. UTILISATION ÉTUDIANT INTERDITE
215
télécharger. Sélectionnez l’objet blob pour voir des informations détaillées à son sujet. Dans la page des
détails, sélectionnez Supprimer. Vous êtes invité à confirmer l’opération.
Si vous avez activé la suppression réversible pour le compte de stockage, la page des objets blob réper-
toriant les objets blob dans un conteneur inclut l’option Afficher les objets blob supprimés. Si vous
sélectionnez cette option, vous pouvez afficher et annuler la suppression d’un objet blob supprimé.
RÉSERVÉ À UNE UTILISATION FORMATEUR. UTILISATION ÉTUDIANT INTERDITE
216
55 https://docs.microsoft.com/cli/azure/storage/blob?view=azure-cli-latest#az-storage-blob-delete
56 https://docs.microsoft.com/cli/azure/storage/blob?view=azure-cli-latest#az-storage-blob-delete-batch
57 https://docs.microsoft.com/powershell/module/az.storage/remove-azstorageblob
RÉSERVÉ À UNE UTILISATION FORMATEUR. UTILISATION ÉTUDIANT INTERDITE
217
-Confirm
58 https://docs.microsoft.com/cli/azure/storage/container?view=azure-cli-latest#az-storage-container-delete
59 https://docs.microsoft.com/powershell/module/az.storage/remove-azstoragecontainer
RÉSERVÉ À UNE UTILISATION FORMATEUR. UTILISATION ÉTUDIANT INTERDITE
218
60 https://docs.microsoft.com/azure/storage/common/storage-use-azcopy-v10
RÉSERVÉ À UNE UTILISATION FORMATEUR. UTILISATION ÉTUDIANT INTERDITE
219
Sur la page Partages de fichiers, sélectionnez +Partage de fichiers. Attribuez un nom au partage de
fichiers et éventuellement un quota. Azure vous permet de stocker jusqu’à 5 PiB de fichiers sur tous les
partages de fichiers d’un compte de stockage. Un quota vous permet de limiter la quantité d’espace
qu’un partage de fichiers individuel consomme, pour l’empêcher de priver d’autres partages de fichiers
du stockage de fichiers. Si vous n’avez qu’un seul partage de fichiers, vous pouvez laisser le quota vide.
Après avoir créé un partage, vous pouvez utiliser le portail Azure pour ajouter des répertoires au partage,
télécharger des fichiers sur le partage et supprimer le partage. La commande Connecter génère un script
PowerShell que vous pouvez exécuter pour attacher au partage à partir de votre ordinateur local. Vous
pouvez ensuite utiliser le partage comme s’il s’agissait d’un lecteur de disque local.
RÉSERVÉ À UNE UTILISATION FORMATEUR. UTILISATION ÉTUDIANT INTERDITE
220
61 https://azure.microsoft.com/features/storage-explorer/
RÉSERVÉ À UNE UTILISATION FORMATEUR. UTILISATION ÉTUDIANT INTERDITE
221
Une version de cet utilitaire est également disponible dans le portail Azure, sur la page Aperçu pour un
compte de stockage Azure.
Pour créer un nouveau partage de fichiers, cliquez avec le bouton droit de la souris sur Partages de
fichiers, puis sélectionnez Créer un partage de fichiers. Dans le portail Azure, l’Explorateur de stockage
affiche la même boîte de dialogue que celle que vous avez vue précédemment. Dans la version de
bureau, vous entrez simplement un nom pour le nouveau partage de fichiers ; vous n’avez pas la possibil-
ité de définir un quota à ce stade.
Comme avec le portail Azure, une fois que vous avez créé un nouveau partage, vous pouvez utiliser
l’Explorateur de stockage pour créer des dossiers et charger et télécharger des fichiers.
RÉSERVÉ À UNE UTILISATION FORMATEUR. UTILISATION ÉTUDIANT INTERDITE
222
Toutefois, si vous devez transférer un nombre important de fichiers dans et hors du stockage de fichiers
Azure, vous devez utiliser l’utilitaire AzCopy. AzCopy est un utilitaire de ligne de commande optimisé
pour le transfert de fichiers volumineux (et d’objets blob) entre votre ordinateur local et le stockage de
fichiers Azure. Il peut détecter les échecs de transfert et redémarrer un transfert qui a échoué au moment
où une erreur s’est produite. Vous ne devez pas répéter toute l’opération.
Vous pouvez transférer l’intégralité du contenu d’un dossier local vers le stockage de fichiers Azure à
l’aide d’une commande similaire. Vous remplacez le nom de fichier (« monfichier.txt ») par le nom du
dossier. Si le dossier contient des sous-dossiers à copier, ajoutez le drapeau –récursif.
azcopy copy "myfolder" "https://<storage-account-name>.file.core.windows.
net/<file-share-name>/myfolder<SAS-token>" --recursive
RÉSERVÉ À UNE UTILISATION FORMATEUR. UTILISATION ÉTUDIANT INTERDITE
225
La commande AzCopy copy comporte également d’autres options. Pour plus d’informations, consultez la
page Charger des fichiers62 sur le site web de Microsoft.
Pour plus de détails sur le téléchargement de fichiers à l’aide d’AzCopy, consultez la page Télécharger
des fichiers63.
62 https://docs.microsoft.com/azure/storage/common/storage-use-azcopy-files?toc=/azure/storage/files/toc.json#upload-files
63 https://docs.microsoft.com/azure/storage/common/storage-use-azcopy-files?toc=/azure/storage/files/toc.json#download-files
RÉSERVÉ À UNE UTILISATION FORMATEUR. UTILISATION ÉTUDIANT INTERDITE
226
Résumé
Dans cette leçon, vous avez vu comment utiliser les comptes Azure Cosmos DB et Stockage Azure pour
stocker et récupérer des données non relationnelles. Vous avez également appris à :
●● Charger des données dans une base de données Cosmos DB, puis interroger ces données.
●● Charger et télécharger des données dans un compte de stockage Azure.
En savoir plus
●● Cas d’utilisation courants d’Azure Cosmos DB65
●● Migrer le schéma de base de données normalisé depuis Azure SQL Database vers le conteneur
dénormalisé Azure Cosmos DB66
●● Didacticiel : Utiliser l’outil de migration des données pour migrer vos données vers Azure
Cosmos DB67
●● Copier et transformer des données dans Azure Cosmos DB (API SQL) à l’aide d’Azure Data
Factory68
●● Démarrage rapide : Créer une application console à l’aide du Kit de développement logiciel
(SDK) .NET V4 pour gérer les ressources du compte d’API SQL d’Azure Cosmos DB69
●● Premiers pas avec les requêtes SQL70
64 https://docs.microsoft.com/fr-fr/learn/modules/explore-non-relational-data-stores-azure/6-exercise
65 https://docs.microsoft.com/azure/cosmos-db/use-cases
66 https://docs.microsoft.com/azure/data-factory/how-to-sqldb-to-cosmosdb
67 https://docs.microsoft.com/azure/cosmos-db/import-data
68 https://docs.microsoft.com/azure/data-factory/connector-azure-cosmos-db
69 https://docs.microsoft.com/azure/cosmos-db/create-sql-api-dotnet-v4
70 https://docs.microsoft.com/azure/cosmos-db/sql-api-sql-query
RÉSERVÉ À UNE UTILISATION FORMATEUR. UTILISATION ÉTUDIANT INTERDITE
227
71 https://docs.microsoft.com/cli/azure/storage/container?view=azure-cli-latest#az-storage-container-create
72 https://docs.microsoft.com/powershell/module/az.storage/new-azstoragecontainer
73 https://docs.microsoft.com/cli/azure/storage/blob?view=azure-cli-latest#az-storage-blob-upload
74 https://docs.microsoft.com/powershell/module/azure.storage/set-azurestorageblobcontent
75 https://docs.microsoft.com/cli/azure/storage/blob?view=azure-cli-latest#az-storage-blob-list
76 https://docs.microsoft.com/powershell/module/az.storage/Get-AzStorageBlob
77 https://docs.microsoft.com/cli/azure/storage/blob?view=azure-cli-latest#az-storage-blob-download
78 https://docs.microsoft.com/cli/azure/storage/blob?view=azure-cli-latest#az-storage-blob-download-batch
79 https://docs.microsoft.com/powershell/module/az.storage/get-azstorageblobcontent
80 https://docs.microsoft.com/cli/azure/storage/blob?view=azure-cli-latest#az-storage-blob-delete
81 https://docs.microsoft.com/powershell/module/az.storage/remove-azstorageblob
82 https://docs.microsoft.com/cli/azure/storage/blob?view=azure-cli-latest#az-storage-blob-delete-batch
83 https://docs.microsoft.com/cli/azure/storage/container?view=azure-cli-latest#az-storage-container-delete
84 https://docs.microsoft.com/powershell/module/az.storage/remove-azstoragecontainer
85 https://docs.microsoft.com/azure/storage/common/storage-use-azcopy-v10
86 https://azure.microsoft.com/features/storage-explorer/
87 https://docs.microsoft.com/azure/storage/common/storage-use-azcopy-files
RÉSERVÉ À UNE UTILISATION FORMATEUR. UTILISATION ÉTUDIANT INTERDITE
228
Answers
Question 1
Quels sont les éléments d’une clé de Stockage Table Azure ?
Nom de la table et nom de la colonne
■■ Clé de partition et clé de ligne
Numéro de ligne
Explanation
Réponse correcte. La clé de partition identifie la partition dans laquelle se trouve une ligne et les lignes de
chaque partition sont stockées dans l’ordre des clés de ligne.
Question 2
Quand devez-vous utiliser un objet blob de blocs et quand devez-vous utiliser un objet blob de pages ?
Utiliser un objet blob de blocs pour les données non structurées qui nécessitent un accès aléatoire
pour effectuer des lectures et des écritures. Utilisez un objet blob de page pour les objets discrets qui
changent rarement.
Utiliser un objet blob de bloc pour les données actives stockées à l’aide du niveau d’accès aux
données chaudes et un objet blob de page pour les données stockées à l’aide des niveaux d’accès aux
données froides ou archivées.
■■ Utiliser un bloc de page pour les objets blob qui nécessitent un accès aléatoire en lecture et en
écriture. Utilisez un objet blob de blocs pour les objets discrets qui changent rarement.
Explanation
Réponse correcte. Utilisez un bloc de pages pour les objets blob qui nécessitent un accès aléatoire en lecture
et en écriture. Utilisez un objet blob de blocs pour les objets discrets qui changent rarement.
Question 3
Pourquoi pouvez-vous utiliser le stockage de fichiers Azure ?
À partager des fichiers stockés sur site avec des utilisateurs situés sur d’autres sites.
■■ À permettre aux utilisateurs de différents sites de partager des fichiers.
À stocker de gros fichiers de données binaires contenant des images ou d’autres données non
structurées.
Explanation
Réponse correcte. Vous pouvez créer un partage de fichiers dans le stockage de fichiers Azure, télécharger
des fichiers sur ce partage de fichiers et octroyer l’accès au partage de fichiers aux utilisateurs distants.
RÉSERVÉ À UNE UTILISATION FORMATEUR. UTILISATION ÉTUDIANT INTERDITE
229
Question 4
Vous construisez un système qui contrôle la température dans un ensemble d’immeubles de bureaux et
règle la climatisation dans chaque pièce de chaque bloc pour maintenir une température ambiante
agréable. Votre système doit gérer la climatisation dans plusieurs milliers de bâtiments répartis à travers
le pays ou la région et, en règle générale, chaque bâtiment contient au moins 100 chambres climatisées.
Quel est le type de stockage de données NoSQL le plus approprié pour capturer les données de
température afin de permettre leur traitement rapide ?
■■ Envoyer les données à une base de données Azure Cosmos DB et utiliser Azure Functions pour traiter
les données.
Stocker les données dans un fichier stocké dans un partage créé à l’aide d'Azure File Storage.
Écrire les températures dans un objet blob dans le stockage Blob Azure.
Explanation
Réponse correcte. Cosmos DB peut ingérer rapidement de gros volumes de données. Un thermomètre dans
chaque pièce peut envoyer les données à une base de données Cosmos DB. Vous pouvez organiser l’exécu-
tion d’une fonction Azure lorsque chaque élément est stocké. La fonction peut examiner la température et
lancer un processus à distance pour configurer la climatisation dans la pièce.
Question 1
Qu’est-ce que l’approvisionnement ?
■■ L’action d’exécuter une série de tâches qu’un fournisseur de services effectue pour créer et configurer
un service.
Fournir à d’autres utilisateurs l’accès à un service existant.
Réglage d’un service pour améliorer les performances.
Explanation
Réponse correcte. Dans Azure, vous devez provisionner un service avant de pouvoir l’utiliser.
Question 2
Qu’est-ce qu’un principal de sécurité ?
Une collection nommée d’autorisations qui peuvent être accordées à un service, comme la possibilité
d’utiliser le service pour lire, écrire et supprimer des données. Propriétaire et Contributeur sont des
exemples dans Azure.
Un ensemble de ressources gérées par un service auquel vous pouvez accorder l’accès.
■■ Un objet qui représente un utilisateur, un groupe, un service ou une identité managée qui demande
l’accès aux ressources Azure.
Explanation
Réponse correcte. L’authentification Azure utilise des principes de sécurité pour déterminer si une demande
d’accès à un service doit être accordée.
RÉSERVÉ À UNE UTILISATION FORMATEUR. UTILISATION ÉTUDIANT INTERDITE
230
Question 3
Parmi les éléments suivants, lequel présente l’avantage d’utiliser la réplication multirégionale avec
Cosmos DB ?
Les données seront toujours cohérentes dans chaque région.
■■ La disponibilité est accrue.
Sécurité accrue pour vos données.
Explanation
Réponse correcte. La réplication améliore la disponibilité. Si une région devient inaccessible, les données
sont toujours disponibles dans d’autres régions.
RÉSERVÉ À UNE UTILISATION FORMATEUR. UTILISATION ÉTUDIANT INTERDITE
Module 4 Explorer l’analyse des entrepôts de
données modernes dans Azure
Objectifs d’apprentissage
Dans cette leçon, vous allez :
●● Explorer les concepts d’entreposage de données
RÉSERVÉ À UNE UTILISATION FORMATEUR. UTILISATION ÉTUDIANT INTERDITE
232
https://www.microsoft.com/videoplayer/embed/RE4A3RR
L’unité suivante décrit chacun de ces services de manière un peu plus détaillée.
uer à produire différents articles ou s’il faut augmenter ou diminuer la production en fonction des
fluctuations saisonnières. Ces données historiques peuvent être générées par des processus par lot, à
intervalles réguliers, sur la base des données de vente en direct qui peuvent être capturées en continu.
Toute solution d’entrepôt de données moderne doit être en mesure de fournir un accès aux flux de
données brutes, et aux informations commerciales traitées dérivées de ces données.
●● Azure Data Lake Storage est compatible avec le système de fichiers distribués Hadoop (HDFS).
Hadoop est un service d’analyse hautement flexible et programmable, utilisé par de nombreuses
organisations pour examiner de grandes quantités de données. Tous les environnements Apache
Hadoop peuvent accéder aux données dans Azure Data Lake Storage Gen2.
Dans une solution d’entrepôt de données Azure Data Services, les données sont généralement chargées
dans Azure Data Lake Storage avant d’être traitées dans une structure qui permet une analyse efficace
dans Azure Synapse Analytics. Vous pouvez utiliser un service tel qu’Azure Data Factory (décrit ci-dessus)
pour ingérer et charger les données à partir de diverses sources dans Azure Data Lake Storage.
Azure Databricks prend également en charge le traitement de flux structuré. Dans ce modèle, Databricks
effectue vos calculs de manière incrémentielle et actualise constamment le résultat, au fur et à mesure de
l'arrivée des données en flux continu.
roger les mêmes données à plusieurs reprises, sans avoir à les récupérer et à les convertir à chaque fois.
Vous pouvez également utiliser ces données comme entrée pour un traitement analytique ultérieur, à
l’aide d’Azure Analysis Services.
Azure Synapse Analytics exploite une architecture de traitement massivement parallèle (MPP). Cette
architecture comprend un nœud de contrôle et un pool de nœuds de calcul.
Le nœud de contrôle est le cerveau de l’architecture. Il s’agit de la partie frontale, qui interagit avec toutes
les applications. Le moteur MPP s’exécute sur le nœud de contrôle pour optimiser et coordonner les
requêtes parallèles. Lorsque vous soumettez une demande de traitement, le nœud de contrôle la trans-
forme en demandes plus petites qui s’exécutent sur des sous-ensembles distincts de données en par-
allèle.
Les nœuds de calcul fournissent la puissance de calcul. Les données à traiter sont réparties uniformément
sur les nœuds. Les utilisateurs et les applications envoient des demandes de traitement au nœud de
contrôle. Le nœud de contrôle envoie les requêtes aux nœuds de calcul, qui exécutent les requêtes sur la
partie des données contenue dans chacun d’eux. À la fin du traitement de chaque nœud, les résultats
sont renvoyés au nœud de contrôle, où ils sont combinés en un résultat global.
Azure Synapse Analytics prend en charge deux modèles de calcul : Les pools SQL et les pools Spark.
Dans un pool SQL, chaque nœud de calcul utilise une base de données Azure SQL et un stockage Azure
pour gérer une partie des données.
RÉSERVÉ À UNE UTILISATION FORMATEUR. UTILISATION ÉTUDIANT INTERDITE
238
Vous soumettez des requêtes sous la forme d’instructions Transact-SQL et Azure Synapse Analytics les
exécute. Cependant, contrairement à un moteur de base de données SQL ordinaire, Azure Synapse
Analytics peut recevoir des données d’une grande variété de sources. Pour ce faire, Azure Synapse
Analytics utilise une technologie nommée PolyBase1. PolyBase vous permet de récupérer des données à
partir de sources relationnelles et non relationnelles, telles que des fichiers texte délimités, Azure Blob
Storage et Azure Data Lake Storage. Vous pouvez enregistrer les données lues sous forme de tables SQL
dans le service Synapse Analytics.
1 https://docs.microsoft.com/sql/relational-databases/polybase/polybase-guide
RÉSERVÉ À UNE UTILISATION FORMATEUR. UTILISATION ÉTUDIANT INTERDITE
239
Vous spécifiez le nombre de nœuds lorsque vous créez un pool SQL. Vous pouvez mettre à l’échelle le
pool SQL manuellement, pour ajouter ou pour supprimer des nœuds de calcul si nécessaire.
REMARQUE : Vous ne pouvez mettre à l’échelle un pool SQL que s’il n’exécute pas une requête Trans-
act-SQL.
Dans un pool Spark, les nœuds sont remplacés par un cluster Spark. Vous exécutez des travaux Spark
comprenant du code écrit dans des notebooks, de la même manière qu’Azure Databricks. Vous pouvez
écrire le code du notebook en C#, Python, Scala ou Spark SQL (un dialecte SQL différent de Trans-
act-SQL). Comme avec un pool SQL, le cluster Spark divise le travail en une série de tâches parallèles qui
peuvent être effectuées simultanément. Vous pouvez enregistrer les données générées par vos note-
books dans Azure Storage ou Data Lake Storage.
REMARQUE : Spark est optimisé pour le traitement en mémoire. Un travail Spark peut charger et mettre
en cache des données en mémoire, mais aussi les interroger à plusieurs reprises. Le calcul en mémoire est
beaucoup plus rapide que les applications sur disque, mais nécessite des ressources mémoire supplé-
mentaires.
Vous spécifiez le nombre de nœuds lorsque vous créez le cluster Spark. La mise à l’échelle automatique
des pools Spark peut être activée, de sorte que les pools évoluent en ajoutant ou en supprimant des
nœuds si nécessaire. La mise à l’échelle automatique peut se produire lorsque le traitement est actif.
REMARQUE : Azure Synapse Analytics peut consommer beaucoup de ressources. Si vous n’avez pas
l’intention d’effectuer de traitement pendant un certain temps, vous pouvez suspendre le service. Cette
action libère les ressources du pool vers d’autres utilisateurs et réduit vos coûts.
●● les opérations ELT complexes. ELT signifie Extraire, transformer et charger, et fait référence à la façon
dont vous pouvez récupérer des données brutes à partir de plusieurs sources, convertir ces données
dans un format standard et les stocker.
●● Concurrence faible à moyenne (128 utilisateurs ou moins).
Utilisez Azure Analysis Services pour :
●● des volumes de données réduits (quelques téraoctets),
●● plusieurs sources pouvant être corrélées,
●● une concurrence de lecture élevée (milliers d’utilisateurs),
●● une analyse détaillée et l’exploration des données à l’aide des fonctions de Power BI,
●● le développement rapide de tableaux de bord à partir de données tabulaires.
Question 2
À quoi sert l’ingestion de données ?
À effectuer des transformations de données complexes sur les données reçues de sources externes.
À capturer les données entrant dans un système d’entrepôt de données aussi rapidement que
possible.
À visualiser les résultats de l’analyse des données.
Question 3
Quelle est la principale différence entre un lac de données et un entrepôt de données?
Un lac de données contient des informations structurées, alors qu’un entrepôt de données contient
données commerciales brutes.
Un lac de données contient des données brutes, alors qu’un entrepôt de données contient des
informations structurées.
Les données stockées dans un lac de données sont dynamiques, alors que les informations stockées
dans un entrepôt de données sont statiques.
RÉSERVÉ À UNE UTILISATION FORMATEUR. UTILISATION ÉTUDIANT INTERDITE
242
Résumé
Cette leçon a décrit le fonctionnement d’une solution d'entrepôt de données et vous a donné une vue
d’ensemble des services que vous pouvez utiliser pour créer un entrepôt de données moderne dans
Azure.
Au cours de cette leçon, vous avez appris à :
●● Explorer les concepts d’entreposage de données
●● Explorer les Data Services Azure pour un entreposage de données moderne
●● Examiner l’architecture et la charge de travail modernes d’entreposage de données
●● Découvrir les Data Services Azure dans le portail Azure
En savoir plus
●● Fabrique de données2
●● Azure Data Lake Storage3
●● Azure Databricks4
●● Azure Synapse Analytics5
●● Présentation d’Azure Analysis Services6
●● Qu’est-ce que Power BI ?7
●● HDInsight8
●● Conseils pour la conception de tables distribuées dans le pool Synapse SQL9
●● Stratégies de chargement de données pour le pool Synapse SQL10
●● Qu’est-ce que PolyBase ?11
2 https://azure.microsoft.com/services/data-factory/
3 https://azure.microsoft.com/services/storage/data-lake-storage/
4 https://azure.microsoft.com/services/databricks/
5 https://azure.microsoft.com/services/synapse-analytics/
6 https://docs.microsoft.com/azure/analysis-services/analysis-services-overview
7 https://docs.microsoft.com/power-bi/fundamentals/power-bi-overview
8 https://azure.microsoft.com/services/hdinsight/
9 https://docs.microsoft.com/azure/synapse-analytics/sql-data-warehouse/sql-data-warehouse-tables-distribute
10 https://docs.microsoft.com/azure/synapse-analytics/sql-data-warehouse/design-elt-data-loading
11 https://docs.microsoft.com/sql/relational-databases/polybase/polybase-guide
RÉSERVÉ À UNE UTILISATION FORMATEUR. UTILISATION ÉTUDIANT INTERDITE
243
Objectifs d’apprentissage
Dans cette leçon, vous allez :
●● Décrire l’ingestion de données dans Azure ;
●● Décrire les composants d’Azure Data Factory ;
●● Découvrez comment utiliser Azure Data Factory pour charger des données dans un entrepôt de
données
offre une solution en temps réel pour les données qui arrivent ou changent rapidement. Avec le stream-
ing, vous pouvez utiliser Azure Data Factory pour mettre constamment à jour les informations dans un
entrepôt de données avec les données les plus récentes.
Data Factory fournit un moteur d’orchestration. L’orchestration est le processus qui consiste à diriger et
contrôler d’autres services, puis à les interconnecter pour leur permettre de s’échanger les données. Data
Factory s’appuie sur l’orchestration pour combiner et automatiser des séquences de tâches qui font appel
à différents services pour effectuer des opérations complexes.
Azure Data Factory exploite plusieurs ressources différentes : services liés, jeux de données et pipelines.
Les sections suivantes expliquent comment Data Factory utilise ces ressources.
de destination. Vous pouvez inclure des activités qui transforment les données lors de leur transfert, ou
vous pouvez combiner des données de plusieurs sources ensemble. D’autres activités vous permettent
d’incorporer des éléments de traitement issus d’autres services. Par exemple, vous pouvez utiliser une
activité Fonction Azure pour exécuter une fonction Azure afin de modifier et de filtrer les données, ou une
activité Bloc-notes Azure Databricks pour exécuter un bloc-notes qui effectue un traitement plus avancé
Les pipelines n’ont pas besoin d’être linéaires. Vous pouvez inclure des activités logiques qui exécutent à
plusieurs reprises une série de tâches alors qu’une condition est vraie, et ce à l’aide d’une activité ForEach,
ou suivre des chemins de traitement différents en fonction du résultat du traitement précédent à l’aide
d’une activité Condition If.
Pendant la phase d’ingestion, il arrive parfois que les données que vous intégrez présentent des noms de
colonne et des types de données différents de ceux exigés par la sortie. Dans ce cas, vous pouvez
procéder à un mappage de façon à transformer le format d’entrée des données au format de sortie. La
capture d’écran ci-dessous présente le canevas de mappage pour l’activité Copier des données. Elle illustre
la façon dont les colonnes des données d’entrée peuvent être mappées au format de données exigé par
la sortie.
RÉSERVÉ À UNE UTILISATION FORMATEUR. UTILISATION ÉTUDIANT INTERDITE
249
Vous pouvez exécuter un pipeline manuellement ou faire en sorte qu’il s’exécute ultérieurement à l’aide
d’un déclencheur. Un déclencheur vous permet de planifier l’exécution d’un pipeline selon un programme
établi (tous les samedis soir, par exemple), à intervalles réguliers (toutes les 2-3 minutes ou heures) ou
quand un événement se produit (p.ex., arrivée d’un fichier dans Azure Data Lake Storage ou suppression
d’un objet blob dans Stockage Blob Azure).
Azure Data Factory offre une prise en charge de PolyBase pour le chargement de données. Par exemple,
Data Factory peut appeler directement PolyBase en votre nom si vos données se trouvent dans un
magasin de données compatible avec PolyBase.
résultats dans un magasin de données. La scalabilité d’Azure Databricks en fait une plateforme idéale
pour effectuer des tâches analytiques et d’ingestion de données complexes.
Azure Data Factory peut incorporer des notebooks Azure Databricks dans un pipeline. Un pipeline peut
transmettre des paramètres à un notebook. Ces paramètres peuvent spécifier les données à lire et
analyser. Le notebook peut enregistrer les résultats, que le pipeline Azure Data Factory peut utiliser dans
les activités ultérieures.
https://www.microsoft.com/videoplayer/embed/RE4Asf7
Question 2
Quand pouvez-vous utiliser PolyBase ?
À interroger des données à partir de sources de données externes à partir d’Azure Synapse Analytics
À ingérer des données de streaming à l’aide d’Azure Databricks
À orchestrer les activités dans Azure Data Factory
RÉSERVÉ À UNE UTILISATION FORMATEUR. UTILISATION ÉTUDIANT INTERDITE
253
Question 3
Lequel de ces services peut être utilisé pour ingérer des données dans Azure Synapse Analytics ?
Azure Data Factory
Power BI
Azure Active Directory
Résumé
Dans cette leçon, vous avez découvert les outils d’ingestion de données dans une base de données
Azure. Vous avez vu comment utiliser Azure Data Factory pour lire, traiter et stocker des données dans un
entrepôt de données.
Dans cette leçon, vous avez appris à :
●● Décrire l’ingestion de données dans Azure ;
●● Décrire les composants d’Azure Data Factory ;
●● Charger des données dans Azure Synapse Analytics.
En savoir plus
●● Pipelines et activités dans Azure Data Factory12
●● Démarrage rapide : Créer une fabrique de données avec l’interface utilisateur d’Azure Data
Factory13
●● L’entrepôt de données Azure SQL s’appelle désormais Azure Synapse Analytics14
●● BI d’entreprise automatisée avec Azure Synapse Analytics et Azure Data Factory15
12 https://docs.microsoft.com/azure/data-factory/concepts-pipelines-activities
13 https://docs.microsoft.com/azure/data-factory/quickstart-create-data-factory-portal
14 https://azure.microsoft.com/blog/azure-sql-data-warehouse-is-now-azure-synapse-analytics/
15 https://docs.microsoft.com/azure/architecture/reference-architectures/data/enterprise-bi-adf
RÉSERVÉ À UNE UTILISATION FORMATEUR. UTILISATION ÉTUDIANT INTERDITE
254
Objectifs d’apprentissage
Au cours de cette leçon, vous allez :
●● Décrire les options de traitement des données pour effectuer des analyses dans Azure
●● Découvrir Azure Synapse Analytics
Vous avez le choix entre deux technologies pour traiter les données :
●● Transact-SQL. Il s’agit du même dialecte SQL que celui utilisé par Azure SQL Database, avec certaines
extensions pour la lecture des données provenant de sources externes, comme des bases de données,
des fichiers et Azure Data Lake Storage. Vous pouvez utiliser ces extensions pour charger rapidement
des données, générer des agrégations et d’autres opérations analytiques, créer des tables et des vues,
puis les utiliser pour stocker des informations. Vous pouvez utiliser les résultats pour générer des
rapports et les traiter plus tard.
●● Spark. Il s’agit de la même technologie open source que celle utilisée pour alimenter Azure Databricks.
Vous écrivez votre code analytique à l’aide de notebooks dans un langage de programmation comme
C#, Scala, Python ou SQL. Les bibliothèques Spark fournies avec Azure Synapse Analytics vous per-
mettent de lire des données provenant de sources externes, et d’écrire des données dans différents
formats si vous devez enregistrer vos résultats pour une analyse plus poussée.
Azure Synapse Analytics utilise une architecture clusterisée. Chaque grappe a un nœud de contrôle utilisé
comme point d’entrée du système. Quand vous exécutez des instructions Transact-SQL ou que vous
démarrez des tâches Spark à partir d’un notebook, la demande est envoyée au nœud de contrôle. Le
nœud de contrôle exécute un moteur de traitement parallèle qui divise l’opération en une série de tâches
qui peuvent être exécutées simultanément. Chaque tâche effectue une partie de la charge de travail sur
une partie des données sources. Chaque tâche est envoyée à un nœud de calcul pour procéder au
traitement. Le nœud de contrôle rassemble les résultats des nœuds de calcul et les combine dans un
résultat global.
RÉSERVÉ À UNE UTILISATION FORMATEUR. UTILISATION ÉTUDIANT INTERDITE
256
L’unité suivante décrit plus en détail les composants d’Azure Synapse Analytics.
Pour plus d'informations, consultez l’article Qu’est-ce qu’Azure Synapse Analytics ?16
16 https://docs.microsoft.com/azure/synapse-analytics/sql-data-warehouse/sql-data-warehouse-overview-what-is
RÉSERVÉ À UNE UTILISATION FORMATEUR. UTILISATION ÉTUDIANT INTERDITE
257
configuration en un clic, des workflows simplifiés et un espace de travail interactif permettant aux
scientifiques des données, aux ingénieurs des données et aux analystes métier de collaborer.
Databricks peut traiter des données stockées dans de nombreux types de stockages différents, notam-
ment le stockage Blob Azure, Azure Data Lake Store, le stockage Hadoop, les fichiers plats, les bases de
données et les entrepôts de données. Databricks peut également traiter des données en flux continu.
Databricks utilise une architecture extensible basée sur des pilotes.
REMARQUE : Un pilote est une partie de code qui se connecte à une source de données spécifique et
vous permet de lire et d’écrire cette source. Un pilote est généralement fourni dans le cadre d’une
bibliothèque que vous pouvez charger dans l’environnement Databricks. Les pilotes sont disponibles
pour de nombreux services Azure, notamment Azure SQL Database, Azure Cosmos DB, Stockage Blob
Azure et Azure Data Lake Storage, ainsi qu’un grand nombre de services et de bases de données générés
par des tiers, comme MySQL et PostgreSQL.
Le moteur de traitement est fourni par Apache Spark. Spark est un moteur de traitement parallèle qui
prend en charge l’analytique à grande échelle. Vous écrivez du code d’application qui consomme des
données provenant d’une ou de plusieurs sources. Ensuite, vous fusionnez, reformatez, filtrez et remod-
elez ces données, puis vous stockez les résultats. Spark distribue le travail sur un cluster d’ordinateurs.
Chaque ordinateur peut traiter ses données en parallèle avec les autres ordinateurs. La stratégie permet
de réduire le temps nécessaire pour effectuer le travail. Spark est conçu pour gérer de grandes quantités
de données.
Vous pouvez écrire le code d’application Spark à l’aide de plusieurs langages, comme Python, R, Scala,
Java et SQL. Spark dispose d’un certain nombre de bibliothèques pour ces langages, fournissant des
routines analytiques complexes qui ont été optimisées pour l’environnement clusterisé. Ces bibliothèques
comprennent des modules pour le Machine Learning, l’analyse statistique, la modélisation linéaire et non
linéaire, l’analyse prédictive et les graphismes.
Vous écrivez des applications Databricks à l’aide d'un notebook. Un notebook contient une série d'étapes
(cellules), chacune contenant un bloc de code. Par exemple, une cellule peut contenir le code qui se
connecte à une source de données, la cellule suivante lit les données de cette source et les convertit en
un modèle en mémoire, la cellule suivante trace un graphe et une dernière cellule enregistre les données
du modèle en mémoire dans un dépôt.
RÉSERVÉ À UNE UTILISATION FORMATEUR. UTILISATION ÉTUDIANT INTERDITE
258
17 https://docs.microsoft.com/azure/azure-databricks/what-is-azure-databricks
RÉSERVÉ À UNE UTILISATION FORMATEUR. UTILISATION ÉTUDIANT INTERDITE
259
Comme les tâches Map/Reduce, les tâches Spark sont mises en parallèle dans une série de tâches
subordonnées qui s’exécutent sur le cluster. Vous pouvez écrire des tâches Spark dans le cadre d’une
application, ou vous pouvez utiliser des notebooks interactifs. Ces notebooks sont les mêmes que ceux
que vous pouvez exécuter dans Azure Databricks. Spark comprend des bibliothèques que vous pouvez
utiliser pour lire et écrire des données dans une grand variété de magasins de données (et pas seulement
des magasins HDFS). Par exemple, vous pouvez vous connecter à des bases de données relationnelles
comme Azure SQL Database, et à d’autres services comme Azure Cosmos DB.
Apache Hive fournit des fonctionnalités interactives de type SQL pour interroger, agréger et synthétiser
des données. Les données peuvent provenir de nombreuses sources différentes. Les requêtes sont
converties en tâches, puis sont parallélisées. Chaque tâche peut s’exécuter sur un nœud distinct dans le
cluster HDInsight, et les résultats sont combinés avant d’être retournés à l’utilisateur.
Apache Kafka est un service de streaming clusterisé qui peut ingérer des données en temps réel. Il s’agit
d’une solution très scalable qui offre des fonctionnalités de publication et d’abonnement.
Apache Storm est une plateforme scalable et à tolérance de panne pour exécuter des applications de
traitement des données en temps réel. Storm peut traiter de grands volumes de données en streaming
avec des conditions de calcul relativement modestes. Storm est conçu pour assurer la fiabilité, afin
d’éviter toute perte d’événements. Les solutions Storm peuvent également fournir un traitement des
données garanti, avec la possibilité de relire les données qui n’ont pas été correctement traitées la
première fois. Storm peut interagir avec diverses sources d’événements, notamment Azure Event Hubs,
Azure IoT Hub, Apache Kafka et RabbitMQ (service de mise en file d’attente des messages). Storm peut
également écrire dans des magasins de données comme des bases de données HDFS, Hive, HBase, Redis
et SQL. Vous écrivez une application Storm à l’aide des API fournies par Apache.
RÉSERVÉ À UNE UTILISATION FORMATEUR. UTILISATION ÉTUDIANT INTERDITE
260
Pour plus d’informations, consultez l’article Qu’est -ce qu’Azure HDInsight ?18.
18 https://docs.microsoft.com/azure/hdinsight/hdinsight-overview
RÉSERVÉ À UNE UTILISATION FORMATEUR. UTILISATION ÉTUDIANT INTERDITE
261
Pour analyser ces journaux d’activité, l’entreprise doit utiliser des données de référence comme des
informations sur le client, des informations sur les jeux et des informations sur la campagne marketing
qui sont contenues dans un magasin de données local. L’entreprise souhaite utiliser ces données issues
du magasin de données local et les combiner avec d’autres données de journal dont elle dispose dans un
magasin de données dans le cloud.
Pour extraire des insights, l’entreprise veut traiter les données jointes en utilisant un cluster Spark dans le
cloud (avec Azure HDInsight), et publier les données transformées dans un entrepôt de données cloud,
comme Azure Synapse Analytics. L’entreprise peut utiliser les informations de l’entrepôt de données pour
générer et publier des rapports. Ils souhaitent automatiser ce flux de travail, et le surveiller et le gérer sur
une base quotidienne. Ils veulent également l’exécuter lorsque les fichiers arrivent dans un conteneur de
magasin d’objets blob.
Azure Data Factory vous permet de créer et de planifier des workflows basés sur les données (appelés
pipelines) qui peuvent ingérer des données provenant des différents magasins de données utilisés par la
société de jeux. Vous pouvez créer des processus ETL complexes qui transforment des données visuelle-
ment à l’aide de flux de données ou à l’aide de services de calcul comme Azure HDInsight, Azure Data-
bricks et Azure SQL Database. Vous pouvez ensuite publier les données transformées dans Azure Synapse
Analytics pour les applications décisionnelles à utiliser.
Un pipeline est un regroupement logique des activités nécessaires pour effectuer une unité de travail.
Ensemble, les activités d’un pipeline effectuent une tâche. Par exemple, un pipeline peut contenir une
série d’activités qui ingère des données brutes à partir du stockage Blob Azure, puis exécute une requête
Hive sur un cluster HDInsight pour partitionner les données et stocker les résultats dans une base de
données Cosmos DB.
vous pouvez conserver des quantités importantes de données brutes (objets blob) et de données
structurées. Il est optimisé pour les charges de travail analytiques.
Azure Data Lake Storage est compatible avec le système de fichiers DFS Hadoop (HDFS). Vous pouvez
exécuter des tâches Hadoop avec Azure HDInsight (voir ci-dessous) qui peut lire et écrire des données
dans Data Lake Store de façon efficace.
Azure Data Lake Store offre une sécurité précise des données en utilisant des listes de contrôle d’accès.
Une liste de contrôle d’accès spécifie quels comptes peuvent accéder à des fichiers et dossiers spécifiques
du magasin. Si vous êtes plus familiarisé avec Linux, vous pouvez utiliser des autorisations de type POSIX
pour accorder un accès en lecture, en écriture et en recherche en fonction de la propriété du fichier et de
l’appartenance aux groupes des utilisateurs.
Les services comme Azure Data Factory, Azure Databricks, Azure HDInsight, Azure Data Lake Analytics et
Azure Stream Analytics peuvent lire et écrire directement dans Data Lake Store.
@maxPrices =
SELECT Ticker, MAX(Price) AS MaxPrice
FROM @priceData
GROUP BY Ticker;
OUTPUT @maxPrices
TO "/output/MaxPrices.csv"
USING Outputters.Csv(outputHeader: true);
RÉSERVÉ À UNE UTILISATION FORMATEUR. UTILISATION ÉTUDIANT INTERDITE
263
Il est important de comprendre que le code U-SQL fournit uniquement une description du travail à
effectuer. Azure Data Lake Analytics détermine la meilleure façon d’effectuer ce travail. Data Lake Analyt-
ics prend la description U-SQL d’un travail, l’analyse pour vérifier qu’il est syntaxiquement correct, puis la
compile dans une représentation interne. Data Lake Analytics décompose ensuite cette représentation
interne en étapes d’exécution. Chaque étape effectue une tâche, comme l’extraction des données d’une
source spécifiée, la division des données en partitions, le traitement des données dans chaque partition,
l’agrégation des résultats dans une partition, puis la combinaison des résultats de l’ensemble des parti-
tions. Le partitionnement est utilisé pour améliorer la parallélisation, et le traitement des différentes
partitions est effectué simultanément sur différents nœuds de traitement. Les données de chaque
partition sont déterminées par le compilateur U-SQL, en fonction de la façon dont la tâche récupère et
traite les données.
Une tâche U-SQL peut générer des résultats dans un seul fichier CSV, partitionner les résultats sur
plusieurs fichiers ou écrire dans d’autres destinations. Par exemple, Data Lake Analytics vous permet de
créer des générateurs de sortie personnalisés si vous voulez enregistrer des données dans un format
particulier (comme XML ou HTML). Vous pouvez également écrire des données dans le catalogue Data
Lake. Le catalogue fournit une interface de type SQL pour Data Lake Storage, ce qui vous permet de créer
des tables et des vues, et d’exécuter des instructions INSERT, UPDATE et DELETE sur ces tables et vues.
●● Synapse Studio : Il s’agit d’une interface utilisateur web qui permet aux ingénieurs de données
d’accéder à tous les outils de Synapse Analytics. Vous pouvez utiliser Synapse Studio pour créer des
pools SQL et Spark, définir et exécuter des pipelines et configurer des liens vers des sources de
données externes.
REMARQUE : Toutes les données stockées dans Azure Synapse Analytics peuvent être utilisées pour créer
et former des modèles avec Azure Machine Learning.
Les sections suivantes décrivent chacun de ces éléments de manière plus détaillée.
Par défaut, un pool SQL à la demande est créé dans chaque espace de travail Azure Synapse Analytics.
Vous pouvez ensuite approvisionner des pools supplémentaires, à la demande ou approvisionnés.
REMARQUE : Les pools à la demande vous permettent uniquement d’interroger les données contenues
dans des fichiers externes. Si vous souhaitez ingérer et charger les données dans Synapse Analytics, vous
devez créer votre propre pool SQL.
Azure Synapse Analytics est conçu pour exécuter des requêtes sur des jeux de données massifs. Vous
pouvez mettre à l’échelle le pool SQL manuellement, jusqu’à 60 nœuds. Vous pouvez également suspen-
dre un pool SQL si vous n’en avez pas besoin pendant un certain temps. La suspension libère les res-
sources associées au pool. Vous n’êtes pas facturé pour ces ressources jusqu’à ce que vous relanciez le
pool manuellement. Cependant, vous ne pouvez exécuter aucune requête tant que le pool n’est pas
relancé. Le relancement d’un pool peut prendre plusieurs minutes.
RÉSERVÉ À UNE UTILISATION FORMATEUR. UTILISATION ÉTUDIANT INTERDITE
266
Utilisez des pools SQL dans Synapse Analytics pour les scénarios suivants :
●● Rapports complexes. Vous pouvez utiliser toute la puissance de Transact-SQL pour exécuter des
instructions SQL complexes qui résument et agrègent les données.
●● Ingestion des données. PolyBase vous permet de récupérer des données à partir de nombreuses
sources externes et de les convertir en un format tabulaire. Vous pouvez reformater ces données et les
enregistrer sous forme de tables et de vues matérialisées dans Azure Synapse.
RÉSERVÉ À UNE UTILISATION FORMATEUR. UTILISATION ÉTUDIANT INTERDITE
267
19 https://azure.microsoft.com/services/machine-learning/
RÉSERVÉ À UNE UTILISATION FORMATEUR. UTILISATION ÉTUDIANT INTERDITE
268
l’aide d’un pool SQL. Ensuite, utilisez une activité de flux de données ou une activité de notebook à l’aide
d’un pool Spark pour traiter et générer un modèle Machine Learning.
Les pipelines Synapse utilisent le même moteur d’intégration de données que celui utilisé par Azure Data
Factory. Dans Synapse Studio, cela vous donne la puissance nécessaire pour créer des pipelines qui
peuvent se connecter à plus de 90 sources à partir de fichiers plats, de bases de données ou de services
en ligne. Vous pouvez créer des flux de données sans code qui vous permettent d’effectuer des mappag-
es et des transformations complexes sur les données au fur et à mesure de leur flux dans vos solutions
analytiques. L’exemple ci-dessous présente un pipeline avec trois activités. Le pipeline ingère des don-
nées, puis utilise un notebook Spark pour générer un modèle Machine Learning. La fonction Azure à la fin
du pipeline teste le modèle Machine Learning pour le valider.
Pour plus d’informations, consultez l’article Pipelines et activités dans Azure Data Factory20.
20 https://docs.microsoft.com/azure/data-factory/concepts-pipelines-activities
RÉSERVÉ À UNE UTILISATION FORMATEUR. UTILISATION ÉTUDIANT INTERDITE
269
Le lien Synapse utilise une fonctionnalité de Cosmos DB nommée Cosmos DB Analytical Store. Cosmos DB
Analytical Store contient une copie des données dans un conteneur Cosmos DB, mais organisé comme
un magasin à colonnes. Column stocke les données de groupe par colonnes plutôt que par lignes. Les
magasins de colonnes sont un format plus optimal pour exécuter des charges de travail analytiques qui
doivent agréger des données dans une colonne plutôt que sur une ligne, comme la génération de totaux,
de moyennes, de valeurs maximales ou minimales pour une colonne. Cosmos DB conserve automatique-
ment les données dans ses conteneurs synchronisées avec les copies dans le magasin de colonnes.
Azure Synapse Link vous permet, d’une part, d’exécuter des charges de travail qui extraient des données
directement à partir de Cosmos DB et, d’autre part, d’exécuter des charges de travail d’analyse à l’aide
d’Azure Synapse Analytics. Les données n’ont pas à passer par un processus ETL (extraction, transforma-
tion et chargement) car les données ne sont pas copiées dans Synapse Analytics. Elles restent dans
Cosmos DB Analytical Store.
Les analystes commerciaux, les ingénieurs de données et les scientifiques des données peuvent désor-
mais utiliser les pools Synapse Spark ou Synapse SQL pour exécuter des pipelines de veille stratégique,
d’analyse et de Machine Learning automatique en temps quasi réel. Vous pouvez y parvenir sans affecter
le niveau de performance de vos charges de travail transactionnelles sur Azure Cosmos DB.
Synapse Link a un large éventail d’utilisations, notamment :
●● Analyse et prévisions de la chaîne d’approvisionnement. Vous pouvez interroger directement les
données opérationnelles et les utiliser pour créer des modèles d’apprentissage automatique. Vous
pouvez réutiliser les résultats générés par ces modèles dans Cosmos DB pour un calcul de score en
temps quasi réel. Vous pouvez utiliser ces évaluations pour affiner successivement les modèles et
générer des prévisions plus précises.
●● Génération de rapports opérationnelle. Vous pouvez utiliser Synapse Analytics pour interroger des
données opérationnelles à l’aide de Transact-SQL exécuté dans un pool SQL. Vous pouvez publier les
résultats dans des tableaux de bord à l’aide de la prise en charge fournie à des outils familiers tels que
Microsoft Power BI.
●● Intégration et orchestration de données par lots. Les chaînes d’approvisionnement devenant plus
complexes, les platesformes de données de la chaîne d’approvisionnement doivent s’intégrer à une
variété de sources et de formats de données. Le moteur d’intégration de données Azure Synapse
permet aux ingénieurs de données de créer des pipelines de données riches, sans avoir besoin d’un
moteur d’orchestration distinct.
●● Personnalisation en temps réel. Vous pouvez créer des solutions de commerce électronique attrayantes
qui permettent aux détaillants de générer des recommandations personnalisées et des offres spécial-
es pour les clients en temps réel.
●● Maintenance IoT. Les innovations industrielles de l’IoT ont considérablement réduit les temps d’arrêt
des machines et augmenté l’efficacité globale dans tous les domaines de l’industrie. L’une de ces
innovations est l’analyse de maintenance prédictive des machines à la périphérie du cloud. Les
données opérationnelles historiques des capteurs d’appareils IoT pourraient être utilisées pour former
des modèles prédictifs tels que des détecteurs d’anomalies. Ces détecteurs d’anomalies sont ensuite
déployés vers la périphérie pour une surveillance en temps réel. Le rebouclage permet un recyclage
continu des modèles prédictifs.
d’exécution, mais aussi gérer des ressources sans serveur ou des ressources approvisionnées. Toutes ces
fonctionnalités sont accessibles via Synapse Studio, natif pour le Web, qui permet la gestion, la surveil-
lance, le codage et la sécurité des modèles.
Question 2
Lequel des composants d’Azure Synapse Analytics permet de former des modèles d’IA à l’aide d’AzureML ?
Synapse Studio
Pipelines Synapse
Spark Synapse
RÉSERVÉ À UNE UTILISATION FORMATEUR. UTILISATION ÉTUDIANT INTERDITE
271
Question 3
Dans Azure Databricks, comment modifier la langue utilisée dans une cellule ?
La première ligne de la cellule est %language. Par exemple, %scala.
Changez la langue du bloc-notes avant d’écrire les commandes
Enveloppez la commande dans la cellule avec ##language##.
Résumé
Dans ce module, vous avez acquis des notions sur :
●● Les options de traitement des données pour effectuer des analyses dans Azure
●● Azure Synapse Analytics
En savoir plus
●● Qu’est-ce qu’Azure Databricks ?21
●● Qu’est-ce qu’Azure Synapse Analytics ?22
●● Qu’est-ce qu’Azure HDInsight ?23
●● Azure Machine Learning (AzureML)24
●● Pipelines et activités dans Azure Data Factory25
●● Didacticiel : Extraire, transformer et charger des données à l’aide d’Azure Databricks26
●● Lien Azure Synapse pour Azure Cosmos DB : Cas d’utilisation de l’analyse en quasi-temps réel27
21 https://docs.microsoft.com/azure/azure-databricks/what-is-azure-databricks
22 https://docs.microsoft.com/azure/synapse-analytics/sql-data-warehouse/sql-data-warehouse-overview-what-is
23 https://docs.microsoft.com/azure/hdinsight/hdinsight-overview
24 https://azure.microsoft.com/services/machine-learning/
25 https://docs.microsoft.com/azure/data-factory/concepts-pipelines-activities
26 https://docs.microsoft.com/azure/azure-databricks/databricks-extract-load-sql-data-warehouse
27 https://docs.microsoft.com/azure/cosmos-db/synapse-link-use-cases
RÉSERVÉ À UNE UTILISATION FORMATEUR. UTILISATION ÉTUDIANT INTERDITE
272
Power BI peut être simple et rapide, capable de créer des informations rapides depuis un classeur Excel
ou une base de données locale. Mais Power BI est également robuste et très professionnel, prêt non
seulement pour une modélisation approfondie et des analyses en temps réel, mais aussi pour un dével-
oppement personnalisé. Par conséquent, il peut être votre outil de rapport et de visualisation personnel,
mais peut également servir de moteur d’analyse et de décision pour des projets de groupe, des divisions
ou des sociétés entières.
Si vous êtes débutant en matière de Power BI, cette leçon vous aidera à faire vos premiers pas. Si vous
êtes familier avec Power BI, cette leçon permettra de relier les concepts entre eux et de combler les
lacunes.
Ces trois éléments (Bureau, le service et les applications mobiles) sont conçus pour permettre aux
utilisateurs de créer, partager et utiliser des informations commerciales de la manière la plus efficace
pour eux.
Utiliser Power BI
Maintenant que nous avons présenté les bases de Microsoft Power BI, passons aux expériences pratiques
et à une visite guidée.
Les activités et analyses que vous apprendrez avec Power BI suivent généralement un flux commun. Le
flux commun d’activité ressemble à ceci :
1. Importez des données dans Power BI Desktop et créez un rapport.
2. Publiez sur le service Power BI, où vous pouvez créer de nouvelles visualisations ou créer des tableaux
de bord.
3. Partagez des tableaux de bord avec d’autres personnes, en particulier celles en déplacement.
4. Affichez et interagissez avec des tableaux de bord et des rapports partagés dans les applications
Power BI Mobile.
28 https://go.microsoft.com/fwlink/?linkid=2101313
29 https://docs.microsoft.com/power-bi/consumer/end-user-sign-in
RÉSERVÉ À UNE UTILISATION FORMATEUR. UTILISATION ÉTUDIANT INTERDITE
275
Comme mentionné précédemment, vous pourriez passer tout votre temps dans Service Power BI,
afficher des visuels et des rapports créés par d’autres. Et ce n’est pas grave. Un autre membre de votre
équipe pourrait passer son temps sur Power BI Power, ce qui est bien aussi. Pour vous aider à compren-
dre toute la portée de Power BI et de ses fonctionnalités, nous allons vous les présenter. Ensuite, vous
pourrez décider comment l’utiliser à votre meilleur avantage.
Alors, allons-y ! Votre première tâche consiste à apprendre les principes fondamentaux de Power BI, qui
vous serviront de base solide pour transformer les données en rapports et visuels attrayants.
●● Tableaux de bord
●● Des mosaïques
Visualisations
Une visualisation (parfois également appelée visuel) est une représentation visuelle de données, comme
un graphique, une carte codée par couleur ou d’autres éléments intéressants que vous pouvez créer pour
représenter visuellement vos données. Power BI propose toutes sortes de types de visualisation, et de
nouveaux arrivent en permanence. L’image suivante montre une collection de différentes visualisations
créées dans le service Power BI.
Les visualisations peuvent être simples, comme un nombre unique qui représente quelque chose d’im-
portant, ou elles peuvent être visuellement complexes, comme une carte de couleur dégradée qui montre
le sentiment des électeurs à propos d’un problème ou d’une préoccupation sociale spécifique. Le but
d’un visuel est de présenter les données d’une manière qui fournit un contexte et des informations, qui
seraient probablement difficiles à discerner à partir d’une table brute de nombres ou de texte.
Jeux de données
Un jeu de données est une collection de données que Power BI utilise pour créer ses visualisations.
Vous pouvez disposer d’un jeu de données simple, basé sur une seule table d’un tableur Microsoft Excel,
similaire à ce qui est illustré à l’image suivante.
RÉSERVÉ À UNE UTILISATION FORMATEUR. UTILISATION ÉTUDIANT INTERDITE
277
Jeux de données peut également être une combinaison de nombreuses sources différentes, que vous
pouvez filtrer et combiner pour fournir une collection unique de données (appelée « jeu de données ») à
utiliser dans Power BI.
Par exemple, vous pouvez créer un jeu de données à partir de trois champs de base de données, d’un
tableau de site web, d’un tableau Excel et des résultats en ligne d’une campagne de marketing par e-mail.
Cette combinaison unique est toujours considérée comme un seul jeu de données, même s’il a été
rassemblé à partir de nombreuses sources différentes.
Le filtrage des données avant leur importation dans Power BI vous permet de vous concentrer sur les
données qui comptent pour vous. Par exemple, vous pouvez filtrer votre base de données de contacts
afin que seuls les clients qui ont reçu des e-mails de la campagne de marketing soient inclus dans le jeu
de données. Vous pouvez ensuite créer des visuels en fonction de ce sous-ensemble (la collection filtrée)
de clients inclus dans la campagne. Le filtrage vous aide à concentrer vos données et vos efforts.
La multitude de connecteurs de données inclus est une partie importante et un élément de facilitation
de Power BI. Que les données souhaitées se trouvent dans Excel ou dans une base de données Microsoft
SQL Server, dans Azure ou Oracle, ou encore dans un service comme Facebook, Salesforce ou MailChimp,
Power BI dispose de connecteurs de données intégrés qui vous permettent de vous connecter facilement
à ces données, de les filtrer si nécessaire, et de les insérer dans votre jeu de données.
Une fois que vous disposez d’un jeu de données, vous pouvez commencer à créer des visualisations qui
en présentent les différentes parties, de différentes manières, et obtenir des informations basées sur de
ce que vous voyez. C’est là que les rapports entrent en jeu.
Rapports
Dans Power BI, un rapport est un ensemble de visualisations qui s’affichent ensemble sur une ou plu-
sieurs pages. Tout comme tout autre rapport que vous pourriez créer pour une présentation commerciale
ou rédiger pour un travail scolaire, un rapport dans Power BI est une collection d’éléments liés les uns aux
autres. L’image suivante présente un rapport dans Power BI Desktop : dans ce cas, il s’agit de la deux-
ième page d’un rapport de cinq pages. Vous pouvez également créer des rapports dans le service Power
BI.
RÉSERVÉ À UNE UTILISATION FORMATEUR. UTILISATION ÉTUDIANT INTERDITE
278
Les rapports vous permettent de créer de nombreuses visualisations, sur plusieurs pages si nécessaire,
mais aussi d’organiser ces visualisations de la manière qui raconte le mieux votre histoire.
Vous pourriez avoir un rapport sur les ventes trimestrielles, la croissance des produits dans un segment
particulier ou les schémas de migration des ours polaires. Quel que soit votre sujet, les rapports vous
permettent de rassembler et d’organiser vos visualisations sur une ou plusieurs pages.
Tableaux de bord
Lorsque vous êtes prêt à partager une seule page à partir d’un rapport ou d’une collection de visualis-
ations, vous créez un tableau de bord. Tout comme le tableau de bord d’une voiture, un tableau de
bord Power BI est une collection de visuels d’une seule page que vous pouvez partager avec d’autres.
Souvent, il s’agit d’un groupe sélectionné de visuels qui donnent un aperçu rapide des données ou de
l’histoire que vous essayez de présenter.
Un tableau de bord doit tenir sur une seule page, souvent appelée canevas (le canevas est la toile de
fond vierge dans Power BI Desktop ou le service, dans lequel vous placez les visualisations). Pensez-y
comme au canevas utilisé par un artiste ou un peintre : un espace de travail où vous créez, combinez et
retravaillez des visuels intéressants et convaincants.
Vous pouvez partager des tableaux de bord avec d’autres utilisateurs ou groupes, qui peuvent ensuite
interagir avec vos tableaux de bord lorsqu’ils sont dans le service Power BI ou sur leur appareil mobile.
Des mosaïques
Dans Power BI, une mosaïque est une visualisation unique sur un rapport ou un tableau de bord. C’est la
boîte rectangulaire qui contient un visuel individuel. Dans l’image suivante, vous voyez une mosaïque,
entourée à son tour d’autres mosaïques.
RÉSERVÉ À UNE UTILISATION FORMATEUR. UTILISATION ÉTUDIANT INTERDITE
279
Lorsque vous créez un rapport ou un tableau de bord dans Power BI, vous pouvez déplacer ou organiser
les mosaïques comme vous le souhaitez. Vous pouvez les agrandir, changer leur hauteur ou leur largeur
et les positionner à côté d’autres mosaïques.
Lorsque vous affichez ou consommez un tableau de bord ou un rapport (ce qui signifie que vous n’êtes
pas le créateur ou le propriétaire, mais que le rapport ou le tableau de bord a été partagé avec vous),
vous pouvez interagir avec lui, mais vous ne pouvez pas modifier la taille des mosaïques, ni leur disposi-
tion.
Pour les deux groupes, le processus est le même : créer des jeux de données, développer des visuels
convaincants et les partager avec d’autres. Et le résultat est également le même pour les deux groupes :
exploiter votre monde de données en constante expansion et le transformer en informations exploitables.
Que vos informations sur les données nécessitent des jeux de données simples ou complexes, Power BI
vous aide à démarrer rapidement et peut évoluer avec vos besoins pour être aussi complexe que votre
monde de données l’exige. Et comme Power BI est un produit Microsoft, vous pouvez compter sur sa
robustesse, sa capacité d’extension, sa convivialité pour Microsoft Office et son utilisation pour l’entre-
prise.
Examinons le fonctionnement de cette procédure. Nous allons commencer par examiner le service Power
BI.
Le canevas (la zone sitée au centre du service Power BI) vous montre les sources de données disponibles
dans le service Power BI. En plus des sources de données courantes comme les fichiers Microsoft Excel,
les bases de données ou les données Microsoft Azure, Power BI peut tout aussi facilement se connecter à
tout un assortiment de services logiciels (également appelés fournisseurs de SaaS ou services cloud) :
Salesforce, Facebook, Google Analytics, etc.
RÉSERVÉ À UNE UTILISATION FORMATEUR. UTILISATION ÉTUDIANT INTERDITE
282
Pour ces services logiciels, le service Power BI fournit une collection d’éléments visuels prêts à l’emploi,
qui sont pré-organisés sur des tableaux de bord et des rapports pour votre organisation. Cet ensemble
d’éléments visuels s’appelle une application. Les applications vous permettent d’être rapidement
opérationnel, grâce aux données et aux tableaux de bord que votre organisation a créés pour vous. Par
exemple, lorsque vous utilisez l’application GitHub, Power BI se connecte à votre compte GitHub (après
avoir fourni vos informations d’identification), puis remplit une collection prédéfinie d’éléments visuels et
de tableaux de bord dans Power BI.
Il existe des applications pour toutes sortes de services en ligne. L’image suivante présente une page
d’applications disponibles pour différents services en ligne, par ordre alphabétique. Cette page s’affiche
lorsque vous sélectionnez le bouton Obtenir situé dans la zone Services (présenté dans l’image précé-
dente). Comme vous pouvez le voir sur l’image suivante, vous avez le choix entre de nombreuses applica-
tions.
RÉSERVÉ À UNE UTILISATION FORMATEUR. UTILISATION ÉTUDIANT INTERDITE
283
Pour nos besoins, nous choisirons GitHub. GitHub est une application de contrôle de source en ligne.
Lorsque vous sélectionnez l’option Obtenez-le maintenant dans la zone de l’application GitHub, la boîte
de dialogue Se connecter à GitHub apparaît. Veuillez noter que GitHub ne prend pas en charge Internet
Explorer. Il convient donc d’utiliser un autre navigateur.
RÉSERVÉ À UNE UTILISATION FORMATEUR. UTILISATION ÉTUDIANT INTERDITE
284
L’installation de l’application commencera une fois que vous aurez entré les informations et les rensei-
gnements d’identification pour l’application GitHub.
Une fois les données chargées, le tableau de bord prédéfini de l’application GitHub apparaît.
RÉSERVÉ À UNE UTILISATION FORMATEUR. UTILISATION ÉTUDIANT INTERDITE
285
En plus du tableau de bord de l’application, le rapport qui a été généré (dans le cadre de l’application
GitHub) et utilisé pour créer le tableau de bord est disponible, tout comme le jeu de données (l’ensem-
ble de données extraites de GitHub) qui a été créé lors de l’importation des données et utilisé pour créer
le rapport GitHub.
Sur le tableau de bord, vous pouvez sélectionner n’importe lequel des éléments visuels et interagir avec
lui. Alors, tous les autres éléments visuels de la page répondront. Par exemple, lorsque la barre Mai 2018
RÉSERVÉ À UNE UTILISATION FORMATEUR. UTILISATION ÉTUDIANT INTERDITE
286
est sélectionnée dans l’élément visuel Extraire les demandes (par mois), les autres éléments visuels de
la page s’ajustent pour refléter cette sélection.
L’onglet Jeux de données est sélectionné sur la page Paramètres qui apparaît. Dans le volet droit,
sélectionnez la flèche située en regard de l’option Actualisation programmée pour développer cette
section. La boîte de dialogue Paramètres apparaît sur le canevas, vous permettant de définir les para-
mètres de mise à jour qui répondent à vos besoins.
RÉSERVÉ À UNE UTILISATION FORMATEUR. UTILISATION ÉTUDIANT INTERDITE
288
C’est ce qui conclut notre aperçu rapide du service Power BI. Le service permet aussi de réaliser beaucoup
d’autres choses. Il existe de nombreux types de données auxquelles vous pouvez vous connecter, mais
aussi toutes sortes d’applications qui s’enrichissent constamment.
Question 2
Parmi les éléments suivants, lesquels sont des éléments constitutifs de Power BI ?
Vignettes, tableaux de bord, bases de données, appareils mobiles.
Visualisations, jeux de données, rapports, tableaux de bord, vignettes.
Fichiers Visual Studio, C# et JSON.
Question 3
Dans Power BI, comment appelle-t-on une collection de visuels prêts à l’emploi, pré-organisés dans des
tableaux de bord et des rapports ?
Le canevas.
Actualisation programmée.
Une application.
Résumé
Faisons une révision rapide de ce qui a été abordé dans cette leçon.
Microsoft Power BI est un ensemble de services logiciels, applications et connecteurs qui fonctionnent
conjointement pour transformer vos données en informations interactives. Vous pouvez utiliser des
données provenant de sources de base uniques, comme un classeur Microsoft Excel, ou extraire des
données de plusieurs bases de données et sources cloud pour créer des ensembles de données et des
rapports complexes. Power BI peut être aussi simple et convivial que vous le souhaitez ou avoir toutes les
qualités professionnelles complexes requises par une entreprise internationale.
RÉSERVÉ À UNE UTILISATION FORMATEUR. UTILISATION ÉTUDIANT INTERDITE
289
Power BI se compose de trois éléments principaux (Power BI Desktop, le service Power BI, et Power BI
Mobile) qui fonctionnent conjointement pour vous permettre de créer, d’interagir avec, de partager et de
consommer vos données comme vous le souhaitez.
Answers
Question 1
Quand doit-on utiliser Azure Synapse Analytics ?
■■ À effectuer des requêtes et des agrégations très complexes.
À créer des tableaux de bord à partir de données tabulaires
À permettre à un grand nombre d'utilisateurs d'interroger des données analytiques.
Explanation
Réponse correcte. Azure Synapse Analytics convient pour effectuer des tâches requérant une grande
capacité de calcul comme celles-ci.
Question 2
À quoi sert l’ingestion de données ?
À effectuer des transformations de données complexes sur les données reçues de sources externes.
■■ À capturer les données entrant dans un système d’entrepôt de données aussi rapidement que
possible.
À visualiser les résultats de l’analyse des données.
Explanation
Réponse correcte. L'ingestion de données peut recevoir des données de plusieurs sources, y compris des flux,
et doit s'exécuter suffisamment rapidement pour ne pas perdre de données entrantes.
Question 3
Quelle est la principale différence entre un lac de données et un entrepôt de données?
Un lac de données contient des informations structurées, alors qu’un entrepôt de données contient
données commerciales brutes.
■■ Un lac de données contient des données brutes, alors qu’un entrepôt de données contient des
informations structurées.
Les données stockées dans un lac de données sont dynamiques, alors que les informations stockées
dans un entrepôt de données sont statiques.
Explanation
Réponse correcte. Une solution d’entreposage de données convertit les données brutes d’un lac de données
en informations commerciales significatives dans un entrepôt de données.
Question 1
Quel est le composant Azure Data Factory qui peut être déclenché pour exécuter des tâches d’ingestion
de données ?
Fichiers CSV
■■ Pipeline
Service lié
Explanation
Réponse correcte. Les pipelines peuvent être déclenchés pour exécuter des activités d’ingestion de données.
RÉSERVÉ À UNE UTILISATION FORMATEUR. UTILISATION ÉTUDIANT INTERDITE
291
Question 2
Quand pouvez-vous utiliser PolyBase ?
■■ À interroger des données à partir de sources de données externes à partir d’Azure Synapse Analytics
À ingérer des données de streaming à l’aide d’Azure Databricks
À orchestrer les activités dans Azure Data Factory
Explanation
Réponse correcte. C’est le but de PolyBase.
Question 3
Lequel de ces services peut être utilisé pour ingérer des données dans Azure Synapse Analytics ?
■■ Azure Data Factory
Power BI
Azure Active Directory
Explanation
Réponse correcte. Azure Data Factory peut être utilisé pour ingérer des données dans Azure Synapse
Analytics à partir de pratiquement n’importe quelle source.
Question 1
Vous disposez d’une grande quantité de données conservées dans des fichiers dans Azure Data Lake
storage. Vous souhaitez récupérer les données de ces fichiers et les utiliser pour remplir les tables
contenues dans Azure Synapse Analytics. Quelle est l’option de traitement la plus appropriée?
Utilisez le lien Azure Synapse pour vous connecter à Azure Data Lake Storage, puis téléchargez les
données
■■ Pool Synapse SQL
Pool Spark Synapse
Explanation
Réponse correcte. Vous pouvez utiliser PolyBase depuis un pool SQL pour vous connecter aux fichiers dans
Azure Data Lake en tant que tables externes, puis ingérer les données.
Question 2
Lequel des composants d’Azure Synapse Analytics permet de former des modèles d’IA à l’aide d’AzureML
?
Synapse Studio
Pipelines Synapse
■■ Spark Synapse
Explanation
Réponse correcte. Vous devez utiliser un bloc-notes pour ingérer et mettre en forme des données, puis
utiliser SparkML et AzureML pour former des modèles avec lui.
RÉSERVÉ À UNE UTILISATION FORMATEUR. UTILISATION ÉTUDIANT INTERDITE
292
Question 3
Dans Azure Databricks, comment modifier la langue utilisée dans une cellule ?
■■ La première ligne de la cellule est %language. Par exemple, %scala.
Changez la langue du bloc-notes avant d’écrire les commandes
Enveloppez la commande dans la cellule avec ##language##.
Explanation
Réponse correcte. Chaque cellule peut commencer par une définition de langue.
Question 1
Quel est le flux d’activité courant dans Power BI ?
Créez un rapport dans Power BI mobile, partagez-le sur le bureau Power BI, puis affichez et interagis-
sez dans le service Power BI.
Créez un rapport dans le service Power BI, partagez-le avec Power BI mobile, et interagissez avec lui
dans Power BI Desktop.
■■ Importez des données dans Power BI Desktop et créez un rapport, partagez-le avec le service Power
BI, affichez et interagissez avec des rapports et des tableaux de bord dans le service et Power BI
Mobile.
Importez des données dans Power BI Mobile, créez un rapport, puis partagez-le avec Power BI
Desktop.
Explanation
Réponse correcte. Le service Power BI permet d’afficher et d’interagir avec les rapports et les tableaux de
bord, mais ne vous permet pas de mettre en forme les données.
Question 2
Parmi les éléments suivants, lesquels sont des éléments constitutifs de Power BI ?
Vignettes, tableaux de bord, bases de données, appareils mobiles.
■■ Visualisations, jeux de données, rapports, tableaux de bord, vignettes.
Fichiers Visual Studio, C# et JSON.
Explanation
Réponse correcte. Les éléments constitutifs de Power BI sont les visualisations, les jeux de données, les
rapports, les tableaux de bord et les vignettes.
Question 3
Dans Power BI, comment appelle-t-on une collection de visuels prêts à l’emploi, pré-organisés dans des
tableaux de bord et des rapports ?
Le canevas.
Actualisation programmée.
■■ Une application.
Explanation
Réponse correcte. Une application est une collection de visuels prêts à l’emploi, pré-organisés dans des
tableaux de bord et des rapports. Vous pouvez obtenir des applications qui se connectent à de nombreux
services en ligne à partir de Microsoft AppSource.