Search icon CANCEL
Subscription
0
Cart icon
Your Cart (0 item)
Close icon
You have no products in your basket yet
Save more on your purchases! discount-offer-chevron-icon
Savings automatically calculated. No voucher code required.
Arrow left icon
Explore Products
Best Sellers
New Releases
Books
Videos
Audiobooks
Learning Hub
Newsletter Hub
Free Learning
Arrow right icon
timer SALE ENDS IN
0 Days
:
00 Hours
:
00 Minutes
:
00 Seconds
Microsoft Azure Storage Essentials
Microsoft Azure Storage Essentials

Microsoft Azure Storage Essentials: Harness the power of Microsoft Azure services to build efficient cloud solutions

Arrow left icon
Profile Icon Chukri A Soueidi
Arrow right icon
Can$12.99 Can$27.99
eBook Aug 2015 126 pages 1st Edition
eBook
Can$12.99 Can$27.99
Paperback
Can$34.99
Subscription
Free Trial
Arrow left icon
Profile Icon Chukri A Soueidi
Arrow right icon
Can$12.99 Can$27.99
eBook Aug 2015 126 pages 1st Edition
eBook
Can$12.99 Can$27.99
Paperback
Can$34.99
Subscription
Free Trial
eBook
Can$12.99 Can$27.99
Paperback
Can$34.99
Subscription
Free Trial

What do you get with eBook?

Product feature icon Instant access to your Digital eBook purchase
Product feature icon Download this book in EPUB and PDF formats
Product feature icon Access this title in our online reader with advanced features
Product feature icon DRM FREE - Read whenever, wherever and however you want
OR
Modal Close icon
Payment Processing...
tick Completed

Billing Address

Table of content icon View table of contents Preview book icon Preview Book

Microsoft Azure Storage Essentials

Chapter 1. An Introduction to Microsoft Azure Storage Services

Microsoft Azure is an open and secure cloud platform that enables you to build, deploy, and manage applications. With its broad collection of services, it allows you to build with any programming language, tool, or framework, and integrate your cloud-hosted solutions with your existing IT environments.

Azure services fall into three main categories: Infrastructure as a Service (IaaS), like virtual machines; Software as a Service (SaaS), like Azure SQL; and Platform as a Service (PaaS) solutions, like Office 365. This is a collection of offerings that engage IT specialists, developers, and business owners.

The platform is globally present through a network of Microsoft-managed datacenters, distributed around 19 remote regions (as of writing), which facilitate redundancy and rapid recovery. It is a self-service platform where you can provision your resources and scale them elastically based on your own business needs.

It supports various programming languages such as .NET, PHP, Java, Node.js, Python, and Ruby. In addition, it supports a variety of data services like relational databases, NoSQL, and Big Data solutions. It also promotes hybrid solutions and allows you to extend your datacenters to the cloud using virtual networks.

Below is a brief classification for the services offered:

  • Compute services such as virtual machines and cloud services
  • Web and mobile services such as web apps and mobile apps
  • Storage and data services such as blobs, tables, and SQL databases
  • Hybrid integration services such as queues, BizTalk, and Service Bus
  • Networking services such as virtual networks and traffic manager
  • Analytics services such as machine learning
  • Identity and access services such as active directory and multi-factor authentication
  • Media and CDN services

Azure also offers management services, like the portal and marketplace, and developer enriching features such as Visual Studio Online and application insights.

Tip

For all services, you can check them out on the Azure documentation website at http://azure.microsoft.com/en-us/services/.

You can also download the service catalog poster from http://azure.microsoft.com/en-us/documentation/infographics/azure/.

An introduction to Azure Storage

Azure Storage is a highly-available and massively-scalable cloud storage platform that is designed to help you build internet scale applications. It is designed to store huge amounts of geo-redundant data with very fast performance. The platform exposes different abstractions of storage services to target different scenarios. This book will cover four service abstractions of storage, which are blobs, tables, queues, and file storage.

These services, like many other services from Azure, are exposed and accessed via REST APIs. Microsoft also provides a set of client libraries built on top of the REST APIs for different platforms like .NET, Android, and Node.js. These libraries facilitate interaction with the storage services, and add additional advanced capabilities like retry logic and asynchronous programming.

Azure Storage enables new scenarios for applications that require scalable and highly available data storage. These include applications such as social networks, video and image serving apps, gaming, medical records, and much more. Consumers will only pay for what they use based on traffic and capacity. Some of the Azure Storage key design features are described in the next sections.

High availability and durability

Azure Storage allows you to store petabytes of data, which will always be replicated to multiple locations. Microsoft guarantees 99.9 percent availability of the data when requested through SLAs, a topic we will discuss later. The periodic replication across geographically dispersed locations also ensures data recovery protection against disasters like earthquakes, fire, and so on.

Strong consistency

The service is designed to support a strong consistency model, which means that updates on the data are directly reflected to all replication locations where data is distributed. That is opposed to eventual consistency models that propagate changes eventually and not directly. The ability of Azure Storage to be highly available, strongly consistent and distributed is due to the advanced layering system and the design implemented in the storage platform.

Scalability

The major goal for the service is to enable the storing of massive amounts of data. For this, the service implements a global namespace, which makes access to the data consistent for consumers from any location in the world. You can scale to arbitrary amounts of data over time without worrying about where this data is stored and how it should be accessed.

Note

Other abstractions of the platform are Azure Disks and the Premium Storage service, which both deliver disk support for Azure Virtual Machines. In this book we will not use these services; our main focus will be the services that are needed by apps.

Storage services

As mentioned earlier, the service offers different kinds of abstractions that are intended to accommodate different data management and storage needs for applications. For unstructured data, there are Azure blobs; for structured non-relational data you have Azure tables; for reliable messaging between applications you have Azure queues; for standard file shares, there are Azure files.

The Blob storage

Blob storage provides a massively scalable object store in the cloud. This includes objects such as documents, large log files, backups for computers, databases, videos, and so on. Blobs are placed inside containers that can contain many of them, not exceeding 500 TB.

There are two types of blobs: block blobs, which are perfect for storing objects that might be streamed and used by applications like media files and documents. The other type is page blobs, which are optimized to support random writes like virtual hard disk drives.

The Table storage

Tables offer a highly available and scalable option for applications to store semi-structured datasets. They are ideal for apps that require a non-relational, flexible data schema like user, device, or any other type of metadata.

You can store key/attribute entities inside tables; tables are schema-less, meaning that you can store different types of datasets inside the same table, which allows to rapidly adapting to data changes in applications.

A NoSQL cloud store is currently being used by several types of applications that do not require relational databases. Data can be accessed using the standard REST interface and OData protocol for querying.

The Queue storage

Queue storage provides a reliable, low-latency and high-throughput messaging system. You can decouple components to create more flexible apps that are less sensitive to individual component failures by buffering operations into queues. Also, this allows you to handle traffic bursts by saving operations and not dropping them. It allows scheduling of asynchronous tasks such as large data operations or simply sending emails.

The File storage

File storage provides cloud-based file shares allowing legacy applications to make use of the cloud, which provides them with mounted shares. File storage can be used to store data that needs to be accessed by virtual machines, such as configuration and installation files. You can create shares and under them create directories and files, all of which are accessed via a REST API along with the standard file access protocol SMB, which we shall discuss later.

Storage accounts

The Azure storage account is the basic block of the storage service. It manages access to the storage resources and provides a unique namespace for them; it also defines how your data will be replicated and made redundant. In order to create a storage account you need a valid Azure. There are various ways to create storage accounts; the easiest way is from the Azure portal (Azure provides a management portal that we will discuss in later chapters). Following very simple steps, you will be asked to provide a URL, choose a desired location for your data, and a replication option. Another option to create a storage account is to do it programmatically by using one of the client libraries.

Tip

For a step-by-step tutorial on creating storage accounts from the portal, see https://azure.microsoft.com/en-us/documentation/articles/storage-create-storage-account/#create-a-storage-account.

In the following sections we shall discuss the basic and essential features of storage accounts. The following figure illustrates Microsoft Azure Storage concepts:

Storage accounts

The namespaces and endpoints

As mentioned earlier, each storage account has a unique global namespace, which allows clients to address the service resources. The storage account is a part of this namespace that represents a URI that can be called via simple HTTP and HTTPS requests.

Thus, all data is accessible via the following endpoints:

  • Blob service: http(s)://<account-name>.blob.core.windows.net
  • Table service: http(s)://<account-name>.table.core.windows.net
  • Queue service: http(s)://<account-name>.queue.core.windows.net
  • File service: http(s)://<account-name>.file.core.windows.net

The account name <account-name> is selected by the user creating it and should be unique among all other storage accounts. This name will be used by the platform to locate where the data is stored in order to route incoming requests.

Storage account security

By default, and for the security of your data, all requests to the storage service must be authenticated. To do this, the platform generates two access keys for each account that should be supplied for authentication. The owner of the subscription can regenerate any key at any time. By having two access keys, the user can use the second key to authenticate while generating a new one, so that no downtime or interruption will occur to the service.

It is recommended you do not share the access keys with other users; they should be kept safe. In order to allow other users to access your data, you can create Shared Access Signatures (SAS). These signatures can be generated for a specific set of resources with a specific access permission for a definite amount of time.

Tip

To gain full understanding of how shared access signatures work, have a look at the following link:

https://azure.microsoft.com/en-us/documentation/articles/storage-dotnet-shared-access-signature-part-1/

You can also give public read access to blob storage in containers. When a container is set to public, anyone can read the data without authenticating the request. This is perfect for public media files such as images, documents, or videos on websites. (Users will still need valid storage access keys to write or delete data, however.)

Tip

Downloading the example code

You can download the example code fies from your account at http://www.packtpub.com for all the Packt Publishing books you have purchased. If you purchased this book elsewhere, you can visit http://www.packtpub.com/support and register to have the fies e-mailed directly to you.

Redundancy options

Azure Storage is available at several regions around the world, allowing data to be replicated within the same region or to different regions, depending on your selection. The following are the replication strategies to choose from when creating a storage account:

  • Locally redundant storage (LRS) stores three synchronous copies of the data in a single facility in the same region.
  • Zone-redundant storage (ZRS) is where data is stored and replicated across multiple facilities, either within one or two nearby regions.

    Note

    ZRS is only available only for block blobs storage. Also, once you have created a storage account with ZRS, you cannot later change it. Further information can be found at https://azure.microsoft.com/en-us/documentation/articles/storage-redundancy/.

  • Geo-redundant storage (GRS) maintains six asynchronous copies of the data. Data is replicated the same way as for ZRS, but is then asynchronously replicated to a secondary far region that falls under a separate fault domain, without allowing direct access to it.
  • Read-access geo-redundant storage (RA-GRS) provides all of the benefits of geo-redundant storage noted above, but it allows read access to data at the secondary region whenever the primary region becomes unavailable.

    Note

    A fault domain is a collection of servers and network components that share a single point of failure. To improve service availability, Azure hosts data on multiple fault domains.

Metrics and logging

You can monitor your storage account by collecting metrics for the requests on your services. Metrics are collected to analyze usage and diagnose issues in order to improve performance of all consuming applications.

Transactional information such as ingress/egress, latency, and success percentages is saved for requests and responses on services. Capacity information is also stored to monitor usage. Data in these tables can be accessed using the table service APIs and .Net APIs. The data is read-only and cannot be manipulated or created by the user.

Summary

The purpose of this chapter is to introduce you to Azure Storage and make you familiar with its components and features. Through subsequent chapters, we will explore these topics more and dive into developing apps that consume Azure Storage service using the .NET framework. The next chapter will focus on the way this service exposes its functionality to consumers through Service APIs that allow developers to execute operations on the service platform from any client app.

Left arrow icon Right arrow icon

Description

With the many advantages of using cloud computing, Azure Storage is a robust platform that helps you shift faster to the cloud by providing scalable, durable and highly available data storage options. For developers, it provides a rapid development environment that supports building large-scale applications to support new scenarios on the cloud, server, mobile and web. For IT professionals, it reduces complexity of managing, protecting and replicating data. This book will make you familiar with the Azure storage in terms of architecture and components. It starts with the basics of storage accounts, which give access to the four basic services the Blob, Table, Queue, and File storage services. These services are exposed through a REST API that makes it possible for client libraries to implement most of their functionality in a wide range of popular programming languages. Emphasizing the Windows Azure Client Library for .NET, we will deal with storing and retrieving unstructured data with Blobs, then will move to Tables to insert and update entities in a structured NoSQL fashion. Then we will discover Queues as a reliable messaging service, and after that we will show File storage that allows you to migrate legacy applications data to the cloud to end with transient fault handling and service monitoring.

Who is this book for?

This book is intended for IT professionals and also for students, who are familiar with data management solutions and with web development. If you are a developer, you should be familiar with C# and Visual Studio in order to utilize the code examples available in this book.

What you will learn

  • Get familiar with Microsoft Azure Storage Service in terms of architecture and working
  • Recognize the libraries and tools offered by Azure storage, supporting several popular programming languages
  • Know how the storage services expose their resources as REST APIs and what client libraries exists to develop against the storage
  • Gain the understanding of types of Blobs and best ways to upload and retrieve them
  • Learn how to make use of Tables as a NoSQL data store and how to retrieve, insert, update and delete entities in terms of design patterns
  • Use Queue storage as a messaging solution for communications between different apps
  • Create mounted shares and allow legacy systems to access data using the SMB protocol
  • Get accustomed to deal with faults, monitor storage metrics and logs

Product Details

Country selected
Publication date, Length, Edition, Language, ISBN-13
Publication date : Aug 28, 2015
Length: 126 pages
Edition : 1st
Language : English
ISBN-13 : 9781784390709
Vendor :
Microsoft
Concepts :
Tools :

What do you get with eBook?

Product feature icon Instant access to your Digital eBook purchase
Product feature icon Download this book in EPUB and PDF formats
Product feature icon Access this title in our online reader with advanced features
Product feature icon DRM FREE - Read whenever, wherever and however you want
OR
Modal Close icon
Payment Processing...
tick Completed

Billing Address

Product Details

Publication date : Aug 28, 2015
Length: 126 pages
Edition : 1st
Language : English
ISBN-13 : 9781784390709
Vendor :
Microsoft
Concepts :
Tools :

Packt Subscriptions

See our plans and pricing
Modal Close icon
$19.99 billed monthly
Feature tick icon Unlimited access to Packt's library of 7,000+ practical books and videos
Feature tick icon Constantly refreshed with 50+ new titles a month
Feature tick icon Exclusive Early access to books as they're written
Feature tick icon Solve problems while you work with advanced search and reference features
Feature tick icon Offline reading on the mobile app
Feature tick icon Simple pricing, no contract
$199.99 billed annually
Feature tick icon Unlimited access to Packt's library of 7,000+ practical books and videos
Feature tick icon Constantly refreshed with 50+ new titles a month
Feature tick icon Exclusive Early access to books as they're written
Feature tick icon Solve problems while you work with advanced search and reference features
Feature tick icon Offline reading on the mobile app
Feature tick icon Choose a DRM-free eBook or Video every month to keep
Feature tick icon PLUS own as many other DRM-free eBooks or Videos as you like for just Can$6 each
Feature tick icon Exclusive print discounts
$279.99 billed in 18 months
Feature tick icon Unlimited access to Packt's library of 7,000+ practical books and videos
Feature tick icon Constantly refreshed with 50+ new titles a month
Feature tick icon Exclusive Early access to books as they're written
Feature tick icon Solve problems while you work with advanced search and reference features
Feature tick icon Offline reading on the mobile app
Feature tick icon Choose a DRM-free eBook or Video every month to keep
Feature tick icon PLUS own as many other DRM-free eBooks or Videos as you like for just Can$6 each
Feature tick icon Exclusive print discounts

Frequently bought together


Stars icon
Total Can$ 138.97
Microsoft Azure Storage Essentials
Can$34.99
Learning Microsoft Azure
Can$61.99
Microsoft Azure Security
Can$41.99
Total Can$ 138.97 Stars icon
Banner background image

Table of Contents

9 Chapters
1. An Introduction to Microsoft Azure Storage Services Chevron down icon Chevron up icon
2. Developing Against Storage Chevron down icon Chevron up icon
3. Working with Blobs Chevron down icon Chevron up icon
4. Working with Tables Chevron down icon Chevron up icon
5. Designing Scalable and Performant Tables Chevron down icon Chevron up icon
6. Working with Queues Chevron down icon Chevron up icon
7. Working with the Azure File Service Chevron down icon Chevron up icon
8. Transient Fault Handling and Analytics Chevron down icon Chevron up icon
Index Chevron down icon Chevron up icon
Get free access to Packt library with over 7500+ books and video courses for 7 days!
Start Free Trial

FAQs

How do I buy and download an eBook? Chevron down icon Chevron up icon

Where there is an eBook version of a title available, you can buy it from the book details for that title. Add either the standalone eBook or the eBook and print book bundle to your shopping cart. Your eBook will show in your cart as a product on its own. After completing checkout and payment in the normal way, you will receive your receipt on the screen containing a link to a personalised PDF download file. This link will remain active for 30 days. You can download backup copies of the file by logging in to your account at any time.

If you already have Adobe reader installed, then clicking on the link will download and open the PDF file directly. If you don't, then save the PDF file on your machine and download the Reader to view it.

Please Note: Packt eBooks are non-returnable and non-refundable.

Packt eBook and Licensing When you buy an eBook from Packt Publishing, completing your purchase means you accept the terms of our licence agreement. Please read the full text of the agreement. In it we have tried to balance the need for the ebook to be usable for you the reader with our needs to protect the rights of us as Publishers and of our authors. In summary, the agreement says:

  • You may make copies of your eBook for your own use onto any machine
  • You may not pass copies of the eBook on to anyone else
How can I make a purchase on your website? Chevron down icon Chevron up icon

If you want to purchase a video course, eBook or Bundle (Print+eBook) please follow below steps:

  1. Register on our website using your email address and the password.
  2. Search for the title by name or ISBN using the search option.
  3. Select the title you want to purchase.
  4. Choose the format you wish to purchase the title in; if you order the Print Book, you get a free eBook copy of the same title. 
  5. Proceed with the checkout process (payment to be made using Credit Card, Debit Cart, or PayPal)
Where can I access support around an eBook? Chevron down icon Chevron up icon
  • If you experience a problem with using or installing Adobe Reader, the contact Adobe directly.
  • To view the errata for the book, see www.packtpub.com/support and view the pages for the title you have.
  • To view your account details or to download a new copy of the book go to www.packtpub.com/account
  • To contact us directly if a problem is not resolved, use www.packtpub.com/contact-us
What eBook formats do Packt support? Chevron down icon Chevron up icon

Our eBooks are currently available in a variety of formats such as PDF and ePubs. In the future, this may well change with trends and development in technology, but please note that our PDFs are not Adobe eBook Reader format, which has greater restrictions on security.

You will need to use Adobe Reader v9 or later in order to read Packt's PDF eBooks.

What are the benefits of eBooks? Chevron down icon Chevron up icon
  • You can get the information you need immediately
  • You can easily take them with you on a laptop
  • You can download them an unlimited number of times
  • You can print them out
  • They are copy-paste enabled
  • They are searchable
  • There is no password protection
  • They are lower price than print
  • They save resources and space
What is an eBook? Chevron down icon Chevron up icon

Packt eBooks are a complete electronic version of the print edition, available in PDF and ePub formats. Every piece of content down to the page numbering is the same. Because we save the costs of printing and shipping the book to you, we are able to offer eBooks at a lower cost than print editions.

When you have purchased an eBook, simply login to your account and click on the link in Your Download Area. We recommend you saving the file to your hard drive before opening it.

For optimal viewing of our eBooks, we recommend you download and install the free Adobe Reader version 9.