2013-08-28 2 views
0

Просто посмотрите, есть ли у кого-либо опыт в следующем. Если я хочу сохранить вложенный объект JSON, который может содержать от 10 до 500 ключей: пары строк, лучше ли хранить вложенный объект JSON в виде строки или сохранить ее как объект? Каково будет наказание памяти за сохранение значения как объекта JSON, а не строки?stringified json vs Использование памяти объекта json в mongodb

ответ

1

Вы можете проверить размер документа с Object.bsonsize() в mongoshell

Например:

> Object.bsonsize({}) 
5 
> Object.bsonsize({a:''}) 
13 
> Object.bsonsize({a:'',b:''}) 
21 
> Object.bsonsize({a:'',b:'',c:''}) 
29 

> Object.bsonsize({a:{a:'',b:'',c:''}}) 
37 
> Object.bsonsize({a:{a:'',b:''}}) 
29 
> Object.bsonsize({a:{a:''}}) 
21 

> Object.bsonsize({a:"{a:'',b:'',c:''}"}) 
29 
> Object.bsonsize({a:"{a:'',b:''}"}) 
24 
> Object.bsonsize({a:"{a:''}"}) 
19 

> Object.bsonsize({a:""}) 
13 
> Object.bsonsize({ab:""}) 
14 
> Object.bsonsize({abc:""}) 
15 

Он похож на меня, что пустой документ является 5 байт одна пустая строка 7 байт плюс каждый символ в имени - 1 байт, а каждый в содержимом - 1 байт.

+0

Чтобы добавить к исследованию @ attish, вы должны измерить использование памяти на стороне приложения с помощью объекта или добавления вызова JSON.parse в строку. – booyaa

Смежные вопросы