It is easy to capture changes to items stored in a DynamoDB table, at the point in time when such changes occur. DynamoDB Streams captures a time-ordered sequence of item-level modifications in any DynamoDB table and stores this information in a log for up to 24 hours. Applications can access this log and view the data items as they appeared before and after they were modified.

You can enable a stream on a new table when you create it. You can also enable or disable a stream on an existing table, or change the settings of a stream.

Step 1 –  Login to AWS Management Console

Step 2 – On the DynamoDB console dashboard, choose Create Tables  (if table already exist then go to Step 4)

Step 3 – Provide Table name and Partition Key and leave rest as default and click Create


Step 4 – It will create the table and show it as shown below. By default the option stream enabled is set to NO. Click on Manage Stream



Step 5 – Select option New image and click Enable. This will send the entire item for INSERT, MODIFY and REMOVE  status to the DynamoDB Stream.

Step 6 – Once DynamoDB stream is enabled it will appear as below. You can enable or disable a stream at any time. When you set Stream enabled to true, DynamoDB creates a new stream with a unique stream descriptor assigned to it. If you disable and then re-enable a stream on the table, a new stream is created with a different stream descriptor. Make sure the trigger is enabled again in Lambda function with latest ARM of DynamoDB Stream.