การเปิดตัว Tarantool 2.8 DBMS

Tarantool 2.8 DBMS เวอร์ชันใหม่พร้อมใช้งานแล้ว ซึ่งให้การจัดเก็บข้อมูลถาวรพร้อมข้อมูลที่ดึงมาจากฐานข้อมูลในหน่วยความจำ DBMS ผสมผสานความเร็วสูงของคุณลักษณะการประมวลผลแบบสอบถามของระบบ NoSQL (เช่น Memcached และ Redis) เข้ากับความน่าเชื่อถือของ DBMS แบบดั้งเดิม (Oracle, MySQL และ PostgreSQL) Tarantool เขียนด้วยภาษา C และให้คุณสร้าง Stored Procedure ใน Lua ได้ รหัสนี้เผยแพร่ภายใต้ใบอนุญาต BSD

DBMS ช่วยให้คุณทำงานกับข้อมูลปริมาณมากภายใต้ภาระงานสูงได้อย่างมีประสิทธิภาพ ในบรรดาคุณสมบัติของ Tarantool ความสามารถในการสร้างตัวจัดการในภาษา Lua (LuaJIT มีอยู่ในตัว), การใช้รูปแบบ MessagePack เมื่อแลกเปลี่ยนข้อมูลกับไคลเอนต์, การมีอยู่ของเอ็นจิ้นในตัวสองตัว (ที่เก็บข้อมูลใน RAM พร้อมรีเซ็ต ไปยังไดรฟ์ถาวรและที่เก็บข้อมูลดิสก์สองระดับตาม LSM-tree) รองรับคีย์รองดัชนีสี่ประเภท (HASH, TREE, RTREE, BITSET) เครื่องมือสำหรับการจำลองแบบซิงโครนัสและอะซิงโครนัสในโหมดมาสเตอร์มาสเตอร์รองรับ การตรวจสอบการเชื่อมต่อและการควบคุมการเข้าถึงความสามารถในการประมวลผลคำสั่ง SQL

การเปลี่ยนแปลงหลัก:

  • ความเสถียรของ MVCC (การควบคุมการทำงานพร้อมกันหลายเวอร์ชัน) ในเอ็นจิ้น memtx ในหน่วยความจำ
  • รองรับธุรกรรมในโปรโตคอลไบนารี่ IPROTO ก่อนหน้านี้ ธุรกรรมจำเป็นต้องเขียนขั้นตอนการจัดเก็บใน Lua
  • รองรับการจำลองแบบซิงโครนัสซึ่งทำงานสัมพันธ์กับแต่ละตาราง
  • กลไกในการสลับไปยังโหนดสำรอง (เฟลโอเวอร์) โดยอัตโนมัติตามโปรโตคอล RAFT การจำลองแบบที่ใช้ WAL แบบอะซิงโครนัสมีการใช้งานมานานแล้วใน Tarantool ตอนนี้คุณไม่จำเป็นต้องตรวจสอบโหนดหลักด้วยตนเอง
  • การสลับโหนดหลักอัตโนมัติยังใช้งานได้ในกรณีของโทโพโลยีที่มีการแบ่งส่วนข้อมูล (ใช้ไลบรารี vshard ซึ่งกระจายข้อมูลข้ามเซิร์ฟเวอร์โดยใช้บัคเก็ตเสมือน)
  • การปรับปรุงกรอบงานสำหรับการสร้างแอปพลิเคชันคลัสเตอร์ Tarantool Cartridge เมื่อทำงานในสภาพแวดล้อมเสมือน คาร์ทริดจ์ Tarantool รองรับน้ำหนักได้ดีขึ้น
  • การทำงานของบทบาท Ansible สำหรับการปรับใช้คลัสเตอร์ได้รับการเร่งขึ้นสูงสุด 15-20 เท่า ทำให้การทำงานกับคลัสเตอร์ขนาดใหญ่ง่ายขึ้น
  • เครื่องมือปรากฏขึ้นเพื่อให้การย้ายจากเวอร์ชันเก่า >1.6 และ <1.10 ง่ายขึ้น ซึ่งพร้อมใช้งานโดยใช้ตัวเลือกเพิ่มเติมเมื่อเริ่มต้นระบบ ก่อนหน้านี้ การย้ายจะต้องดำเนินการผ่านการปรับใช้เวอร์ชันชั่วคราว 1.10
  • การจัดเก็บสิ่งอันดับขนาดเล็กได้รับการปรับให้เหมาะสม
  • ขณะนี้ SQL รองรับ UUID และปรับปรุงการแปลงประเภทแล้ว

เป็นที่น่าสังเกตว่าตั้งแต่เวอร์ชัน 2.10 จะมีการเปลี่ยนแปลงไปเป็นนโยบายใหม่สำหรับการสร้างรุ่น สำหรับรุ่นสำคัญที่ทำลายความเข้ากันได้แบบย้อนหลัง ตัวเลขตัวแรกของเวอร์ชันจะเปลี่ยน สำหรับรุ่นกลาง - ตัวที่สอง และสำหรับรุ่นแก้ไข - ตัวที่สาม (หลังจาก 2.10 รุ่น 3.0.0 จะถูกปล่อยออกมา)

ที่มา: opennet.ru

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