Представьте, что у вас есть простой стек AWS с Appsync, Aurora RDS и Cognito.
Очевидно, Cognito управляет процессом регистрации пользователей, где у каждого пользователя есть несколько атрибутов, скажем, email
, first_name
и last_name
.
. Также существует таблица с именемusers
в Aurora RDS, в котором, помимо других столбцов, есть столбец cognito_id
, в котором хранится ссылка на идентификаторы пользователей Cognito.
Последнее - это запрос AppSync GraphQL, в котором перечислены все доступныепользователи с полями, которые должны быть как из таблицы users
RDS, так и из атрибутов Cognito.И вот тут возникает вопрос.
Если бы нужно было только извлекать атрибуты из таблицы users
, проблема была бы решена с помощью небольшого и аккуратного SQL-запроса, который можно было бы вставить в шаблон запроса AppSync VTL.,Но поскольку также требуется получить атрибуты из пула пользователей Cognito, все становится сложнее.
Как можно сделать что-то подобное эффективным и масштабируемым способом?Или это плохой дизайн, и есть лучший способ сделать это?