This service lets you analyze, visualize and share Postgres Query Plans. It will compute and highlight the most important information to make them easier to understand.
It is brought to you by Dalibo.
This app was inspired and heavily influenced by the excellent explain.depesz.com. Both the tool and the corresponding help files are a great resource to learn about Postgres and its planner.
It's also heavily inspired by PEV of which it can be considered a fork.
To get the most out of it, we recommend generating a query plan using the following line: EXPLAIN (ANALYZE, COSTS, VERBOSE, BUFFERS, FORMAT JSON)
. It is recommend submitting a (decently formatted) SQL query that generated the plan.
PEV2 can also parse text although the JSON format usually has better support.
You can send plans using HTTP POST to https://explain.dalibo.com/new.
The request parameters to send are title, plan and optionaly query.
Here's an example using a HTML form:
<form action="https://explain.dalibo.com/new" method="POST">
<input type="text" name="title" value="A title for the plan"/>
<textarea name="plan" rows="10" cols="50">
Seq Scan on tenk1 (cost=0.00..333.00 rows=10000 width=148)
</textarea>
<textarea name="query" cols="50"></textarea>
<button type="submit">Submit</button>
</form>
Here's an example using cURL:
$ curl -Ls -w %{url_effective} -d '{"plan":"Seq Scan on tenk1 (cost=0.00..333.00 rows=10000 width=148)"}' -H "Content-Type: application/json" -X POST https://explain.dalibo.com/new -o /dev/null
You can send your plans directly from psql using the plan-exporter utility.
This application uses PEV2 JS library to analyze and display the plan.
Please report bugs on github.
The plans you send are stored in the database. This allows you to easily share a link to anyone.
It is recommended not to send any critical or sensitive information.
Plans are meant to be stored permanently (with no waranty) unless you delete them yourself.
You can delete the saved plans using the list shown in the home page. Make sure you're using the same browser.
You may preferably use a standalone (browser only) version of this app. Simply download this HTML file and run it in your browser.