6 điểm bởi xguru 2020-06-22 | 2 bình luận | Chia sẻ qua WhatsApp
  • FlatBuffers, thư viện tuần tự hóa hiệu năng cao của Google, hoạt động dựa trên schema,

FlexBuffers là định dạng chuyên dụng được tạo ra để dùng khi muốn lưu trữ dữ liệu không có schema

  • (Đương nhiên) không thể kiểm tra kiểu, nhưng vẫn có thể truy cập hiệu quả mà không cần phân tích cú pháp/sao chép/cấp phát đối tượng

  • Triển khai mã hóa gọn nhẹ nên trong phần lớn trường hợp tạo ra nhị phân nhỏ hơn FlatBuffers thông thường

→ hiện vẫn chậm hơn FlatBuffers về tốc độ

  • FlatBuffers là thư viện tuần tự hóa đa nền tảng do Google phát triển cho game hoặc các ứng dụng đòi hỏi hiệu năng quan trọng. Hỗ trợ hầu hết các ngôn ngữ

2 bình luận

 
xguru 2020-06-22

Phân loại các thư viện Data Serialization

  • Có schema, cần sao chép: Protobuf[1], Thrift[2], Parquet[3] (dựa trên Thrift) và nhiều loại khác

  • Có schema, zero-copy: Cap'n'proto [4], Flatbuffers[5], Apache Arrow[6] (dựa trên Flatbuffers)

  • Không schema, cần sao chép: Json (bao gồm bản nhị phân và các biến thể khác), XML

  • Không schema, zero-copy: Flexbuffers ⇦ MỚI!

[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

Tôi mang về từ phần bình luận của HN vì ở đó có bản tổng hợp rất tốt: https://news.ycombinator.com/item?id=23588844