Crates.io | jsondata |
lib.rs | jsondata |
version | 0.8.1 |
source | src |
created_at | 2018-12-23 16:37:49.386035 |
updated_at | 2022-10-20 08:16:16.212453 |
description | JSON processing package for document databases |
homepage | |
repository | https://github.com/bnclabs/jsondata |
max_upload_size | |
id | 103424 |
size | 7,090,611 |
This crate makes several trade-offs that are tuned for big-data and document database.
Useful links
Converting JSON numbers to Rust native type is not always desired. Especially in the context of big-data where data is stored in JSON format and we need to lookup, only, specific fields within the document.
This implementation provides deferred conversion for JSON numbers that leads to a performance improvement of upto 30%.
Caveat: If numerical text is greated than 128 characters, deferred conversion won't work, that is, text shall be parsed immediately.
Using Json Pointer it is possible to identify a specific field nested within a JSON document. For Example, with below document:
{
"age": 26,
"eyeColor": "green",
"name": "Leon Robertson",
"gender": "male",
"company": "AEORA",
"phone": "+1 (835) 447-2960",
"tags": [ "officia", "reprehenderit", "magna" ],
"friends": [
{
"id": 0,
"name": "Glenda Chan"
}
]
}
26
.[ "officia", "reprehenderit", "magna" ]
."officia"
.[{"id": 0, "name": "Glenda Chan"}]
."Glenda Chan"
.List of operations
Useful links
Detailed description can be found here.
make build
to confirm all versions of build is passing with
0 warnings and 0 errors.check.sh
with 0 warnings, 0 errors and all testcases passing.perf.sh
with 0 warnings, 0 errors and all testcases passing.cargo spellcheck
to remove common spelling mistakes.