In the first article in this series, "Azure Services Platform Step by step-1th" Introducing the Azure services Platform, Azure services The platform consists of 4 parts. Windows Azure is the foundation for supporting the entire Microsoft Cloud Platform (Azure Services Platform). In other words, Windows Azure is the "operating system of the Cloud Platform", which provides the most basic and important service for the cloud platform.
The picture is not clear? Please click here to view the original image (larger).
Windows Azure consists of two important parts:
Virtualization Computing Services (provides VM based host. It has been demonstrated in the previous article. )
Various data storage services. This is the Windows Azure Storage that this article describes.
Windows Azure Storage lets programmers store any data they want to store. According to the concept of cloud computing, once the data is stored in the cloud, it will never be lost, and programmers can get data of any size at any time, from any terminal or from anywhere. Windows Azure Storage Just continues to follow this idea.
Windows Azure Storage consists of three important parts:
Windows Azure Blob: Storing large data
Windows Azure table: Storing table data. Similar to data tables in relational databases, but different.
Windows Azure Queue: Provides an assignment message service for asynchronous work. A bit like a message queue for the Windows system itself.
Next, we'll introduce the 3 data services.
Windows Azure Blob
Just now, this Cow x service is used to store large data. What kind of data is large? File! I do not know whether you are like the author, just see this service first reaction is: use it to do network hard disk. : )
The data model for a Windows Azure blob is very simple, and you won't forget it at a glance. We really can think of it as an infinite hard drive in the clouds. Its structure is as follows:
The picture is not clear? Please click here to view the original image (larger).
Don't look at the "block" section first. Is that clear? To continue YY: If account is that hard drive, container represents a different partition (unfortunately, there is no folder concept in the partition), and a blob is a different file in the root directory of the partition. So the picture above means: In my hard disk called "Sally", there are "pictures" and "movies" two partitions, "pictures" Partition root directory has "IMG001." JPG "" IMG002. JPG "These two files.
Where is the infinite hard drive of this cloud? How do we find it? It's also simple, it still uses azure to manipulate it in a restful way. The address is:
Http://<account>.blob.core.windows.net/<container>/<blobname>
For example: Http://maheshwar.blob.core.windows.net/livesearchimages/AcacusDesert_EN-US1025081982.jpg (This is a picture, click the link to direct access)
You can now continue to explain the "block" in the previous illustration. Since it's a rest way, or HTTP, a really big file, such as a 1G movie, is obviously a very difficult thing to go directly into. Block is there to solve this problem. As long as you're in a good mood, you can split the movie into 1000 1M blocks to upload. The block is transparent to the download process, and the downloader does not have to know how many blocks the file it is downloading is divided into.
(In fact, I really use it to do their own network hard disk, from the development and use of the angle is very convenient, I have the opportunity to organize the code to share with you).
Windows Azure Table
This service is the heart of many people's favorite.
When you're using vs200x to develop a simple asp.net application, you'll have the following two important habits like many people: using relational databases such as SQL Server, and some tables in the database directly correspond to entity classes in your program. You might use the Code generation tools, ORM tools, or write your own three-tier architecture to map the relational database to objects. Found no, at this time how you want to be able to directly into the database of the entity Ah!
The Windows Azure table service is designed to solve this problem. It can deposit entity classes and entity objects directly into the table structure. It makes too many people happy.
It compares tables in a traditional relational database, but it's a lot different. First look at the structure of the following diagram:
The picture is not clear? Please click here to view the original image (larger).
As you would expect, it supports LINQ, REST. HTTP address is Http://<account>.table.core.windows.net
This part of the content is more, in a few days I will use a separate section of the content to do a simple demo to explain its use.
Windows Azure Queue
Windows Azure Queue exists because of Windows Azure's service architecture-a schema that requires Message Queuing.
We learned in the "Azure services Platform Step by step-7th" Don't take Windows Azure as a virtual host to understand Windows Azure Service architecture, Windows Azure How the VM introduces the very innovative concept of web role and worker role, leaving the ordinary virtual host, promoted to "Cloud host":
One of the most common applications of Windows Azure queue is the message queue, which communicates between worker role and web function.
Let me give you another example. Web role is the front selling beef noodles, the Worker role is the background beef noodles. The customer can only contact the web role of the shop assistant, which collects the needs of different customers, keeps the chronological in order to record these needs on a stack of notes to hand to the chef worker Roler. Chef worker role with masks, what words can not say, his job is to complete the note in order to record the task. Windows Azure Queue acts as the "task note."
Understand the "beef noodle" example, and then look at the picture below to combine the "cloud computing" reality. Is it easy to understand?
The picture is not clear? Please click here to view the original image (larger).
The important differences between Windows Azure Table and SQL Data Services are:
In actual development, both are the most commonly used data storage services.
Blog Park Netizen Montaque and Lao Zhao discussed Windows Azure table and SQL Data in the comments in the article "Developing and Deploying Azure message Board" in "Azure Services Platform Step by step-8th" Services.
Windows Azure Table is designed to provide lightweight, fast, low-cost, mass-storage data, including entities and attributes. It is not a relational database, so it cannot provide a method similar to joins in SQL, nor can it manage the foreign keys.
SQL Data Services is designed to provide rigorous relational data methods.
In the current Azure version (the first version of the Azure platform, Feasure is still very imperfect), you can choose SQL Data Services If the developer needs more functionality for relational databases such as the joins or foreign keys. Conversely, it is recommended to use Windows Azure Table, which is more quickly developed.