Amazon DynamoDB Destination Component
The Amazon DynamoDB Destination Component is an SSIS data flow pipeline component that can be used to write data to Amazon DynamoDB. You can Insert, Update, Upsert, and Delete records using this component. There are three pages of configuration:
- General
- Columns
- Error Handling
The General page is used to specify general settings for the Amazon DynamoDB Destination component. The Columns page is used to manage columns from the upstream component. The Error Handling page allows you to specify how errors should be handled when they occur.
General Page
The General page allows you to specify general settings for the component.
- Connection Manager
-
The Amazon DynamoDB Destination Component requires a connection. The Connection Manager option will show all Amazon DynamoDB connection managers that have been created in the current SSIS package or project.
- Table
-
The Table option allows you to specify which table object to write data to. A drop down with the available tables is listed here.
- Action
-
The Action option allows you to specify how data should be written to Amazon DynamoDB. There are currently four (4) supported action types, and for some actions, the primary fields (Partition Key and Sort Key) are required.
- Insert: Inserts new record(s).
- Update: Update existing record(s).
- Upsert: Update an existing record if it exists, otherwise it creates a new one.
- Delete: Delete record(s).
- Batch Size
-
The Batch Size option allows you to specify how many records to send in a request. Note that this option is only available for Upsert and Delete actions, otherwise, the field will be disabled and set to 1.
- Refresh Component Button
-
Clicking the Refresh Component Button will bring up a prompt for you to confirm the refresh. After clicking “OK”, it will remove any existing columns and add any columns it can find in the specified table.
- Reset Columns Button
-
Clicking the Reset Columns button will bring up a prompt for you to confirm the reset. After clicking “OK”, it will remove any existing columns and replace them with that of the Input Columns.
- Map Unmapped Fields Button
-
By clicking this button, the component will try to map any unmapped attributes by matching their names with the input columns from upstream components.
- Clear All Mappings Button
-
By clicking this button, the component will reset (clear) all your mappings in the destination component.
- Expression fx Icon
-
Click the blue fx icon to launch SSIS Expression Editor to enable dynamic updates of the property at run time.
- Generate Documentation Icon
-
Click the Generate Documentation icon to generate a Word document that describes the component's metadata including relevant mapping, and so on.
Columns Page
The Columns page of the Amazon DynamoDB Destination Component allows you to map the columns from upstream components to the Amazon DynamoDB Fields.
On the Columns page, you would see a grid that contains four columns as shown below.
- Input Column: You can select an input column from an upstream component here.
- DynamoDB Field: The Amazon DynamoDB field that you are writing data to.
- Data Type: This column indicates the type of value for the current field.
- Unmap: This column can be used to unmap the field from the upstream input column, or otherwise it can be used to map the field to an upstream input column by matching its name if the field is not currently mapped.
- Rows to scan to detect fields: This option allows you to specify the number of rows to scan in order to detect the table metadata, mainly the column information.
- The properties window for the field selected. These values are configurable.
- Name: Specify the column name.
- DynamoDB Type: Specify the data types in Amazon DynamoDB, which include scalar types, document types, and set types.
- Data Type: The data type can be changed accordingly.
- Length: If the data type specified is a string, the length specified here would be the maximum size. If the data type is not a string, the length will be ignored.
- Precision: Specify the number of digits in a number.
- Scale: Specify the number of digits to the right of the decimal point in a number.
- CodePage: Specify the Code Page of the field.
- Import External Column: Option to import the columns and their properties from a file.
- Export External Column: Option to save the columns and their properties to a JSON file later for reuse.
- + sign: Add field to DynamoDB.
- - sign: Remove field from DynamoDB.
- Arrows: Move the fields to a desired location.
Error Handling Page
The Error Handling page allows you to specify how errors should be handled when they happen.
There are three options available.
- Fail on error
- Redirect rows to error output
- Ignore error
When the Redirect rows to error output option is selected, rows that failed to write to the Amazon DynamoDB will be redirected to the ‘Error Output’ output of the Destination Component. As indicated in the screenshot below, the blue output connection represents rows that were successfully written, and the red ‘Error Output’ connection represents rows that were erroneous. The ‘ErrorMessage’ output column found in the ‘Error Output’ may contain the error message that was reported by the server or the component itself.