The short answer
In traditional architectures, running analytical aggregations directly against operational databases (like Azure Cosmos DB or operational SQL Server) degrades transactional application performance. To avoid this, teams write (CDC) pipelines to extract data into a separate warehouse, introducing pipeline maintenance overhead and data lag.
Azure Synapse Link provides a cloud-native Hybrid Transactional and Analytical Processing (HTAP) capability.
Architecture of Synapse Link for Cosmos DB
Azure Cosmos DB includes an automatic Analytical Store. The analytical store is an internal columnar representation of your documents stored in separate storage .
Cosmos DB Transactional Store (Row-based, SSD)
+---------------------------------------------+
| Handles high-throughput low-latency writes |
+---------------------------------------------+
| automatic background sync (No RU consumption!)
v
Cosmos DB Analytical Store (Columnar, Parquet)
+---------------------------------------------+
| Fully isolated storage for analytical scans |
+---------------------------------------------+
^
| direct queries via T-SQL or Spark
Synapse Serverless SQL / Spark EngineWhen documents are written to the transactional store, Cosmos DB synchronizes them to the analytical store in the background within seconds, without consuming provisioned Request Units (RUs) or impacting operational application throughput.
Querying with Synapse
Data engineers can query the analytical store directly from Synapse Serverless SQL or Synapse Spark notebooks using standard SQL queries, without building ingestion pipelines. This provides near-real-time business intelligence over live operational data with complete workload isolation.
Practical benefits for pipelines
Because Synapse Link does not compete with transactional operations, analysts can query transaction histories throughout the business day. Operational databases remain fast and responsive, while reporting queries run against pre-partitioned columnar stores at a fraction of the cost of running extract-transform-load jobs.