EmergencyEMERGENCY? Get 24/7 Help Now!

Services Monitoring with Probabilistic Fault Detection

 | March 9, 2017 |  Posted In: Database Monitoring, JSON, MongoDB, MySQL

Services Monitoring

In this blog post, we’ll discuss services monitoring using probabilistic fault detection. Let’s admit it, the task of monitoring services is one of the most difficult. It is time-consuming, error-prone and difficult to automate. The usual monitoring approach has been pretty straightforward in the last few years: setup a service like Nagios, or pay money to […]

Read More

Elasticsearch Ransomware: Open Source Database Security Part 2

and  | January 18, 2017 |  Posted In: Big Data, JSON

Elasticsearch Ransomware

In this blog post, we’ll look at a new Elasticsearch ransomware outbreak and what you can do to prevent it happening to you. Mere weeks after reports of MongoDB servers getting hacked and infected with ransomware, Elasticsearch clusters are experiencing the same difficulties. David Murphy’s blog discussed the situation and the solution for MongoDB servers. In this […]

Read More

EXPLAIN FORMAT=JSON wrap-up

 | April 6, 2016 |  Posted In: EXPLAIN, EXPLAIN FORMAT=JSON is cool!, JSON, MySQL

EXPLAIN FORMAT=JSON

This blog is an EXPLAIN FORMAT=JSON wrap-up for the series of posts I’ve done in the last few months. In this series, we’ve discussed everything unique to EXPLAIN FORMAT=JSON. I intentionally skipped a description of members such as table_name, access_type  or select_id, which are not unique. In this series, I only mentioned in passing members that […]

Read More

JSON document fast lookup with MySQL 5.7

 | March 7, 2016 |  Posted In: JSON, MySQL

In this blog post, we’ll discuss JSON document fast lookup with MySQL 5.7. Recently I attended Morgan Tocker’s talk on MySQL 5.7 and JSON at FOSDEM, and I found it awesome. I learned some great information from the talk. Let me share one of them here: a very useful trick if you plan to store JSON […]

Read More

EXPLAIN FORMAT=JSON: nested_loop makes JOIN hierarchy transparent

 | February 29, 2016 |  Posted In: EXPLAIN, EXPLAIN FORMAT=JSON is cool!, JSON, MySQL

EXPLAIN FORMAT=JSON

Once again it’s time for another EXPLAIN FORMAT=JSON is cool! post. This post will discuss how EXPLAIN FORMAT=JSON allows the nested_loop command to make the JOIN operation hierarchy transparent. The regular EXPLAIN  command lists each table that participates in a  JOIN  operation on a single row. This works perfectly for simple queries:

You can see […]

Read More

EXPLAIN FORMAT=JSON: cost_info knows why optimizer prefers one index to another

 | February 22, 2016 |  Posted In: EXPLAIN, EXPLAIN FORMAT=JSON is cool!, JSON, MySQL

Percona Server 5.7 performance improvements

Time for another entry in the EXPLAIN FORMAT=JSON is cool! series of blog posts. This time we’ll discuss how using EXPLAIN FORMAT=JSON allows you to see that cost_info  knows why the optimizer prefers one index to another. Tables often have more than one index. Any of these indexes can be used to resolve query. The optimizer has […]

Read More

EXPLAIN FORMAT=JSON: buffer_result is not hidden!

 | February 9, 2016 |  Posted In: EXPLAIN, EXPLAIN FORMAT=JSON is cool!, JSON, MySQL

MongoDB System Tuning

Time for another entry in the EXPLAIN FORMAT=JSON is cool! series. Today we’re going to look at how you can view the buffer result using JSON (instead of the regular EXPLAIN command. Regular EXPLAIN does not identify if SQL_BUFFER_RESULT was used at all. To demonstrate, let’s run this query:

Now, let’s compare it to this query:

Notice there […]

Read More

EXPLAIN FORMAT=JSON knows everything about UNIONs: union_result and query_specifications

 | January 29, 2016 |  Posted In: EXPLAIN, EXPLAIN FORMAT=JSON is cool!, JSON, MySQL

Ready for another post in the EXPLAIN FORMAT=JSON is Cool series! Great! This post will discuss how to see all the information that is contained in optimized queries with UNION using the union_result and query_specifications commands.   When optimizing complicated queries with UNION, it is easy to get lost in the regular EXPLAIN  output trying to identify which part […]

Read More