6 คะแนน โดย xguru 2020-06-22 | 2 ความคิดเห็น | แชร์ทาง WhatsApp
  • FlatBuffers ไลบรารีซีเรียลไลซ์ประสิทธิภาพสูงของ Google ทำงานบนพื้นฐานของสคีมา

FlexBuffers คือฟอร์แมตเฉพาะที่สร้างขึ้นเพื่อใช้เมื่อต้องการจัดเก็บข้อมูลที่ไม่มีสคีมา

  • แม้จะไม่สามารถทำ type checking ได้ แต่ก็เข้าถึงข้อมูลได้อย่างมีประสิทธิภาพโดยไม่ต้อง parsing/copying/allocate object

  • ใช้การเข้ารหัสแบบกะทัดรัด จึงสร้างไบนารีที่มีขนาดเล็กกว่า FlatBuffers ปกติได้ในกรณีส่วนใหญ่

→ แต่ตอนนี้ความเร็วยังช้ากว่า FlatBuffers

  • FlatBuffers คือไลบรารีซีเรียลไลซ์ข้ามแพลตฟอร์มที่ Google พัฒนาขึ้นสำหรับเกมหรือแอปพลิเคชันที่ต้องการประสิทธิภาพสูง รองรับภาษาส่วนใหญ่

2 ความคิดเห็น

 
xguru 2020-06-22

การจัดประเภทของไลบรารี 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/

 
xguru 2020-06-22

มีการสรุปไว้ดีมากในคอมเมนต์ของ HN เลยนำมาฝาก https://news.ycombinator.com/item?id=23588844