Open-Source Business Intelligence with Metabase
A brief guide to deploying open-source business intelligence platform, Metabase, on Railway.
Open-source business intelligence platforms offer users access to data-driven insights without expensive overheads that typically come with proprietary solutions. They are designed to be used by developers, analysts, and business users alike, and help them make sense of their data as well as smarter decisions about their operations. Let's explore one such platform today, Metabase.
What is Metabase?
Metabase is an open-source business intelligence platform with a friendly user experience that lets you explore data on your own. It connects to 20+ popular data sources and queries data immediately, without extracts. The visual query builder helps all users, including those not particularly savvy with SQL, to join tables, visualise data and generate valuable insights. It also offers important security features like single sign-on, granular access control via group-based permissions, row-level data sandboxing, audit logs and more.
What is Railway?
Railway is a modern app hosting platform that makes it easy to deploy production-ready apps quickly. Railway offers persistent database services for PostgreSQL, MySQL, MongoDB, and Redis, as well as application services with a GitHub repository as the deployment source. For the latter, Railway can automatically determine the application runtime and deploy the service. Railway offers several one-click starters for popular applications, including Metabase. Since we are just testing the waters, Railway's free tier should be sufficient to host the service.
Deploy Metabase using One-Click Starter on Railway
Sign up for an account with Railway using GitHub, and click Authorize Railway App
when redirected. Review and agree to Railway's Terms of Service and Fair Use Policy if prompted. Launch the Metabase one-click starter template (or click the button below) to deploy a Metabase instance instantly on Railway.
You'll be prompted with an opportunity to change the default repository name and set it private, if you'd like. Accept the defaults and click Deploy
; the deployment will kick off immediately.
Once the deployment completes, Metabase will be available at a default xxx.up.railway.app
domain - click on this URL to access your instance. If you are interested in setting up a custom domain, I covered it at length in a previous post - see the final section here.
Getting Started with Metabase
Next, complete the initial configuration steps to set up your Metabase instance. Select your preferred language, say English
, provide basic user information, select the data source, describe your data usage preference, and click Finish
. Metabase offers a decent set of data sources, including popular cloud-based services like Amazon Redshift, Google BigQuery, Snowflake and others. You can also click I'll add my data later
to play around with the sample database for now.
Once you complete the initial steps, you'll be taken to the Metabase dashboard, which will be pre-populated with data from a sample database. Play around with the different "x-rays" to explore the different analytics capabilities.
Click on + New
to create a new question, SQL query, dashboard, collection or model based on your data. Or click on the gear symbol (Settings
> Admin settings
) at the top-right corner to configure additional data sources and get the best out of Metabase.
Here's a quick video demo showing how to build your own dashboards. If you're keen to learn more, head over to their documentation.