Схема NoSQL - PullRequest
       63

Схема NoSQL

0 голосов
/ 21 октября 2019

Я работаю над приложением, в котором мне нужна база данных. Я выбрал NoSQL (DynamoDB) для приложения. Моему уникальному идентификатору присвоено пользовательское подразделение, но его полезная нагрузка представляет собой список объектов. В списке есть 191 объект.

COL1,   COL2
user1, list[191]
user2, list[191]
user3, list[191]

В списке отображаются подробности объекта, такие как:

{
  "district": "Haven Coast",
  "name": "Old Head of Kinsale",
  "position": {
    "lat": 51.619701,
    "lng": -8.542146
  },
  "seen": true,
  "stampAchieved": true
}

Я думаю, что пользователь может получить свой список объектов изDB (около 30 КБ - ограничение 400 КБ). Пользователь будет сканировать QR-код, который будет редактировать поля в объекте отсканированного QR. Эти новые данные списка затем перезаписывают данные списка пользователя.

При просмотре базы данных, похоже, я повторно использую один и тот же список для нескольких пользователей. Мне интересно, следую ли я лучшим образцам для этого варианта использования. Должен ли я колонизировать данные списка?

COL1,    COL2,            COL2,               COL191
user1, district1{...}, district2{...},....district191{...}
user2, district1{...}, district2{...},....district191{...}
user3, district1{...}, district2{...},....district191{...}

Если кто-то сделал что-то подобное или имеет какой-либо вклад, чтобы помочь мне, он был бы очень признателен.

Сделал немного больше исследований и увидел хранилище поддокументов, как на картинке ниже:

subdocumentimage

Что лучше всего подходит для данного варианта использования?

...