Ultra fast JSON encoder and decoder for Python
Project description
UltraJSON
UltraJSON is an ultra fast JSON encoder and decoder written in pure C with bindings for Python 2.5+ and 3.
To install it just run Pip as usual:
$ pip install ujson
Usage
May be used as a drop in replacement for most other JSON parsers for Python:
>>> import ujson >>> ujson.dumps([{"key": "value"}, 81, True]) '[{"key":"value"},81,true]' >>> ujson.loads("""[{"key": "value"}, 81, true]""") [{u'key': u'value'}, 81, True]
Benchmarks
UltraJSON calls/sec compared to three other popular JSON parsers with performance gain specified below each.
Test machine:
Linux version 2.6.32-131.0.15.el6.x86_64
Versions:
ujson: 1.21
simplejson: 2.6.2
cjson: 1.05
yajl: 0.3.5
Python: Python 2.6.6 (r266:84292, Jul 20 2011, 10:22:43)
ujson |
simplejson |
cjson |
yajl |
|
---|---|---|---|---|
Array with 256 utf-8 strings |
||||
Encode |
4090,74 |
899,39 |
83,86 |
3189,86 |
4,55 |
48,78 |
1,28 |
||
Decode |
863,29 |
586,15 |
201,61 |
352,48 |
1,47 |
4,28 |
2,45 |
||
Medium complex object |
||||
Encode |
9750,37 |
1377,15 |
1512,06 |
3341,91 |
7,08 |
6,45 |
2,92 |
||
Decode |
5576,75 |
4247,16 |
3587,83 |
2850,13 |
1,31 |
1,55 |
1,96 |
||
Array with 256 strings |
||||
Encode |
17998,01 |
12954,46 |
8715,02 |
15924,35 |
1,39 |
2,07 |
1,13 |
||
Decode |
14540,71 |
19696,13 |
14908,46 |
9547,14 |
0,74 |
0,98 |
1,52 |
||
Array with 256 doubles |
||||
Encode |
2185,20 |
1466,87 |
1956,99 |
3421,10 |
1,49 |
1,12 |
0,64 |
||
Decode |
16062,01 |
8990,50 |
9743,40 |
8331,74 |
1,79 |
1,65 |
1,93 |
||
Array with 256 True values |
||||
Encode |
69767,60 |
25202,56 |
41145,99 |
64330,76 |
2,77 |
1,70 |
1,08 |
||
Decode |
91416,02 |
56439,97 |
54918,09 |
42786,02 |
1,62 |
1,66 |
2,14 |
||
Array with 256 dict{string, int} pairs |
||||
Encode |
11307,54 |
1830,45 |
2720,90 |
7725,56 |
6,18 |
4,16 |
1,46 |
||
Decode |
8695,94 |
7572,89 |
6076,71 |
5231,32 |
1,15 |
1,43 |
1,66 |
||
Dict with 256 arrays with 256 dict |
||||
Encode |
37,76 |
4,88 |
10,49 |
27,62 |
7,74 |
3,60 |
1,37 |
||
Decode |
17,70 |
15,56 |
11,25 |
12,00 |
1,14 |
1,57 |
1,47 |
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distributions
File details
Details for the file ujson-1.21.zip
.
File metadata
- Download URL: ujson-1.21.zip
- Upload date:
- Size: 193.7 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | 5a7c29344cf23a211d7e07d5c39431efcca4e2746ee283448eceee55fc0a8be6 |
|
MD5 | 4ba075ef996d0225d07d40a786cb3468 |
|
BLAKE2b-256 | 8a84a93140ae4b4bf934184af8c8cc9c8f211b07f61fa113aad7cbbad3c6f534 |
Provenance
File details
Details for the file ujson-1.21.win32-py3.2.exe
.
File metadata
- Download URL: ujson-1.21.win32-py3.2.exe
- Upload date:
- Size: 218.5 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | a63876a6d6243c3627f4418c3c0ff983edade2926cf0757e9d102266eb41eb51 |
|
MD5 | a040e60e7efe1a001cbba2e14935350b |
|
BLAKE2b-256 | 0f3ce20c4b107ce53230b20c832dda05469ca4ea5cb5306d6ed123bb26c7a3d9 |
Provenance
File details
Details for the file ujson-1.21.win32-py2.7.exe
.
File metadata
- Download URL: ujson-1.21.win32-py2.7.exe
- Upload date:
- Size: 218.4 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | cbcc55f813f5c12974ea7caf9f5161d5817e808378f88b81de52ddb4a2bb298c |
|
MD5 | aedd3adc67500468ca0318382cf8a5d1 |
|
BLAKE2b-256 | ab2f770ee9114582e1216f88bd9ee33b0822107fbf6fd5b4b857987305594b8e |
Provenance
File details
Details for the file ujson-1.21.win32-py2.6.exe
.
File metadata
- Download URL: ujson-1.21.win32-py2.6.exe
- Upload date:
- Size: 218.7 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | 90ef576e8baba4ea59ea5e98ac3972852eb1c6c2f1a6f10cad10db5b13a566cb |
|
MD5 | e2f750d10826ff309075912cdb32e565 |
|
BLAKE2b-256 | fba247bb7f68ca594dedf56fe7820c9b5c8e48bd695e92e3d0accd4dfe6b1578 |