Хабр Курсы для всех
РЕКЛАМА
Практикум, Хекслет, SkyPro, авторские курсы — собрали всех и попросили скидки. Осталось выбрать!
Выбор формата — это компромисс между скоростью сериализации и размером выходных данных. В то же время, не стоит забывать о таких важных параметрах как удобство использования формата и возможность эволюции схемы (часто эти параметры играют доминирующую роль).
Что насчёт CBOR? Он в RFC всё-таки.
Как-то упустил из виду. Результаты такие получились:
Mixed data: ser.: 1279.73 ms; deser. 262.50 ms; size: 23 mb
Only strings: ser.: 2087.63 ms; deser: 472.31 ms; size: 75 mb
Only longs: ser.: 924.74 ms; deser.: 144.96 ms; size: 11 mbИспользовалась эта библиотека: https://github.com/sirthias/borer
Если же определить вручную encoder/decoder, то результаты по объему сериализованных данных следующие:
Mixed data: 21 mb
Only strings: 73 mb
Only longs: 9,9 mbВероятно, что чтобы проще было делать потоковую сериализацию и десериализацию
На будущее: указывайте язык в самом начале.
Сравнение форматов сериализации