Two-way sync
Changes in Amazon DynamoDB or Azure Cosmos DB instantly reflect in both systems. No stale data, no manual imports.
Keep Amazon DynamoDB and Azure Cosmos DB in sync without custom scripts. Cut weeks of integration work, eliminate silent data drift, and give your team a single, reliable source of truth.
Two databases that must agree is one of the oldest problems in engineering: different engines for different workloads, separate services with overlapping reference data, a migration in flight, or regional instances that share a subset of records. Hand-rolled replication across systems means change capture, conflict handling, and type mapping, all built and maintained by your team.
Stacksync syncs tables or collections between Amazon DynamoDB and Azure Cosmos DB continuously and bi-directionally, translating types between the two engines and resolving conflicts by rules you configure. Rows written on either side appear on the other within seconds.
Keep the same dataset live in both Amazon DynamoDB and Azure Cosmos DB, so each workload runs on the engine that suits it.
When one database is replacing the other, sync both directions during the transition and switch traffic when ready, without a freeze window.
Services that own separate databases stay consistent on the records they share, without a custom replication layer.
Representative objects on each side — any object or custom field can map to any target. Schemas are auto-detected; types are converted between the two systems.
| Amazon DynamoDB objects | Azure Cosmos DB objects | How this pairing syncs | |
|---|---|---|---|
| DynamoDB Streams Ordered item-level change records (INSERT, MODIFY, REMOVE) with old/new image views and 24-hour retention; the native change-data-capture source Stacksync reads for near-real-time sync. | Stored procedures and triggers Server-side logic scoped to a partition; relevant when writes must respect existing validation. | DynamoDB Streams is specific to Amazon DynamoDB and Stored procedures and triggers to Azure Cosmos DB — each maps to any object or custom field on the other side. | |
| Global Tables Multi-region, active-active replicas of a table kept in sync by DynamoDB; each region is read and written locally with last-writer-wins conflict resolution. | Databases Top-level namespaces that scope containers and throughput provisioning. | Global Tables is specific to Amazon DynamoDB and Databases to Azure Cosmos DB — each maps to any object or custom field on the other side. | |
| Time to Live (TTL) Per-item expiry timestamps; DynamoDB deletes expired items in the background and emits a Streams REMOVE record for each deletion. | Containers The unit of partitioning and throughput; each container maps to a synced collection. | Time to Live (TTL) is specific to Amazon DynamoDB and Containers to Azure Cosmos DB — each maps to any object or custom field on the other side. | |
| Tables Top-level containers, each with a partition key and optional sort key; Stacksync syncs a table as a stream of items with full read and write via PutItem, UpdateItem, and DeleteItem. | Items (JSON documents) Schema-flexible JSON records read and written during sync; nested structures are flattened or mapped as needed. | Tables is specific to Amazon DynamoDB and Items (JSON documents) to Azure Cosmos DB — each maps to any object or custom field on the other side. | |
| Items Individual schemaless records (attributes up to 400 KB each); read with GetItem, Query, and Scan and written with PutItem or BatchWriteItem, so write is supported here. | Partition keys Determine data distribution and must be included on writes for the sync to route items correctly. | Items is specific to Amazon DynamoDB and Partition keys to Azure Cosmos DB — each maps to any object or custom field on the other side. | |
| Global secondary indexes (GSIs) Alternate key projections that let you Query by non-key attributes without a full table Scan; read-only views maintained automatically by DynamoDB. | Change feed entries Ordered record of inserts and updates per partition, consumed for incremental sync. | Global secondary indexes (GSIs) is specific to Amazon DynamoDB and Change feed entries to Azure Cosmos DB — each maps to any object or custom field on the other side. |
Each direction of the sync is driven by what the source system can signal and what the destination accepts — detection, delivery, and expected latency below.
DetectionChanges in Amazon DynamoDB are captured at the source via change data capture — no polling loop against its API. DynamoDB Streams emit ordered item-level change records (INSERT, MODIFY, REMOVE) with KEYS_ONLY, NEW_IMAGE, OLD_IMAGE, or NEW_AND_OLD_IMAGES views.
DeliveryEach detected change is applied to Azure Cosmos DB as a row-level write, with types converted between the two schemas.
DetectionChanges in Azure Cosmos DB are captured at the source via change data capture — no polling loop against its API. Built-in change feed exposing inserts and updates in order within each partition key range.
DeliveryEach detected change is applied to Amazon DynamoDB as a row-level write, with types converted between the two schemas.
Real-time sync, workflow automation, event queues, EDI, and monitoring, for every Amazon DynamoDB–Azure Cosmos DB connection.
Changes in Amazon DynamoDB or Azure Cosmos DB instantly reflect in both systems. No stale data, no manual imports.
Trigger automated workflows whenever Amazon DynamoDB or Azure Cosmos DB data changes, update records, fire webhooks, or kick off sequences without brittle API scripts.
Handle millions of events per minute without losing a single Amazon DynamoDB or Azure Cosmos DB record.
Track your Amazon DynamoDB ⇄ Azure Cosmos DB sync health, view errors, and replay failed events in one click.
Transform legacy EDI complexity into simple database interactions between Amazon DynamoDB and Azure Cosmos DB.
Configure and sync within minutes, no code. Whether you sync 50k or 100M+ records, Stacksync handles the queues, infra, and plumbing. Integrations are non-invasive and need zero setup on your systems.
Authenticate Amazon DynamoDB and Azure Cosmos DB with each platform's native method — OAuth, API keys, or service accounts — plus secure options like SSH tunneling, IP whitelisting, and VPC peering.
Pick the Amazon DynamoDB and Azure Cosmos DB objects to sync — Stacksync auto-detects both schemas, including custom fields where the platform exposes them. Sync to existing tables, or let Stacksync create new ones with ideal data types.
Fields map automatically even when names and types differ. Stacksync handles transformation and type casting for you, zero configuration required.
Yes. Stacksync provides a managed, real-time two-way integration between Amazon DynamoDB and Azure Cosmos DB: authenticate both systems, choose the objects to sync (such as Amazon DynamoDB's DynamoDB Streams and Global Tables), map fields visually, and changes propagate both ways in milliseconds — no code required.
Change detection on Amazon DynamoDB: DynamoDB Streams emit ordered item-level change records (INSERT, MODIFY, REMOVE) with KEYS_ONLY, NEW_IMAGE, OLD_IMAGE, or NEW_AND_OLD_IMAGES views and 24-hour retention, read via shard iterators (or Kinesis Data Streams for longer retention). No native HTTP webhooks. On Azure Cosmos DB: Built-in change feed exposing inserts and updates in order within each partition key range. Each detected change propagates to the other side in milliseconds, with field-level conflict resolution and an inspectable event log.
On the Amazon DynamoDB side: Global secondary indexes (GSIs), Local secondary indexes (LSIs), DynamoDB Streams, Global Tables, plus custom fields where Amazon DynamoDB exposes them. On the Azure Cosmos DB side: Stored procedures and triggers, Databases, Containers, Items (JSON documents). Stacksync auto-detects both schemas and converts types between the two systems.
Yes. Each object mapping can be bidirectional or restricted to a single direction (both systems accept writes). Read-only mirrors, one-way pushes, and full two-way sync can be mixed in the same integration.
Common patterns for Amazon DynamoDB and Azure Cosmos DB: Cross-engine sync; Migration with zero-downtime cutover; Shared reference data between services. Keep the same dataset live in both Amazon DynamoDB and Azure Cosmos DB, so each workload runs on the engine that suits it.
Amazon DynamoDB: AWS SDK / low-level HTTPS JSON API at dynamodb.<region>.amazonaws.com (PutItem, GetItem, UpdateItem, DeleteItem, Query, Scan, BatchWriteItem, TransactWriteItems), plus PartiQL (ExecuteStatement) for SQL-style access and DynamoDB Streams for change capture. Authentication: AWS Signature Version 4 (SigV4) signed requests using an IAM access key ID and secret key, or temporary STS credentials from an assumed IAM role; IAM policies scope access down to table and item level. Azure Cosmos DB: REST API and SDKs over HTTPS (API for NoSQL, formerly the SQL API); also MongoDB, Cassandra, Gremlin, and Table API surfaces. Authentication: Account keys, resource tokens, or Microsoft Entra ID role-based access. Stacksync manages authentication, retries, and rate limits on both sides.
As a data company, we understand the importance of keeping your data secure. Stacksync is built with security best practices to keep your data safe at every layer, and is DPF-certified for US, EU, UK and CH data transfers.
Let your users access Stacksync from your centralized user management systems. Works with Okta, Azure, Google SSO and more.
Immediately get alerted about record syncing issues over email, Slack, PagerDuty and WhatsApp. Resolve issues from a centralized dashboard with retry and revert options.
Securely connects to your systems with:
Every pair below is a real-time, two-way sync. Search all 470 integrations available for Amazon DynamoDB and Azure Cosmos DB.