TurboKV: คีย์-แวลูสโตร์แบบฝังตัวเขียนด้วย Rust ทำได้ราว 3.9 ล้านคีย์ต่อวินาที
TurboKV: Insanely fast Rust key-value store
TurboKV เป็นฐานข้อมูลคีย์-แวลูแบบฝังตัว (embedded) ที่เขียนด้วยภาษา Rust โดยอธิบายตัวเองว่าเป็น "คีย์-แวลูสโตร์ที่เร็ว เรียบง่าย และฝังตัวได้" มีฟีเจอร์หลักคือ atomic batch, การสแกนช่วงแบบเรียงลำดับ, ความทนทานที่ปรับได้, การบีบอัด และการ compaction เบื้องหลัง
สิ่งที่น่าสนใจที่สุดคือโหมดความทนทาน 3 ระดับที่ให้ผู้ใช้เลือกจุดสมดุลเอง โหมด Fast มองเห็นข้อมูลในหน่วยความจำโดยไม่เขียน write-ahead log, โหมด Durable เขียนต่อท้าย WAL แต่ไม่ sync ทุกครั้ง (กู้คืนได้เมื่อโปรเซสล่ม) และโหมด Paranoid ที่ sync ก่อนตอบกลับทุกครั้งเพื่อการรับประกันสูงสุด
ความสามารถหลักครอบคลุมการทำงานแบบจุด (insert, get, remove), การเขียนเป็นชุด และการสแกนแบบ range/prefix โดยคีย์เรียงตามลำดับพจนานุกรม รองรับอัลกอริทึมบีบอัดหลายตัวทั้ง LZ4, Snappy, Zstd หรือไม่บีบอัดเลย พร้อมระบบ block cache
สถาปัตยกรรมใช้โครงสร้าง LSM-tree ประกอบด้วย memtable, SSTable และ write-ahead log ผลเบนช์มาร์กบนชิป Apple M4 (macOS 15.3.2) แสดงทรูพุตราว 3.9 ล้านคีย์ต่อวินาทีสำหรับการเขียนเป็นชุดแบบเรียงลำดับในโหมด fast โดยตัวเลขจะลดลงเมื่อเลือกโหมดที่ทนทานกว่า ซึ่งเป็นการแลกเปลี่ยนที่คาดเดาได้
โครงการใช้ใบอนุญาต Apache 2.0 ต้องการ Rust เวอร์ชัน 1.85 ขึ้นไป เผยแพร่ผ่าน crates.io พร้อมตัวอย่างการใช้งาน เอกสารประกอบครบถ้วน และรองรับการทำงานแบบ async ผ่าน Tokio