Azure Storage Flashcards
Container (blob) storage
Object storage solution for the cloud.
Optimized for massive amounts of unstructured data.
Can be accessed directly from anywhere in the world via HTTP or HTTPS (URLs, Azure Storage REST API, Azure PowerShell, Azure CLI, Azure Storage Client library)
Azure Files
highly available network file shares.
can be accessed by using the standard Server Message Block (SMB) protocol.
can be accessed from anywhere in the world using a URL and shared access signature (SAS) token.
Queue Storage
service used to store and retrieve messages.
Queue messages can be up to 64kb in size and a queue can contains millions of messages.
Used to store lists of messages to be processed asynchronously.
Table storage
Azure Table storage is now part of Azure Cosmos DB.
Recommended usage for Standard general-purpose v2 Storage account
most scenarios including Blob, File, Queue, Table and Data Lake storage.
Premium block blobs storage account recommended usage
Block blob scenarios with high transaction rates, OR smaller objects OR consistently low storage
Premium file shares storage account recommended usage
enterprise or high-performance file share applications
Premium page blobs storage account recommended usage
Premium high-performance page blob scenarios
Locally redundant storage (LRS) - cost, fault-tolerance ,use cases
Lowest-cost replication option.
all replicas may be lost or unrecoverable if a datacenter-level disaster occurs.
application stores data that can easily be reconstructed if data loss occurs
Zone redundant storage (ZRS)
replicates data across (3) storage clusters in a single region.
each cluster is physically separated from the others (own availability zone)
not available in all regions.
Geo-Redundant storage
Replicates data to a secondary region.
Can withstand region level faults!
16 9s of durability (99.99999999999999%)
GRS vs RA-GRS storage
GRS: data in secondary regions is only available to be read if Microsoft initiates a failover from primary to secondary region.
RA-GRS : data in secondary region is read available regardless of failover initiation
Geo-zone redundant storage
Data is replicated across three availability zones in the primary region and also replicated to a secondary region.
combines the high-availability of ZRS with protection from regional outages provided by GRS.
Storage access
every object that you store in Azure Storage has a unique URL address.
subdomain(storage account name)+domain forms an endpoint.
The default endpoints for your storage account are:
Container service: //mystorageaccount.blob.core.windows.net
Table service: //mystorageaccount.table.core.windows.net
Queue service: //mystorageaccount.queue.core.windows.net
File service: //mystorageaccount.file.core.windows.net
Blob service resource hierarchy
The storage account
Containers in storage account
Blobs in a container
Blob lifecycle management rules
The lifecycle management policy lets you:
Transition blobs to a cooler storage tier (hot to cool, hot to archive, or cool to archive) to optimize for performance and cost. Delete blobs at the end of their lifecycles. Define rules to be run once per day at the storage account level. Apply rules to containers or a subset of blobs.
Blob object replication
Object replication asynchronously copies block blobs in a container according to rules that you configure.
Azure storage security capabilities (Encryption)
Encryption. All data written to Azure Storage is automatically encrypted using Storage Service Encryption (SSE).
Authorization options.
With Azure AD, you can assign fine-grained access to users, groups, or applications via role-based access control (RBAC).
Shared Key. Shared Key authorization relies on your account access keys and other parameters to produce an encrypted signature string that is passed on the request in the Authorization header.
Shared access signatures. Shared access signatures (SAS) delegate access to a particular resource in your account with specified permissions and over a specified time interval.
Anonymous access to containers and blobs. You can optionally make blob resources public at the container or blob level. A public container or blob is accessible to any user for anonymous read access. Read requests to public containers and blobs do not require authorization.
Shared Access Signatures (SAS)
A shared access signature (SAS) is a URI that grants restricted access rights to Azure Storage resources.
By distributing a SAS URI to these clients, you grant them access to a resource for a specified period of time.
SAS is a secure way to share your storage resources without compromising your account keys.
SAS: account-level and storage level control.
The account-level SAS delegates access to resources in one or more of the storage services.
The service-level SAS delegates access to a resource in just one of the storage services.
URI and SAS parameters
Resource URI: https://myaccount.blob.core.windows.net/?restype=service&comp=properties (blob service endpoint)
Storage Services Version: sv=2015-04-05
Services: ss=bf (applies to blob and file services)
Resource Types: srt=s (service level operations)
Start Time: st=2015-04-29T22%3A18%3A26Z (UTC time)
Expiry Time: se=2015-04-30T02%3A23%3A26Z (UTC Time)
Resource: sr=b (resource is a blob)
Permissions: sp=rw (read write permissions)
IP Range: sip=168.1.5.60-168.1.5.70 (range of accepted addresses)
Protocol: spr=https (only requests using HTTPS are permitted)
Signature: sig=F%6GRVAZ5Cdj2Pw4tgU7IlSTkWgn7bUkkAg8P6HESXwmf%4B (used to authenticate access to the blob)
https://myaccount.blob.core.windows.net/?restype=service&comp=properties&sv=2015-04-05&ss=bf&srt=s&st=2015-04-29T22%3A18%3A26Z&se=2015-04-30T02%3A23%3A26Z&sr=b&sp=rw&sip=168.1.5.60-168.1.5.70&spr=https &sig=F%6GRVAZ5Cdj2Pw4txxxxx
Azure Storage Service Encryption
SSE automatically encrypts your data before persisting it to Azure-managed Disks, Azure Blob, Queue, Table storage, or Azure Files, and decrypts the data before retrieval.
Customer managed keys
give you more flexibility and control. You can create, disable, audit, rotate, and define access controls.