Ведение истории версий в MongoDB - PullRequest
0 голосов
/ 06 декабря 2018

Я хочу сохранить историю версий каждого поля каждого документа каждой коллекции в MongoDB.

Это то, что у меня есть до сих пор - Для коллекции A я хочу сохранить коллекцию A_revision.

 Collection A - 
  {
    _id: "abcd" : {
      key1: "value4",
      key2: "value2"
    }
  }

Collection A_revision -
{
   _id: "someid": {
       timestamp: 847393,
       userId: "someuserId",
       key1: "value3",
       key1_old: "value1",
       parentId: "abcd",
    }
   _id: "someid2": {
       timestamp: 948392,
       userId: "someuserId",
       key1: "value4",
       key1_old: "value3",
       parentId: "abcd",
    }
}

В приведенном выше примере пользователь с userId "someuserId" изменил значение ключа key1 с "value1" на "value3" на "value4".

Это лучший дизайниз коллекции A_revision, чтобы пойти на это?

PS - Мы будем получать ревизии по требованию (ленивая выборка).

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...