Durant dos mòduls sencers, db-reservas ha estat una caixa amb una etiqueta. Apareixia al diagrama de xarxa dins de snet-datos, l'aplicació d'App Service s'hi connectava mitjançant una cadena de connexió i el punt de connexió privat pe-sql-reservas li reservava el lloc. Però encara ningú no ha decidit què és aquesta caixa per dins, i aquesta decisió —presa en una reunió de mitja hora o heretada d'«allò que ja fèiem servir»— és la que surt més cara de corregir després.
Canviar la mida d'una màquina virtual costa cinc minuts. Canviar un pla d'App Service, dos clics. Canviar el motor de base de dades d'una plataforma en producció és un projecte de mesos: cal reescriure consultes, migrar dades històriques, tornar a formar l'equip i aturar la venda de bitllets durant la finestra de tall. Per això aquesta lliçó no desplega res: construeix el criteri. Al final tindràs el mapa de dades complet de Contoso Airlines, amb una decisió raonada per sistema, i cadascuna d'aquestes decisions serà una lliçó d'aquest mòdul.
Avís de cost: aquesta lliçó és purament de disseny i no crea cap recurs, així que no genera factura. A partir de la següent sí: les bases de dades són entre els recursos més cars d'Azure i, a diferència d'una màquina virtual, moltes no es poden aturar. Llegeix sempre l'apartat de cost abans d'executar un
az ... create.
Contingut
- La decisió que realment falla als projectes
- Relacional davant de NoSQL: quina pregunta respon bé cada model
- Gestionat (PaaS) davant d'instal·lat en una VM (IaaS)
- El catàleg de dades d'Azure en una taula de decisió
- Els criteris que decideixen
- Consistència davant de latència: el teorema CAP en termes pràctics
- Com es factura una base de dades al núvol
- El mapa de dades de Contoso Airlines
- Errors Comuns i Consells
- Exercicis
- Conclusió
- La decisió que realment falla als projectes
Als projectes de migració al núvol que acaben malament, el punt de fallada gairebé mai no és el còmput. És la dada. I gairebé sempre per un d'aquests tres motius:
- Es tria per moda, no per pregunta. «Farem servir NoSQL perquè escala» és una frase buida si ningú no ha escrit abans quines consultes farà l'aplicació. NoSQL escala per als accessos que el seu disseny va preveure; per a la resta és pitjor que una base relacional.
- Es tria per inèrcia. «Sempre hem fet servir SQL Server, doncs hi posem SQL Server». De vegades és la resposta correcta —la compatibilitat és un criteri legítim i potent—, però ha de ser una conclusió, no un punt de partida.
- Es tria una sola base de dades per a tot. És l'error més car. Una plataforma real té diversos sistemes amb necessitats oposades, i forçar-los tots al mateix motor significa que cap no funciona bé. Fer servir el magatzem adequat per a cada càrrega s'anomena persistència poliglota, i és exactament el que farà Contoso.
La pregunta correcta no és «quina base de dades és millor?», sinó «quines preguntes he de respondre, amb quina freqüència, sobre quantes dades i en quant de temps?».
- Relacional davant de NoSQL: quina pregunta respon bé cada model
Un model relacional organitza les dades en taules de files i columnes amb un esquema fix, relacions declarades mitjançant claus foranes i transaccions ACID. El seu superpoder és la consulta arbitrària: pots creuar taules que ningú no havia previst que es creuarien i el motor trobarà la manera de resoldre-ho.
NoSQL no és un model, sinó una família de models que renuncien a part d'això a canvi d'escala, flexibilitat d'esquema o latència:
| Model | Com desa la dada | Pregunta que respon molt bé | Pregunta que respon malament | Exemple a Contoso |
|---|---|---|---|---|
| Relacional | Taules normalitzades amb relacions | «Quants passatgers amb tarifa flexible van volar de BCN a CDG el març i quant van pagar?» | Qualsevol que exigeixi milions d'escriptures per segon amb latència d'un dígit | Reserves, vols, passatgers |
| Document | JSON complet amb identificador | «Dona'm la fitxa completa d'aquesta tarifa, amb totes les seves condicions imbricades» | «Creua tarifes amb reserves i amb incidències» | Catàleg de tarifes |
| Clau-valor | Clau → valor opac, en memòria | «Què hi ha desat sota aquesta clau, ja?» (submil·lisegon) | Qualsevol consulta sobre el contingut del valor | Memòria cau de resultats de cerca |
| Graf | Nodes i arestes amb propietats | «Quines combinacions de vols amb dues escales connecten Palma amb Osaka?» | Agregacions massives sobre tot el conjunt | Xarxa de connexions (futur) |
| Columnar | Dades agrupades per columna | «Suma els ingressos de 400 milions de files per ruta i mes» | Llegir o modificar una fila concreta | Analítica de rendibilitat |
Dos aclariments que eviten malentesos habituals:
- NoSQL no vol dir «sense esquema», vol dir «sense esquema imposat pel motor». L'esquema continua existint: viu al codi de l'aplicació, que és un lloc pitjor per vigilar-lo.
- NoSQL no vol dir «sense transaccions». Cosmos DB té transaccions ACID, però només dins d'una mateixa partició lògica. La diferència és en l'abast, no en l'existència.
- Gestionat (PaaS) davant d'instal·lat en una VM (IaaS)
Pots instal·lar PostgreSQL en una màquina virtual de les que vas desplegar a la lliçó 02-01. Funcionarà. La pregunta és quina feina estàs acceptant a canvi de quin control, aplicant el model de responsabilitat compartida del mòdul 1:
| Tasca | En una VM (IaaS) | Servei gestionat (PaaS) |
|---|---|---|
| Pedaços del sistema operatiu | Teus, cada mes | D'Azure, en finestra de manteniment |
| Pedaços i versions del motor | Teus | D'Azure, amb versions principals que tu tries quan saltar |
| Còpies de seguretat | Tu les configures, verifiques i restaures | Automàtiques, amb retenció configurable |
| Alta disponibilitat | Tu muntes el clúster (Always On, Patroni…) | Casella de verificació i SLA |
| Escalar còmput | Redimensionar i reiniciar la VM | Canvi en calent, de vegades sense tall |
| Xifratge en repòs | El configures tu | Activat per defecte |
| Accés al sistema operatiu | Total | Cap |
| Extensions o binaris arbitraris | Qualsevol | Només els de la llista de permesos |
| Agents de tercers al servidor | Sí | No |
| Cost per hora del recurs | Menor | Major (inclou la feina que no fas) |
La regla pràctica és simple: fes servir PaaS llevat que tinguis un motiu concret i escrit per no fer-ho. Els motius legítims existeixen —una versió antiga no admesa, un agent de tercers que exigeix instal·lar-se al servidor, funcionalitats de SQL Server que només hi ha a la instància completa, o un requisit de llicenciament—, però són minoria. El cost per hora d'una VM sembla menor fins que hi sumes les hores de la Marta Ríos apedaçant servidors un diumenge.
- El catàleg de dades d'Azure en una taula de decisió
Aquest és el mapa complet del que Azure ofereix per a dades. Llegeix-lo com una taula de decisió, no com un catàleg de venda:
| Servei | Model | Tria'l quan… | Descarta'l quan… |
|---|---|---|---|
| Azure SQL Database | Relacional PaaS | Aplicació nova o modernitzada sobre SQL Server; vols el màxim de gestió automàtica | Necessites SQL Agent, CLR, transaccions distribuïdes o diverses bases amb dependències creuades |
| SQL Managed Instance | Relacional PaaS, gairebé 100 % compatible | Migres un SQL Server local complet sense tocar el codi | El pressupost és ajustat: és sensiblement més car |
| SQL Server en VM | Relacional IaaS | Necessites control del sistema operatiu, una versió concreta o llicències pròpies | Pots evitar-ho: és l'opció amb més feina operativa |
| Azure Cosmos DB | NoSQL multimodel distribuït | Escala global, latència d'un dígit en mil·lisegons, esquema flexible, volums enormes | Les teves consultes són analítiques o creuen entitats sense patró previsible |
| Azure Database for MySQL | Relacional PaaS | Migres aplicacions de codi obert (WordPress, Drupal, LAMP) | El teu equip ja viu a l'ecosistema SQL Server |
| Azure Database for PostgreSQL | Relacional PaaS | Necessites SQL avançat, tipus de dades rics i extensions (PostGIS, pgvector) | Busques la màxima compatibilitat amb SQL Server |
| Azure Cache for Redis | Clau-valor en memòria | Posar a la memòria cau resultats cars, sessions, límits de taxa | Pretens fer-lo servir com a magatzem principal: és memòria volàtil |
| Table Storage | Clau-valor/taula, molt barat | Registres massius i simples amb accés per clau | Necessites consultes o índexs secundaris |
| Data Lake Storage Gen2 + Synapse | Analític | Analitzar històric massiu sense castigar la base operativa | La consulta és transaccional i ha de respondre en mil·lisegons |
Redis i Table Storage apareixen aquí perquè completen el mapa, però no tenen lliçó pròpia en aquest mòdul: Table Storage ja es va veure a 02-04 i Redis es farà servir com a memòria cau al mòdul 6.
- Els criteris que decideixen
Quan cal justificar una tria davant d'un comitè —i a Contoso cal fer-ho, perquè la Nuria Peña apareixerà al mòdul 8 preguntant per la factura— convé puntuar sis criteris:
- Model de dades. Les dades tenen forma de taula amb relacions, de document autocontingut, de clau-valor o de graf? Escriu tres consultes reals que l'aplicació farà i comprova si el model les respon de manera natural.
- Consistència davant de latència. Ho desenvolupem a l'apartat següent.
- Volum i creixement. No el d'avui: el d'aquí a tres anys. Contoso guarda uns 40 GB de reserves actives i creix 12 GB l'any; això hi cap de sobres en qualsevol opció. Els registres d'esdeveniments d'embarcament, en canvi, creixen 200 GB l'any i descarten tots sols la base relacional.
- Patró de lectura i escriptura. Lectures o escriptures dominants? Accés per clau o per consulta complexa? Pics previsibles? El catàleg de tarifes es llegeix milers de vegades per minut i s'escriu dues vegades al dia: un cas ideal per a document amb memòria cau.
- Compatibilitat amb el que ja existeix. El portal de continguts de Contoso és WordPress i parla MySQL. Reescriure'l perquè parli una altra cosa no aporta cap valor de negoci.
- Cost i habilitats de l'equip. Un motor que ningú no sap operar és una incidència esperant el seu torn. El Diego Salas coneix SQL Server i PostgreSQL; ningú de l'equip no ha tocat mai Cassandra, cosa que descarta aquesta API de Cosmos DB sense més discussió.
- Consistència davant de latència: el teorema CAP en termes pràctics
El teorema CAP diu que un sistema distribuït no pot garantir alhora consistència (C), disponibilitat (A) i tolerància a particions de xarxa (P). Com que la xarxa sempre es pot partir, la tria real és: quan dos centres de dades deixen de veure's, prefereixes donar una dada possiblement desactualitzada o negar el servei fins a estar segur?
Traduït al negoci de Contoso, amb dos exemples que porten a respostes oposades:
- Places lliures d'un vol. Si dos servidors discrepen, es venen dos bitllets per al mateix seient i algú es queda a terra, amb compensació regulada per la normativa europea. Aquí es tria consistència: millor un error que un seient venut dues vegades.
- Nombre de punts de fidelització mostrats al perfil. Si un passatger veu 12.400 punts i el saldo real ja és 12.550 perquè el vol d'ahir s'acaba de liquidar, no passa res: en uns segons es corregeix. Aquí es trien latència i disponibilitat.
La conseqüència pràctica és que la resposta no és del sistema, sinó de la dada: la mateixa aplicació pot tenir dades que exigeixen consistència estricta i dades que toleren retard, i per això acaba fent servir dos magatzems diferents. A la lliçó 03-03 veuràs que Cosmos DB no obliga a triar d'una vegada per sempre: ofereix cinc nivells de consistència, fins i tot ajustables per petició.
- Com es factura una base de dades al núvol
Totes les bases de dades gestionades d'Azure facturen per les mateixes quatre dimensions, encara que cadascuna les anomeni diferent:
| Dimensió | Què es paga | Què la dispara |
|---|---|---|
| Còmput | vCore o unitats per hora | El nivell de servei; és la partida dominant |
| Emmagatzematge | GB aprovisionats o consumits al mes | El volum de dades i els índexs |
| Còpies de seguretat | GB de retenció més enllà del que s'inclou | Retenció llarga i bases grans |
| Sortida de dades | GB que surten de la regió | Consultes que retornen massa columnes o creuen regions |
La distinció que més diners estalvia és aprovisionat davant de sense servidor:
- Aprovisionat: reserves una capacitat fixa i la pagues les 24 hores, es faci servir o no. És el correcte per a càrrega sostinguda i previsible, com
db-reservasen producció. - Sense servidor: pagues pel consum real per segon i, si el motor ho admet, la base es pausa quan fa una estona que no té connexions i deixa de facturar còmput (l'emmagatzematge es continua pagant sempre). És el correcte per a desenvolupament, proves i càrregues intermitents.
El càlcul de tovalló que farà Contoso: l'entorn de desenvolupament es fa servir unes 45 hores a la setmana de les 168 que té. Pagar aprovisionat significa llençar el 73 % de la despesa. Amb sense servidor i pausa automàtica, aquest 73 % desapareix de la factura sense que ningú canviï la seva manera de treballar.
I un avís que es repetirà a tot el mòdul: una base de dades aprovisionada no es pot «apagar» com una VM. No existeix l'equivalent a l'estat desassignat de la lliçó 02-01. Si deixes creat un servidor de proves i te n'oblides, continua facturant cada hora fins que l'eliminis.
- El mapa de dades de Contoso Airlines
Aplicant els sis criteris als cinc sistemes de l'aerolínia, aquest és el resultat, i també el guió de la resta del mòdul:
| Sistema | Dades | Servei triat | Criteri decisiu | Lliçó |
|---|---|---|---|---|
| Reserves i vols | Vols, passatgers, reserves, pagaments | Azure SQL Database | Transaccions ACID i integritat referencial: una plaça no es pot vendre dues vegades | 03-02 |
| Catàleg de tarifes i perfils | Tarifes amb condicions imbricades, preferències del passatger | Azure Cosmos DB | Esquema variable per tarifa, lectures massives per clau i latència baixa | 03-03 |
| Portal de continguts i blog | WordPress heretat | Azure Database for MySQL | Compatibilitat: zero reescriptura | 03-04 |
| Planificació de tripulacions | Torns, llicències, bases, rutes | Azure Database for PostgreSQL | Consultes complexes i extensions geoespacials | 03-05 |
| Analítica de rendibilitat | Històric de vendes i ocupació | Data Lake + Synapse | Volum enorme i agregacions que no han de tocar la base operativa | 03-06 |
És persistència poliglota: cinc magatzems perquè hi ha cinc preguntes diferents. El diagrama complet, amb la xarxa del mòdul 2 al fons:
flowchart TB
subgraph clientes[Clients i personal]
WEB[Contoso Reserves<br/>App Service]
API[API de Disponibilitat<br/>VMSS + App Service]
PANEL[Tauler d'operacions]
BLOG[Portal de continguts<br/>WordPress]
TRIP[Planificacio de tripulacions]
end
subgraph operacional[Dades operacionals - snet-datos]
SQL[(Azure SQL Database<br/>db-reservas)]
COSMOS[(Cosmos DB<br/>tarifes i perfils)]
MYSQL[(MySQL flexible<br/>portal heretat)]
PG[(PostgreSQL flexible<br/>tripulacions)]
end
subgraph analitico[Plataforma analitica]
ADF[Azure Data Factory]
LAKE[(Data Lake Gen2<br/>bronce / plata / oro)]
SYN[Synapse Analytics]
PBI[Power BI]
end
WEB --> SQL
WEB --> COSMOS
API --> SQL
API --> COSMOS
PANEL --> SQL
BLOG --> MYSQL
TRIP --> PG
SQL -.copia nocturna.-> ADF
COSMOS -.copia nocturna.-> ADF
PG -.copia nocturna.-> ADF
ADF --> LAKE --> SYN --> PBI
Fixa't en les fletxes discontínues: l'analítica mai no consulta directament la base operativa. És el principi que justifica l'apartat 1 de la lliçó 03-06.
Errors Comuns i Consells
- Triar el motor abans d'escriure les consultes. Si no pots enumerar les cinc consultes més freqüents de la teva aplicació, no tens prou informació per decidir. Escriu-les primer, encara que sigui en llenguatge natural.
- Fer servir NoSQL per evitar dissenyar el model. La flexibilitat d'esquema no elimina el disseny: el trasllada al codi, on no hi ha cap motor que validi res. Al cap de sis mesos conviuen quatre formes diferents del mateix document.
- Ficar dades analítiques a la base operativa. Un informe de rendibilitat de tres anys llançat contra
db-reservasa les 11 del matí degrada la venda de bitllets per a tots els clients. Separa'ls des del principi. - Oblidar que la base de dades no s'apaga. Aquest és l'error que més apareix a les primeres factures: es creen tres servidors per «provar» i encara hi són un mes després. Aplica sempre les etiquetes obligatòries (
entorno,proyecto,centro-coste,propietario) per poder localitzar el responsable de cada recurs. - Ignorar les habilitats de l'equip. El motor teòricament òptim que ningú no sap diagnosticar a les tres de la matinada és pitjor que el motor correcte que tothom coneix.
- Consell: documenta cada decisió amb una fitxa d'una pàgina (context, opcions, decisió, conseqüències). Quan d'aquí a dos anys algú pregunti per què les tarifes són a Cosmos DB, aquesta pàgina estalviarà una setmana de discussió.
- Consell: si dubtes entre relacional i document i el volum és moderat, comença per relacional. Afegir un magatzem de documents després és senzill; reconstruir la integritat referencial que mai no vas tenir, no.
Exercicis
Exercici 1: classificar cinc càrregues noves
Contoso Airlines planteja cinc necessitats addicionals. Per a cadascuna, tria el servei de dades i justifica-ho amb almenys dos dels sis criteris:
- Desar cada esdeveniment d'escaneig de targeta d'embarcament a les portes: uns 90 milions de registres l'any, escriptura constant, consulta posterior només per número de vol i data.
- Posar a la memòria cau el resultat de la cerca «BCN → LHR, 12 de juliol» durant 60 segons per no colpejar l'API a cada tecleig de l'usuari.
- Emmagatzemar els contractes en PDF signats amb les agències de viatges, uns 400 l'any, amb cerca per nom d'agència.
- Un sistema nou de recomanació de rutes alternatives davant de cancel·lacions, que necessita trobar camins entre aeroports amb un màxim de dues escales.
- L'estat en temps real dels 38 avions de la flota, actualitzat cada 5 segons i consultat pel tauler d'operacions.
Exercici 2: PaaS o IaaS
Justifica en cada cas si Contoso ha de fer servir un servei gestionat o una màquina virtual:
- Una aplicació de manteniment d'aeronaus que exigeix SQL Server 2016 amb un agent d'auditoria d'un fabricant extern que s'instal·la com a servei de Windows.
- Una base de dades nova per al programa de fidelització, sense dependències heretades.
- Una instància de SQL Server amb 14 bases de dades que avui es comuniquen entre si amb consultes entre bases i treballs de l'Agent SQL.
Exercici 3: estimar i retallar el cost
L'equip proposa aquest entorn de desenvolupament: una base relacional aprovisionada de 4 vCore encesa tot el mes (uns 480 € al mes en tarifa de llista aproximada), 100 GB d'emmagatzematge i retenció de còpies de 35 dies.
- Quin canvi d'un sol paràmetre elimina més despesa, sabent que l'equip treballa 45 hores setmanals?
- És raonable una retenció de 35 dies en desenvolupament? Què proposaries?
- Quina comprovació faries cada dilluns per evitar bases oblidades?
Solucions
Solució 1:
| Cas | Servei | Justificació |
|---|---|---|
| 1. Esdeveniments d'escaneig | Table Storage (o Cosmos DB si cal latència baixa) | Volum i creixement enormes amb accés per clau (vol + data); no hi ha consultes complexes, així que la potència relacional no aporta res i el seu cost per GB és molt més alt |
| 2. Memòria cau de cerques | Azure Cache for Redis | Patró d'accés clau-valor amb vida de 60 segons i latència submil·lisegon; la dada es pot regenerar, així que la durabilitat no és un criteri |
| 3. Contractes en PDF | Blob Storage amb metadades, més un índex a la base relacional | Model de dades: són fitxers, no files. Desar-los com a binaris en una base de dades infla les còpies de seguretat i encareix l'emmagatzematge |
| 4. Rutes alternatives | Cosmos DB amb API Gremlin (graf) | El model és una xarxa de nodes i arestes; «camins amb dues escales» en SQL exigeix diverses unions imbricades i no escala |
| 5. Estat de la flota | Cosmos DB o Redis | Escriptures constants per clau, lectures de baixa latència i tolerància a consistència relaxada: si el tauler mostra la posició de fa 3 segons, no passa res |
Solució 2:
- VM (IaaS), o com a mínim cal valorar-la seriosament: l'agent extern necessita instal·lar-se al sistema operatiu, i en PaaS no hi ha sistema operatiu al qual accedir. Abans de rendir-se convé comprovar si el fabricant té versió compatible amb PaaS.
- PaaS, Azure SQL Database. No hi ha dependències que lliguin i s'aprofiten còpies automàtiques, apedaçament i alta disponibilitat sense feina operativa.
- SQL Managed Instance. És el cas per al qual existeix: admet consultes entre bases i SQL Agent —que Azure SQL Database no ofereix— sense renunciar al model gestionat. Migrar a Azure SQL Database obligaria a reescriure aquestes 14 aplicacions.
Solució 3:
- Passar el nivell a sense servidor amb pausa automàtica. Amb 45 hores d'ús sobre 168, es factura còmput aproximadament el 27 % del temps: l'estalvi ronda el 70 % de la partida de còmput, sense canviar res de la feina diària de l'equip. És exactament la configuració que Contoso adoptarà per a
db-reservasarg-contoso-reservas-dev. - No, és excessiva. En desenvolupament, les dades són sintètiques i regenerables: 7 dies són suficients i redueixen la partida de còpies de seguretat. Els 35 dies tenen sentit en producció, on hi ha obligació legal i dades irrepetibles.
- Llistar els recursos sense les etiquetes obligatòries o amb
entorno=devcreats fa més d'una setmana, i reclamar-ho alpropietario. Amb Azure CLI es resol ambaz resource list --tag entorno=dev --query "[].{n:name, t:type}" -o table, aprofitant el filtratge JMESPath de la lliçó 01-06. Al mòdul 4 això s'automatitzarà amb Azure Policy, i al 8 amb Cost Management.
Conclusió
Aquesta lliçó no ha creat ni un recurs, i tot i així és la que més diners pot estalviar a Contoso Airlines. Ara saps per què la tria del magatzem de dades és la decisió menys reversible d'una arquitectura i per què falla gairebé sempre pels mateixos tres motius: moda, inèrcia o voler un únic motor per a tot. Distingeixes el model relacional de les quatre famílies NoSQL —document, clau-valor, graf i columnar— per la pregunta que respon bé cadascuna, no pel seu eslògan. Tens en taula el que guanyes i el que perds en passar d'una base instal·lada en una VM a un servei gestionat, i el criteri per saber quan l'IaaS continua estant justificat. Coneixes el catàleg complet de serveis de dades d'Azure com una taula de decisió, amb el cas típic de cadascun i, encara més útil, el cas en què cal descartar-lo.
També tens els sis criteris amb què defensar una tria davant d'un comitè —model, consistència davant de latència, volum, patró d'accés, compatibilitat i equip—, una lectura pràctica del teorema CAP aplicada a dues dades reals de l'aerolínia amb respostes oposades, i les quatre dimensions per les quals factura qualsevol base de dades gestionada, amb la distinció entre aprovisionat i sense servidor que elimina de cop el 73 % de la despesa de l'entorn de desenvolupament. I sobretot tens el mapa de dades de Contoso: cinc sistemes, cinc magatzems, una justificació escrita per a cadascun.
Aquest mapa és el guió de les properes cinc lliçons, i comencem pel cor del negoci. A la lliçó següent, Azure SQL Database, desplegaràs per fi el servidor lògic sql-contoso-reservas-pro i la base db-reservas: triaràs entre models de compra DTU i vCore, entendràs per què el «servidor» no és una màquina, crearàs l'esquema de vols, passatgers i reserves amb els seus índexs raonats, i connectaràs la base a snet-datos mitjançant el punt de connexió privat pe-sql-reservas amb l'accés públic deshabilitat, tancant el forat que vas deixar obert al mòdul 2. I veuràs com recuperar les dades quan algú executa una migració mal preparada un dimarts a la tarda.
Curs d'Azure
Mòdul 1: Introducció a Azure
- Què és Azure?
- Models de servei, regions i zones de disponibilitat
- Crear i configurar el teu compte d'Azure
- Recorregut pel portal d'Azure
- Azure Resource Manager: subscripcions, grups de recursos i etiquetes
- Azure CLI, PowerShell i Cloud Shell
Mòdul 2: Serveis principals d'Azure
- Màquines virtuals d'Azure
- Escalat i alta disponibilitat del còmput
- Azure App Service
- Azure Storage: blobs, fitxers, cues i taules
- Xarxes a Azure: xarxes virtuals, subxarxes i NSG
- Connectivitat híbrida i lliurament global
Mòdul 3: Bases de dades d'Azure
- Triar el servei de dades adequat
- Azure SQL Database
- Azure Cosmos DB
- Azure Database for MySQL
- Azure Database for PostgreSQL
- Analítica de dades: Data Lake, Data Factory i Synapse
Mòdul 4: Seguretat a Azure
- Microsoft Entra ID i gestió d'identitats
- RBAC i identitats administrades
- Azure Key Vault
- Protecció DDoS i tallafoc d'aplicacions web
- Microsoft Defender for Cloud
- Governança i compliment amb Azure Policy
Mòdul 5: Azure DevOps
- Introducció a Azure DevOps
- Azure Repos
- Azure Pipelines: integració contínua
- Desplegament continu amb entorns i aprovacions
- Azure Artifacts
- Infraestructura com a codi amb Bicep
Mòdul 6: Serveis avançats d'Azure
- Contenidors a Azure: Container Registry i Container Apps
- Azure Kubernetes Service (AKS)
- Azure Functions
- Azure Logic Apps
- Missatgeria i esdeveniments: Service Bus, Event Grid i Event Hubs
- Serveis d'IA d'Azure
Mòdul 7: Monitoratge i gestió
- Azure Monitor: mètriques, alertes i taulers
- Log Analytics i consultes KQL
- Application Insights
- Azure Automation i runbooks
- Còpies de seguretat i recuperació davant desastres
Mòdul 8: Gestió i optimització de costos
- Calculadora de preus i estimació de costos
- Azure Cost Management: anàlisi, pressupostos i alertes
- Reserves, plans d'estalvi i Azure Hybrid Benefit
- Azure Advisor
- Estratègies d'optimització i cultura FinOps
