Baze de Date în Cloud
09

Sesiunea 9 din 12

Baze de Date în Cloud

Azure SQL Database & SQL Fundamentals

Azure SQL SQL Managed Database Backup HA Firewall Descarcă PDF
Audio · S09

Databases

0:000:00

De la concepte fundamentale la primul query SQL real, rulând live în Azure. Astăzi facem unul dintre cele mai importante click-uri mentale din tot cursul.

Ce am construit până acum

Fiecare sesiune anterioară a adăugat o piesă esențială în puzzle-ul arhitecturii cloud.

💻

Compute — VM-uri

Am creat și configurat mașini virtuale Windows și Linux, ne-am conectat prin RDP și SSH.

🌐

Networking și Securitate

Am configurat rețele virtuale, subnet-uri, NSG și reguli de trafic.

🚀

Aplicații Web PaaS

Am deploiat aplicații web fără să administrăm infrastructura — primul gust de managed services.

📦

Azure Storage

Am înțeles unde trăiesc fișierele în cloud și cum sunt protejate și accesate.

🗄

Astăzi — Baze de Date

Adăugăm piesa care lipsea: date structurate, organizate, interogabile. Fundația oricărei aplicații moderne.

Compute + Networking + Aplicații + Stocare + Date = Scheletul oricărei arhitecturi cloud moderne.

Partea I

De ce avem nevoie de baze de date?

Aplicațiile moderne nu lucrează doar cu fișiere statice. Ele lucrează cu date structurate — informații care trebuie organizate, căutate rapid, actualizate consistent și protejate cu grijă.

Date despre utilizatori

Nume, email, preferințe, istoricul sesiunilor, setări de cont — fiecare utilizator are zeci sau sute de atribute distincte.

Comenzi și tranzacții

Fiecare achiziție, plată sau transfer trebuie înregistrată cu precizie și consistență, fără pierderi sau duplicări.

Produse și inventar

Stocuri, prețuri, categorii, descrieri — date care se actualizează constant și trebuie să fie corecte în timp real.

Rezervări și programări

Disponibilitate, conflicte, confirmări — scenarii în care consistența datelor este critică pentru experiența utilizatorului.

Unde ține Facebook informațiile despre miliarde de utilizatori? Într-o bază de date. Principiul este același: datele structurate au nevoie de un sistem dedicat.

Analogia Bibliotecii

O bibliotecă bine organizată este cel mai bun model mental pentru o bază de date relațională.

🏛

Biblioteca = Baza de date

Întreaga colecție organizată de informații, cu reguli clare de acces și catalogare. Un singur sistem coerent.

📚

Rafturile tematice = Tabelele

Fiecare raft ține un tip specific de informație: un raft cu cărți de fizică, altul cu romane. Fiecare tabel stochează un tip de entitate: utilizatori, comenzi, produse.

📖

Fiecare carte = Un rând

O carte individuală reprezintă o singură înregistrare — un utilizator specific, o comandă specifică, un produs specific.

🏷

Informațiile despre carte = Coloanele

Titlul, autorul, anul publicării, numărul de pagini — acestea sunt coloanele tabelului. Atribute ale fiecărei înregistrări.

SQL — Limbajul Bazelor de Date

SQL (Structured Query Language) este limbajul universal pentru a comunica cu bazele de date relaționale. Există de decenii și rămâne standardul în industrie — îl veți întâlni în aproape orice proiect enterprise.

Ce poate face SQL?

Căutare și filtrare

Găsește toți utilizatorii din România înregistrați în ultimele 30 de zile — dintr-un tabel cu milioane de rânduri, în fracțiuni de secundă.

Sortare și grupare

Ordonează produsele după preț, grupează comenzile pe luni, calculează totaluri și medii automat.

Actualizare și ștergere

Modifică sau elimină înregistrări specific, cu control complet și posibilitate de rollback.

SQL este un standard ISO. Odată ce înveți SQL, poți lucra cu Microsoft SQL Server, MySQL, PostgreSQL, Oracle — cu diferențe minime de sintaxă.

Comparație vizuală: Server SQL pe VM vs Bază de Date Azure SQL
SQL pe VM: control total, dar responsabilitate completă. Azure SQL Database: managed, cu backup automat, HA integrat și SLA 99,99%.

Partea a II-a

SQL pe VM vs. Azure SQL Database

Dacă vreau o bază de date în cloud, am două opțiuni fundamentale. Ambele rulează SQL Server și acceptă același SQL standard. Diferența fundamentală este cine face munca de mentenanță — tu sau Microsoft.

SQL Server pe o Mașină Virtuală

Când instalezi SQL Server pe o VM, tu preiei responsabilitatea completă a întregului stac tehnologic.

Instalare și configurare

Tu instalezi SQL Server, configurezi parametrii de performanță, partiționezi discurile, setezi collation.

🔒

Patch-uri de securitate

SQL Server și Windows Server primesc constant actualizări. Tu trebuie să le aplici, testezi și planifici ferestre de mentenanță.

💾

Backup-uri

Tu configurezi strategia de backup, testezi periodic restaurarea, monitorizezi că backup-urile rulează cu succes.

🔄

High Availability

Dacă serverul cade, tu ești cel care primește telefonul la 2 noaptea. SQL Always On Availability Groups necesită expertiză semnificativă.

📊

Monitorizare

Tu configurezi alertele, analizezi metricile de performanță, rezolvi problemele când query-urile devin lente.

Când are sens: versiuni specifice de SQL Server, extensii custom la nivel de OS, aplicații legacy, sau cerințe stricte de compliance.

Azure SQL Database — Varianta Managed

Microsoft preia responsabilitatea infrastructurii. Tu te concentrezi pe date și pe aplicație.

🔄

Patch automat

Actualizările sunt aplicate de Microsoft, în ferestre configurabile, fără downtime vizibil.

💾

Backup automat

Backup complet săptămânal, diferențial la 12 ore, transaction log la 5-12 minute. Restaurare punct-în-timp pentru 35 de zile.

HA integrat

Datele replicate pe noduri secundare. Failover automat în secunde, fără intervenție umană. SLA 99,99%.

📊

Monitorizare inclusă

Metrici de CPU, memorie, conexiuni, durata query-urilor. Azure sugerează chiar și indexuri de optimizare.

Managed înseamnă mai puțină responsabilitate tehnică — nu mai puțin control asupra datelor. Datele rămân ale voastre.

Partea a III-a — Lab

Creăm Azure SQL Database — Pas cu Pas

Urmați pașii de mai jos în Azure Portal pentru a crea prima bază de date în cloud.

1

Resource Group

Creați un Resource Group nou: rg-s09-[prenumele-vostru].

2

Create a Resource → SQL Database

Căutați SQL Database și selectați opțiunea oferită de Microsoft.

3

Database Name

La câmpul Database name: s09-db-[prenumele-vostru].

4

Creare SQL Server Nou

La Server → Create new. Server name: s09-sql-[prenumele-vostru]. Regiune: West Europe. Autentificare: SQL Authentication cu username și parolă — rețineți credențialele!

5

Pricing Tier

Selectați tier-ul Basic sau cel mai mic disponibil cu model DTU. Menținem costurile minime.

6

Firewall Rules

Activați Allow Azure services to access this server. Adăugați IP-ul vostru cu Add client IP.

7

Review + Create

Verificați configurația și dați Create. Deployul durează 2-4 minute.

SQL Server Logic vs. SQL Database

În Azure SQL există două resurse distincte — este esențial să înțelegeți diferența.

🏢

SQL Server (Logic)

Containerul care găzduiește bazele de date. Nu este un server fizic sau o VM. Este un punct de conexiune cu: un FQDN unic, credențiale de admin, configurații de firewall și rețea. Un singur SQL Server logic poate găzdui mai multe baze de date.

🗄

SQL Database

Baza de date efectivă — locul unde trăiesc tabelele și datele. Fiecare bază de date are propriile tabele, propriul tier de performanță (DTU/vCore), propriile setări de backup și propriile politici de acces.

Analogia blocului: SQL Server Logic = blocul de apartamente (adresa, administrarea clădirii). SQL Database = apartamentul individual (spațiul tău distinct, cu propriile chei).

Partea a IV-a — Lab

Primul Query SQL — Live în Cloud

Acesta este momentul pe care mulți cursanți îl consideră cel mai satisfăcător din sesiunea de astăzi. Vom scrie cod SQL real, pe o bază de date reală, rulând în Azure.

Cum accesezi Query Editor

1

Navigare

Navighează la SQL Database-ul creat în portal.

2

Query Editor (preview)

În meniul din stânga, găsește Query Editor și autentifică-te cu credențialele de admin.

3

Creare tabel

CREATE TABLE Students (Id INT, Name VARCHAR(50));

4

Adăugare date

INSERT INTO Students VALUES (1, 'Ion'); INSERT INTO Students VALUES (2, 'Maria');

5

Interogare

SELECT * FROM Students; — Dați Run și priviți rezultatul!

Datele voastre — Ion și Maria — sunt stocate în cloud, cu backup automat, cu High Availability, accesibile de oriunde. Le-ați creat în câteva minute, fără să instalați nimic.

Partea a V-a

Ce Face Azure în Spate?

Baza de date pe care tocmai ați creat-o pare simplă. Dar în spatele ei, Azure rulează un set impresionant de procese automate, 24/7, fără nicio intervenție din partea voastră.

💾

Backup Automat pe 3 Niveluri

Backup complet o dată pe săptămână. Backup diferențial la fiecare 12 ore. Transaction log la fiecare 5-12 minute. Restaurare punct-în-timp pentru ultimele 35 de zile.

🔄

Patching Automat

SQL Server primește constant actualizări de securitate și performanță. Aplicate automat, în ferestre configurabile, fără downtime vizibil.

High Availability Integrat

Datele replicate pe noduri secundare. La detectarea unui defect hardware, Azure redirecționează conexiunile în secunde. Nu există telefon de urgență la 2 noaptea.

📊

Monitorizare și Optimizare

Azure colectează: utilizarea CPU, memoria, conexiunile active, durata query-urilor. Oferă recomandări automate de indexuri pentru query-urile lente.

Câte ore de muncă pe lună ar consuma toate astea dacă le-ați gestiona manual pe o VM? Managed databases vă returnează aceste ore pentru ceea ce contează cu adevărat.

Partea a VI-a

Securitate la Nivelul Bazei de Date

Baza de date este, în multe sensuri, cel mai valoros activ dintr-o arhitectură cloud. Serverele pot fi reconstruite. Codul poate fi restaurat din Git. Dar datele utilizatorilor, tranzacțiile, istoricul — acestea sunt unice și irecuperabile.

🚪

Nivelul 1 — NSG

Prima linie de apărare, la nivelul rețelei virtuale. Controlează traficul de intrare și ieșire pe bază de porturi și protocoale.

🔐

Nivelul 2 — Firewall SQL Server

Independent de NSG, specific bazei de date. Adaugi doar IP-urile cu nevoie legitimă de acces. Niciodată Allow All IPs.

🛡

Niveluri avansate

Azure Active Directory Auth, criptare în tranzit și în repaus (TDE), Advanced Threat Protection, Auditing complet. Securitatea se construiește în straturi.

Analogia clubului exclusivist: NSG = portarul de la poartă. Firewall SQL = verificarea invitației la ușa VIP. Treci de ambele sau nu intri.

Partea a VII-a

Comparație Directă: SQL pe VM vs. Azure SQL

AspectSQL Server pe VMAzure SQL Database
Instalare inițialăOre sau zile pentru producție corectăCâteva minute din portal
Patch-uriManual — planifici, testezi, apliciAutomat, fără downtime vizibil
Backup-uriTu configurezi, testezi, monitorizeziAutomat pe 3 niveluri, 35 zile, inclus în preț
High AvailabilitySQL Always On — complex, necesită expertizăIntegrat, SLA 99,99%, failover automat
MonitorizareTu instalezi unelte de monitoringInclus în portal, cu recomandări automate
Control OSControl total asupra OS-uluiFără acces la OS (95% din cazuri nu ai nevoie)
Versiuni SQLOrice versiuneVersiuni recente suportate de Microsoft
Cost modelVM + licență SQL ServerDTU sau vCore — plătești putere de calcul

Pentru proiecte noi, aplicații moderne, și echipe care vor să se concentreze pe produs, Azure SQL Database este aproape întotdeauna alegerea mai înțeleaptă.

Cleanup — Ștergerea Resurselor

Disciplina curățeniei după exercițiile de test este o regulă de aur pentru oricine lucrează cu resurse cloud.

1

Navighează la Resource Groups

Caută rg-s09-[prenumele-vostru] în Azure Portal.

2

Selectează Delete Resource Group

Click pe Delete Resource Group în bara de meniu.

3

Confirmă ștergerea

Tastează numele resource group-ului pentru confirmare.

4

Verifică factura

Mergi la Cost Management și verifică că nu există costuri neașteptate.

Chiar și la tier-ul Basic, o bază de date uitată activă timp de o lună generează o factură nedorită. Ștergeți întotdeauna resursele după sesiunile de test!

Tema pentru Sesiunea 9

Trei puncte care testează înțelegerea conceptuală. Scopul este să puteți explica aceste concepte unui coleg sau unui intervievator.

📝

Propria voastră analogie

Explicați ce este o bază de date folosind propria analogie — diferită de cea a bibliotecii. Analogia trebuie să acopere: baza de date, tabelele, rândurile și coloanele.

☁️

De ce managed?

Explicați de ce o companie ar alege o bază de date managed în loc să instaleze SQL pe o VM. Dați cel puțin trei motive concrete — argumente de business și operaționale.

👥

Impactul pentru o echipă mică

Care este diferența între SQL pe VM și Azure SQL pentru o echipă de 3-5 dezvoltatori fără un DBA dedicat? Ce înseamnă practic fiecare opțiune în rutina de lucru zi de zi?

Tabloul Devine Complet — 9 Sesiuni

1 Networking (S4-S5)

Rețele virtuale cu subnet-uri și reguli de securitate NSG.

2 Compute (S6-S7)

Mașini virtuale Windows și Linux, Web Apps PaaS, conectate prin RDP și SSH.

3 Stocare (S8)

Azure Storage — unde trăiesc fișierele și cum sunt protejate.

4 Date (S9 — Astăzi)

Azure SQL Database — date structurate, interogabile, protejate, cu backup automat și HA.

Următoarea sesiune

Sesiunea 10 — Monitorizare, Identitate și Cost Management

Sesiunile viitoare adaugă straturi deasupra fundației: cum știi că sistemul funcționează corect, cine are voie să facă ce în Azure, și cum eviți surprizele în factură.

1.
Monitorizare — Cum știi că sistemul funcționează corect? Observabilitate și alerte.
2.
Identitate și acces — Cine are voie să facă ce în Azure? Governance și securitate.
3.
Cost Management — Cum eviți surprizele în factură? Bugetare și optimizare.

Cel mai important lucru din sesiunea de astăzi: gândirea de arhitect cloud — Am nevoie să administrez eu asta, sau există un serviciu managed? Unde trăiesc datele? Ce se întâmplă dacă ceva se strică?

Vă mulțumesc pentru participare și pentru implicare! Ne vedem la Sesiunea 10.