Использование номеров НДС в качестве ключа раздела для хранения предприятий в DynamoDB - PullRequest
0 голосов
/ 08 октября 2018

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

  • Номер НДС (всегда уникальный)
  • Название компании
  • Код страны (очень ограниченный набор, 2 или 3 возможности)
  • Адрес

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

Есть ли лучший кандидат, которого я не вижу?

1 Ответ

0 голосов
/ 09 октября 2018

При работе с DynamoDB вы всегда должны помнить, какой ответ должна отвечать ваша таблица.

При использовании VAT в качестве ключа раздела все записи будут равномерно распределены по разделам.

Сделав это, вы сможете получить в O (1) любой элемент по его VAT.

Если вы хотите получить доступ к компаниям по имени, Company name, этотакже хороший кандидат на ключ раздела, , пока он уникален .Вы также можете сохранить VAT в качестве ключа раздела и создать глобальный вторичный индекс с ключом раздела Company name.

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

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