This post is part of a series focusses on the CosmosDb exam topics. Once ready, I will update this page with links to the other pages.
- Design and implement data models
- Design and implement data distribution
- Integrate an Azure Cosmos DB solution (you are here)
- Optimize an Azure Cosmos DB solution
- Maintain an Azure Cosmos DB solution
Integrate an Azure Cosmos DB solution (5 – 10%)
Enable Azure Cosmos DB analytical workloads
Enable Azure Synapse Link
Azure CosmosDb Synapse Link means you can directly connect Azure Cosmos DB containers and Azure Synapse Analytics with no separate connectors. Synapse currently supports Synapse Link with Synapse Apache Spark and serverless SQL pool.
Turning on Synapse is pretty easy for new containers (there’s a toggle in the GUI or pass in AnalyticalStoreTimeToLiveInSeconds programmatically), but existing ones currently have to register which can take up to a week.
It’s also worth noting that when you enable this, it will incur a cost and this currently cannot be turned off (you can delete the resource but that’s the only way).
You can’t have both continuous backups and Synapse links on in the same way as they use the same connection method. You can have periodic backups and Synapse, but not continuous and Synapse.
Choose between Azure Synapse Link and Spark Connector
Enable the analytical store on a container
https://docs.microsoft.com/en-us/azure/cosmos-db/configure-synapse-link
Enable a connection to an analytical store and query from Azure Synapse Spark or Azure
Synapse SQL
https://docs.microsoft.com/en-us/azure/cosmos-db/sql/create-sql-api-spark
Perform a query against the transactional store from Spark
Write data back to the transactional store from Spark
Implement solutions across services
Integrate events with other applications by using Azure Functions and Azure Event Hubs
https://docs.microsoft.com/en-us/azure/azure-functions/functions-create-cosmos-db-triggered-function
Denormalize data by using Change Feed and Azure Functions
https://docs.microsoft.com/en-us/azure/cosmos-db/sql/change-feed-design-patterns
Enforce referential integrity by using Change Feed and Azure Functions
Aggregate data by using Change Feed and Azure Functions, including reporting
This and the next couple are basically the same as the above links in my opinion. The change feed is an incredibly useful tool that allows you to process pretty much everything async within the context of your database.
You can use the feed to create aggregate columns or summary tables etc for quick querying.
Archive data by using Change Feed and Azure Functions
For archiving, use the change feed to monitor writes and move them into long-term storage.
Implement Azure Cognitive Search for an Azure Cosmos DB solution
https://docs.microsoft.com/en-us/azure/search/search-howto-index-cosmosdb