Dynamodb для пользователей таблицы - PullRequest
0 голосов
/ 29 июня 2018

Насколько я понимаю, у Dynamodb есть два способа определения первичных ключей: одиночные первичные ключи, которые используют только ключ разделения, и составные ключи, которым необходимо указать и ключ разделения, и ключ сортировки.

Сейчас я застрял в том, что не уверен, что для этого случая таблица users должна иметь один первичный ключ или составной.

Здесь , например, говорит, что хорошим примером для одного первичного ключа является таблица пользователей, но я не уверен, насколько она верна.

1 Ответ

0 голосов
/ 13 апреля 2019

Как правило, вы можете выдвинуть в качестве первичного ключа пользователя email и сделать его ключом раздела.

Когда я столкнулся с той же проблемой, я сделал это, используя 2 таблицы:

В таблице 1 у меня были все пользовательские данные, например:

LICENSE_NUMBER, NAME, EMAIL, PASSWORD, ETC ... где "LICENSE_NUMBER" - это первичный ключ, который в основном используется для идентификации пользователя при необходимости.

... И у меня также была таблица 2 , имеющая следующие поля:

EMAIL, LICENSE_NUMBER, ETC ... где «EMAIL» используется для получения «LICENSE_NUMBER», когда пользователь входит в систему.

Окончательное рассмотрение:

Поскольку DynamoDB не разрешает операции JOIN, мне пришлось разделить две таблицы и эмулировать объединение, создавая две таблицы с одним первичным ключом в каждой, но привязанные к одним и тем же полям Email / Licence_number.

Надеюсь, это поможет вам при выборе правильного шаблона для построения пользовательской таблицы.

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