FlexBuffers - FlatBuffers'ün Şemasız destek formatı
(google.github.io)- Google'ın yüksek performanslı serileştirme kütüphanesi FlatBuffers şema tabanlı çalışır,
FlexBuffers ise şemasız verileri depolamak gerektiğinde kullanılabilmesi için oluşturulmuş özel bir formattır
-
(Doğal olarak) tip denetimi yapılamaz, ancak parsing/kopyalama/nesne tahsisi olmadan verimli erişim mümkündür
-
Kompakt bir kodlama uygular ve çoğu durumda normal FlatBuffers'ten daha küçük ikili dosyalar üretir
→ ancak hız hâlâ FlatBuffers'ten daha düşüktür
- FlatBuffers, Google tarafından oyunlar veya performansın önemli olduğu uygulamalar için geliştirilen çapraz platform bir serileştirme kütüphanesidir. Çoğu dili destekler
2 yorum
Veri serileştirme kütüphanelerinin sınıflandırılması
Schema'lı, kopyalamalı: Protobuf[1], Thrift[2], Parquet[3](Thrift tabanlı) ve daha fazlası
Schema'lı, zero-copy: Cap'n'proto [4], Flatbuffers[5], Apache Arrow[6](Flatbuffers tabanlı)
Schema'sız, kopyalamalı: Json (ikili ve diğer türevleri dahil), XML
Schema'sız, zero-copy: Flexbuffers ⇦ YENİ!
[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 yorumlarında iyi özetlenmiş, bu yüzden buraya taşıdım: https://news.ycombinator.com/item?id=23588844