บริษัท Canonical
ไลบรารีเป็นส่วนเสริมสำหรับโค้ดเบส SQLite ที่มีอยู่ ซึ่งเพิ่มการรองรับโปรโตคอลเครือข่ายสำหรับการเชื่อมต่อหลายอินสแตนซ์ของแอปพลิเคชันที่ทำงานบนโฮสต์ที่แตกต่างกัน แอปพลิเคชันที่คอมไพล์ด้วย Dqlite สามารถทำหน้าที่เป็นคลัสเตอร์ที่ทนทานต่อข้อผิดพลาดแบบพอเพียง โดยไม่ขึ้นอยู่กับ DBMS ภายนอก ในทางปฏิบัติ Canonical ใช้ Dqlite ในระบบการจัดการคอนเทนเนอร์
เพื่อให้มั่นใจถึงความสอดคล้องในการจำลองข้อมูล จึงใช้วิธีการที่เป็นเอกฉันท์ตามอัลกอริทึม
เมื่อเทียบกับโครงการที่คล้ายกัน
คุณสมบัติของ Dqlite:
- ดำเนินการดิสก์และเครือข่ายทั้งหมดแบบอะซิงโครนัส
- ความพร้อมใช้งานของชุดทดสอบเพื่อยืนยันความถูกต้องของข้อมูล
- การใช้หน่วยความจำต่ำและการแลกเปลี่ยนข้อมูลอย่างมีประสิทธิภาพผ่านเครือข่าย
- การจัดเก็บฐานข้อมูลและบันทึกธุรกรรมบนดิสก์อย่างถาวร (พร้อมความเป็นไปได้ในการแคชในหน่วยความจำ)
- ฟื้นตัวอย่างรวดเร็วจากความล้มเหลว
- ไคลเอนต์ CLI ที่เสถียรในภาษา Go ซึ่งสามารถใช้เพื่อเริ่มต้นฐานข้อมูล กำหนดค่าการจำลองแบบ และเชื่อมต่อ/ตัดการเชื่อมต่อโหนด
- รองรับสถาปัตยกรรม ARM, X86, POWER และ IBM Z
- การใช้งานอัลกอริทึม Raft ได้รับการปรับให้เหมาะสมเพื่อลดความล่าช้าในการทำธุรกรรม
ที่มา: opennet.ru