New Relic: Optimizing The Database SQL and NoSQL Alike

22
Optimizing The Database SQL and NoSQL Alike August 31st, 2010 @ 11AM PST Brian Doll Application Performance Engineer

Transcript of New Relic: Optimizing The Database SQL and NoSQL Alike

Page 1: New Relic: Optimizing The Database SQL and NoSQL Alike

Optimizing The DatabaseSQL and NoSQL Alike

August 31st, 2010 @ 11AM PSTBrian Doll

Application Performance Engineer

Page 2: New Relic: Optimizing The Database SQL and NoSQL Alike

NewRelic.com

Monitoring Data Stores in RPM

Page 3: New Relic: Optimizing The Database SQL and NoSQL Alike

NewRelic.com

Monitoring Data Stores in RPM

*

* Requires rpm_contrib

Page 4: New Relic: Optimizing The Database SQL and NoSQL Alike

NewRelic.com

“SQL Instrumentation” ==“NoSQL Instrumentation”

=> true

Page 5: New Relic: Optimizing The Database SQL and NoSQL Alike

NewRelic.com

Add rpm_contrib and go!

#Gemfile gem 'rpm_contrib'

Contribute at http://github.com/newrelic/rpm_contrib

Page 6: New Relic: Optimizing The Database SQL and NoSQL Alike

NewRelic.com

Easy InstrumentationLearn more @ http://bit.ly/custom-instrumentation

Page 7: New Relic: Optimizing The Database SQL and NoSQL Alike

NewRelic.com

Easy InstrumentationLearn more @ http://bit.ly/custom-instrumentation

add_method_tracer :find, ‘Database/#{self.name}/find’ #Database/Post/find

Page 8: New Relic: Optimizing The Database SQL and NoSQL Alike

NewRelic.com

So what does RPM tell us about the database tier?

Page 9: New Relic: Optimizing The Database SQL and NoSQL Alike

NewRelic.com

How much time are we in there?

Page 10: New Relic: Optimizing The Database SQL and NoSQL Alike

NewRelic.com

Page 11: New Relic: Optimizing The Database SQL and NoSQL Alike

NewRelic.com

DB vs. Cache: Fight!

Page 12: New Relic: Optimizing The Database SQL and NoSQL Alike

NewRelic.com

Database Overview

Page 13: New Relic: Optimizing The Database SQL and NoSQL Alike

NewRelic.com

Page 14: New Relic: Optimizing The Database SQL and NoSQL Alike

NewRelic.com

Generic SELECTs

Page 15: New Relic: Optimizing The Database SQL and NoSQL Alike

NewRelic.com

Table#find

Page 16: New Relic: Optimizing The Database SQL and NoSQL Alike

NewRelic.com

Web Transaction Detail

Page 17: New Relic: Optimizing The Database SQL and NoSQL Alike

NewRelic.com

Page 18: New Relic: Optimizing The Database SQL and NoSQL Alike

NewRelic.com

EXPLAIN PLAN

Page 19: New Relic: Optimizing The Database SQL and NoSQL Alike

NewRelic.com

But does it scale?

Page 20: New Relic: Optimizing The Database SQL and NoSQL Alike

NewRelic.com

Database Report

Page 21: New Relic: Optimizing The Database SQL and NoSQL Alike

NewRelic.com

What have we learned?

RPM provides detailed database metrics

RPM provides high-level database scalability metrics

RPM is db agnostic: SQL or NoSQL = no problem

It’s easy to instrument fancy new database engines if its not covered yet

You can’t scale without metrics

Page 22: New Relic: Optimizing The Database SQL and NoSQL Alike

NewRelic.com

Any Questions?

Live Q&A during the webinar

http://support.newrelic.com/

Email: [email protected] / [email protected]

Twitter: @NewRelic

IRC: #NewRelic on Freenode