Microsoft Azure Data FundamentalsDescribe how to work with non-relational data on AzureMedium
A web application generates a high volume of small, transient messages that need to be processed asynchronously by backend workers. The messages should be ordered, and the system needs to guarantee at-least-once delivery. Which Azure non-relational data service is best suited for this messaging pattern?
- AAzure Data Lake Storage Gen2
- BAzure Queue Storage
- CAzure Cosmos DB
- DAzure Blob Storage
Show answer & explanationAnswer & explanation
Correct answer: B. Azure Queue Storage
Azure Queue Storage is specifically designed for storing large numbers of messages that can be retrieved by an application. It provides reliable, at-least-once delivery and supports message ordering (though not strictly guaranteed for all scenarios, it's generally maintained for simple queues). Its cost-effectiveness and simplicity make it ideal for decoupling application components with asynchronous messaging.
Why the other options are wrong
- A. Azure Data Lake Storage Gen2 is for big data analytics, not for transient message queuing.
- C. Azure Cosmos DB is a NoSQL database for structured data, not a messaging service.
- D. Azure Blob Storage is for storing unstructured binary data, not for message queues.
Azure Queue Storage
A service for storing large numbers of messages that can be accessed from anywhere in the world via authenticated HTTP or HTTPS calls.
- Decouples application components.
- Provides at-least-once message delivery.
- Highly scalable and cost-effective for message queuing.
Memory trick: Queues line up messages for processing.