Define your metrics upstack to unify your team’s insights.

Defining mission-critical business metrics inconsistently leads to miscommunication, misalignment, and error. Keep everyone on the same page with data modeling upstream of every app.

Data Modeling
Access Control
Caching
APIs

Centralize your data models upstream, so that you only have to define them once.

Whether you’re building an internal application, a dashboard, or an embedded analytics application, ensure they’ll all be powered by consistent data—and skip manually orchestrating metrics for each presentation layer. Combined with Cube’s advanced caching and pre-aggregation capabilities, this ensures that every downstream app stays updated with the latest information—cost-effectively and with low latency.

Seamlessly integrate with every application.

Cube’s integrations and REST, GraphQL, and Postgres-compliant SQL APIs ensure compatibility with every modern data stack. Plus, reduce development context switching: manage data models in your favorite language—Python, JavaScript, or YAML—and see them visually with Data Graph.

Reduce time-to-value with development tools

Cube Cloud enables team collaboration and rapid data model prototyping with a development toolkit that includes Playground, Data Model IDE, Development Mode, Data Graph, and more. Reduce time authoring and debugging the data model—and more time with your actionable insights.

How does data modeling with Cube work?

Cube is a dataset-oriented semantic layer. When building your data model, you’ll deal with two types of objects: cubes and views.

Cubes represent business entities such as customers, line items, and orders. In cubes, you define all the calculations within measures and dimensions of these entities.

All cubes within your data model constitute your data graph.

  • YAML
  • JS
views:
- name: active_users
description: 14 days rolling count of active users
includes:
# Measure
- users.rolling_count
# Dimensions
- users.is_paying
- users.signup_date
- name: company.name
alias: company_name

Views expose slices of your data graph.

You have full control over which measures and dimensions are exposed to BIs or data apps and the direction of joins between exposed cubes.

Cube’s core data modeling concepts can be easily grasped by former Looker users, familiar with LookML syntax.

  • YAML
  • JS
views:
- name: active_users_view
public: COMPILE_CONTEXT.security_context.is_finance
cubes:
- join_path: active_users
includes:
- weekly_active
- time
- join_path: accounts
includes:
- pricing_plan

Data Graph visualizes cubes and joins between them as an entity-relationship diagram (ERD). It allows to have a bird's-eye view of the data model and visually detects connected parts, i.e., groups of cubes that don't have any relationships with other groups.

Ready to upgrade your data stack?

Check out the rest of Cube's four-part semantic layer

Caching and Data Performance

Rely on uniformly performant data with centralized caching.

Read More

Data APIs

Make your data accessible and your stack compatible.

Read More

Data Access Control

Robust governance begins with centralized permissions management.

Read More

Related Case Studies

See Cube’s data access control in action