Tested: six software tools for constructing a data platform

What characteristics will the TMaaS open-source app have? We based ourselves on the results of a thorough analysis of a broad selection of available solutions for BI management and (geospatial) data dashboards, each with their strengths and limitations. We then tested six lucky candidates in the field. Our conclusion: Carto and Metabase achieved the highest score in terms of our requirements. And yet, Metabase offers too little support for visualisation of maps and aggregations, and Carto offers too little support for basic visualisations such as graphs. In an ideal scenario we would combine the possibilities offered by Metabase (for non-geographical data) and Carto (for geographical data).

Here is an outline of the six dashboard tools:

  1. Metabase
  2. Apache Superset
  3. Qlik Sense
  4. Kibana
  5. Redash
  6. Carto

1. Metabase

Metabase dashboard for visualisation of real-time occupancy rate in parking garages in Ghent, as see on an iPhone
1. Metabase dashboard for visualisation of real-time occupancy rate in parking garages in Ghent, as see on an iPhone

Metabase is an open-source tool for business intelligence management. It allows the user to quickly and easily define a number of questions, which are then answered automatically by the Metabase system. The visualisations are useful for the used data. Metabase is very intuitive, easy to install and is generally well-suited for analysing historical data.
However, a few downsides exist. The support for spatiotemporal databases is disappointing and there is no support for plugins or extensions so that adjustments in the source code have to be programmed. There is also limited interactivity between separate widgets (if you click an element in one table for instance, it will not be automatically highlighted in another table). Metabase does not offer support either for other types of data source.

2. Apache Superset

Apache Superset is a modern business intelligence framework that was developed by Airbnb. It previously went successively under the names of Panoramix and Caravel. Apache Superset boasts a rich set of visualisations, user-friendly interfaces and customised authentication and authorisation systems. In terms of setup Apache Superset is quite comparable to Metabase. It is easy to set up and has support for Docker containers containing the web applications. However, an additional installation of PostgreSQL and Redis is required.
Apache Superset offers better support for geospatial datasets, but the visualisations are not easy to configure, etc. For most of these visualisations, one must depend on external mapping libraries and frameworks such as Mapbox. It is not possible to select objects in widgets and to filter them in different widgets. Apache Superset does provide an IFrame widget, which can be used to support customised visualisations or YouTube videos text Superset dashboard for the automated historical bicycle data of the Visserij.
Selecting and aggregating the data to display is less intuitive than in Metabase. Superset provides no built-in functionality to query flat files or spreadsheets, so such datasets need to be imported into a supported database management system.

Mobile support of Superset is disappointing. The widgets have a freeflow function, but do not extend themselves to the full width of the viewport.

3. Qlik Sense

Qlick Bicycle counting at the Visserij in Ghent
3.1 Qlick Bicycle counting at the Visserij in Ghent

Qlik Sense is a business intelligence and data visualisation toolset designed for individual users and organizations. It allows users to analyse data and gain insights from large volumes of data. Through sharing tools, one can collaboratively analyse the data and distribute the knowledge assembly process within groups or across an entire organisation.
The Qlik Sense product family spans three related products. Qlik Sense Desktop, Cloud and Enterprise. The desktop version is only suitable for personal use and does not support sharing visualisations or dashboards. This version does not meet the requirements in terms of distribution, cooperation and web applications for the neutral TMaaS dashboard.
Qlik Sense Cloud, on the other hand, supports basic collaboration between individuals on the design of dashboards. However, in case you want to share or re-use certain data models and visualisations, or if complex authentication and authorisation procedures are required, one should instead use the Qlik Sense Enterprise edition. In comparison to Metabase and Apache Superset, Qlik Sense open source model offers less freedom. Additionally, Qlik Sense Cloud Business and Qlik Sense Enterprise are paid solutions. Support for data sources in Qlik Sense Cloud is rather limited. Support for geospatial data is acceptable in the basic edition, but can be extended by subscribing to the Qlik Geoanalytics package. Importing data and setting up the visualisations is quite straightforward in Qlik, and plenty of customization and configuration options exist for each type of chart or widget. Unlike the other alternatives, Qlik Sense Cloud has the ability to filter different visualisations based on selections in other visualisations or tables. The Qlik Sense dashboards offer good support for mobile devices.
Time series line charts have the ability to organize data by several different requirements (e.g. average numbers of bicycles counted per day, week or month travelling towards the City Centre or towards Gentbrugge). Screenshot 3.2 shows that a number of visualisation support formulas exist for calculating colours (in the table), marker sizes (in the table of the car parks), etc.

 Qlik screenshot of parking garage occupancy rate in Ghent
3.2 Qlik screenshot of parking garage occupancy rate in Ghent

4. Elasticsearch Kibana

3. Elasticsearch Kibana

Kibana is an open source data visualisation toolset for the Elasticsearch scalable document search and analytics engine. It allows the user to visualise data that has been indexed by an Elasticsearch cluster. A large set of visualisations is available such as bar and line charts, heat maps, gauges, marker layers and choropleth region maps. Installing Kibana and Elasticsearch is straightforward, thanks to the Docker containers that are provided by the authors. Once one has become familiar with it, the user interface is very user-friendly. A major difference between Kibana and the other solutions we have tested, is that it requires data analysts to import the data into Elasticsearch indices. There is no support for making connections to different kinds of databases. However, this is only a minor concern.
The time dimension is very important to Elasticsearch and Kibana and it is therefore a key filter in dashboards produced by it. This is interesting for dashboards that rely on (near) real time information, as one can easily decide to show only data ingested in the past 15 minutes, for example. Users can also use Lucene queries to further filter the data.

Kibana supports custom extensions that can be developed using the plugin interfaces. This functionality could potentially be used to develop integrations with third party modules in the event that the aim is not to import a database.

It also allows exporting individual visualisations or entire dashboards as widgets that can be re-used on different websites or dashboards. To the best of our knowledge it is not yet possible to show widgets from other websites on a Kibana dashboard.

The dashboard for the real-time parking garage information, depicted in FigureX was straightforward to set up and contains a wide range of widgets. It contains a map with markers at the location of each parking garage, scaled and coloured by the current available capacity.

Figure 3 shows the dashboard for the parking fee zone data. It shows map views of parking payment terminals in Ghent at the top, along with gauges showing the frequency of cashless and cash-only payment terminals. The bottom part has a table showing the name and some extra information of each parking-free zone. While importing complex geographical features is possible in Elasticsearch, there is no support yet to visualise this data. So instead, we plotted the centre of each parking zone on a marker layer.

Compatibility with the Kibana dashboard with reduced screen sizes of mobile devices is not optimal. Half of the width of the screen remains unused, while the layout of the visualisations does not automatically adjust to the reduced width, leading to very narrow charts and maps. In full screen mode, the same issue appears, but the entire width of the screen is used which slightly improves usability.

5. Redash

Redash is an open source data visualisation and dashboard tool. It supports a large amount of data sources and data visualisations.
Installation is easy with a Docker Compose file. Once set up, users can add data sources and create queries in the built-in SQL editor. A query can be extended with one or more visualisations. These visualisations can be added to a dashboard.
Queries and dashboards can be configured with an automatic refresh schedule ranging from 1 minute to 24 hours. However, there is no support for real-time updates (push).
Map visualisations are rather limited; only maps with markers and choropleth maps are supported. Map markers are simple coloured dots, where colour is based on a categorical property, but it is not possible to alter the style of markers based on continuous values. Therefore, in the example of real time parking garage data, you cannot visualise current available capacity, other than categorising them with the query or displaying the value in a pop-up.
Redash behaves relatively well on mobile phones. However, there are some small issues like non-optimal use of space, e.g. with captions and features that depend on mouse over behaviour.

6. Carto

 Carto visualisation of the density of car park payment terminals in Ghent.
6. Carto visualisation of the density of car park payment terminals in Ghent.

Thanks to a set of built-in analysis options, Carto is able to offer a great number of possibilities that include geocoding, buffering on distance and travel duration, grouping by area, clustering, prediction, outlier detection and so on. Carto is different than the other platforms as it is primarily a tool to build interactive GIS applications and as such it is not suitable for dashboards. Carto is capable of visualising and analysing complex geographic data but is not suited for visualising non-geographic data. However, with the engine it is possible to create custom web applications and it could be extended with other libraries to add other charts and interactions. Given that Carto is a tool designed to build applications, behaviour on mobile devices also depends on these applications. However, the Carto Builder is already very well adapted to mobile phone screens.

If you have any queries about all of this, please do not hesitate to contact the TMaaS team.