Import CSV Data to DynamoDB

Prerequisite:   Download Dynobase (free to try) in order to follow the steps below
Currently, AWS DynamoDB Console does not offer the ability to import data from a CSV file. You'll need to write a custom script for that. With Dynobase's visual CSV import wizard, it's fast and easy.
Click Import

Open desired table and select Import in the bottom right corner

Select File

Select file for CSV import. After loading it, confirm your selection. Wait until your process finishes

Check results

Once the process completes, hit Execute, or CMD/CTRL + R to load data from the table.

Frequently Asked Questions

Are there other ways to import CSV data to DynamoDB?

Right now, AWS Console does not give you an ability to import data using CSV. However, you can write a script to do that on your own. That obviously is going to take some time and might be buggy. Alternatively, you can use other AWS Services like Data Pipeline or EMR cluster, but this requires a non-trivial amount of knowledge, infrastructure, and time.

Is the DynamoDB import CSV functionality free?

Whether you're using a custom lambda script/pipeline, importing CSV to DynamoDB is unfortunately not free. Dynobase performs a write operation for each line which is converted to a record. The total cost of that operation depends on the amount of data that is going to be written. Use our DynamoDB Pricing Calculator to get an estimate.

How fast is the DynamoDB CSV import process?

It depends on three factors:

  • The amount of data you want to import. Obviously, less data means faster import.
  • Provisioned Write Capacity of your table.
  • The concurrency factor that you select in the Dynobase's Import Wizard. It tells how many writes can happen in parallel.

What about CSV import conflicts? What happens if there's an existing item in the DynamoDB table with same key?

Similar to copying files in any modern OS, Dynobase offers four merging strategies:

  • Overwrite Conflicts - Import process will overwrite data in the table with the data from imported CSV file for any spotted conflict.
  • Skip Conflicts - Import process will ignore duplicates.
  • Merge (Prefer Imported Data) - On conflict, data from the table and the imported file will be merged, records from the file will have a priority meaning that for conflicting attributes, the ones from the CSV file will be preferred.
  • Merge (Prefer Data in the Table) - On conflict, data from the table and the imported CSV file will be merged. Records from the table will have a priority meaning that for conflicting attributes, the ones currently in the table will be preferred.

Product Features

Member Portal
© 2024 Dynobase