Παρουσιάστηκε νέος σημαντικός κλάδος του MariaDB 11 DBMS

10 χρόνια μετά την ίδρυση του κλάδου 10.x, κυκλοφόρησε το MariaDB 11.0.0, το οποίο πρόσφερε αρκετές σημαντικές βελτιώσεις και αλλαγές που έσπασαν τη συμβατότητα. Το υποκατάστημα αυτή τη στιγμή είναι σε ποιότητα απελευθέρωσης άλφα και θα είναι έτοιμο για παραγωγική χρήση μετά τη σταθεροποίηση. Ο επόμενος μεγάλος κλάδος του MariaDB 12, ο οποίος περιέχει αλλαγές που διακόπτουν τη συμβατότητα, αναμένεται όχι νωρίτερα από 10 χρόνια από τώρα (το 2032).

Το έργο MariaDB αναπτύσσει ένα πιρούνι από τη MySQL, διατηρώντας τη συμβατότητα προς τα πίσω όποτε είναι δυνατόν και με την ενσωμάτωση πρόσθετων μηχανών αποθήκευσης και προηγμένων δυνατοτήτων. Η ανάπτυξη του MariaDB επιβλέπεται από το ανεξάρτητο Ίδρυμα MariaDB, μετά από μια ανοιχτή και διαφανή διαδικασία ανάπτυξης που είναι ανεξάρτητη από μεμονωμένους προμηθευτές. Το MariaDB DBMS παρέχεται αντί για MySQL σε πολλές διανομές Linux (RHEL, SUSE, Fedora, openSUSE, Slackware, OpenMandriva, ROSA, Arch Linux, Debian) και έχει εφαρμοστεί σε μεγάλα έργα όπως η Wikipedia, το Google Cloud SQL και το Nimbuzz.

Μια βασική βελτίωση στον κλάδο MariaDB 11 είναι η μετάβαση του βελτιστοποιητή ερωτημάτων σε ένα νέο μοντέλο βάρους (μοντέλο κόστους), το οποίο παρέχει ακριβέστερη πρόβλεψη των βαρών κάθε σχεδίου ερωτήματος. Αν και το νέο μοντέλο μπορεί να μετριάσει ορισμένα σημεία συμφόρησης απόδοσης, μπορεί να μην είναι βέλτιστο σε όλα τα σενάρια και μπορεί να επιβραδύνει ορισμένα ερωτήματα, επομένως οι χρήστες ενθαρρύνονται να συμμετέχουν στις δοκιμές και να ειδοποιούν τους προγραμματιστές εάν προκύψουν προβλήματα.

Το προηγούμενο μοντέλο ήταν καλό στην εύρεση του βέλτιστου ευρετηρίου, αλλά είχε προβλήματα με τη δυνατότητα εφαρμογής σαρώσεων πίνακα, σαρώσεων ευρετηρίου ή λειτουργιών ανάκτησης εύρους. Στο νέο μοντέλο, αυτό το μειονέκτημα εξαλείφεται με την αλλαγή του βασικού βάρους των λειτουργιών με τον κινητήρα αποθήκευσης. Κατά την αξιολόγηση της απόδοσης για λειτουργίες που εξαρτώνται από την ταχύτητα του δίσκου, όπως οι διαδοχικές σαρώσεις εγγραφής, υποθέτουμε τώρα ότι τα δεδομένα αποθηκεύονται σε έναν SSD που παρέχει ταχύτητες ανάγνωσης 400 MB ανά δευτερόλεπτο. Επιπλέον, ρυθμίστηκαν και άλλες παράμετροι βάρους του βελτιστοποιητή, οι οποίες, για παράδειγμα, επέτρεψαν την εφαρμογή της δυνατότητας χρήσης ευρετηρίων για λειτουργίες «ORDER BY/GROUP BY» σε υποερωτήματα και επιτάχυνση της εργασίας με πολύ μικρούς πίνακες.

Σημειώνεται ότι το νέο μοντέλο βάρους θα σας επιτρέψει να επιλέξετε ένα πιο βέλτιστο σχέδιο εκτέλεσης ερωτημάτων στις ακόλουθες περιπτώσεις:

  • Όταν χρησιμοποιείτε ερωτήματα που εκτείνονται σε περισσότερους από 2 πίνακες.
  • Όταν υπάρχουν ευρετήρια που περιέχουν μεγάλο αριθμό πανομοιότυπων τιμών.
  • Όταν χρησιμοποιείτε εύρη που καλύπτουν περισσότερο από το 10% του πίνακα.
  • Όταν έχετε πολύπλοκα ερωτήματα στα οποία δεν έχουν ευρετηριαστεί όλες οι στήλες που χρησιμοποιούνται.
  • Όταν χρησιμοποιούνται ερωτήματα που περιλαμβάνουν διαφορετικές μηχανές αποθήκευσης (για παράδειγμα, όταν ένα ερώτημα έχει πρόσβαση σε πίνακες στις μηχανές InnoDB και Memory).
  • Όταν χρησιμοποιείτε το FORCE INDEX για τη βελτίωση του σχεδίου ερωτήματος.
  • Όταν το σχέδιο ερωτήματος επιδεινώνεται κατά τη χρήση του "ANALYZE TABLE".
  • Όταν το ερώτημα εκτείνεται σε μεγάλο αριθμό παραγόμενων πινάκων (μεγάλος αριθμός ένθετων SELECT).
  • Όταν χρησιμοποιείτε εκφράσεις ORDER BY ή GROUP BY που εμπίπτουν σε ευρετήρια.

Σημαντικά ζητήματα συμβατότητας στον κλάδο MariaDB 11:

  • Τα δικαιώματα SUPER δεν σας επιτρέπουν πλέον να εκτελείτε ενέργειες για τις οποίες είναι διαθέσιμα ξεχωριστά προνόμια. Για παράδειγμα, για να αλλάξετε τη μορφή των δυαδικών αρχείων καταγραφής, θα χρειαστείτε δικαιώματα ΔΙΑΧΕΙΡΙΣΤΗ BINLOG.
  • Καταργήθηκε η εφαρμογή αλλαγής buffer στο InnoDB.
  • Το Innodb_flush_method και το innodb_file_per_table έχουν καταργηθεί.
  • Η υποστήριξη ονόματος Mysql* έχει καταργηθεί.
  • Η ρύθμιση explicit_defaults_for_timestamp σε 0 έχει καταργηθεί.
  • Οι συμβολικοί σύνδεσμοι περιλαμβάνονται σε ξεχωριστό πακέτο για συμβατότητα με τη MySQL.
  • Η προεπιλεγμένη τιμή της παραμέτρου innodb_undo_tablespace έχει αλλάξει σε 3.

Πηγή: opennet.ru

Προσθέστε ένα σχόλιο