Developing Solutions for Microsoft Azure: Designing Photo Processing with Azure Blob Storage Change Feed

Designing Photo Processing with Azure Blob Storage Change Feed

Question

Note: This question is part of a series of questions that present the same scenario.

Each question in the series contains a unique solution that might meet the stated goals.

Some question sets might have more than one correct solution, while others might not have a correct solution.

After you answer a question in this section, you will NOT be able to return to it.

As a result, these questions will not appear in the review screen.

You develop a software as a service (SaaS) offering to manage photographs.

Users upload photos to a web service which then stores the photos in Azure Storage Blob storage.

The storage account type is General-purpose V2

When photos are uploaded, they must be processed to produce and save a mobile-friendly version of the image.

The process to produce a mobile-friendly version of the image must start in less than one minute.

You need to design the process that starts the photo processing.

Solution: Use the Azure Blob Storage change feed to trigger photo processing.

Does the solution meet the goal?

Answers

Explanations

Click on the arrows to vote for the correct answer

A. B.

B.

The change feed is a log of changes that are organized into hourly segments but appended to and updated every few minutes.

These segments are created only when there are blob change events that occur in that hour.

Instead catch the triggered event, so move the photo processing to an Azure Function triggered from the blob upload.

https://docs.microsoft.com/en-us/azure/storage/blobs/storage-blob-change-feed https://docs.microsoft.com/en-us/azure/storage/blobs/storage-blob-event-overview

The solution presented, which is to use the Azure Blob Storage change feed to trigger photo processing, could meet the goal of starting the photo processing in less than one minute. However, there are some factors that need to be considered before determining if this solution is the best approach.

The Azure Blob Storage change feed is a log of all the changes made to the blobs in a storage account. The change feed provides a way to monitor and respond to new or updated blobs in near-real time. By using the change feed, the photo processing can be triggered as soon as a new blob is added to the storage account.

However, there are some limitations and considerations to keep in mind when using the change feed. Firstly, the change feed has a maximum latency of approximately 10 minutes. This means that there could be a delay of up to 10 minutes between the time a new blob is added and the time it appears in the change feed. Therefore, this solution might not meet the requirement of starting the photo processing in less than one minute.

Secondly, the change feed has a maximum size limit of 5 TB. If the storage account contains a large number of blobs or if the blobs are large in size, the change feed could quickly reach its size limit and new changes may be lost.

Lastly, the solution does not provide any mechanism for retrying failed processing attempts. If the photo processing fails for any reason, there is no built-in functionality to retry the processing automatically.

In conclusion, while using the Azure Blob Storage change feed to trigger photo processing could meet the goal of starting the processing quickly, there are some limitations and considerations that need to be taken into account before determining if this solution is the best approach. Therefore, the answer to the question is B) No, the solution does not fully meet the goal.