• 01_database_optimization

    Database Caching

    How would you identify the critical SQL workloads to move to cache when you are pushing out more than 10TB of SQL data each day? Read below to find out how Concur did it.
  • 02_database_optimization

    Database Caching

    The traditional method of monitoring database performance is to turn on profilers. But this adds significant overhead and was not feasible for Concur, which runs more than 1,000 databases.
  • 03_database_optimization

    Database Caching

    Concur used the ExtraHop platform to measure the total weight of every SQL query—more than 2 billion every day! This non-invasive approach adds zero overhead.
  • 04_database_optimization

    Database Caching

    Using ExtraHop, Concur grew their Couchbase Server usage from 13,000 hits per day to more than 500 million hits per day, improving application performance by 20 percent.
  • Situation

    Concur Technologies is always striving to make its IT infrastructure more efficient. As the largest SaaS provider of travel and expense reporting, Concur delivers a better product at lower prices by constantly pursuing performance and scale. 

    “As a software-as-a-service product, our pricing is directly tied to how much it costs to process each expense report,” says Drew Garner, Director of Architecture Services at Concur. “We have to be able to serve a transaction tomorrow with fewer resources than today. If we don’t do that, we’ll get beaten by the competition because they’ll figure out how to do it first.” 

    ExtraHop helped Concur to identify the best SQL workloads to move to caching—no mean feat considering that Concur runs more than 1,000 databases processing an average of 23,000 queries per second. 

  • Alternatives

    To obtain the details needed to chose the best candidates for caching, Concur’s DBAs have traditionally turned to SQL profilers to measure database performance, taking snapshots of every SQL query and procedure over a finite time period.

    There are two challenges with this method.

    1. Collecting and analyzing profiler traces, which can contain millions of entries, and was infeasible for Concur because they ran more than 1,000 databases.
    2. Profilers add overhead to database servers, typically around 30%, but as high as 147% as reported in a Microsoft SQL Server 2008 report
  • Solution

    The Architecture Services team at Concur used ExtraHop to measure the total weight of every SQL query to determine the best candidates to move to their new memcache implementation. 

    “We customized analysis in the ExtraHop system to determine the total weight of SQL queries by calculating the number of times a query is run multiplied by the time required to return the data,” explains Garner. “ExtraHop is the only solution that can provide this analysis continuously and in real time for our entire database infrastructure.”

    Once the workloads were moved to cache, Concur used ExtraHop to tune their Couchbase Server, helping to identify keys that exceeded the 1MB limit, for example.

  • Benefits

    By tremendously expanding its Couchbase Server usage, Concur was able to improve application performance by 20 percent. The cache protects the database, which Garner describes as the brain of Concur’s SaaS application. This means that Concur is increasing their competitive edge while lowering their operating costs at the same time.

    If a typical DBA takes two days to turn profilers for several databases, capture traces, and analyze the data, compared to a single hour working with the ExtraHop system, how much lost productivity can be recovered? Assuming some industry standards, there is upwards of $35,000 per year!

    Mr. Garner put it: “In many cases, the alternative to using the ExtraHop system is so time-consuming and laborious as to be impractical. But ExtraHop empowers our lean staff to manage a growing infrastructure that includes thousands of databases and an expanding memcache deployment.”

Share This