How we made our MMDB files a 33% smaller
ipinfo.io
ipinfo.io
The interesting thing here is that the format is still the same.
I read the original spec and it did call out that
> In practice, data deduplication is handled by pointers, making this type unnecessary.
If any entry can be a pointer, you can shrink this recursively for each field type like a .strings table design.
I wonder - if the number of nodes goes down enough then they could reduce the number of bits for the record_size and save another 12-25%