Orbitz Takes Off with Couchbase

Orbitz is one of the most active travel websites in its market, logging millions of flight and hotel searches searches on an average day. Its hotel rates site is the most profitable segment—and where the company initially deployed Couchbase Server to overcome some of the limitations of existing RDBMS and caching technologies.

Caching: Both a help and a challenge

Orbitz is one of the most active travel websites in the world, with growing needs for scalability and performance to support its online users. Orbitz discovered that relational database technology alone was inadequate for meeting technical and business requirements., and did not solve the scalability and performance problems related to short-term object storage and database retrievals.

To scale out, the company deployed an off-the-shelf caching solution, which initially helped reduce load on the database and improved overall performance. However, with continued use, Orbitz found that their chosen caching solution was complex to scale, introduced a number of operational challenges, and was expensive given the scale of Orbitzs operations. It became evident that the their solution could not support the massive scale the company needs, 

Couchbase as a caching replacement and persistent data store

The company began investigating Couchbase Server. It focused on the critical U.S. point of sale cluster as a proof-of-concept (POC), and, satisfied with the results, went on to consolidate all points of sale on Couchbase. The resulting ease of scalability, improved performance, and always-on operations led the company to expand its use of Couchbase, using it as a persistent data store as well as a caching tier. Now a number of the company’s mission-critical operations rely on Couchbase:

  • The Hotel Rate Cluster is supported by two clusters in separate data centers managing more than 325 GB of data that caches hotel rates, photos, and descriptions. Couchbase’s auto failover keeps the site running with a slight delay, imperceptible to customers. The company also uses Couchbase to store data since hotel rates are usually stable for a few days and customers won’t accept a delay of more than a few seconds when investigating prices or purchasing
  • The Web Session Cluster handles approximately 150 GB of data across three points of sale. It uses Couchbase Server as a data store for fast access and persistence, allowing the application to suggest appropriate deals or promotions based on users’ prior searches and selections.
  • The Web Search Cluster, which supports queries by users, comprises about 132 GB of data.
  • The Content Cluster supports landing pages using a 150 GB cluster split across two data centers.
  • The Common Cluster supports 3 “buckets,” or categories, of non-persisted cache data, but is scheduled to expand to 15 buckets soon to improve performance and support more objects. It contains data with an expiration of between 30 minutes and two days. It currently supports 90 million objects and will eventually support more than 150 million.
  • The Search Engine Optimization Cluster, which provides key words and metadata for Web searches, is currently being migrated to the Common Cluster, and will be persisted there, as the company discovered objects do not need to change frequently.
  • The Travel Book Store (TBS) Cluster is dedicated to supporting the company’s partnership with American Express Travel Services. This cluster is separately deployed and managed, but also uses Couchbase as both a caching tier and persistent data store.

Benefits of Couchbase

The company continues to reap benefits from using Couchbase Server as both a caching tier and a persistent data store:

  • Ease of scalability. Setting up and scaling out a Couchbase Server cluster is straightforward. To create a new cluster, the company’s team logs into the admin console of any Couchbase Server node, creates a cluster, and then developers can add information to point the application to the new cluster. The scale-out architecture means that to support more users for a Web application, one simply adds more commodity Web servers (or virtual machines). What took a few days before now takes just a few hours with Couchbase Server. Today the company has deployed 70 Couchbase Server nodes across 16 mission-critical clusters. Together, these applications comprise more than 250 million objects and 1.2 TB of data.
  • Performance.The design of Couchbase Server is optimized for performance and, overall, the company was able to improve response times for users by up to 47% or more. Just as important, it was able to meet all of its Service Level Agreements (SLAs) at a significantly lower cost, and with a system that is much easier to maintain. The company’s Couchbase clusters average consistently deliver response time of 3 to 4 milliseconds.
  • Always-on data availability. Using Couchbase at the company increased site reliability and stability. Couchbase can easily be replicated across multiple nodes, so failover is a non-event. Any node of Couchbase can be replicated to any cluster in the company’s global network, and any Web app can be instantly assigned to any session cache, giving the company maximum flexibility to offer a premium, zero-downtime customer experience.

Couchbase is reliable and it performs awesome. It’s the biggest change we’ve made in the past year to produce a faster product for our customers.

– Steven Young, Site Reliability Engineering

Orbitz Worldwide is a leading global online travel company that uses innovative technology to enable leisure and business travelers to search for, plan and book a broad range of travel products and services including airline tickets, hotels, car rentals, cruises, and vacation packages.