Understanding SQL Azure Throttling and Implementing Retry Logic. I have seen a number of questions lately regarding how SQL Azure handles throttling and how to determine why the throttling occurred. Sometimes those questions are followed by another question asking how to handle throttling conditions in their applications. Troubleshooting SQL Azure Throttling GREAT NEWS! There actually is a way to find out if you are throttled and why, and the results of the throttling. “The server is currently busy…” Or “The service has encountered an error...” “The service is experiencing a problem…” There a few more, but the key is to look at the END of these messages because there will be a Code at the end. “The service is currently busy. The code is a decimal value, and is the vital piece of information to tracking down the throttling issue.
So, before we dive into this reason code number, it is also important to understand the throttling modes, and throttling types. The two tables below show the different throttling types and modes. Throttling Types Throttling Modes. Best Practices for Handling Transient Conditions in SQL Azure Client Applications | Windows Azure Customer Advisory Team (CAT) The following post is intended to offer you a set of best practices centered around the development of reliable SQL Azure client applications.
The primary focus of this paper is positioned towards handling transient conditions, namely, those intermittent faults, errors and exceptions that need to be accounted for when developing reliable applications for high-density multi-tenant environments such as SQL Azure . Background The developers who have already had the opportunity to start working with the Microsoft’s cloud-based relational database service, widely known as SQL Azure, may know that SQL Azure has introduced some specific techniques and approaches to implementing data access service layer in the applications leveraging the SQL Azure infrastructure.
One of the important considerations is the way how client connections are to be handled. The behavior in question was discussed in the article posted on the SQL Azure team blog back in May 2010. Transient Conditions in SQL Azure. SQL Azure Firewall. Microsoft Windows Azure SQL Database provides a relational database service for Windows Azure and other Internet-based applications. To help protect your data, the SQL Database firewall prevents all access to your SQL Database server until you specify which computers have permission. The firewall grants access based on the originating IP address of each request. To configure your firewall, you create firewall rules that specify ranges of acceptable IP addresses. You can create firewall rules at the server and database levels.
Server-level firewall rules: These rules enable clients to access your entire SQL Database server, that is, all the databases within the same logical server. This topic describes the SQL Database firewall and how you can define firewall rules to specify which clients can access your SQL Database server and individual databases. In This Topic Overview Connecting from the Internet Connecting from Windows Azure Creating the First Firewall Rule Troubleshooting the Firewall. Tutorial: Setting up Windows Azure Connect. Windows Azure Service Bus & Windows Azure Connect: Compared & Contrasted | Windows Azure Customer Advisory Team (CAT) Late last year I published a blog that compared and contrasted cloud and hybrid cloud implementations and one of the big follow-up questions was this: can we have more elaboration on Windows Azure Connect and Windows Azure Service Bus ( Relay Service )?
This is also a common question in various MSDN Forums and Discussion Groups . In this blog we take a scenario-driven approach to compare and—more importantly—provide guidance around when to use these two seemingly similar communication paradigms. Of course experts in the domain are aware that comparing these two technologies is akin to comparing apples and oranges. But the general perception is that these two technologies accomplish the same goal: supporting communication between cloud and on-premise resources. Windows Azure Service Bus Relay Service is recommended wherever you want location transparency for message-based communication between application endpoints. Windows Azure Service Bus Reliable message queuing.
Long-polling support. Virtual Network - Features - Windows Azure. Service Bus. Windows Azure Service Bus provides a hosted, secure, and widely available infrastructure for widespread communication, large-scale event distribution, naming, and service publishing. Service Bus provides connectivity options for Windows Communication Foundation (WCF) and other service endpoints – including REST endpoints -- that would otherwise be difficult or impossible to reach. Endpoints can be located behind network address translation (NAT) boundaries, or bound to frequently-changing, dynamically-assigned IP addresses, or both. Service Bus provides both “relayed” and “brokered” messaging capabilities. In the relayed messaging pattern, the relay service supports direct one-way messaging, request/response messaging, and peer-to-peer messaging. Use the following links to learn more about Service Bus. These links come from various content providers across Microsoft.
About the Azure Service Bus Provides a conceptual introduction to the Service Bus. Service Bus Pricing FAQ Troubleshooting. How to Map CDN Content to a Custom Domain. Updated: April 1, 2014 You can map a custom subdomain to a Content Delivery Network (CDN) endpoint in order to use your own domain name in URLs to cached content, rather than the CDN endpoint provided for you. There are two ways to map your custom domain to a CDN endpoint. The simplest way is to create a CNAME record with your domain registrar that maps your custom domain and subdomain to the CDN endpoint.
A CNAME record is a DNS feature that maps a source domain to a destination domain. In this case, the source domain is your custom domain and subdomain — note that the subdomain is always required. The destination domain is your CDN endpoint. The process of mapping your custom domain to your CDN endpoint can, however, result in a brief period of downtime for the domain while you are registering the domain in the Windows Azure Management Portal.
The procedures in this topic will show you how to: Log into the Windows Azure Management Portal. Overview of the Windows Azure CDN. Updated: July 31, 2013 The Windows Azure Content Delivery Network (CDN) caches Windows Azure blobs and static content used by cloud services at strategically placed locations to provide maximum bandwidth for delivering content to users. If you are an existing CDN customer, you can now manage your CDN endpoints through the Microsoft Azure Management Portal. The CDN offers developers a global solution for delivering high-bandwidth content by caching the content at physical nodes across the world. For a current list of CDN node locations, see Azure Content Delivery Network (CDN) Node Locations. The benefits of using the CDN to cache Windows Azure data include: Better performance and user experience for end users who are far from a content source, and are using applications where many "internet trips" are required to load content Large distributed scale to better handle instantaneous high load, like at the start of a product launch event.
The CDN should be used to cache static content only. 1 – Introduction to the Azure Platform. This chapter introduces a fictitious company named Adatum. It describes Adatum's current infrastructure, its software portfolio, and why Adatum wants to move some of its applications to Windows Azure. As with any company considering this process, there are many issues to take into account and challenges to be met, particularly because Adatum has not used the cloud before. At the end of this chapter you will see how Adatum explored and evaluated the major requirements for moving its applications to the cloud, and an overview of the migration steps that Adatum followed. The chapters that follow this one show in detail how Adatum modified its expense tracking and reimbursement system, aExpense, at each stage for deployment to Windows Azure.
Adatum is a manufacturing company of 15,000 employees that mostly uses Microsoft technologies and tools. It also has some legacy systems built on other platforms, such as AS400 and UNIX. Adatum uses many different applications. Adatum's Challenges. Migrating Databases to SQL Azure. To migrate an existing SQL Server database to Windows Azure SQL Database, you export the database's schema and then transfer the data from the database to Windows Azure SQL Database.
This topic provides preliminary information on various migration techniques and tools that you can use while migrating databases from SQL Server to SQL Azure. For detailed information on migration, see Migrating SQL Server Databases to Windows Azure SQL Database and Choosing Tools to Migrate a Database to Windows Azure SQL Database in the Migrating Data-Centric Applications to Windows Azure guide.
Migrating Databases to SQL Database by Generating a Script of an Existing Database To migrate an existing SQL Server database to SQL Database you can export the schema as a Transact-SQL script and then execute that script against Windows Azure SQL Database as follows: Export a script from SQL Server Management Studio and set the appropriate export options. Moving Data into SQL Database SQL Server Integration Services.
David Pallmann's Web and Cloud Blog: Windows Azure Best Practices. Migrating Applications to Windows Azure. Windows Azure - Tips for Migrating Your Applications to the Cloud. One of our favorite aspects of technology is that it is constantly evolving and continually changing—there’s always more to learn! As students and followers of cloud computing, we’re tremendously excited about the Windows Azure. As technical evangelists for Microsoft, we have the great fortune to work with customers in the adoption of new technology. As a result, we’ve seen a host of different ways in which to apply Windows Azure.
Early on, George had a personal reason for wanting to use Windows Azure. George is involved in many community activities, and the ability to quickly spin up temporary applications and spin them down when no longer needed proved tremendously useful. Because of the interest many of our corporate customers expressed in Windows Azure, we decided to hold a set of Windows Azure Migration Labs at the Microsoft Technology Centers. We weren’t surprised—we already had plenty of experience with Windows Azure and were confident our customers would meet with success. SQL Azure Horizontal Partitioning: Part 2 - SQL Azure Team Blog. How to Perform In-Place Upgrades on a Hosted Service in Windows Azure. Overview of Updating a Windows Azure Service.
Windows Azure organizes your role instances into logical groupings called upgrade domains. The default number of upgrade domains is 5. You can specify a different number of upgrade domains by including the upgradeDomainCount attribute in the service’s definition file (.csdef). For more information about the upgradeDomainCount attribute, see WebRole Schema or WorkerRole Schema. When you perform an in-place update of one or more roles in your service, Windows Azure updates sets of role instances according to the upgrade domain to which they belong.
Your service must define at least two instances of a role for that role to be updated in-place without downtime. This topic covers the following information about Windows Azure updates: Allowed service changes during an update The following table shows the allowed changes to a service during an update: The following items are not supported during an update: Changing the name of a role. Rollback of an update How an upgrade proceeds. Bcp Utility. Data_file Is the full path of the data file. When data is bulk imported into SQL Server, the data file contains the data to be copied into the specified table or view. When data is bulk exported from SQL Server, the data file contains the data copied from the table or view. The path can have from 1 through 255 characters. Database_name Is the name of the database in which the specified table or view resides.
You can also explicitly specify the database name with d-. in data_file | outdata_file | queryoutdata_file | format nul Specifies the direction of the bulk copy, as follows: in copies from a file into the database table or view. Owner Is the name of the owner of the table or view. owner is optional if the user performing the operation owns the specified table or view. " query " Is a Transact-SQL query that returns a result set. The query can reference a stored procedure as long as all tables referenced inside the stored procedure exist prior to executing the bcp statement. Table_name -c. Understanding Windows Azure Storage Billing – Bandwidth, Transactions, and Capacity - Windows Azure Storage Team Blog.
We get questions about how to estimate how much Windows Azure Storage will cost in order to understand how to best build a cost effective application. In this post we will give some insight into this question for the three types of storage costs – Bandwidth, Transactions and Capacity. When using Windows Azure Blobs, Tables and Queues storage costs can consist of: Bandwidth – the amount of data transferred in and out of the location hosting the storage accountTransactions – the number of requests performed against your storage accountStorage Capacity – the amount of data being stored persistently Note, the content in this posting is subject to change as we add more features to the storage system. This posting is given as a guideline to allow services to be able to estimate their storage bandwidth, transactions and capacity usage before they go to production with their application. Pricing details can be found here. The following gives an overview of billing for these three areas:
Moving Applications to the Cloud, 2nd Edition. How do you build and deploy applications to be scalable and have high availability? Along with developing the applications, you must also have an infrastructure that can support them. You may need to add servers or increase the capacities of existing ones, have redundant hardware, add logic to the application to handle distributed computing, and add logic for failovers. You have to do this even if an application is in high demand for only short periods of time. The cloud offers a solution to this dilemma. The cloud is made up of interconnected servers located in various data centers. This guide is the third edition of the first volume in a series about Windows Azure. The guide is intended for any architect, developer, or information technology (IT) professional who designs, builds, or operates applications and services that are appropriate for the cloud. Chapters in the Guide Chapter 1, “The Adatum Scenario” introduces you to the Adatum company and the aExpense application.
Community. Hosting a Multi-Tenant Application on Windows Azure. This chapter discusses important factors you must consider when designing the data architecture for multi-tenant applications, and explores how the Tailspin Surveys application uses data. It describes the data model used by the Surveys application, and then discusses why the team at Tailspin chose this data model with reference to a number of specific scenarios in the application. Finally, it describes how and why the application also uses Windows Azure SQL Database. Windows Azure offers several options for storing application data.
In a multi-tenant application your data architecture typically requires you use a partitioning scheme that ensures each tenant’s data is isolated, and that the application is scalable. In addition, you may need to consider how to make your storage solution extensible in order to support per tenant customization. Windows Azure Table Storage Windows Azure tables contain large collections of state stored as property bags. Windows Azure Blob Storage Figure 1. Multi Tenancy and Windows Azure. Overview of Multi tenant Application and Single tenant Application Architectural considerations. Multi-Tenant Data Architecture. Windows Azure Multi-tenancy Cloud Overview | Azure Cloud Pro.