FlexBuffers - ฟอร์แมตแบบไม่ต้องมีสคีมาของ FlatBuffers
(google.github.io)- FlatBuffers ไลบรารีซีเรียลไลซ์ประสิทธิภาพสูงของ Google ทำงานบนพื้นฐานของสคีมา
FlexBuffers คือฟอร์แมตเฉพาะที่สร้างขึ้นเพื่อใช้เมื่อต้องการจัดเก็บข้อมูลที่ไม่มีสคีมา
-
แม้จะไม่สามารถทำ type checking ได้ แต่ก็เข้าถึงข้อมูลได้อย่างมีประสิทธิภาพโดยไม่ต้อง parsing/copying/allocate object
-
ใช้การเข้ารหัสแบบกะทัดรัด จึงสร้างไบนารีที่มีขนาดเล็กกว่า FlatBuffers ปกติได้ในกรณีส่วนใหญ่
→ แต่ตอนนี้ความเร็วยังช้ากว่า FlatBuffers
- FlatBuffers คือไลบรารีซีเรียลไลซ์ข้ามแพลตฟอร์มที่ Google พัฒนาขึ้นสำหรับเกมหรือแอปพลิเคชันที่ต้องการประสิทธิภาพสูง รองรับภาษาส่วนใหญ่
2 ความคิดเห็น
การจัดประเภทของไลบรารี Data Serialization
มีสคีมา, แบบคัดลอกข้อมูล: Protobuf[1], Thrift[2], Parquet[3](อิงกับ Thrift) และอื่น ๆ อีกมาก
มีสคีมา, zero-copy: Cap'n'proto [4], Flatbuffers[5], Apache Arrow[6](อิงกับ Flatbuffers)
ไม่มีสคีมา, แบบคัดลอกข้อมูล: Json (รวมถึงแบบไบนารีและรูปแบบแปรผันอื่น ๆ), XML
ไม่มีสคีมา, zero-copy: Flexbuffers ⇦ ใหม่!
[1] https://developers.google.com/protocol-buffers
[2] http://thrift.apache.org/
[3] https://parquet.apache.org/
[4] https://capnproto.org/
[5] https://google.github.io/flatbuffers/
[6] https://arrow.apache.org/
มีการสรุปไว้ดีมากในคอมเมนต์ของ HN เลยนำมาฝาก https://news.ycombinator.com/item?id=23588844