Compose - a Data Browsing Guide


We've been busy adding browsing capabilities to some of the newer Compose databases and as we've done that, we've been asked questions about whether the functionality would be added to the other databases or not. So we decided to round up all the ways you can browse your data on Compose databases to give you the bigger picture.


Compose gives you:

MongoDB was the recipient of the first of our database browsers. With the MongoDB data browser you can view any collection in your database, creating MongoDB queries and applying limits or skipping and sorting the results. To tune your queries we give you access to MongoDB's hint and explain commands too. The browser also lets you create databases, collections and indexes, rename collections and view their statistics. And you can add new JSON documents to or edit documents in collections through a text editor.

You could also try:

Although not a point-and-click environment, the Mongo shell is very powerful – we've written about discovering that power and other tips and tricks in this very blog. Counting against the Mongo shell though is that its data formatting is practically non-existent.

Which brings us to RoboMongo, a GUI application for browsing MongoDB which blends in the command line power of the shell with a native presentation layer on Mac, Windows or Linux. We looked at this app just over a year ago in RoboMongo: Your Next Shell. Since that article, not much has changed with RoboMongo, save a recent minor update. A much bigger update is needed though as the arrival of MongoDB 3.0 has just amplified some of the underlying compatibility issues in RoboMongo. Till they are addressed, we can't emphatically recommend RoboMongo but if you are running an older MongoDB version and are, for example, prepared to manually select your server in your replica set, then you may find RoboMongo a very useful tool.


Compose gives you:

Compose Redis deployments were the second database on Compose to get a data browser. Redis is a key/value in-memory database and it's a very different environment to say MongoDB. We created a browser to match that environment, allowing you to scan and search through the keys in the database and retrieve and modify the values – strings, hashes, lists and sets – that they point to. You can learn more about it in our introduction to the browser which includes a screencast.

You could also try:

For a native Windows, Mac or Linux client, there's RDM - Redis Desktop Manager - an open source (LGPL2) GUI application which renders Redis data as a tree and offers a spreadsheet-like table for editing data. It is, though an "early beta version ... that we are publishing in a hope to validate usefulness of application" so do bear that in mind when testing it out.
If you want a more web-centric experience, there's also the pay-for-with-free-tier Redismin with many monitoring and administration features alongside key/value editing.


Compose gives you:

The most recent addition to our range of data browsers is PostgreSQL. Our first edition of the PostgreSQL browser lets you view databases and tables, creating SQL queries, viewing their results in a table and to edit those results. We have an introduction to the PostgreSQL data browser which covers it in more detail.

You could also try:

For PostgreSQL, and beyond the psql command line utility, there's a number of utilities. Best known is probably pgAdmin which literally covers every facet of interacting with a PostgreSQL database, especially the admin features. So much so that it can be somewhat intimidating. That has lead to the appearance of tools like Psequel, a cleanly designed Mac OS X application which has a good range of capabilities centered on creating and querying data without being overwhelming with admin features. Psequel is though, still in the early stages of development.


Compose gives you:

Nothing. That's because what the RethinkDB developers have already built into their admin interface is rather splendid. It gives full, command-completing, history-enabled shell access to the database along side all the other admin functions. It even supports change feeds - if you create feed using changes() the updates to that feed are reflected in an updating table view.

What it lacks, as a data browser, is integrated editing, but that's mainly because it exposing the ReQL language rather than trying to replace it. And, there is also the issue of setting up a connection to the admin console, which currently involves configuring an SSH tunnel.

You could also try:

Nothing yet. We've yet to come across a rich GUI or command-line alternative client for RethinkDB.


Compose gives you:

Elasticsearch is a special case when it comes to data browsing. Where all the other databases mentioned are usually the source of truth for the data within them, Elasticsearch databases tend to have their data imported in bulk from some other database or datasource for analysis. That means that people tend not to need to modify the data in place, limiting the potential use cases for a data browser.

With that in mind, currently, Compose makes it easy for you to get access to Elasticsearch integrated site plugins. These plugins offer web interfaces which include administration and monitoring functionality and some of them offer their own query capabilities or access to the REST API of Elasticsearch. We summarized the capabilities of some of the plugins when they were introduced to the Compose platform - Head and Kopf are probably the most useful of them for browsing data.

Future browsing

Rest assured though that we are looking for ways to bring better browsing experiences to all our database technologies. Despite the capabilities of third party clients, their need to be configured to connect always puts them at a disadvantage to the sheer convenience of being able to click from your Compose dashboard and dive straight in.

Thom Crowe
Thom Crowe was a marketing and community guy at Compose, who enjoys long walks on the beach, reading, spending time with his wife and daughter and tinkering. Love this article? Head over to Thom Crowe’s author page to keep reading.

Conquer the Data Layer

Spend your time developing apps, not managing databases.