มีการเปิดตัวสาขาใหม่ที่สำคัญของ MariaDB 11 DBMS แล้ว

10 ปีหลังจากการก่อตั้งสาขา 10.x MariaDB 11.0.0 ได้รับการเผยแพร่ ซึ่งมีการปรับปรุงและการเปลี่ยนแปลงที่สำคัญหลายประการที่ทำให้ความเข้ากันได้ลดลง ขณะนี้สาขาอยู่ในคุณภาพรุ่นอัลฟ่า และจะพร้อมสำหรับการใช้งานจริงหลังจากการรักษาเสถียรภาพแล้ว สาขาหลักถัดไปของ MariaDB 12 ซึ่งมีการเปลี่ยนแปลงที่ทำลายความเข้ากันได้ คาดว่าจะไม่เร็วกว่า 10 ปีนับจากนี้ (ในปี 2032)

โปรเจ็กต์ MariaDB กำลังพัฒนาทางแยกจาก MySQL โดยรักษาความเข้ากันได้แบบย้อนหลังทุกครั้งที่เป็นไปได้ และนำเสนอการผสานรวมกลไกการจัดเก็บข้อมูลเพิ่มเติมและความสามารถขั้นสูง การพัฒนา MariaDB ได้รับการดูแลโดยมูลนิธิ MariaDB ที่เป็นอิสระ ตามกระบวนการพัฒนาที่เปิดกว้างและโปร่งใส ซึ่งเป็นอิสระจากผู้จำหน่ายแต่ละราย MariaDB DBMS ได้รับการจัดเตรียมแทน MySQL ในลีนุกซ์หลายรุ่น (RHEL, SUSE, Fedora, openSUSE, Slackware, OpenMandriva, ROSA, Arch Linux, Debian) และได้รับการนำไปใช้ในโครงการขนาดใหญ่เช่น Wikipedia, Google Cloud SQL และ Nimbuzz

การปรับปรุงที่สำคัญในสาขา MariaDB 11 คือการเปลี่ยนเครื่องมือเพิ่มประสิทธิภาพคิวรีไปเป็นโมเดลน้ำหนักใหม่ (โมเดลต้นทุน) ซึ่งให้การคาดการณ์น้ำหนักของแต่ละแผนการสืบค้นที่แม่นยำยิ่งขึ้น แม้ว่าโมเดลใหม่อาจบรรเทาปัญหาคอขวดของประสิทธิภาพบางอย่าง แต่ก็อาจไม่ดีที่สุดในทุกสถานการณ์และอาจทำให้การสืบค้นบางรายการช้าลง ดังนั้นผู้ใช้จึงควรเข้าร่วมในการทดสอบและแจ้งให้นักพัฒนาทราบหากเกิดปัญหาขึ้น

รุ่นก่อนหน้านี้เก่งในการค้นหาดัชนีที่เหมาะสมที่สุด แต่มีปัญหาเกี่ยวกับการบังคับใช้การสแกนตาราง การสแกนดัชนี หรือการดึงข้อมูลช่วง ในโมเดลใหม่ ข้อเสียเปรียบนี้จะหมดไปโดยการเปลี่ยนน้ำหนักพื้นฐานของการทำงานด้วยกลไกการจัดเก็บ เมื่อประเมินประสิทธิภาพการทำงานที่ขึ้นอยู่กับความเร็วของดิสก์ เช่น การสแกนการเขียนตามลำดับ ตอนนี้เราถือว่าข้อมูลถูกจัดเก็บไว้ใน SSD ที่มีความเร็วในการอ่าน 400MB ต่อวินาที นอกจากนี้ พารามิเตอร์น้ำหนักอื่นๆ ของเครื่องมือเพิ่มประสิทธิภาพยังได้รับการปรับแต่ง ซึ่งทำให้สามารถใช้ความสามารถในการใช้ดัชนีสำหรับการดำเนินการ "เรียงลำดับตาม/จัดกลุ่มตาม" ในแบบสอบถามย่อย และเร่งการทำงานด้วยตารางขนาดเล็กมากได้

โปรดทราบว่าแบบจำลองน้ำหนักใหม่จะช่วยให้คุณสามารถเลือกแผนการดำเนินการสืบค้นที่เหมาะสมยิ่งขึ้นในสถานการณ์ต่อไปนี้:

  • เมื่อใช้แบบสอบถามที่ครอบคลุมมากกว่า 2 ตาราง
  • เมื่อคุณมีดัชนีที่มีค่าเหมือนกันจำนวนมาก
  • เมื่อใช้ช่วงที่ครอบคลุมมากกว่า 10% ของตาราง
  • เมื่อคุณมีการสืบค้นที่ซับซ้อนซึ่งไม่ได้ใช้ทุกคอลัมน์ที่จัดทำดัชนี
  • เมื่อมีการใช้การสืบค้นที่เกี่ยวข้องกับกลไกการจัดเก็บข้อมูลที่แตกต่างกัน (ตัวอย่างเช่น เมื่อการสืบค้นหนึ่งเข้าถึงตารางในกลไก InnoDB และหน่วยความจำ)
  • เมื่อใช้ FORCE INDEX เพื่อปรับปรุงแผนการสืบค้น
  • เมื่อแผนการสืบค้นแย่ลงเมื่อใช้ "วิเคราะห์ตาราง"
  • เมื่อแบบสอบถามครอบคลุมตารางที่ได้รับจำนวนมาก (SELECT ที่ซ้อนกันจำนวนมาก)
  • เมื่อใช้นิพจน์ ORDER BY หรือ GROUP BY ที่อยู่ภายใต้ดัชนี

ปัญหาความเข้ากันได้ที่สำคัญในสาขา MariaDB 11:

  • สิทธิ์ SUPER ไม่อนุญาตให้คุณดำเนินการซึ่งมีสิทธิ์ที่กำหนดไว้แยกต่างหากอีกต่อไป ตัวอย่างเช่น หากต้องการเปลี่ยนรูปแบบของบันทึกไบนารี คุณจะต้องมีสิทธิ์ของ BINLOG ADMIN
  • ลบการใช้งานการเปลี่ยนแปลงบัฟเฟอร์ใน InnoDB
  • Innodb_flush_method และ innodb_file_per_table เลิกใช้แล้ว
  • การสนับสนุนชื่อ Mysql* เลิกใช้แล้ว
  • การตั้งค่าชัดแจ้ง_defaults_for_timestampเป็น0ถูกเลิกใช้แล้ว
  • ลิงก์สัญลักษณ์จะรวมอยู่ในแพ็คเกจแยกต่างหากเพื่อให้เข้ากันได้กับ MySQL
  • ค่าเริ่มต้นของพารามิเตอร์ innodb_undo_tablespaces เปลี่ยนเป็น 3

ที่มา: opennet.ru

เพิ่มความคิดเห็น