Design considerations - Guidance for User Profiles Export with Amazon Cognito

Design considerations

One-way scheduled export

This guidance automatically exports data from your primary user pool to Amazon DynamoDB on a scheduled basis. If you create a new user pool and populate it by running the ImportWorkflow AWS Step Functions workflow, you can configure scheduled exports of this new user pool by launching a new instance of this guidance and configuring it to point to the new user pool.

Guidance configuration

There are two parameters you can use to influence the guidance’s behavior.

Export frequency

This parameter sets the schedule expression for the Amazon CloudWatch Events rule that starts the ExportWorkflow Step Functions workflow. There are options for every day, seven days, or 30 days. If you require a different schedule, update the CloudWatch Events rule after the guidance is deployed.

Cognito transactions per second (TPS)

This parameter sets the maximum number of times an Amazon Cognito API is called per second. While the ExportWorkflow Step Functions workflow is running, API calls are made to list users and groups in the primary user pool. When the ImportWorkflow Step Functions workflow is running, it adds groups and adds users to groups. These API calls count against your existing Cognito API limits. This parameter can reduce the risk of the guidance inadvertently impacting your applications. Lowering this value results in this guidance taking longer to run.

User pool Cognito TPS setting Action Approximate run time

10,000 users No groups

10

Sync workflow

2.62 minutes

Recovery workflow

8.13 minutes

5

Sync workflow

2.66 minutes

Recovery workflow

8.32 minutes

10,000 users Each user in one group

10

Sync workflow

4.76 minutes

Recovery workflow

29.24 minutes

5

Sync workflow

4.82 minutes

Recovery workflow

47.73 minutes

100,000 users No groups

10

Sync workflow

21.82 minutes

Recovery workflow

56.31 minutes

100,000 users Each user in one group

10

Sync workflow

40.26 minutes

Recovery workflow

290.24 minutes

250,000 users No groups

10

Sync workflow

54.79 minutes

Recovery workflow

128.2 minutes

250,000 users Each user in one group

10

Sync workflow

98.65 minutes

Recovery workflow

678.29 minutes

500,000 users No groups

10

Sync workflow

146.52 minutes

Recovery workflow

247.63 minutes

500,000 users Each user in one group

10

Sync workflow

181.46 minutes

Recovery workflow

1,313.31 minutes