Сжимает ли какая-либо из основных систем баз данных, ориентированных на документы, ключи в своих документах JSON?
Я хотел бы хранить большое количество документов JSON, используя документально-ориентированную базу данных, все с очень похожей схемой (хотя и не идентичной).
Один пример документа:
{
"firstName": "John",
"lastName": "Smith",
"age": 25,
}
Использует ли какая-либо из систем (CouchDB и т. Д.) Сжатие (любого рода), чтобы избежать многократного хранения строк ключей (например, "firstName")?
Моя мотивация состоит в том, чтобы минимизировать размер базы данных на диске, когда есть миллионы документов, особенно когда некоторые из повторяющихся ключей намного длиннее, чем, например, "firstName".
Спасибо за ваши мысли!
W
Изменить: Подумав об этом больше, я думаю, что спрашиваю о конкретном случае более общей системы сжатия, в которой словарь сжатия (частично?) Распределяется между несколькими сжатыми документами в хранилище документов (и, вероятно, создается поверх время). Это тогда обработало бы сжатие больше чем просто ключи JSON.
Было бы интересно сделать!
1 ответ
Я бы просто добавил документ "сопоставление клавиш", в котором вы храните ключи и их сочетания клавиш... выполнение сопоставления в бэкэнде не должно вызывать особых проблем...
{
FirstName: 'a',
Town: 'b'
}
{
a: 'Peter',
b: 'Zurich'
}