Επικοινωνήστε μαζί μας

Εξέλιξη Κομματιού

Ενότητα 1: Εισαγωγή και Αρχιτεκτονική της MongoDB (4 ώρες)

Περιεχόμενο:

  • Ιστορία και οικοσύστημα MongoDB
  • Τυπικές περιπτώσεις χρήσης, πλεονεκτήματα και μειονεκτήματα
  • Γενική αρχιτεκτονική: διεργασίες, process και ρυθμίσεις

Πρακτική:

  • Διαδραστική εξερεύνηση: σύνδεση με Mongo Shell/CLI
  • Δημιουργία δείγματος βάσης και συλλογής

Ενότητα 2: Εγκατάσταση και Αρχική Ρύθμιση (6 ώρες)

Περιεχόμενο:

  • Απαιτήσεις υλικού και πόρων
  • Εγκατάσταση σε Linux (deb/rpm), Windows και macOS
  • Αρχεία ρυθμίσεων YAML (mongod.conf): dataDir, logDir, bindIp, port
  • Επιλογές εκκίνησης και διαχείριση μέσω systemd/υπηρεσιών

Πρακτική:

  • Ανάπτυξη διεργασιών σε τοπικά VM ή containers Docker
  • Προσαρμογή ρυθμίσεων για ανάπτυξη έναντι παραγωγής
  • Επαλήθευση ασφαλούς απομακρυσμένης συνδεσιμότητας

Ενότητα 3: Μοντελοποίηση Δεδομένων και Βασικές Λειτουργίες (5 ώρες)

Περιεχόμενο:

  • Έγγραφα BSON, συλλογές, βάσεις δεδομένων
  • Μοντελοποίηση: ενσωμάτωση έναντι αναφοράς· πρότυπα σχεδιασμού δεδομένων
  • Βασικά ευρετήρια (εισαγωγή νωρίτερα)
  • Λειτουργίες με Mongo Shell και παραδείγματα δέσμης ενεργειών χρησιμοποιώντας drivers

Πρακτική:

  • Μοντελοποίηση μιας περίπτωσης χρήσης: σύστημα απογραφής ή χρέωσης
  • Υλοποίηση λειτουργιών CRUD
  • Επικύρωση σχήματος με JSON Schema στη MongoDB

Ενότητα 4: Ευρετήρια και Απόδοση (4 ώρες)

Περιεχόμενο:

  • Απλά, σύνθετα, πολλαπλών κλειδιών, κειμένου και γεωχωρικά ευρετήρια
  • Χρήση του explain() και ανάλυση μετρικών
  • Επίδραση των ευρετηρίων στην απόδοση εγγραφής και τη μνήμη

Πρακτική:

  • Δημιουργία συλλογών με δεδομένα δοκιμής
  • Δοκιμή ερωτημάτων με και χωρίς ευρετήρια· ερμηνεία του explain()
  • Προσαρμογή ευρετηρίων βάσει προτύπων πρόσβασης

Ενότητα 5: Ασφάλεια (5 ώρες)

Περιεχόμενο:

  • Μηχανισμοί αυθεντικοποίησης: SCRAM, LDAP/Kerberos (εισαγωγικά)
  • Ορισμός χρηστών και προσαρμοσμένων ρόλων
  • TLS/SSL μεταξύ πελατών και διακομιστών
  • Κρυπτογράφηση εν ηρεμία: ρύθμιση κλειδιών
  • Βασική καταγραφή ελέγχου

Πρακτική:

  • Δημιουργία χρηστών με ελάχιστα δικαιώματα
  • Διαμόρφωση TLS σε τοπικές διεργασίες
  • Επαλήθευση μη εξουσιοδοτημένης πρόσβασης και ανασκόπηση αρχείων ελέγχου

Ενότητα 6: Αντιγραφή και Υψηλή Διαθεσιμότητα (6 ώρες)

Περιεχόμενο:

  • Έννοιες αντιγραφής: Πρωτεύον, Δευτερεύον, oplog
  • Διαμόρφωση replica set: έναρξη, συμμετοχή, διαιτησία
  • Παρακολούθηση κατάστασης και εκλογές
  • Συντήρηση: προσθήκη/αφαίρεση μελών, ανακατανομή προτεραιοτήτων

Πρακτική:

  • Ανάπτυξη replica set τριών κόμβων (τοπικά ή σε VM)
  • Προσομοίωση αποτυχίας του Πρωτεύοντος και παρατήρηση της ανακατεύθυνσης
  • Αναδόμηση δευτερευόντων κόμβων και ανάκτηση αντιγράφων

Ενότητα 7: Κατανομή Τμημάτων και Οριζόντια Επεκτασιμότητα (6 ώρες)

Περιεχόμενο:

  • Έννοιες sharding: κλειδί κατανομής (shard key), config servers, δρομολογητής mongos
  • Επιλογή κλειδιού κατανομής και σχετικοί κίνδυνοι
  • Ανάπτυξη config servers, shards και mongos
  • Εξισορρόπηση και μετανάστευση chunks

Πρακτική:

  • Διαμόρφωση ενός απλού sharded cluster
  • Εισαγωγή μεγάλου όγκου δεδομένων και παρατήρηση της κατανομής
  • Εισαγωγή αλλαγών στο κλειδί κατανομής και κατανόηση των περιορισμών

Ενότητα 8: Αντίγραφα Ασφαλείας, Επαναφορά και Ανάκαμψη από Καταστροφή (4 ώρες)

Περιεχόμενο:

  • Εγγενή εργαλεία: mongodump/mongorestore, στιγμιότυπα συστήματος αρχείων
  • Αντίγραφα ασφαλείας σε replica sets και sharded clusters
  • Βασική χρήση του Cloud Manager/Ops Manager για αντίγραφα ασφαλείας
  • Σχεδιασμός ανάκαμψης από καταστροφή (DR): RTO, RPO

Πρακτική:

  • Εκτέλεση αντιγράφου ασφαλείας και επαναφοράς σε βάση δοκιμών
  • Προσομοίωση αποτυχίας και ανάκτηση από αντίγραφο ασφαλείας
  • Σχεδίαση ενός σχεδίου DR για μια υποθετική περίπτωση

Ενότητα 9: Παρακολούθηση και Ειδοποιήσεις (4 ώρες)

Περιεχόμενο:

  • Εργαλεία: mongostat, mongotop, Cloud Manager/Atlas Monitoring
  • Ενσωμάτωση με Prometheus + Grafana (έννοιες και παραδείγματα)
  • Βασικές μετρικές: CPU, μνήμη, I/O, μέγεθος oplog, καθυστερήσεις
  • Ειδοποιήσεις: καθορισμός ορίων και ενημερώσεων

Πρακτική:

  • Ανάπτυξη ενός τοπικού ή container-based πράκτορα παρακολούθησης
  • Ρύθμιση βασικών dashboards με δείγματα μετρικών
  • Προσομοίωση φορτίου και παρατήρηση ειδοποιήσεων

Ενότητα 10: Συντήρηση, Αναβαθμίσεις και Βέλτιστες Πρακτικές (4 ώρες)

Περιεχόμενο:

  • Στρατηγικές αναβάθμισης για replica sets και sharded clusters
  • Καθαρισμός δεδομένων, συμπίεση, έλεγχοι ακεραιότητας
  • Ανασκόπηση αρχείων καταγραφής και τακτικοί έλεγχοι
  • Αυτοματοποίηση συνήθων εργασιών (scripts, cronjobs, Ansible, Terraform)
  • Πολιτικές διατήρησης και αρχειοθέτησης δεδομένων

Πρακτική:

  • Προσομοίωση μικρών και μεγάλων αναβαθμίσεων σε ελεγχόμενο περιβάλλον
  • Δημιουργία scripts αυτοματισμού για αντίγραφα ασφαλείας και παρακολούθηση
  • Ανάπτυξη μιας λίστας περιοδικής συντήρησης

Σύνοψη και Επόμενα Βήματα

Απαιτήσεις

  • Κατανόηση γενικών εννοιών βάσεων δεδομένων και δομών δεδομένων
  • Εξοικείωση με τη χρήση της γραμμής εντολών Linux
  • Βασικές γνώσεις δικτύωσης και διαχείρισης συστημάτων

Κοινό στο οποίο απευθύνεται

  • Διαχειριστές βάσεων δεδομένων και μηχανικοί συστημάτων που εργάζονται με MongoDB
  • Ομάδες DevOps και υποδομών που εγκαθιστούν και συντηρούν περιβάλλοντα MongoDB
  • Προγραμματιστές που ενδιαφέρονται για τα εσωτερικά της MongoDB και τις βέλτιστες πρακτικές ανάπτυξης
 48 Ώρες

Αριθμός συμμετέχοντων


Τιμή ανά συμμετέχοντα

Σχόλια (2)

Εφεξής Μαθήματα

Σχετικές Κατηγορίες