A large part of what we do at Imply is help organizations build custom applications and visualizations on top of their data. While Druid is a powerful backend for powering applications, there are aspects of the development process that could definitely be easier. To enable people to better understand the power of Druid, we have open sourced two projects: Pivot and Plywood. In this post, we’ll cover the ideas behind Pivot, and in a future post, we’ll cover Plywood.
Pivot is an open source UI designed to enable exploratory analytics on event data, and provides a way to perform OLAP operations using a friendly drag-and-drop UI. Pivot is built with the Plywood library, and also borrows some of its terminology.
Why another visualization UI?
So, what has led us to build yet another data visualization tool, even though there are plenty out there? There were several motivators:
- A common request from the Druid community has been for a quick and easy way to see what’s inside Druid as soon as they start bringing data in.
- At Imply we believe in the value and appeal of exploratory analytics. Although there are many cool OLAP tools out there, for the most part they don’t have the focus we were looking for: immediate, flexible and contextual exploration.
- Last but not least, we wanted something free and open source, which is also approachable and easy to install.
Data interaction in Pivot is centered around two operations: Filter and Split.
A Filter is equivalent to the WHERE clause in SQL, and involves narrowing the view of data to examine in a query. For example, you may want to filter only on events that occurred in a particular region.
A Split is equivalent to SQL’s GROUP BY, and involves slicing data across a particular attribute or dimension. In Pivot, you can split across multiple dimensions. For example, you can view the top values of a particular dimension, and for each of the values of the first dimension, view the top values based on a second dimension. So here we see the top countries for each of the top languages:
Having selected your dimensions of interest, you will probably want to see them visualized appropriately. Pivot will go ahead and guess the right visualization for your selection, but you can always change it from the visualization menu.
Note that Bar Chart and Geo are in fact not yet available. Oops :-) We are working to bring them in soon though, as well as other visualization options.
Dataset configuration and inspection
Pivot is designed to provide a quick and easy way to get insights from a Druid cluster. After installing Pivot you can just point it at your Druid cluster and start exploring your data. Pivot will introspect Druid data sources and auto configure itself as best as it can. Please note that the introspection is a bit lacking at the moment, and will be improved significantly with Druid 0.8.2. If Pivot looks promising to you, you can also provide an explicit configuration that ideally suits your needs. You can learn more about configuration in the Github readme.
Some more about the project
Pivot is completely open source. It comes bundled with the Imply Analytics Platform, and you can also install it as a standalone. The project is still at an alpha stage, and we are working hard to make it robust and add features. If you have feedback - great! Please post it in the User Group. For contribution or any other matter, feel free to contact us.