This article can also be found in the Premium Editorial Download "SQL Server Insider: SQL Server virtualization best practices: A checklist for success."
Download it now to read this article plus other related content.
When longtime SQL Server MVP Paul Nielsen decided to launch a startup to deliver a hosted customer relationship management application designed for the nonprofit industry, there was no doubt the traditional version of the Microsoft database would serve as the core platform. Yet months into the development effort, Nielsen changed course.
After attending a February 2010 MVP summit, where Microsoft laid out the latest roadmap for its SQL Azure cloud database service, Nielsen felt comfortable that the cloud was ready for prime time. As a result, Nielsen rewrote his business plan around SQL Azure, seizing what he said was a real opportunity to greatly reduce his startup and operating costs.
“After seeing the roadmap and some of the growth features, it made it much more feasible than when SQL Azure first came out,” said Nielsen, author of the SQL Server Bible series. “My wife likes the new business plan that doesn’t have us spending $30,000 on hardware that will be obsolete in two years. Now we can say we have high availability on three servers without buying three servers and without me spending my energy configuring servers, firewalls and security. Whatever you can do to offload some of the human energy cost is a good thing.”
While Nielsen and many other independent software vendors (ISVs) may be ready to cast their lot with SQL Azure, enterprise customers are proving to be a little more hesitant.
SQL Azure, based on SQL Server technologies and rolled out last January, is the database service piece of Microsoft’s Azure cloud-based portfolio. Like other cloud offerings, SQL Azure is optimized for applications that demand high scalability and high availability, allowing businesses to dial up or scale back databases based on business needs.
The pay-as-you-go platform delivers built-in administration capabilities as well as high availability and fault tolerance. It gives firms the option of using sophisticated database functionality at a lower cost than traditional on-premises SQL Server installations, which would require an investment in server and storage hardware, not to mention personnel with database administration and provisioning expertise.
There’s a lot of interest in SQL Azure, but the larger companies are a little bit shy when it comes to cloud computing in general.
--Herve Roggero, managing partner at Blue Syntax Consulting
ISVs and small and medium-sized firms, inherently more open to the cost and availability advantages of the cloud model while having fewer concerns about data security with this new computing paradigm, have shown interest in SQL Azure. Larger companies, on the other hand, tend to be more cautious, with most still evaluating the risks before making a wholesale commitment to migrate mission-critical business applications to a cloud platform like SQL Azure.
“There’s a lot of interest in SQL Azure, but the larger companies are a little bit shy when it comes to cloud computing in general,” observed Herve Roggero, a managing partner at Blue Syntax Consulting, which provides consulting and development services around the Azure cloud platform, and one of the authors of the book Pro SQL Azure. “They’re still trying to figure out where the cloud fits into their strategies and how to manage risks in the cloud.”
SQL Azure’s high-availability promises
For ISVs and smaller companies looking for a way to achieve scalability and high availability for their applications without big financial investments, SQL Azure can provide huge advantages.
The SQL Azure service-level agreement promises 99.9% uptime, with the entry-level Web edition starting at $9.99 per gigabyte a month (Microsoft offers credit if service falls below its guaranteed uptime). SQL Azure automatically maintains multiple copies of data to support its high-availability promises—a setup that would be impossible for most companies to replicate without making a significant capital outlay.
On top of these capabilities, SQL Azure provides a “no-hassle maintenance environment,” according to Roggero, as it automatically handles hardware provisioning, and database allocation and configuration. And though it’s not 100% backward compatible with traditional SQL Server, SQL Azure honors most traditional RDBMS (relational database management system) statements.
Steve Yi, Microsoft’s director of product management for SQL Azure and middleware, said the strategic rationale for offering SQL Server functionality in the cloud sprung from customers’ need to make data available to external partners and mobile users outside of the corporate firewall.
“Companies have concerns about how they scale capabilities to a potentially unknown number of users and have failover and redundancy … and still mitigate cost,” Yi explained. “It’s a significant capital expenditure to have a lot of additional capacity lying around and operational overhead to ensure systems are highly redundant. We think a cloud database offers benefits to customers from both a corporate and DBA [database administrator] perspective and is a boon for developers as well.”
While Yi declined to release specific numbers on corporate SQL Azure deployments, he said there were many pilots in the evaluation stage.
Beyond security concerns related to cloud computing, there are other issues stopping companies from taking the SQL Azure plunge. International regulations requiring data to be kept within the borders of some European countries is a roadblock for global companies, as are other compliance directives around privacy and security in highly regulated industries like health care and finance.
There are also technical limitations with SQL Azure that remain a barrier, including support for limited data types—for example, XML, cross-database joins and spatial data—and one of the more pressing limitations: the current system’s lack of backup capabilities.
“If you’re putting critical data onto Azure, backup is a critical hole,” said Grant Fritchey, a SQL Server MVP and product evangelist at Red Gate Software, which makes software tools for developers. “The paranoid DBA inside me gets the willies when I think about that—it’s like operating without a net.”
While there are workarounds for backup, like copying a database in the cloud, SQL Azure currently lacks the ability to perform scheduled backups and restores -- something Microsoft’s Yi admitted is a limitation but will be addressed in subsequent releases.
The 50 GB database size limit is another common complaint about the current SQL Azure version. “If there’s anything I see as a downside, it’s probably the size issue right now,” said Jeff Mlakar, SQL lead designer in IT services at Ernst & Young. He said his firm is currently evaluating the technology. “It’s very hard currently to federate data across SQL Azure databases.”
Yi said that’s another area Microsoft plans to address in future SQL Azure iterations. (See sidebar, “On High: SQL Azure Roadmap.”)
In the end, experts like Roggero and Nielsen said the upsides of SQL Azure far outweigh any current disadvantages. Some of what people are complaining about actually have to do less with SQL Azure and more to do with misconceptions about what a cloud database service should provide, Roggero said.
“This is not a database in the cloud -- that sets the wrong expectation about what this can and can’t do,” he explained. “It sets the wrong expectation to think you do the same thing in the cloud that you do for on-premise [database design]. The cloud is actually an opportunity to architect and develop in a different way.”
On High: Microsoft’s SQL Azure roadmap
According to Steve Yi, Microsoft’s director of product management for SQL Azure, Redmond plans to address many of the platform’s current limitations, including the following:
Backup. Yi said the company is actively working on dedicated backup and restore capabilities in a SQL Azure update. In the interim, several independent software vendors, including Blue Syntax Consulting, are working on backup applications.
Size and scalability. Yi said Microsoft plans to expand the single-instance size of a SQL Azure database beyond 50 GB in the near future, although he declined to specify when or by how much. He also said there are sharding techniques that partition data in multiple instances to increase performance and scalability of large data sets. Microsoft’s own SQL Azure Federations capability is currently being evaluated by users, who are providing feedback. No formal delivery date for the capability is slated as of yet.
Another capability offered to promote a cross-platform experience is the DAC Framework, which makes it much easier to move databases (schema plus data) between on-premises SQL Server and SQL Azure. Continued improvements will make their way to tools that will ship with the next release of SQL server, code-named Denali, especially in the developer toolset known as Project Juneau.
ABOUT THE AUTHOR
Beth Stackpole is a freelance writer who has been covering the intersection of technology and business for 25-plus years for a variety of trade and business publications and websites.
This was first published in July 2011