orangematter.solarwinds.com
Open in
urlscan Pro
23.36.163.251
Public Scan
Submitted URL: https://sw1.solarwinds.com/NTY0LVZGUi0wMDgAAAGHBHlUQEokV93cvwJvfoqg8Iru_82yl8ChBuAR27-ngkcxuntPwgNDUL0mhry03c1o87NrTD0=
Effective URL: https://orangematter.solarwinds.com/2022/09/02/how-dbas-are-using-solarwinds-dpm-and-marginalia-to-reduce-mttr/?CMP=EMC-DCE-SWI-SW_W...
Submission: On October 25 via api from US — Scanned from DE
Effective URL: https://orangematter.solarwinds.com/2022/09/02/how-dbas-are-using-solarwinds-dpm-and-marginalia-to-reduce-mttr/?CMP=EMC-DCE-SWI-SW_W...
Submission: On October 25 via api from US — Scanned from DE
Form analysis
3 forms found in the DOM/
<form action="/" class="search-box">
<button><i class="fa fa-search"></i></button>
<input type="text" name="s" placeholder="Search orangematter.com" required="">
</form>
/
<form action="/" class="search-box">
<button>
<i class="fa fa-search"></i>
</button>
<input type="text" name="s" placeholder="Search orangematter.com" required="">
</form>
/
<form action="/" class="search-box">
<input type="text" name="s" placeholder="Search text" required="">
<button><i class="fa fa-search"></i></button>
</form>
Text Content
SolarWinds.com Home CATEGORIES TechPod Video SolarFocus Brains Observability Networks Systems Database Security Applications ITSM Search Home CATEGORIES Observability Networks Systems Database Security Applications ITSM TechPod Video SolarFocus Brains Home > How DBAs are Using SolarWinds DPM and Marginalia to reduce MTTR HOW DBAS ARE USING SOLARWINDS DPM AND MARGINALIA TO REDUCE MTTR By Ewen Fortune September 2, 2022 | Database Insights and Best Practices Database performance is critical to business revenue. Slow and non-responsive databases can result in hundreds of thousands or millions of dollars in lost revenue from poor customer experience and downtime. High expectations in performance require IT infrastructure to function at full speed. In 2006, an Amazon study found that every 100ms in added page load time cost them 1% in sales. The lost revenue at that time would have been around $107 million; today, the financial hit would total closer to $4 billion. Similarly, a Google study showed that a 500 ms increase in search display time reduced revenue by 20 percent*. Their full findings are shown in this table. Speed Impact study “Microseconds make millions”** “Results showed that a mere 0.1s change in load time can influence every step of the user journey, ultimately increasing conversion rates. Conversions grew by 8% for retail sites and by 10% for Travel sites on average.” Google/55/Deloitte, EMEA and U.S., Speed Impact study, Oct. 2019–Nov. 2019 More recently, in the PageSpeed Impact study from Google notes, data show that fast response times are crucially important for the entire customer journey, affecting user experience and revenue. In trying to identify the cause of a performance issue, most of the time is spent determining which queries are at fault and where they came. Typically, the amount of time fixing the problem is a small percentage of the overall troubleshooting effort. With large web applications such as the Shopify platform with builds of millions of lines of code*** and managed by hundreds of engineers, finding which deploy introduced the code and who is responsible for maintaining that code is a sizeable portion of the time spent to repair. To pinpoint which queries have been subject to change, we can look at changes in the workload compared to normal operation. This screenshot shows the Compare feature used in the SolarWinds® Database Performance Monitor Profiler to bubble up the groups of queries that have changed most over the past hour. The challenge now becomes where this query came from, a question DPM Profiler can also assist in solving. In addition to visualizing meta data such as User, Schema, and origin data, it also supports the display of query comments, which can communicate additional information about the query. Given the size and complexity of today's applications, manually annotating queries may not be feasible, and this is where solutions such as the Marginalia gem, created by 37signals, can really help to reduce the level of confusion. Marginalia ships with :application, :controller, and :action enabled by default. In addition, implementation is provided for: * :line (for file and line number calling query). :line supports a configuration by setting a regexp in Marginalia::Comment.lines_to_ignore to exclude parts of the stacktrace from inclusion in the line comment. * :controller_with_namespace to include the full classname (including namespace) of the controller. * :job to include the classname of the ActiveJob being performed. * :hostname to include Socket.gethostname. * :pid to include current process id. * :db_host to include the configured database hostname. * :socket to include the configured database socket. * :database to include the configured database name. To install, simply include it in your Gemfile. -- # Gemfile gem 'marginalia' -- This powerful Gem can automatically prepend or append comments which indicate where in the application a particular query originated. SELECT `accounts`.* FROM `accounts` WHERE `accounts`.`queenbee_id` = 1234567890 LIMIT 1 /*application:BCX,controller:project_imports,action:show*/ This means queries can carry the Origin data such as the application, controller and function, which is calling or generating the query, right down to the line of code and author of the call. At this point, within a few clicks we have both the problematic queries, the code responsible for those queries and the author of the code itself. In some cases, we may need to perform more work to boil down the candidate queries to the ones most relevant to the case in hand. Here too, SolarWinds DPM can help and has the facility to parse comments included with a query which contains key-value pairs and convert those into tags to associate with query digests. This means we can use those same tags generated from the Marginalia comment filter information in the Profiler, meaning we can see the change in queries for a specific Application, Controller and View. During diagnosis we can also use the key value pairs from the comments to understand which applications, controllers and views may be affected, by grouping by tag. Identifiers in the form of key value pairs embedded in comments such as those provided by Marginalia reduce the total amount of data to be reviewed and can indicate the source code and developer responsible for the query. As illustrated by the functionality examples and screenshots, using SolarWinds DPM and Marginalia together enables teams using Rails to perform root cause analysis more efficiently, fix database problems more rapidly, and support service level agreements to ensure the consistent optimal customer experience. *http://robotics.stanford.edu/people/ronnyk/2007IEEEComputerOnlineExperiments.pdf **Google/55/Deloitte, EMEA and U.S., Speed Impact study, Oct. 2019–Nov. 2019 *** https://shopify.engineering/shopify-monolith **** https://signalvnoise.com/posts/3130-tech-note-mysql-query-comments-in-rails Share: TAGS Ewen Fortune Ewen is a database geek with passion for performance and reliability. Having spent several years at Percona, he joined VividCortex, which was acquired by SolarWinds… Read more TWEETS 43 mins ago SolarWinds @solarwinds So you’re an IT team of one? We’ve got you covered. Learn how to find what’s connected to your network and what it’… t.co/avMMcxspRk * Reply * Retweet 0 * Like 0 3 hours ago SolarWinds @solarwinds We’re excited to announce we’re a sponsor of #DevOpsDaysMTL! We can't wait to see you Oct 26 – 27. Don’t forget to… t.co/2UNpOf2OVe * Reply * Retweet 0 * Like 2 8 hours ago SolarWinds @solarwinds Have you registered for our six-part webcast series SolarWinds Business Transformed? Each live event focuses on a d… t.co/C9vCL95tmQ * Reply * Retweet 0 * Like 1 PREVIOUS THREE WAYS EDUCATIONAL INSTITUTIONS CAN BETTER PLAN FOR CONTINUOUS LEARNING NEXT COMPARING POSTGRESQL AND MYSQL DATABASES: DIFFERENCES EXPLAINED YOU MAY ALSO LIKE * Getting Started With Azure Database for PostgreSQL * The Importance of Database Backups: A Guide to Costs, Benefits, and Risks * Comparing DBA, DBRE, and SRE Roles We’re Geekbuilt ™. Developed by network and systems engineers who know what it takes to manage today’s dynamic IT environments, SolarWinds has a deep connection to the IT community. The result? IT management products that are effective, accessible, and easy to use. Company Career Center Resource Center Email Preference Center For Customers For Government For Partners GDPR Resource Center Legal Documents Security Information Documentation & Uninstall Information © 2021 SolarWinds Worldwide, LLC. All rights reserved. We're Geekbuilt ™. Developed by network and systems engineers who know what it takes to manage today's dynamic IT environments, SolarWinds has a deep connection to the IT community. The result? IT management products that are effective, accessible, and easy to use. Company Career Center Resource Center Email Preference Center For Customers For Government For Partners GDPR Resource Center Legal Documents Security Information Documentation & Uninstall Information © 2019 SolarWinds Worldwide, LLC. All rights reserved. SolarWinds uses cookies to enhance site navigation, analyze site usage and assist with our marketing efforts. By clicking "Accept All Cookies", you agree to our use of cookies on your device. Cookie Settings Accept All Cookies