For this kind of problems (synchronization of source database into Redshift) you have basically two common solutions:
- (A) create application that periodically polls input database, detects delta and ingest detected delta data into Redshift
- (B) use AWS Kinesis Firehose
Option B is much easier to implement, as you basically use dedicated AWS service for this purpose. However it is suitable only for source databases supported by Firehose. Luckily for you, DynamoDB is supported as input source for Firehose. Also you need to calculate an extra cost associated with Kinesis itself, Lambda used for record conversions, etc. to be sure that this option is valid for you from economical point of view. See this article to see how you can connect DynamoDB streams with Kinesis using Firehose.
Option A is usually a valid solution for source databases not supported by Firehose.