“Litestream v0.5.0 มาแล้ว — สำรอง SQLite แบบ Point-in-Time ได้จริง พร้อมฟอร์แมต LTX ที่เร็วกว่าและฉลาดกว่า”

หลังจากหลายปีที่ SQLite ถูกมองว่าเหมาะกับงานเล็ก ๆ เท่านั้น เพราะไม่มีระบบสำรองข้อมูลที่ดีพอ ล่าสุด Litestream v0.5.0 ได้เปิดตัวพร้อมฟีเจอร์ใหม่ที่เปลี่ยนเกม — รองรับการกู้คืนฐานข้อมูลแบบ Point-in-Time Recovery (PITR) ด้วยฟอร์แมตใหม่ชื่อว่า LTX ซึ่งช่วยให้การสำรองและกู้คืนข้อมูลมีประสิทธิภาพสูงขึ้นอย่างมาก

Litestream เป็นโปรแกรมโอเพ่นซอร์สที่ทำงานแบบ sidecar คอยจับการเปลี่ยนแปลงในฐานข้อมูล SQLite แล้วส่งไปเก็บไว้ใน object storage เช่น S3, Google Cloud หรือ Azure โดยไม่ต้องแก้ไขแอปพลิเคชันเดิมเลย และเมื่อเซิร์ฟเวอร์ล่ม ก็สามารถกู้คืนฐานข้อมูลกลับมาได้อย่างรวดเร็ว

ในเวอร์ชันใหม่ Litestream ได้นำแนวคิดจาก LiteFS ซึ่งเป็นโปรเจกต์พี่น้องที่ใช้ FUSE filesystem มาใช้ โดยเปลี่ยนจากการเก็บข้อมูลแบบ WAL segment ไปเป็น LTX file ที่สามารถบีบอัดและจัดเรียงข้อมูลได้อย่างมีประสิทธิภาพ ทำให้สามารถกู้คืนฐานข้อมูลได้จากไฟล์เพียงไม่กี่ชุด

ฟอร์แมต LTX ยังช่วยให้ Litestream ไม่ต้องใช้ระบบ “generation” แบบเดิมที่ซับซ้อน เพราะสามารถใช้ transaction ID ที่เพิ่มขึ้นเรื่อย ๆ เพื่อระบุสถานะของฐานข้อมูลในแต่ละช่วงเวลาได้ทันที

นอกจากนี้ Litestream v0.5.0 ยังปรับปรุงระบบ replica ให้รองรับ NATS JetStream, ยกเลิกการใช้ CGO เพื่อให้ cross-compile ได้ง่ายขึ้น และเปลี่ยนมาใช้ modernc.org/sqlite แทน go-sqlite3 เพื่อรองรับระบบ build อัตโนมัติที่หลากหลายมากขึ้น

ข้อมูลสำคัญจากข่าว
Litestream v0.5.0 รองรับ Point-in-Time Recovery ด้วยฟอร์แมต LTX
LTX ช่วยบีบอัดและจัดเรียงข้อมูลแบบ transaction-aware ทำให้กู้คืนได้เร็วขึ้น
ไม่ต้องใช้ระบบ generation แบบเดิมอีกต่อไป ใช้ transaction ID แทน
รองรับการสำรองข้อมูลไปยัง S3, Google Cloud, Azure และ NATS JetStream
ยกเลิก CGO และเปลี่ยนมาใช้ modernc.org/sqlite เพื่อรองรับ cross-compile
เพิ่มระบบ compaction แบบหลายระดับ: 30 วินาที, 5 นาที, 1 ชั่วโมง
รองรับการกู้คืนฐานข้อมูลด้วยไฟล์เพียงไม่กี่ชุดโดยไม่ต้องโหลดทั้งฐาน
ฟีเจอร์ใหม่ในอนาคต: Litestream VFS สำหรับ read-replica แบบทันทีจาก S3

ข้อมูลเสริมจากภายนอก
SQLite ใช้โครงสร้าง B-tree และจัดเก็บข้อมูลเป็น page ขนาด 4KB
WAL (Write-Ahead Logging) เป็นระบบที่ SQLite ใช้เพื่อจัดการการเขียนข้อมูล
LiteFS ใช้ FUSE เพื่อเข้าถึง SQLite โดยตรงและทำ replication แบบ live
Point-in-Time Recovery เป็นฟีเจอร์ที่นิยมในฐานข้อมูลใหญ่ เช่น PostgreSQL
modernc.org/sqlite เป็นไลบรารี Go ที่ไม่ต้องใช้ CGO ทำให้ build ได้ง่ายกว่า

https://fly.io/blog/litestream-v050-is-here/
🗄️ “Litestream v0.5.0 มาแล้ว — สำรอง SQLite แบบ Point-in-Time ได้จริง พร้อมฟอร์แมต LTX ที่เร็วกว่าและฉลาดกว่า” หลังจากหลายปีที่ SQLite ถูกมองว่าเหมาะกับงานเล็ก ๆ เท่านั้น เพราะไม่มีระบบสำรองข้อมูลที่ดีพอ ล่าสุด Litestream v0.5.0 ได้เปิดตัวพร้อมฟีเจอร์ใหม่ที่เปลี่ยนเกม — รองรับการกู้คืนฐานข้อมูลแบบ Point-in-Time Recovery (PITR) ด้วยฟอร์แมตใหม่ชื่อว่า LTX ซึ่งช่วยให้การสำรองและกู้คืนข้อมูลมีประสิทธิภาพสูงขึ้นอย่างมาก Litestream เป็นโปรแกรมโอเพ่นซอร์สที่ทำงานแบบ sidecar คอยจับการเปลี่ยนแปลงในฐานข้อมูล SQLite แล้วส่งไปเก็บไว้ใน object storage เช่น S3, Google Cloud หรือ Azure โดยไม่ต้องแก้ไขแอปพลิเคชันเดิมเลย และเมื่อเซิร์ฟเวอร์ล่ม ก็สามารถกู้คืนฐานข้อมูลกลับมาได้อย่างรวดเร็ว ในเวอร์ชันใหม่ Litestream ได้นำแนวคิดจาก LiteFS ซึ่งเป็นโปรเจกต์พี่น้องที่ใช้ FUSE filesystem มาใช้ โดยเปลี่ยนจากการเก็บข้อมูลแบบ WAL segment ไปเป็น LTX file ที่สามารถบีบอัดและจัดเรียงข้อมูลได้อย่างมีประสิทธิภาพ ทำให้สามารถกู้คืนฐานข้อมูลได้จากไฟล์เพียงไม่กี่ชุด ฟอร์แมต LTX ยังช่วยให้ Litestream ไม่ต้องใช้ระบบ “generation” แบบเดิมที่ซับซ้อน เพราะสามารถใช้ transaction ID ที่เพิ่มขึ้นเรื่อย ๆ เพื่อระบุสถานะของฐานข้อมูลในแต่ละช่วงเวลาได้ทันที นอกจากนี้ Litestream v0.5.0 ยังปรับปรุงระบบ replica ให้รองรับ NATS JetStream, ยกเลิกการใช้ CGO เพื่อให้ cross-compile ได้ง่ายขึ้น และเปลี่ยนมาใช้ modernc.org/sqlite แทน go-sqlite3 เพื่อรองรับระบบ build อัตโนมัติที่หลากหลายมากขึ้น ✅ ข้อมูลสำคัญจากข่าว ➡️ Litestream v0.5.0 รองรับ Point-in-Time Recovery ด้วยฟอร์แมต LTX ➡️ LTX ช่วยบีบอัดและจัดเรียงข้อมูลแบบ transaction-aware ทำให้กู้คืนได้เร็วขึ้น ➡️ ไม่ต้องใช้ระบบ generation แบบเดิมอีกต่อไป ใช้ transaction ID แทน ➡️ รองรับการสำรองข้อมูลไปยัง S3, Google Cloud, Azure และ NATS JetStream ➡️ ยกเลิก CGO และเปลี่ยนมาใช้ modernc.org/sqlite เพื่อรองรับ cross-compile ➡️ เพิ่มระบบ compaction แบบหลายระดับ: 30 วินาที, 5 นาที, 1 ชั่วโมง ➡️ รองรับการกู้คืนฐานข้อมูลด้วยไฟล์เพียงไม่กี่ชุดโดยไม่ต้องโหลดทั้งฐาน ➡️ ฟีเจอร์ใหม่ในอนาคต: Litestream VFS สำหรับ read-replica แบบทันทีจาก S3 ✅ ข้อมูลเสริมจากภายนอก ➡️ SQLite ใช้โครงสร้าง B-tree และจัดเก็บข้อมูลเป็น page ขนาด 4KB ➡️ WAL (Write-Ahead Logging) เป็นระบบที่ SQLite ใช้เพื่อจัดการการเขียนข้อมูล ➡️ LiteFS ใช้ FUSE เพื่อเข้าถึง SQLite โดยตรงและทำ replication แบบ live ➡️ Point-in-Time Recovery เป็นฟีเจอร์ที่นิยมในฐานข้อมูลใหญ่ เช่น PostgreSQL ➡️ modernc.org/sqlite เป็นไลบรารี Go ที่ไม่ต้องใช้ CGO ทำให้ build ได้ง่ายกว่า https://fly.io/blog/litestream-v050-is-here/
FLY.IO
Litestream v0.5.0 is Here
Same Litestream goodness but better, faster, stronger
0 Comments 0 Shares 78 Views 0 Reviews