What is Metabase: A Comprehensive Guide 101

on BI Tool, ETL, Metabase • May 21st, 2021

Understanding Metabase

Metabase is an open-source Business Intelligence(BI) tool that helps you question your data and display answers in useful formats( graphs, tables, etc) that can be shared amongst users. The process of understanding and working with it starts from knowing the problems it solves and how it provides the solutions.

This article is not a full-blown tutorial on how to perform activities on Metabase. It is a comprehensive walk-around on how it works and what it can do.

Table of Contents

What is Metabase

Metabase logo
Image Source: Jobs Lever

Metabase allows you to create dashboards that can contain KPIs and other relevant metrics used in the organization. It also gives updates based on the metrics.

An enterprise making use of this software has users. These users perform certain actions – buying, subscribing, abandoning a cart, etc. Its dashboard provides resources to query those data and arrive at logical conclusions for improvement.

The publishing of analysis results in every company might require additional activities and support. These could have to do with coding the interface or requiring non-technical users to interact with tools like Matlab/Julia etc. It allows sharing links to dashboards with other users and embedding links.

What is Metabase: Key Features of Metabase 

The versatility of its deployment on a variety of supported platforms is undeniable. The main use of it is to enable users to make data-driven decisions for growth. Let’s take a look at some features. 

1. The Pulse Reporting Feature in Giving Updates

what is Metabase
Image Source: Metabase

Its pulse reporting feature allows users within an organization to share Key Performance Indicators, objectives, and results. For example:

  • The number of customers that lodged complaints and how many were attended to.
  • How many users performed certain actions?

      Benefits:

  • The sharing of the dashboard and reporting quickly to relevant departments keep them updated on how the previous day, week, or month went.
  • They can make decisions on where to either improve or focus on.
  • The provision of metrics serves as a troubleshooting and monitoring tool for developers.

2. What is Metabase: Analysis of Data in a Data Warehouse

Data Analysis in Metabase
Image Source: Fiverr

The pulse reporting feature also plays its part in this phase. It can be connected to a data warehouse to perform real-time analytics. The result of these analytics can be shared among different teams to keep tabs on Key Performance Indicators. The sharing of dashboards also enables individuals to perform explorative analysis to share with others. So, in an organizational setting where opinions and ideas are welcomed, there is room for creativity in the team.

3. What is Metabase: Ease of Installation

Metabase installation procedure takes little or no time depending on your desired method. 

If you choose to work with it on your local machine personally, you have options – from

Docker to running as an app in the Mac environment. The installation on the cloud is a bit different, but depending on the cloud service you decide to host it on, there are guidelines to get it up and running.

It allows integration with several databases and data warehouses. They include – MySQL, Postgres, Amazon Redshift, Snowflake, Big Query, Spark, Mongo etc.

Simplify your Data Analysis with Hevo’s No-code Data Pipelines

Hevo, a No-code Data Pipeline helps to transfer your data from multiple sources(among 100+ sources) to the Data Warehouse/Destination of your choice to visualize it in your desired BI tool. Hevo is fully managed and completely automates the process of not only loading data from your desired source but also takes care of transforming it into an analysis-ready form without having to write a single line of code. Its fault-tolerant architecture ensures that the data is handled in a secure, consistent manner with zero data loss.

It provides a consistent & reliable solution to manage data in real-time and you always have analysis-ready data in your desired destination. It allows you to focus on key business needs and perform insightful analysis using a BI tool of your choice.

Get Started with Hevo for free

Check out Some of the Cool Features of Hevo:

  • Completely Automated: The Hevo platform can be set up in just a few minutes and requires minimal maintenance.
  • Real-Time Data Transfer: Hevo provides real-time data migration, so you can have analysis-ready data always.
  • 100% Complete & Accurate Data Transfer: Hevo’s robust infrastructure ensures reliable data transfer with zero data loss.
  • Scalable Infrastructure: Hevo has in-built integrations for 100+ sources that can help you scale your data infrastructure as required.
  • 24/7 Live Support: The Hevo team is available round the clock to extend exceptional support to you through chat, email, and support calls.
  • Schema Management: Hevo takes away the tedious task of schema management & automatically detects the schema of incoming data and maps it to the destination schema.
  • Live Monitoring: Hevo allows you to monitor the data flow so you can check where your data is at a particular point in time.
Sign up here for a 14-day Free Trial!

What is Metabase: Prerequisites

The reader is required to have basic knowledge about the data ecosystem.

What is Metabase: Steps to Install Metabase

It is built with Java and packaged as a JAR file. It can run anywhere Java is present. However, there are two ways to install it – 

  1. Working with it Locally
  2. On the cloud.

What is metabase: Working with it Locally

There are 3 ways to do this: 

1. What is Metabase : Installing the JAR file

Step 1: Install JAVA JRE(Java Runtime Environment).

The recommended version is the latest LTS version from AdoptOpenJDK with

 Hotspot JVM and x64 architecture. Other versions are also supported.

Step 2: Download the .jar file

Download Metabase
Image Source: Self
  • Go to the Metabase download page and download the most current release.
  • Move the downloaded file into a new directory. The installation will create some files for it to run.

Step 3: Running the .jar file.

  • Open your terminal.
  • Type java -jar Metabase.jar

This should run it on port 3000 provided no application is running on that port. If another application is running on port 3000, make sure to set the environment variable of MB_JETTY_PORT before running the jar.

2. What is Metabase : Running on Mac

Step 1: Download the Mac application.

Step 2: Launch the application.

  • Go to Application.
  • Find Metabase.app
  • Give it a moment until a welcome page pops up.

The next step is to connect to your database.

Note: Usually, the application database will be stored somewhere on your file system at 

~/Library/Application Support/Metabase/Metabase.db.h2.db.

If you need to delete, backup, or replace it for any reason, make sure to shut down the main application first.

3. What is Metabase: Using the Docker Container

Metabase on docker can be set up in a variety of ways:

  • Migrating from default database H2 to Postgres as the application database.
  • Using Postgres as the application database.
  •  Accessing your data outside the container just in case you need to unmount it.
  •  Getting your configuration back if you stopped the container.

Launching it in a docker container:

To get started, you need to get the official Docker image from docker hub. You can also get the latest version of it via Docker:

> docker pull Metabase/Metabase:latest

To run it on docker:

> docker run -d -p 3000:3000 --name Metabase Metabase/Metabase

To follow up on the initialization process, check the logs with

>  docker logs -f Metabase

Note: Docker containers have their own default ports, but you can choose a different port if you wish. Consider using the port 1334:

> docker run -d -p 1334:3000 --name Metabase Metabase/Metabase

Getting your config back if you stopped a container:

Fun fact: If you stopped a container, your data will still remain intact unless you delete the container.

Step 1: Find the stopped container.

> docker ps -a

A more precise approach is to use the grep command.

> docker ps -a | grep Metabase

Once you identify the container, copy the ID from the left-most column.

Step 2: Create a new custom docker image from the stopped container containing your config file.

> docker commit [ID] [NEW_MB_APP]

Step 3: Run the new image

>  docker run -d -p 3000:3000 --name Metabase [NEW_MB_APP]

Additional configurations:

Using Postgres as the application database:

To do this make sure you set the correct environment variables containing your connection details for Postgres and that you have a qualified hostname.

> docker run -d -p 3000:3000 -e “MB_DB_TYPE=postgres” 
-e “MB_DB_DBNAME=Metabase” -e “MB_DB_POST=5432” 
-e “MB_DB_USER=<username>” -e “MB_DB_PASS=<password>”
-e “MB_DB_HOST=my-database-host”
--name Metabase Metabase/Metabase

Mapping the database outside the container:

To use the database outside the container, run the command:

> docker run -d -p 3000:3000 
	-v ~/Metabase-data:/Metabase-data 
	-e “MB_DB_FILE=/Metabase-data/Metabase.db” 
	--name Metabase Metabase/Metabase

The “MB_DB_FILE” variable tells to use the database file at the location specified instead of the default location.

Working with it in the Cloud

There are quite some cloud services that can host it. They include:

  • Kubernetes.
  • Heroku
  • Debian as a service
  • AWS elastic Beanstalk

1. What is Metabase: Running it Using Kubernetes

To use it on Kubernetes, the following has to be in place.

  • Kubernetes 1.4+ with Beta APIs enabled.
  • Kubernetes Helm (installed).

Installing:

> helm install -name my-release stable/Metabase

Configuring:

Note: The default backend database(H2) is stored inside the container and is lost after the container restarts.

Recommendations: MySQL or Postgres

Deploying it on Kubernetes:

 A config file is needed to deploy it. To do get this done, 

  • Create a file named Metabase-config.yaml
  • Copy the default configuration into it.
  • Type helm install –name my-release -f Metabase-config.yaml stable/release

2. What is Metabase: Running it Using Heroku

This is easier if you have a Heroku account set up. All you need to do is deployment.

The GitHub repository that it maintains will be launched with Heroku deployment. It is usual to want to check your progress after deployment, this can be done my viewing the application logs. Your application log can be viewed in https://dashboard.heroku.com/apps/YOUR_APP_NAME/logs.

OR

If you want to use Heroku CLI, from your terminal type:

> heroku logs -t -a YOUR_APP_NAME

What is metabase: Advantages

  • Metabase does not necessitate extensive technical knowledge. As a result, users are more likely to search the Dashboards for information and come to a conclusion.
  • The program does not always need to be deployed because the entries in the Dashboard can be simply arranged. The data becomes less complex as a result of Analytics, and the Graphs make it seem excellent for Commercial Presentations.
  • Databases are simply added to Metabase, and the connection is secure thanks to encrypted credentials. The administrator can control this, and the details can be saved so that the tool can function properly without having to ask for the encryption key.

What is Metabase: Disadvantages

  • When it comes to the drawbacks, users should map their data before entering it into the tool. The information must be organized and provided into the tool.
  • SQL is required when the data grows complex, and it cannot function without the system’s queries. Also, unless updated, the basic version is not available on Windows and only works on Mac platforms.
  • Data from any database cannot be easily integrated without first performing data mapping. Although connectors are accessible, background work is required in order for the tool to function properly.
  • The enterprise edition, which costs $10000 and includes full privileges and a commercial license, is charged based on the server. It is preferable to utilize an enterprise edition of the program if it is to be used in a business setting.

What is Metabase: Conclusion

Metabase is a robust data analytics application that offers both the enterprise using it and the user’s enjoyable benefits in terms of user experience, freedom, and integration of databases and data warehouses.

Visit our Website to Explore Hevo

Integrating and analyzing your data from a huge set of diverse sources can be challenging, this is where Hevo comes into the picture. Hevo is a No-code Data Pipeline and has awesome 100+ pre-built integrations that you can choose from. Hevo can help you integrate your sales data from numerous sources and load them into a destination to analyze real-time data with a BI tool and create your Dashboards. It will make your life easier and make data migration hassle-free. It is user-friendly, reliable, and secure.

Want to take Hevo for a spin? Sign Up for a 14-day free trial and experience the feature-rich Hevo suite first hand. You can also have a look at our unbeatable pricing that will help you choose the right plan for your business needs!

No-code Data Pipeline for Metabase