Skip to main content

From Looker to Holistics

caution

Whenever Looker is mentioned in this document, we are talking about Looker Core, which is a BI product acquired by Google in 2020, and not about Looker Studio (previously known as Google Data Studio).

info

This document was written in June 2024, and may have become inaccurate as Holistics and Looker continue to improve their products.

Introduction

This document aims to give a high level comparison between Holistics and Looker, and to smoothen to the transition for existing Looker customers to Holistics by showing how you can achieve common Looker use cases using Holistics features.

High level similarities

Both Holistics and Looker are built on the insight that analytics development has two main types of stakeholders: analysts who develop the analytics foundation for an organization, and business users who want to consume and self-serve their analytics needs. Both understand the similarities between analytics development and software development, and thus borrow practices from the latter in their product design.

As a result, both Looker and Holistics enable self-service analytics through a code-based semantic (or modeling) layer. Both Holistics and Looker:

  • Use a declarative language (Holistics' AMQL vs Looker's LookML) to describe both the semantic layer and the visualization layer
  • Provide a self-served interface for business users to explore data
  • Analysts can use SQL to define dimension and measure (in Holistics, you can additionally use AQL)
  • SQL queries are dynamically generated from semantic layer logic during the self-service process and get sent to customer data warehouses

Consequently, both Holistics and Looker provides good support for:

  • Data governance through Git integration, CI/CD and approval/auditing process
  • Strong analytics reusability and maintainability

Concept comparison table

The table below lists the analogous concepts between Looker and Holistics to make it easier to compare the two.

Looker conceptHolistics conceptExplanation
Looker viewHolistics modelBoth represent a database table or a derived table.
Looker exploreHolistics datasetLooker defines explore as a view user can query. Unlike Looker, in Holistics, user can query from any model in a dataset.
Looker modelHolistics datasetBoth represent an abstraction on top of a database to enable self-service exploration.
Looker projectHolistics moduleHolistics only contain one "project" but can segregate code through use of module.

High level differences

Modeling and Semantic Layer

To enable self-service data exploration, Looker has the concept of LookML models, explores and views. The analogous concepts in Holistics are dataset and models. The key difference between the two lies in the way exploration is enabled. In Looker, a LookML's explore is a view (represents a table) that users can query. It uses explicit join type from a specific LookML view. On the other hand, Holistics's dataset uses relationship type without a specific starting table/model (and compiles to appropriate join type at runtime). As a result, Holistics is more flexible as the join can be dynamically chosen to fit the use case. On the other hand, Looker gives more explicit control over the join type of the generated SQL but this control is only static (which has its own downside). The consequence is that Holistics and Looker handle fan-out problem differently. Holistics chooses the right join type to avoid the problem while Looker uses symmetric aggregates.

On the metric building aspect, Looker only supports SQL to define metrics while Holistics supports both SQL and AQL to define metrics. Holistics AQL metrics are more robust than SQL ones and can support more use cases natively instead of depending on dimensional modeling (building derived tables) with SQL. For example, calculate cumulative sum in Looker requires a derived table while it is a one-line of code in AQL using running_total or window_sum/window_avg function. Another example is nested aggregation in Looker vs Holistics. The downside of Holistics is that there is a learning curve associated with using AQL as it is not based on SQL.

Visualization

Looker has two types of dashboards: user-defined dashboards and LookML dashboards. The key difference is that user-defined dashboards are not "as-code" while LookML dashboards are.

Holistics also has two types of dashboards: the legacy 3.0 dashboards and the new canvas dashboards. Compared to Looker's dashboards, Holistics' canvas dashboards provide both a code and visual interface for analysts to build dashboards.

Due to the nature of its canvas-based structure, Holistics' canvas dashboards are more flexible than Looker, and can provide features such as:

  • Freely put a tile/widget anywhere on a dashboard, even on top of each other for a specific effect
  • Put interactive controls near your charts for better user experience
  • Custom tooltip that displays additional information when user hovers on chart data points

In terms of custom visualization, both Holistics and Looker supports ways to build visualizations that are not supported natively by the platforms. In Looker, developing custom visualization requires knowledge of Javascript. Holistics, on the other hand, leverages Vega-lite, which provides a declarative way to define custom charts. Both has their own advantages and disadvantages. Looker's approach is more flexible, but also takes a lot more effort compared to Holistics' approach. In addition, Holistics' custom charts integrate better with the platform as the inputs from end-user perspectice are not different from built-in visualizations.

Self-service analytics

Both Holistics and Looker provide ability for business user to explore and build their own visualization through a drag-and-drop interface. Holistics, in addition, has built-in point-and-click GUI for common analytics needs such as period comparison.

Holistics previously had a feature similar to Looker table calculation, but is now superseded by AQL, which acts as a more powerful/robust replacement as it can work on both the underlying SQL as well as the visible table results.

Embedded analytics

Both Holistics and Looker provide secure embedded analytics insider customers' own applications using iframes. Holistics' approach uses JWT, and is similar to Looker's signed embedding.

Currently Holistics hasn't yet supported programmable interaction between the host application and the embedded iframes while Looker has support for this feature through JavaScript event or Looker Embed SDK.


Let us know what you think about this document :)