เปิดตัว Litestream พร้อมการนำระบบการจำลองแบบสำหรับ SQLite ไปใช้

เบ็น จอห์นสัน ผู้เขียนพื้นที่จัดเก็บ BoltDB NoSQL นำเสนอโปรเจ็กต์ Litestream ซึ่งมีส่วนเสริมสำหรับการจัดระเบียบการจำลองข้อมูลใน SQLite Litestream ไม่ต้องการการเปลี่ยนแปลงใดๆ กับ SQLite และสามารถทำงานร่วมกับแอปพลิเคชันใดๆ ที่ใช้ไลบรารีนี้ได้ การจำลองแบบจะดำเนินการโดยกระบวนการพื้นหลังที่ดำเนินการแยกต่างหากซึ่งจะตรวจสอบการเปลี่ยนแปลงในไฟล์จากฐานข้อมูลและถ่ายโอนไปยังไฟล์อื่นหรือที่จัดเก็บข้อมูลภายนอก รหัสโครงการเขียนด้วยภาษา Go และเผยแพร่ภายใต้ลิขสิทธิ์ Apache 2.0

การโต้ตอบกับฐานข้อมูลทั้งหมดดำเนินการผ่าน SQLite API มาตรฐาน เช่น Litestream ไม่รบกวนการทำงานโดยตรง ไม่ส่งผลกระทบต่อประสิทธิภาพ และไม่สามารถสร้างความเสียหายให้กับเนื้อหาของฐานข้อมูลได้ ซึ่งทำให้ Litestream แตกต่างจากโซลูชัน เช่น Rqlite และ Dqlite ติดตามการเปลี่ยนแปลงโดยเปิดใช้งานบันทึก WAL (“บันทึกการเขียนล่วงหน้า”) ใน SQLite เพื่อประหยัดพื้นที่จัดเก็บข้อมูล ระบบจะรวมกระแสการเปลี่ยนแปลงเป็นส่วนๆ ของฐานข้อมูล (สแนปชอต) เป็นระยะๆ นอกเหนือจากที่การเปลี่ยนแปลงอื่นๆ จะเริ่มสะสม เวลาในการสร้างชิ้นจะระบุไว้ในการตั้งค่า ตัวอย่างเช่น คุณสามารถสร้างชิ้นได้วันละครั้งหรือชั่วโมงละครั้ง

พื้นที่หลักของแอปพลิเคชันสำหรับ Litestream ได้แก่ การจัดระเบียบการสำรองข้อมูลที่ปลอดภัย และการกระจายโหลดการอ่านไปยังเซิร์ฟเวอร์หลายเครื่อง รองรับการถ่ายโอนสตรีมการเปลี่ยนแปลงไปยัง Amazon S3, Azure Blob Storage, Backblaze B2, DigitalOcean Spaces, Scaleway Object Storage, Google Cloud Storage, Linode Object Storage หรือโฮสต์ภายนอกใดๆ ที่รองรับโปรโตคอล SFTP หากเนื้อหาของฐานข้อมูลหลักเสียหาย สำเนาสำรองสามารถกู้คืนได้จากสถานะที่สอดคล้องกับจุดเวลาที่ระบุ การเปลี่ยนแปลงเฉพาะ การเปลี่ยนแปลงครั้งล่าสุด หรือชิ้นส่วนที่ระบุ

ที่มา: opennet.ru

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