Backup / DR / BC
The course is part of these learning paths
This course provides an introductory tour of Azure Storage Solutions such as its SQL offerings (SQL DB and third-party offerings of MySQL), managed NoSQL databases (DocumentDB and MongoDB), managed Redis Cache service, Azure Backup (backup-as-a-service), Site Recovery (for handling disaster recovery) and StorSimple (a hybrid cloud storage solution).
- Understand what SQL DB is and how to get started using it
- Learn the options offered by Azure for managed MySQL
- Understand what DocumentDB and MongoDB are and how to get started using them
- Learn what Redis Cache is and some cases of when you would use it
- Get an understanding of what Azure Search provides
- Learn how Azure Backup can solve common backup needs
- Understand what role Site Recovery can play in disaster recovery
- Learn how StorSimple can extend your on-premise storage capacity
- This course is for developers or IT professionals looking for an introduction to Azure’s Storage Solutions.
- Some familiarity with the Azure platform is helpful, but not required.
- Course Introduction
- Azure SQL Database
- What is Azure SQL Database?
- Understanding the service tiers
- Create a SQL Database
- What is a Data Throughput Unit (DTU)?
- Scaling Azure SQL
- Options for Using MySQL in Azure
- Azure CosmosDB DocumentDB API
- What is DocumentDB?
- Azure CosmosDB MongoDB API
- Options for Using MongoDB in Azure
- How does DocumentDB compare to MongoDB?
- Azure Redis Cache
- What is Azure Redis Cache?
- Common scenarios for using Redis Cache
- Understanding the service tiers
- How does Redis work?
- Create and manage a Redis Cache
- Scaling Azure Redis Cache
- Azure Search
- What is Azure Search?
- Indexes and Search Features
- How do you use the Search Service?
- Create a Search Service and Index
- Azure Backup
- What is Azure Backup?
- Backup Scenarios
- Import/Export Service
- What is the Import/Export Service?
- Why would you use Import/Export?
- Site Recovery
- What is Site Recovery?
- Workload recovery scenarios
- What is StorSimple?
- How does StorSimple work?
- Course Summary
- Conclusion and Wrap-Up
Welcome back, we are now going to take a look at Redis Cache.
What is Redis Cache? And how is it different than the other databases we've looked at?
The biggest difference for Redis cache and its most powerful feature is, that it is an in memory data store.
It is a key value store, but the values can be higher level types - it is not just a string or byte array.
Redis also can be used as a message broker with its publish and subscribe functionality.
The Redis Cache that we are talking about is a fully managed version of the open source redis.io.
The Standard and premium tiers of Redis have a 99.99% availability SLA and are multiple node systems so you can get high availability.
Like other products in Azure, there are a few service tiers and sizes to help fit your needs, let's look at those next.
Redis has three service tiers.
The feature-set for both the Basic and Standard are the same - with the only difference being Basic is a single node system that does not get an SLA – which means it is only ideally used for development or testing.
Premium is a different story, it has several additional features that Basic and Standard don't have.
The service tiers are broken down my memory size and chances are you won’t know what size you’ll need until you start using it but the main thing is you can get an idea of what Redis Cache will cost you from this table.
With Redis Cache, the Premium Tier really gives you a lot of additional features.
Like data persistence - which will rehydrate your cache if it crashes or reboots for some reason, keeping your data loss to a minimum - because remember Redis is an in-memory data store so it usually isn’t persisted.
Along the same lines, you can import data to seed your cache if you desire or export data so you can do something with it yourself.
Another highly desirable feature is the ability to have the Redis Cache deployed inside of your own virtual network. This allows you to fully control the security around who can access the Redis Cache.
You can also schedule updates, which is kind of a unique feature. The updates are for the underlying system - remember this is a service so you don't have control over things like OS updates but this gives you the opportunity to schedule them in slow times for your system.
You can also shard your data using Redis clusters which helps with scaling.
There is also an IP Firewall feature that is currently in preview.
Next let’s look at scaling.
So, how do you scale Redis?
If you need more cache you can move the cache size up to what you need or if you aren’t utilizing what you have, you can move it down.
If you have a large system and are having problems with throughput, then you may find the Premium tier and its features may help you. Once you are in Premium tier, you can add and remove shards to increase or decrease throughput to your cache.
As we've already mentioned, Redis Cache is an in memory data store so it is fast.
Redis can store higher level data structures, like strings, hashes and sets and allow your applications to quickly retrieve the data as needed.
Redis also has message broker features that allow subscribers to be notified when a publisher pushes messages to the channel they subscribe to.
Before taking a look at Redis in the portal, let's look at some of the more common scenarios of when you would use Redis.
Since it is so fast, Redis makes a great distributed cache.
If a web site uses Session State you can use Redis as a place to store your session data.
Microsoft has written an ASP.Net session and output cache provider that uses Redis for storing the data outside of the webserver.
Same goes for SignalR - which is a real-time technology that allows for bi-directional communication between a client and server.
Microsoft has also written what they call a backplane for SignalR that will keep the state in Redis.
I know I've already mentioned the publish and subscribe functionality, but if you pair your backend systems with publish/subscribe and SignalR you get some really powerful capabilities.
Now, let's take a look at creating a cache and exploring it in the portal.
Jason Haley is an independent consultant who focuses on Azure and Angular. He has over 20+ years’ experience architecting, designing, developing and delivering software solutions using mostly Microsoft technologies. Jason recently achieved his MCSE: Cloud Platform and Infrastructure certification in May 2017 (by passing all of the 70-532, 70-533 and 70-534 exams). He is also a Microsoft Azure MVP and leads the North Boston Azure User Group. He frequently speaks at community events on topics relating to Azure.