Для этого в DynamoDB нет необходимости в другой таблице.Если шаблоны доступа диктуют, что вы храните информацию в другом объекте, пусть будет так, но, скорее всего, она должна быть в той же таблице.Похоже, вам нужно два разных типа элементов в одной таблице.
Для задачи PK userid и SK задачи :: your-task-id.Это позволит вам легко получить все задачи пользователя или даже определенную задачу, если вы знаете идентификатор задачи.Вы могли бы даже иметь атрибут, который является меткой времени, а затем иметь GSI, который представляет собой userID в качестве PK и метку времени в качестве SK.тогда вы можете использовать оператор begin_with на SK и «разбивать на страницы все задачи пользователя, которые находятся в месяце 2019-04».
Для информации пользователя, userID должен быть PK и SKбыть user_info, а атрибуты - информацией о пользователе.
Единственная проблема для этого заключается в том, что вы должны идти на крайние меры, и один пользователь выполняет тысячи операций в секунду.например, "Все твиты от очень популярных знаменитостей".Если у вас есть такой вариант использования, есть и другие способы, например, write sharding .Это всего лишь примеры для вас, чтобы играть.Не зная всех ваших шаблонов доступа, я не могу смоделировать все, что вы, возможно, захотите сделать.Я настоятельно рекомендую вам посмотреть эту презентацию от reInvent 2018 .