Schița de curs
Modulul 1: Introducere și Arhitectura MongoDB (4h)
Conținut:
- Istoric și ecosistem MongoDB
- Cazuri de utilizare tipice, avantaje și dezavantaje
- Arhitectura generală: instanțe, procese și configurare
Practică:
- Explorare interactivă: conectare cu Mongo Shell/CLI
- Crearea unei baze de date și a unei colecții de probă
Modulul 2: Instalare și Configurare Inițială (6h)
Conținut:
- Cerințe de hardware și resurse
- Instalare pe Linux (deb/rpm), Windows și macOS
- Fișiere de configurare YAML (mongod.conf): dataDir, logDir, bindIp, port
- Opțiuni de pornire și gestionare systemd/serviciu
Practică:
- Implementarea de instanțe pe VM-uri locale sau containere Docker
- Ajustarea configurațiilor pentru dezvoltare vs. producție
- Verificarea conectivității securizate la distanță
Modulul 3: Modelarea Datelor și Operațiuni de Bază (5h)
Conținut:
- Documente BSON, colecții, baze de date
- Modelare: încorporare vs. referințe; modele de proiectare a datelor
- Indecși de bază (prezentate anterior)
- Operațiuni cu Mongo Shell și exemple de scripturi folosind drivere
Practică:
- Modelarea unui caz de utilizare: sistem de inventar sau facturare
- Implementarea operațiunilor CRUD
- Validarea schemei folosind JSON Schema în MongoDB
Modulul 4: Indecși și Performanță (4h)
Conținut:
- Indecși simpli, compuși, multikey, text și geospațiali
- Utilizarea explain() și analiza metricelor
- Impactul indecșilor asupra performanței de scriere și a memoriei
Practică:
- Crearea de colecții cu date de test
- Testarea interogărilor cu și fără indecși; interpretarea explain()
- Ajustarea indecșilor pe baza modelelor de acces
Modulul 5: Securitate (5h)
Conținut:
- Mecanisme de autentificare: SCRAM, LDAP/Kerberos (introducere)
- Definirea utilizatorilor și a rolurilor personalizate
- TLS/SSL între clienți și servere
- Criptare la repaus: configurarea cheilor
- Logare de audit de bază
Practică:
- Crearea utilizatorilor cu privilegii minime
- Configurarea TLS în instanțe locale
- Verificarea accesului neautorizat și revizuirea jurnalelor de audit
Modulul 6: Replicare și Disponibilitate Ridicată (6h)
Conținut:
- Concepte de replicare: Primary, Secondary, oplog
- Configurarea setului de replică: inițiere, membri, arbitraj
- Monitorizarea stării și alegerilor
- Întreținere: adăugare/eliminare membri, realocare priorități
Practică:
- Implementarea unui set de replică cu trei noduri (local sau VM-uri)
- Simularea eșecului primarului și observarea failover-ului
- Reconstruirea nodurilor secundare și recuperarea replicilor
Modulul 7: Sharding și Scalabilitate Orizontală (6h)
Conținut:
- Concepte de sharding: cheie de shard, servere de configurare, router mongos
- Selectarea cheii de shard și riscurile asociate
- Implementarea serverelor de configurare, shardurilor și mongos
- Rebalansare și migrare de chunk-uri
Practică:
- Configurarea unui cluster shardat simplu
- Inserarea de date la scară largă și observarea distribuției
- Introducerea de modificări ale cheii de shard și înțelegerea limitărilor
Modulul 8: Backup, Restaurare și Recuperare în Caz de Dezastru (4h)
Conținut:
- Instrumente native: mongodump/mongorestore, snapshot-uri de sistem de fișiere
- Backup-uri în seturi de replică și clustere shardate
- Utilizarea de bază a Cloud Manager/Ops Manager pentru backup
- Planificarea recuperării în caz de dezastru (DR): RTO, RPO
Practică:
- Efectuarea backup-ului și restaurarea unei baze de date de test
- Simularea eșecului și recuperarea din backup
- Proiectarea unui plan DR pentru un caz ipotetic
Modulul 9: Monitorizare și Alerte (4h)
Conținut:
- Instrumente: mongostat, mongotop, Cloud Manager/Atlas Monitoring
- Integrare cu Prometheus + Grafana (concepte și exemple)
- Metrici cheie: CPU, memorie, I/O, dimensiune oplog, latențe
- Alerte: definirea pragurilor și notificărilor
Practică:
- Implementarea unui agent de monitorizare local sau bazat pe containere
- Configurarea de panouri de bază cu metrici de probă
- Simularea încărcării și observarea alertelor
Modulul 10: Întreținere, Actualizări și Cele Mai Bune Practici (4h)
Conținut:
- Strategii de actualizare pentru seturi de replică și clustere shardate
- Curățarea datelor, compactare, verificări de integritate
- Revizuirea jurnalelor și audituri periodice
- Automatizarea sarcinilor de rutină (scripturi, cronjobs, Ansible, Terraform)
- Politici de păstrare și arhivare a datelor
Practică:
- Simularea actualizărilor minore și majore într-un mediu controlat
- Crearea de scripturi de automatizare pentru backup și monitorizare
- Dezvoltarea unei liste de verificare pentru întreținerea periodică
Rezumat și Pași Următori
Cerințe
- Înțelegerea conceptelor generale de bază de date și structuri de date
- Familiaritate cu utilizarea liniei de comandă Linux
- Cunoștințe de bază despre rețele și administrarea sistemelor
Publicul țintă
- Administratori de baze de date și ingineri de sistem care lucrează cu MongoDB
- Echipe DevOps și de infrastructură care implementează și întrețin medii MongoDB
- Dezvoltatori interesați de internalele MongoDB și de cele mai bune practici de implementare
Mărturii (5)
Kamil a făcut un treabă excelentă. A pus întrebări pentru a afla ce știam deja și ce era nevoie să ne concentrăm, adaptându-și ușor instruirea la nevoile noastre.
Susanna - USAF
Curs - MongoDB Advanced Administrator
Tradus de catre o masina
Situarea era atipică deoarece se presupunea să se conducă un antrenament intensiv pentru dezvoltatori cu participanți care nu erau dezvoltatori. Lukasz a abordat această provocare cu empatie și mult umor. Prin modul său inteligent și flexibil de a conduce, a reușit să asigure un beneficiu de învățare concret pentru toată lumea. Am apreciat foarte mult acest lucru și aș participa cu plăcere din nou la un seminar cu Lukasz.
Christoph - Honda Bank GmbH
Curs - MERN Fullstack Development
Tradus de catre o masina
Mediul de laborator
Samer Roshdi - epic ltd
Curs - MongoDB for Analysts
Tradus de catre o masina
It was very flexible and adapted to our expectations and skill level.
Raul Alberto Canales Requena - Kiloo
Curs - MongoDB for Advanced Users
Tradus de catre o masina
I generally was benefit from the open mind and communication.
Oleksiy Deliyev
Curs - MongoDB for Developers
Tradus de catre o masina