Microsoft SQL Server 2008 R2
Customer Solution Case Study
/ Car Rental Company Migrates Rate Engine to New Database, Saves $135,000 Annually
Overview
Country or Region: United States
Industry: Travel services
Customer Profile
Dollar Thrifty Auto Group (DTAG) is based in Tulsa, Oklahoma. Its brands, Dollar Rent a Car and Thrifty Car Rental, serve customers in more than 80 countries. DTAG employs 6,000 people.
Business Situation
The Rate Engine, a critical business application that delivers car rental rates to customers, ran on an aging Oracle database with performance issues that threatened to impact sales.
Solution
Instead of upgrading the Oracle platform, DTAG migrated the Rate Engine to Microsoft SQL Server 2008 R2 Enterprise.
Benefits
·  Achieved 100 percent return on investment in first year
·  Saved U.S.$495,000 in software costs
·  Improved performance, increased revenue
·  Increased business agility
·  Improved business continuity / “This project proved that SQL Server 2008 R2 can replace Oracle and perform at a very high level for us. I’m confident that we’ll be able to make progress on consolidating our database platform on Microsoft.”
Rick Morris, Chief Information Officer, Dollar Thrifty Auto Group
Dollar Thrifty Auto Group (DTAG) is one of the largest car rental companies in the United States. It generates 66 percent of its business through online sales. A critical business application, the Rate Engine, provides DTAG rate information to customers. However, the performance of the application’s Oracle Database 10g slowed response times to customers’ queries, putting the company at risk for losing sales. DTAG needed to find a cost-effective solution to improve the performance and reliability of the Rate Engine and keep its products “on the shelf.” Instead of spending U.S.$700,000 to upgrade the Oracle platform, it migrated the Rate Engine to Microsoft SQL Server 2008 R2 Enterprise data management software. DTAG achieved a 100 percent return on investment in one year, and gained a more powerful, reliable database solution that saves the company $135,000 in annual maintenance costs.

Situation

Dollar Thrifty Auto Group (DTAG) focuses on renting cars to the value-conscious leisure customer through its brands, Dollar Rent a Car and Thrifty Car Rental. Dollar and Thrifty have more than 1,550 corporate and franchised locations worldwide, including approximately 600 in the United States and Canada. DTAG operates in most major airports in North America.

Like many companies, DTAG has felt the impact of the recent economic downturn. After noticing sluggish sales in consumer travel early in 2008, management re-evaluated the company’s operations, looking for opportunities to drive operational efficiency and business agility. With these principles in mind, the IT department assessed how it could optimize its infrastructure.

“The robustness and availability of our infrastructure is critical; it’s the lifeblood of our organization,” says Rick Morris, Chief Information Officer at Dollar Thrifty Auto Group. “So we set some goals: improve the stability of our business applications and make them more cost effective. We looked at IT costs in two ways, operational costs required to keep the business running, and discretionary expenses set aside for new initiatives to keep us agile. We became very focused on driving our operational costs down.”

The IT staff at DTAG turned its attention to one of the company’s most critical workloads, the car rental Rate Engine, powered by an Oracle Database 10g that handles up to 12 million transactions a day. The Rate Engine consists of three web services that call stored procedures in the rate database. The rate database is updated by a rate development engine called Rate Management, which contains all the logic required to generate optimal car rental rates based on contingencies such as demand.

Performance, Reliability Issues Impact Sales

While Rate Management is the brains behind the system, it’s the Rate Engine that’s critical to generating sales at DTAG. “The Rate Engine is responsible for putting product on the shelf,” explains George Portokalis, Senior Delivery Director, Revenue Management, Reservations, and Fleet at Dollar Thrifty Auto Group. “Any time a potential customer shops for car rental rates, either through our brand sites or through Global Distribution Systems or aggregators such as Travelocity and Expedia, the information is served up by the Rate Engine. We have on average 8 million rate shops per day. To stay competitive, we have to ensure that customers’ queries against the Rate Engine database are returned within a certain threshold, or our product doesn’t show up. If customers don’t see our rates, we can’t make a sale.”

For DTAG, performance of the Rate Engine is directly linked to sales. For that reason, the company aimed to maintain a service level agreement (SLA) that stipulates 99.995 percent uptime, with 0.5 hours of scheduled downtime with redundancy. However, the high volume of rate updates (writes) that were required to feed the Rate Engine database contributed to performance issues, due to row-level locking that compromised the system’s ability to return rates—and the company’s business SLAs. Also, stored procedures were written in older versions of Oracle, resulting in inefficient processing. For DTAG, these problems posed a serious risk and, during the summer of 2009, the company experienced performance issues that impacted revenue.

DTAG IT staff had to contend with several alerts a day on the system. These alerts were caused by the Oracle database not replying quickly enough when it received queries on the time mileage rate table. “We were getting a lot of alerts on the system, resulting in time-outs,” says Robert Swanston, IT Project/Program Manager at Dollar Thrifty Auto Group. “If we are ‘off the shelf’ for a minute, that equates to multiple thousands of dollars in lost sales. To avoid any further impact on revenue, we had to improve the reliability of the Rate Engine.”

DTAG IT staff members were also concerned about the solution’s insufficient failover capabilities. The Rate Engine Oracle database is configured to run on two active UNIX servers in parallel. If one of these servers encounters a failure, the single remaining server does not have the capacity to handle all the requests. And because of the Rate Engine’s parallel architecture, updates are only written to one database so that there was never 100 percent data redundancy between the servers.

Expensive Platform to Maintain

While performance issues occupied a high priority, IT employees at DTAG had other concerns about the long-term viability of the Rate Engine running on an Oracle database. The high cost of licensing the solution, estimated at U.S.$400,000 a year did not align with corporate goals to reduce operating costs. Also, the parallel configuration created extra work for the database administrators, driving up IT administration costs. “Just to do maintenance and upgrades required some downtime, and it was tedious and costly,” says Portokalis. “We had to move the middle-tier servers and point them to the other database and we couldn’t update rates when we were running on the second server, causing a loss in revenue.”

Solution

After the 2009 summer busy season, DTAG IT staff decided it was time to address the performance, reliability, and maintenance issues associated with the Rate Engine. The company faced a strategic business decision: it could either upgrade the Oracle platform, or migrate the Rate Engine to run on Microsoft SQL Server 2008 R2 Enterprise data management software.

Dollar Thrifty Auto Group approached both Oracle and Microsoft to discuss its situation. As a result of these meetings, the company decided to explore the SQL Server 2008 option in more depth. “When we asked our key vendors to help us become more efficient within our IT operations, Microsoft was very responsive,” says Morris. “They showed thought leadership and a willingness to find ways of reducing our costs. SQL Server has been around for years, with a good reputation as a key operational database for many companies. I felt better expanding our footprint with Microsoft.”

Decision to Migrate

Morris’s opinion was validated when the company’s Microsoft account manager suggested that Microsoft Certified Gold Partner Avanade conduct an application platform optimization assessment that focused on migrating the Rate Engine to SQL Server 2008 R2. To generate the report, the team used the Microsoft SQL Server Migration Assistant (SSMA) tool, which is available as a free* download from the Microsoft website.

“Avanade evaluated our options: add additional UNIX hardware and upgrade the Oracle platform to gain additional computing capacity, or replatform to a Microsoft database solution,” says Morris. “Then they performed an assessment of the Oracle database and stored procedures that needed to be converted to SQL Server. In the end, they gave us a frank estimate of the time it would take to write new stored procedures, improve indexing, and migrate the data. They assured us that we could complete the migration by April 2010, the beginning of our busy season.”

For DTAG, the assessment put everything into perspective. “Avanade’s message was, ‘You can invest a lot of money in Oracle licenses and UNIX hardware, or we can improve the performance, capacity, and reliability of your Rate Engine on SQL Server so that it runs at a much lower cost,’” says Morris. “We decided to proceed with the conversion.”

Another reason for migrating the Rate Engine to SQL Server was to consolidate the company’s technology portfolio into a few select vendors and reduce costs. “We set out a target for standardized architecture that would put DTAG in a better position to optimize and reduce operating costs, and a database standard was an important part of that,” says Morris. Up until this point, DTAG had some business critical workloads with lower transactions running on SQL Server, however, all the top-tier workloads ran on Oracle. For DTAG, the Rate Engine migration project could be viewed as an indication of which database standard the company would end up choosing for all its workloads.

Database Optimized

Avanade and DTAG started the migration project in January 2010. DTAG IT staff members used their Microsoft .NET Framework development expertise to enable the Rate Engine middle-tier web services to query the SQL Server rate database, while Avanade concentrated on migrating stored procedures and fine tuning the database.

The Oracle database had 228 CRUD (Create Read Update and Delete) procedures and 131 business procedures. Avanade automated the conversion for the simpler CRUD-based processes. However, the team manually converted the remaining, more complex rate query procedures, working in stages that aligned with DTAG’s quality assurance and review process to ensure that everything worked correctly.

“We looked at the pattern used throughout the Oracle system for splitting data strings, which was expensive from a CPU and input/output perspective,” says Paul Muharsky, Technical Lead for the Avanade team. “We put in an alternative pattern that leveraged indexes throughout the system. A similar problem existed for the concatenation of data strings. The pattern used in Oracle was processor intensive and based on cursor looping. We used capabilities that exist in SQL Server 2008 that don’t appear in Oracle to improve performance, such as the enhanced XQuery capabilities to concatenate the strings.”

XQuery provides the means to extract and manipulate data from any data source that can be viewed as XML [extensible mark-up language]. With XQuery, the Avanade team improved the pattern used to concatenate data strings and then manually moved the patterns over to the new database.

The Avanade team enabled Snapshot Isolation for the SQL Server 2008 database to prevent rate queries (reads) being held up by rate updates (writes) from the Rate Management engine. Snapshot Isolation improves concurrency by ensuring that all reads made in a transaction will see a consistent snapshot of the database. This means the transaction will complete only if the updates that it has made do not conflict with any concurrent updates.

Next, the Avanade team used the SSMA tool to create the SQL Server database schema and to generate the data definition language (DDL) script to create the new SQL Server database. They also used the tool to automatically migrate the data and to generate the scripts for the query procedures, which were manually reviewed to make sure they retained the same logic as contained in the Oracle scripts. “The SSMA was a key factor in the initial analysis and the data migration itself,” says Muharsky. “While we didn’t use it for the procedure migration, it simplified the data migration significantly.”

Business Continuity Ensured

Avanade designed the Rate Engine to run in production on two servers in a mirrored configuration that uses a storage area network (SAN) solution. The new implementation is an active/passive cluster with only one active server handling the entire workload. The other is a passive mirror, available to handle automatic failover.

“The redundancy works both for loading updates from the Rate Management System as well as for shop queries to the Rate Engine database,” says Portokalis. “We have two copies of the database in two servers that are mirrored on the SAN solution. So when the Rate Management engine updates the Rate Engine database, even though one node in the cluster isn’t active, it still updates that database on the SAN that’s used by that node. If the active node fails over, we can continue to update the rates and replicate them back to the active node when it comes back online.”