To provide the best possible travel booking experience for its customers, Serko upgraded its Microsoft Azure–hosted Serko Online software to Microsoft Azure Premium Storage. With this updated solution, Serko will potentially increase database transaction processing by 300 percent, which will help it accommodate planned business growth. The company also estimates that it will trim database costs by US$120,000 annually.
Booking flights online is incredibly easy: in just a few clicks, you have your ticket. But behind the scenes, databases perform thousands of transactions—searching through hundreds of available flights—in milliseconds. If the process takes too long, another travel site is only a click away.
Serko knows this well, so the company fine-tunes its datacenter infrastructure continuously to ensure that bookings are lightning-fast. Based in Auckland, New Zealand, Serko is one of the leading online corporate travel booking and expense management firms in the Asia-Pacific region. Since its founding in 1994, Serko has been an industry innovator, serving some of the largest corporations and agencies in the region.
Corporate travel departments subscribe to Serko Online for booking and Serko Incharge for expense management. Both are software-as-a-service (SaaS) products that organizations use to simplify the process of booking, approving, and reconciling travel expenditures.
Serko is growing domestically and in emerging markets such as India, China, the Middle East, and Singapore. Since early 2014, the company has more than doubled its staff, and it aims to more than double its number of travel transactions in 2016.
To accomplish this aggressive goal, Serko needs to ensure that its datacenter infrastructure can handle a dramatic increase in transactions. The company currently performs about 300 million transactions a week.
To scale database processing power quickly and smoothly, Serko migrated the entire Serko Online application—database, application, and web servers—from its Auckland datacenter to Microsoft Azure in 2013. “Moving Serko Online and other assets to Azure gave us instant infrastructure scalability and eliminated acquisition and management costs,” says Philip Ball, Chief Technical Officer at Serko.
Azure is a cloud platform with compute, storage, networking, and other services for creating and hosting applications in Microsoft datacenters. “Azure had the best pricing of several options, and it was better aligned to our strategy because we use a great deal of Microsoft software,” Ball says.
Serko Online uses Microsoft SQL Server 2008 R2 as its database layer and originally used Microsoft Azure Standard Storage. However, the solution entails an enormous number of input/output operations per second (IOPS), and the company saw a moderate slowdown in the database tier after moving Serko Online to Azure. “The performance degradation was barely noticeable, but we were concerned about what would happen when our transaction load increased significantly,” Ball says.
Microsoft approached Serko about testing Microsoft Azure Premium Storage, which stores data on solid-state drives (versus the hard disk drives used by Azure Standard Storage) and provides up to 5,000 IOPS and 200 megabytes per second (MB/sec) throughput. Serko worked with Microsoft to test Serko Online on Azure Premium Storage and plans to deploy the storage technology in its production environment.
For Serko Online, Serko uses 150 A-Series Azure Virtual Machines as front-end web servers attached to eight DS-Series Azure Virtual Machines that act as database servers running SQL Server 2014. The company uses 10 Azure Premium Storage Disks for its production environment—two for backup, two for SQL Server system databases and temporary databases, three for user SQL Server data, and three for user SQL Server logs. Serko continues to use Azure Standard Storage for its disaster recovery environment. All servers communicate with each other over Azure Virtual Network. Serko currently has more than 50 SQL Server databases ranging from 2 gigabytes (GB) to 65 GB in size.
By moving to Azure Premium Storage, Serko was able to boost its database performance from 2,500 IOPS to 8,000 IOPS per pooled disk, a 300 percent increase. “We handle more than 300 million SQL Server transactions each week using eight SQL Server Azure Virtual Machines,” Ball says. “With Azure Premium Storage, we envisage that our current virtual machines can scale to handle more than 500 million SQL Server transactions weekly. This will reduce our overall costs, which is key as we scale globally.”
As a result of this performance boost, Serko believes that it can use the same number of SQL Server database servers to support three times the transaction volume with no performance degradation. “The more reduction in database-tier wait time, the better performance we can deliver,” says Ball. “As our business expands, our customers won’t hit slowdowns as our transaction loads increase. This is critical to our competitiveness.”
Serko plans to upgrade to Microsoft SQL Server 2014 and will use SQL Server AlwaysOn Availability Groups to improve performance further and gain high availability for disaster protection. During testing of AlwaysOn with Azure Premium Storage, Serko observed a 50 percent performance gain.
By using Azure Premium Storage in combination with DS-Series Azure Virtual Machines, Serko will be able to consolidate databases per each SQL Server instance, reducing its total number of SQL Server instances from eight to four. “With Premium Storage and the larger virtual machines, we’ll avoid [US]$120,000 a year on virtual machine and SQL Server licensing fees,” Ball says. “We can consolidate more customers onto fewer virtual machines and host larger databases.”
In addition to the Azure Virtual Machines used to run the Serko Online production environment, Serko uses Azure for its test, support, and customer staging environments—in total, 240 Azure Virtual Machines with more than 650 cores. In fact, everything except the company’s software development environment runs in Azure.
Serko developed and runs its Serko Mobile application using Microsoft Azure Cloud Services and uses Azure Service Bus as a message-passing layer between Serko applications and the many airlines and other partners with which it exchanges information. “We need the ability to scale our infrastructure quickly, and Azure gives us that,” Ball says. “We can deploy servers when we need them and shut them down when we’re done with them. Our goal is to get to a complete auto-deploy, auto-scale environment so we can quickly move software builds into production with no infrastructure hurdles. This will help the business grow.”