Tuesday, November 3, 2009

How-To Access SQL Azure Data

There are several ways to incorporate SQL Azure in your applications, however there two application patterns to access the SQL Azure Data, there are accessing through
  1. On-Premises Applications
  2. Hosted Applications residing in Cloud

1. On-Premises Applications
In a traditional on-premise application, the application code and database are located in the same physical data center. SQL Azure and the Azure Services Platform offer many alternatives to that architecture. The following diagram demonstrates two generalized alternatives available for how your application can access data with SQL Azure.

In Scenario A on the left, your application code remains on the premises of your corporate data center, but the database resides in SQL Azure. Your application code uses client libraries to access your database(s) in SQL Azure. Client library transfers data using tabular data stream (TDS) over a secure sockets layer (SSL).

2. Hosted Applications residing in Cloud
In Scenario B on the right, your application code is hosted in the Windows Azure and your database resides in SQL Azure. Your application can use the same client libraries to access your database(s) in SQL Azure as are available in Scenario A. There are many different types of applications that you can host in the Windows Azure Platform.

The Scenario B client premises may represent an end user's Web browser that is used to access your Web application. The Scenario B client premises may also be a desktop or Silverlight application that uses the benefits of the Entity Data Model and the ADO.NET Data Services client to access your data that is hosted in SQL Azure.
For more information about the SQL Azure architecture, see SQL Azure Architecture Overview blog post.

Hosting Your Data in the Cloud
The appearance and functionality of your SQL Server database experience is unchanged when you use SQL Azure instead of an on-premise instance of SQL Server. There are some minor differences that include Transact-SQL changes and login management. More information will be posted in future blog posts.
When hosting only your data in the Microsoft data center, it is important to consider the network latency between SQL Azure and the on-premise servers running your application code. Network latency to SQL Azure is higher than it would be if the database were also on your premises and you may need to account for this in your application code.
One way to minimize the network latency of requests to the database is to additionally host your application in the Windows Azure Platform.

Hosting Your Application in the Cloud
Hosting applications in Windows Azure is optional. Based on your needs, you can migrate your applications to or from Windows Azure.
Hosting your application code in Windows Azure is beneficial to the performance of your application because it minimizes the network latency associated with your application's data requests to SQL Azure.
For example, you may decide to create a Web-based user interface in Windows Azure for your database application that is hosted in SQL Azure. In this scenario, the client code and data is hosted in the same physical data center, so network latency is minimal between the corresponding servers. Clients will still have to traverse the Internet to reach your database application, but the network traffic between the client code and data is much faster because those numerous data requests have a much shorter distance to travel.


No comments:

Post a Comment