要求: 具有2-3級嵌套的Python對象,其中包含整數,字符串,列表和字典等基本數據類型。 (沒有日期等),需要在redis中針對一個密鑰存儲爲json。 什麼是可用於壓縮json作爲低內存佔用字符串的最佳方法。 目標對象不是很大,平均有1000個小元素, 或轉換爲JSON時的大約15000個字符。這是最好的方式來壓縮JSON以存儲在基於內存的商店,如redis或memcache?
例如。
>>> my_dict
{'details': {'1': {'age': 13, 'name': 'dhruv'}, '2': {'age': 15, 'name': 'Matt'}}, 'members': ['1', '2']}
>>> json.dumps(my_dict)
'{"details": {"1": {"age": 13, "name": "dhruv"}, "2": {"age": 15, "name": "Matt"}}, "members": ["1", "2"]}'
### SOME BASIC COMPACTION ###
>>> json.dumps(my_dict, separators=(',',':'))
'{"details":{"1":{"age":13,"name":"dhruv"},"2":{"age":15,"name":"Matt"}},"members":["1","2"]}'
1 /是否有任何其他更好的方法來壓縮JSON來節省存儲器中redis的(也確保重量輕事後進行解碼)。
2 /候選人應該有多好msgpack [http://msgpack.org/]?
3 /我應該考慮像醃菜一樣的選擇嗎?
你的應用程序有什麼要求?你需要表現嗎?可靠性,一致性等?你會考慮redis的替代方案嗎? – drekyn 2013-03-20 14:18:25