What is Azure Storage Actions Preview?
Azure Storage Actions is a serverless framework that you can use to perform common data operations on millions of objects across multiple storage accounts.
Important
Azure Storage Actions is currently in PREVIEW and is available in these regions. See the Supplemental Terms of Use for Microsoft Azure Previews for legal terms that apply to Azure features that are in beta, preview, or otherwise not yet released into general availability.
The preview release of Azure Storage Actions enables you to create storage tasks that can perform operations on blobs in Azure Storage accounts based on a set of conditions that you define. Storage tasks can process millions of objects in a storage account without provisioning additional compute capacity and without requiring you to write code.
Anatomy of a storage task
A storage task contains a set of conditions, operations, and assignments. The following table describes each component of a storage task.
Component | Description |
---|---|
Conditions | A condition a collection of one or more clauses. Each clause contains a property, a value, and an operator. When the storage task runs, it uses the operator to compare a property with a value to determine whether a clause is met by the target object. For example, a clause might evaluate whether a creation-time property of a blob is greater than five days ago. |
Operations | An operation is the action a storage task performs on each object that meets the defined set of conditions. Deleting a blob is an example of an operation. |
Assignments | An assignment identifies a storage account and a subset of objects to target in that account. It also specifies when the task runs and where execution reports are stored. |
How to use a storage task
First, define the conditions and operations of a storage task. Then, assign that task to one or more storage accounts. Monitor task runs by using metrics, charts, and reports.
Define a storage task
Start by creating a storage task. To provision a storage task, you must define at least one condition and one operation. After the task is created, you can edit those conditions and operations or add more of them by using a visual designer.
See these articles to learn how to define a storage task:
- Create a storage task
- Define storage task conditions and operations
- Storage task conditions
- Storage task operations
Assign a storage task
You can assign a storage task to any storage account in which your identity is assigned the Storage Blob Data Owner role. As you create an assignment, you'll select a storage account, and assign a role to the system-assigned managed identity of the task. That identity is created for you automatically when the task is provisioned. The role that you assign that identity must enable it to perform the operations that are defined in the task.
A storage task can be assigned to a storage account only by an owner of that account. Therefore, if the task that you define is useful to an owner of another storage account, you must grant that user access to the storage task. Then, that user can assign your task to their storage account. You can grant a user access to your storage task by assigning an Azure role to their user identity.
See these articles to learn how to assign a storage task:
Monitor storage task runs
Tasks run asynchronously according to the schedule that you specify in the assignment. An execution report is created when the run completes. That report itemizes the results of the task run on each object that was targeted by the task.
The overview page of the task presents metrics and visualizations that summarize how many objects met the task condition, and the result of the operations attempted by the storage task on each object. The charts enable you to quickly drill into a specific execution instance.
See these articles to learn how to monitor task runs:
Handle storage task events
Azure Storage Actions events allow applications to react to events, such as the completion of a storage task run. It does so without the need for complicated code or expensive and inefficient polling services.
Azure Storage Actions events are pushed using Azure Event Grid to subscribers such as Azure Functions, Azure Logic Apps, or even to your own http listener. Event Grid provides reliable event delivery to your applications through rich retry policies and dead-lettering. Event Grid uses event subscriptions to route event messages to subscribers. First, subscribe an endpoint to an event. Then, when an event is triggered, the Event Grid service will send data about that event to the endpoint.
See the Azure Storage Actions events schema article to view the full list of the events that Azure Storage Actions supports.
Supported Regions
Azure Storage tasks are supported in the following public regions:
Australia East
Australia Southeast
Brazil south
Canada Central
Central India
Central US
France Central
Germany West Central
North Central US
North Europe
South Central Us
Southeast Asia
Switzerland North
West Europe
West US
West US 2
Pricing and billing
You can try the feature for free during the preview, paying only for transactions invoked on your storage account. Pricing information for the feature will be published before general availability.
Note
General-purpose v1 accounts don't support the latest features and hence Azure Storage Actions is not supported either. If you have a general-purpose v1 account, we recommend you to upgrade to general-purpose v2 accounts to use all the latest features.