Hi,

I was at the Contributor’s Summit where it was discussed, so I know there were 
good reasons to deprecate the binary json format.  The actual changes looks to 
have been done in https://codereview.qt-project.org/c/qt/qtbase/+/265312.

IIUC, the original intent was that parsing the JSON creates a lookup table to 
speed up subsequent access, and the binary format saved that table to disk (or 
for streaming).  This allowed “opening the JSON” (technically no longer JSON?) 
much more quickly.

Is such a mechanism still available currently?  Or is parsing the data from 
scratch necessary now?

For reference, I tried the deprecated calls and also used the conversion tool 
to convert to CBOR and tried reading that.  With a particular (~20MB) JSON file 
from a REST call, parsing the CBOR version of the file was about twice as fast 
as JSON, while the binary JSON format was about 2.5x *slower* than parsing the 
JSON (just measuring the document creation time).

FWIW, if the capability is no longer available, the overview for Qt JSON 
(https://doc.qt.io/qt-5/json.html) should probably have “It also contains 
support for saving this data in a binary format that is directly "mmap"-able 
and very fast to access” removed.

Thanks!
Brett


_______________________________________________
Development mailing list
Development@qt-project.org
https://lists.qt-project.org/listinfo/development

Reply via email to