The Skyscanner travel search site helps hundreds of thousands of people find the cheapest flights every day. It provides instant comparisons of flight prices on millions of flights, as well as rental cars and hotels.

Skyscanner’s search application is built on top of several key technologies including Microsoft SQL Server 2008. In 2010, Skyscanner’s business volume and customer base expansion began to tax the capability of the database hardware.

Skyscanner Infrastructure Architect, Phil Dalbeck, told us, “Our software and hardware architecture was not fully optimized for the kind of volume we were handling. The database layer, in particular, was a major bottleneck.”

As proactive innovators and always looking for ways to improve customer experience. Phil’s team immediately began searching for a solution to address the following challenges:

Eliminates slow response time to ensure good customer service and high user retention.

Implements a scalable solution that could handle surging holiday traffic.

Simple and cost-effective, does not require dramatic and risky software re-engineering.

The Solution

Phil said, “A more thorough investigation of database performance showed that spiky queue depths and high latency times for SQL transactions were slowing application response times and impacting our user experience. Disk performance at the database layer was the culprit, and at that point, I knew Fusion ioMemory ioDrive® cards would be an ideal solution.”

Finding Fares Faster
Phil told us that Skyscanner’s write-heavy random workload was a key factor in its previous system’s slowing response times. “Most disk-based solutions, even those with caching, excel at accelerating sequential access, but fall short on the kind of heavy random access we experience. Each server in our previous system could reach about 2,500 peak random IOPS, giving us a maximum performance of 30,000 IOPS across a dozen servers, which was just passable. The ioDrive cards have excellent performance under write-heavy random workloads, which made SanDisk the way to go.”

In fact, the SanDisk-powered system’s performance was significantly better than Skyscanner’s disk-based system. Phil said, “Previously, complex query response times could be as high as eight or nine seconds. Our average response time with SanDisk is about one second. Even the most horrific synthetic queries we constructed to stress-test the system returned in two seconds.” The chart below illustrates the performance improvements.

Average Query Response Time

With SanDisk

1 second

Without SanDisk

9 seconds

9x

Faster

“What this means to our users is a consistently high site performance on even the most complex multi-leg searches, which might have hundreds of thousands of route permutations,” Phil said. “Customers can search more effectively and know that searches will always be fast and that results will be complete at any time of the day, which would not always be the case otherwise.”

“This workload capability supports our continued improvements to customer service, including the ongoing addition of new airlines, routes, travel hubs, modes of transports, and so forth,” Phil added. “As these additions all increase search complexity, there is the risk of reduced performance. Now, we have a platform that allows us to continually expand our service offering without reducing performance.”

“Customers can search faster and know that searches will always be fast, at any time, which was not the case previously.”

Phil Dalbeck,
Infrastructure Architect
Skyscanner

Raising Reliability While Lowering Labor
In addition to improving performance, Phil told us that the SanDisk-powered system was more reliable and easier to maintain.

“We were rebuilding database servers on a weekly basis just to keep them active after disk failures,” he said. “SanDisk had the only product on the market that guaranteed we could hit it with a 50% read and 50% write workload and still have the hardware last as long as our other equipment. Since we’ve had SanDisk, we haven’t had any reliability issues or any need to rebuild database servers due to hardware failure—it let the engineers sleep at night!”

Sky-high Scalability
A key challenge with Skyscanner’s previous system was that costs to scale performance would progressively increase.

“Replication between all our servers and the random nature of our workload was causing us scalability issues,” said Phil. “Adding 10% more hardware would not give us anything close to 10% increase in capacity or performance. We couldn’t keep adding disk-based servers due to the replication overhead driving diminished returns.”

The SanDisk-powered system did not have this problem. Phil said, “The ioDrive cards outperform disks by orders of magnitude, in exactly the metrics we really needed. We now see performance scale linearly with each additional server, and don’t expect this curve to level out in the foreseeable future. In testing over two weeks, a single SanDisk-powered server showed it could comfortably handle the workload generated by over 250 million user sessions per day. We had a hard time achieving that across a dozen disk-based servers without risking significant user impact.”

IT Cost Savings for the Cost-Saving King
As stated in the previous section, Skyscanner’s disk-based system had reached its limit for cost-effective performance scaling. The SanDisk-powered system, on the other hand, delivers cost savings that pay off well into the future.

“We consolidated 12 servers and 196 disks down to four servers and 12 ioDrive cards. This saved us a great deal on SQL licensing and rack space, and cut our power and cooling costs by about half,” Phil said. “We can effectively ignore the hardware as the failure rate has been non-existent, which saves staff resources that we can now refocus on other tasks.”

The new system also did this without the need to re-architect, which was of great importance to Skyscanner. Phil noted, “We needed an innovative infrastructure solution to our database performance problem, as it had to be something we could drop in without six months of planning, re-engineering, or site downtime. SanDisk reduced our query response times by 90% just by shifting our databases onto the ioDrive cards—this allowed us to deliver immediate and substantial benefits without significant database re-architecting.”

System Before

Database Servers

12 x 3U servers, dual quad-core Intel Xeon 2.4GHz, 64GB RAM

OS: Windows Server 2008

Application: Microsoft SQL 2008

Hard disks

Database data: 12 x 15K RPM SAS drives in a RAID 0

Logs:2x15KRPMforOSinRAID1

System After

Database Servers

4 x 2U servers, quad hex-core Intel Xeon i7 2.66GHz, 128GB RAM

Moved database data onto 3 x 640GB ioDrive cards within each server, configured as a single 1.8TB logical disk

Phil told us his team has greatly enjoyed working with the new system: “The ioDrive cards have proven to have significant day-one ROI and we are actively deploying more as site traffic grows. Our DBAs have really enjoyed their stability and reliability. In fact, if I tried to take them away now, they’d likely hang me from the yardarm.”

About Syscanner

Skyscanner is a travel search site that helps thousands of people find the cheapest flights every day. The site provides instant price comparison for millions of flights as well as rental cars and hotels. Having seen an average annual growth of 94% over the last three years, Skyscanner was ranked in the top 20 in Sunday Times Microsoft Tech Track 100 (2011) and received a Queens Award for International trade in 2012.

Skyscanner’s flexible search options allow customers to browse prices across a whole month, finding the best deals. Booking direct with the airline or a travel agent, customers get the lowest price with no added commission.

Employing more than 20 different nationalities from offices in Edinburgh and Singapore, Skyscanner is a well-travelled company. Skyscanner is also available as a free mobile app for iOS, Android and Windows Phone.