Written by Sandra Suszterova |
Multi-tenant analytics refers to an analytics platform built on a multi-tenant architecture, which sets it apart from other analytics solutions. Multi-tenant analytics delivers dashboards and reporting capabilities to multiple end users, also known as tenants.
In this article, we will explain how multi-tenant analytics work and how it differs from single-tenant analytics. If you would like to review the basics of multitenancy, feel free to read our article “What Is Multitenancy?”
How Does Multi-tenant Analytics Work?
As previously mentioned, multi-tenant analytics provides multiple tenants with dashboards and reporting capabilities. Who exactly is a tenant?
Tenants can be:
- Users and user groups outside your company who are related to your business (e.g., resellers, agents, franchise units, etc.)
- Customers (e.g., subscribers or client companies)
- Users inside your company (e.g., departments, global business units, or single users with specific needs)
Each tenant is given access to a dedicated space where they can analyze their data and view their dashboards.
This space is designed as a securely separated container within the analytics platform, which can hold an indefinite number of containers. These containers may be referred to by different names: workspaces, views, or boxes. In this article, we will refer to them as workspaces.
While the workspace contains a data model, metrics, and dashboards, it contains only the data that is specific to a given tenant. This distinction is achieved through the use of two types of workspaces: the master workspace and child workspace. Let’s review their purposes and components.
- The master workspace serves as a template for child workspaces. This workspace contains a data model, all metrics, and dashboards that can be shared with the connected child workspaces. No end users are given access to the master workspace.
- The child workspace is tenant-facing. It is the space where end users work with their dashboards. The child workspace contains the data model, core metrics, and dashboards inherited from the master workspace. As we mentioned before, each child workspace contains different data. End users in the child workspace may create their own metrics on top of the ones provided by the master workspace and create their own dashboards — without affecting the master workspace.
This multi-tenant structure allows you to push updates from the master workspace to any of its child workspaces. Additionally, it allows you to easily reuse workspaces, create copies of workspaces, and modify them to quickly accommodate the needs of different teams, business partners, or customers.
Using this structure is an efficient way to create, scale, and manage standardized and agile reporting for a broad user base. On top of that, you can also allow end users to create their own customized dashboards and perform their own data and insight exploration.
This structure is especially common for delivering analytics to your own customers or end users outside your organizations (e.g., business partners).
Alternatively, if you would like to easily scale and manage diverse analytics use cases (e.g., departments that need fundamentally different metrics from one another), you can organize workspaces into segments. Each segment has one master workspace with one data model and one or many child workspaces.
Regardless of which multi-tenant structure you choose, end users from one workspace cannot access data and dashboards from another workspace unless you enable permissions for them to do so. They can only view the metrics and dashboards that are relevant to them. How you choose to define the structure of your workspaces depends on the unique needs of your company.
Note: The above described multi-tenant architecture solution based on workspaces outlines the best proven way to build sustainable multi-tenant analytics. However, it is not the only option available. To explore other architecture options, including per-tenant silos, shared analytical databases, and more, feel free to read this article.
What Are the Benefits of Multi-tenant Analytics?
Now that we understand how multi-tenant analytics works, let’s review its benefits.
- Cost efficiency and security: A single analytics platform is used to manage the entire user base, which lowers the overall cost and optimizes data and analytics management. With a multi-tenant structure, large-scale or mid-scale analytics solutions are secure, manageable, and affordable.
- Scalability and management: Analytics scaling processes are efficient, agile, and fast thanks to workspace cloning, access provisioning, and strong governance over the structure of workspaces. End users have the flexibility to adjust the provided dashboards or create their own dashboards without affecting other users’ dashboards or the underlying data, metrics, and settings. The company and data teams are in control, while end users are efficiently provided with the data and insight they need.
Single-tenant Analytics vs. Multi-tenant Analytics
The main difference between single-tenant and multi-tenant analytics lies in the management of analytics scaling. In order to scale, you need to efficiently manage separated groups of users as well as their needs and use cases. The table below provides an overview of the differences between single-tenant and multi-tenant analytics.
Using single-tenant analytics for multi-tenant use cases might be a risky approach. There are two scenarios in which this can happen:
- Using single-tenant analytics as multi-tenant analytics
- Deploying single-tenant analytics for each tenant separately
Using single-tenant architecture for multi-tenant analytics leads to severe security and privacy issues. Since there are no securely separated containers in the analytics platform, there is a high risk of end users from different departments or companies affecting each other’s data and dashboards. Deploying changes to data models and dashboards while maintaining control over the analytics solution when there is no user base and data structure is an impossible task.
When a company decides to deploy single-tenant analytics for each tenant separately, it needs to install individual workspaces of single-tenant analytics for each tenant. Compared to the previous scenario, each tenant is given privacy and can customize their analytics as they want. Still, there are drawbacks to this approach:
- Deploying a new software version for each tenant is costly and inefficient. It increases costs of the entire analytics solution and increases the time needed to set up the analytics for tenants.
- As the user base grows, it becomes difficult to manage all the software versions.
- The company must maintain multiple software versions.
Which Type of Solution Is Right for You?
If an analytics solution is intended to provide data and dashboards to multiple groups of users and should be managed centrally, a multi-tenant analytics platform is the better option for the following reasons:
- Each tenant can only access the data that is relevant to them, which provides privacy.
- Each tenant can customize their analytics as they wish (e.g., adding a logo, changing colors, changing the style of dashboards, etc.).
- Each tenant acts as a separate unit, meaning changes in one tenant's view will not appear in another tenant's view.
On the other hand, if you do not require this kind of governance, agility, and efficiency, a single-tenant analytics solution will likely be a convenient solution for your use case.
Multi-tenant Analytics With GoodData
GoodData is a modern BI and analytics platform with a decade of experience in multi-tenant environments. If you are interested in learning more about creating a multi-tenant environment, go ahead and read about it in our documentation, or get in contact with us directly by requesting a demo. Our EU and U.S. teams are happy to give you a free GoodData platform walk-through and answer any of your questions.
Written by Sandra Suszterova |
Subscribe to our newsletter
Get your dose of interesting facts on analytics in your inbox every month.Subscribe