Is it possible to serialize a 100GB data (vector of tables) into a single FlatBuffer? #8104
Replies: 1 comment
|
The main limitation you'll run into is that traditional FlatBuffers use 32-bit offsets ( A 100 GB FlatBuffer containing a vector of tables is far beyond the range that a 32-bit offset can represent, so I would not expect a single conventional FlatBuffer to work for this use case. The error you're seeing:
suggests you're already running into the current limitations of Given your dataset size, I would seriously consider partitioning it rather than trying to force everything into a single FlatBuffer. Some possible approaches:
For a dataset consisting of ~1000 objects at ~0.1 GB each, chunking often has additional benefits:
For deserialization performance specifically, FlatBuffers already performs very well when data can be accessed directly from memory or via memory mapping. In many large-scale systems, the bottleneck becomes storage I/O rather than the FlatBuffers access layer itself. So unless there has been recent work extending |
Uh oh!
There was an error while loading. Please reload this page.
Uh oh!
There was an error while loading. Please reload this page.
I appreciate the excellent work you’ve done on FlatBuffers.
I have a dataset that I’d like to serialize. It’s a vector of tables, and the total size is over 100GB (approximately 1000 items, each around 0.1GB).
I have a few questions that I hope you could help me with:
Note: currently, offset64 doesn’t support vectors of tables. When I attempt to set offset64, I receive the following message: “only vectors of scalars are allowed to be 64-bit.”
Can you provide any guidance on this? Thanks in advance!
All reactions