תאריך: 19 ינואר, 2010 | מאת: גיא רפלוביץ'
SQL Azure is a Microsoft solution for relational database cloud computing. It comes as part of the Azure platform. As with the Azure platform in general, in order to implement such a solution, many limitations were placed on the Azure version of SQL server. The implantation as a technical solution is amazing and requires some IT background to figure the complexity of it out.
The best point to start presenting SQL Azure is with a description of the infrastructure. As a user, you are granted with a token. This token is used to create all of your databases. The first DB to be setup is the master DB, very similar the SQL Server master DB (more on the functionality of the Master DB in the next post). All traffic to the SQL Azure “Server” is routed through a firewall that allows you to limit the accesses to specific sources, using a well designed web interface. Then the connection is routed to a gate that diverts the connection to the current server hosting your database. All SQL server instances which build the SQL Azure platform are installed on cluster machines to support high availability, and data is automatically replicated across different machines. In the case of failure, the gateway will automatically point to the current online database instance.
In order to increase scalability of your application and to maintain overall balances of the SQLAzure platform server, your databases are placed across multiple servers. (i.e., Even though it looks like it, your company databases are not placed physically on one server! what actually happens is that several companies share the same hardware! So how do you reach a specific database? The trick is in the login: the connection string must include the destination database. Your connection undergoes authentication using the login setting saved in the master DB, and then diverted to the requested database that will most likely be located on a different server.
Furthermore, to allow a fair resource distribution between the different databases and SQL Azure clients, several limitations are set on the databases settings and resource utilization.
A detailed list of the limitation can be found in the following link, and I will give you the highlights:
Connection throttling, to support fair resources distribution, is placed in the form of limitation on:
These limitations will actively disconnect the client connection and STOP QUERY PROCESSING. Selecting the 10 GB (Business Edition) version over the 1 GB (Web Edition) version will grant more resources and raise the limitation settings.
It is evident from the description above that SQL Azure is not a straight forward solution for high load OLTP databases or data warehouse implementation. Working tips, scalability, design, considerations and more- on the next blog.
The following technical resources are a good starting point to understand the SQLAzure platform :
Guy
זקוקים להרחבה בנושא? פנו אלינו ונשמח לעזור
אחלה מאמר.
אני לא בטוח אם לזה התכוונת כשכתבת שאין תמיכה ב-SSIS: אמנם אין SSIS מותקן אבל למשוך מ-Azure אפשר דרך SSIS.
וכמובן שגם רפליקציה לא נתמכת, למרות שמשום מה השאירו אותה ב-SSMS עם ההתאמות שלו ל-Azure!
Basically any application installed on "your side" that can connect to an sql DB using ado .Net connection will work as before, that includes SSIS. Yet if the application is pre sql 2008 R2 you will run into problems trying to read the server objects such as the list of tables belonging to a DB:). In other words SSMS works only if it is 2008 R2 version.