Сжимает ли какая-либо из основных систем баз данных, ориентированных на документы, ключи в своих документах JSON? - PullRequest
4 голосов
/ 08 февраля 2011

Я хотел бы хранить большое количество документов JSON, используя документально-ориентированную базу данных, все с очень похожей схемой (хотя и не идентичной).

Один пример документа:

{
     "firstName": "John",
     "lastName": "Smith",
     "age": 25,
}

Использует ли какая-либо из систем (CouchDB и т. Д.) Сжатие (любого рода), чтобы избежать многократного сохранения строк ключей (например, "firstName")?

Моя мотивация - минимизировать размер базы данных на диске, когда миллионы документов, особенно когда некоторые из повторяющихся ключей намного длиннее, чем, например, "FirstName".

Спасибо за ваши мысли!

W


Редактировать : Подумав об этом больше, я думаю, что я спрашиваю о конкретном случае более общей системы сжатия, в которой словарь сжатия (частично?) Распределяется между несколькими сжатыми документами хранилище документов (и, вероятно, со временем). Тогда это будет обрабатывать сжатие не только ключей JSON.

Было бы интересно сделать!

1 Ответ

2 голосов
/ 16 февраля 2011

Я бы просто добавил документ «сопоставление клавиш», в котором вы храните ключи и их сочетания клавиш ... выполнение сопоставления в бэкэнде не должно вызывать особых проблем ...

{
   FirstName: 'a',
   Town: 'b'
}

{ 
  a: 'Peter',
  b: 'Zurich'
}
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...