Search documentation...

K

DynamoDB

Power internal tools, in-app experiences, and more

Overview

This destination combines the analytical power of your data warehouse to power your high-performance applications at any scale.

Supported syncing

Object TypeDescriptionSupported Sync Modes
ItemsSync rows from any source as items into DynamoDBUpsert

Getting started

To connect to your DynamoDB instance, you need to provide Hightouch access to your AWS account. You can do this via access key or cross-account role. For either method, you must give permission for the following actions:

    "dynamodb:CreateTable",
    "dynamodb:BatchGetItem",
    "dynamodb:BatchWriteItem",
    "dynamodb:PutItem",
    "dynamodb:DescribeTable",
    "dynamodb:DeleteItem",
    "dynamodb:UpdateItem",

Authenticating with a cross-account role

Hightouch recommends using a cross-account role for cleaner access. See our AWS security page to learn more about how to use the cross-account role.

Authenticating with an access key

You can give Hightouch access to your AWS account with an access key. Copy your Access key ID and Secret access key into Hightouch. See the AWS docs for best practices.

Syncing data

Once you've authenticated DynamoDB in Hightouch, you need to set up your sync configuration.

Table selection

In the sync configuration page, select a DynamoDB table to sync to. If your table doesn't exist yet, create it in AWS.

Record matching

Match columns in your model with records in DynamoDB via DynamoDB's primary key. See AWS's guide on how to choose a primary key to learn more.

Hightouch doesn't support the partition key and sort key or composite primary key type.

Field mapping

Hightouch infers field types from the fields values of rows.

Hightouch sends the timestamp field to DynamoDB as an ISO string. If you want to format it differently, format the value in your model and set the type to String.

Delete behavior

When rows are deleted from your source, you can do nothing, clear, or delete them in DynamoDB.

TypeDescription
Do nothingKeep the synced record in your DynamoDB
ClearRemove the synced fields of the synced record from your DynamoDB
DeleteDelete the synced record from your DynamoDB

Deletions are destructive and irreversible. Be sure this is the behavior you want when selecting clear or delete.

Testing a sync

Before running your sync, Hightouch recommends that you test your sync configuration by syncing a single row. You can verify that a row was successfully synced by going to your DynamoDB instance table and finding the synced row by its primary key.

Tips and troubleshooting

Rate limits

DynamoDB has quotas that may limit your syncs. If that happens, Hightouch retries failed rows. For more information, refer to DynamoDB's throughput quotas.

Empty field mappings

DynamoDB is a key/value NoSQL database. That means the database doesn't store metadata on its columns and column names and you won't see any suggested fields during field mapping in Hightouch.

Common errors

To date, our customers haven't experienced any errors while using the DynamoDB destination. If you run into any issues, . We're here to help.

Using the Hightouch debugger

Hightouch provides complete visibility into the API calls made during each of your sync runs. We recommend reading our article on debugging tips and tricks to learn more.

Setting up sync alerts

Hightouch can alert you of sync issues via Slack, PagerDuty, SMS, or email. For details, please visit our article on alerting.

    Need help?

    Our team is relentlessly focused on your success. We're ready to jump on a call to help unblock you.

    • Connection issues with your data warehouse?
    • Confusing API responses from destination systems?
    • Unsupported destination objects or modes?
    • Help with complex SQL queries?

    Feature Requests?

    If you see something that's missing from our app, let us know and we'll work with you to build it!

    We want to hear your suggestions for new sources, destinations, and other features that would help you activate your data.

On this page

OverviewSupported syncingGetting startedAuthenticating with a cross-account roleAuthenticating with an access keySyncing dataTable selectionRecord matchingField mappingTesting a syncTips and troubleshootingRate limitsEmpty field mappingsCommon errorsUsing the Hightouch debuggerSetting up sync alerts

Was this page helpful?