Concept Introduction: Understanding the Relational Model

更新时间:
复制 MD 格式

What Is a Relational Model?

Introduction to the Relational Model

Quick BI’s relational model is a data modeling framework designed for multi-table association and analysis. It addresses common challenges in traditional physical modeling—such as low efficiency, insufficient accuracy, and limited analytical flexibility—and supports multidimensional analysis in complex business scenarios.

In the relational model, you do not need to manage data details or specify explicit join types. Simply place related tables on the canvas and configure their join keys to complete modeling easily.

The relational model significantly improves modeling efficiency while ensuring data correctness. Quick BI dynamically adjusts the query SQL based on the fields used in a query and your relationship configuration to guarantee accuracy. For details about how this works, see How Does the Relational Model Work?

image

Core Value of the Relational Model

Background and Pain Points

In earlier versions of Quick BI, datasets were modeled using standard physical joins—such as Left Join or Full Join—which produced a single large wide table after joining. Because physical joins can cause data bloat, users typically needed a clear understanding of their data beforehand—including data integrity and uniqueness—to ensure correctness. In some cases, users even had to preprocess source tables, such as by pre-aggregating data, to avoid data bloat. As a result, physical modeling often involved high barriers to entry, significant operational overhead, and a risk of data errors due to data bloat.

To solve these issues, Quick BI introduced the new relational model, which adds relationship-based modeling capabilities on top of physical modeling. This approach greatly improves efficiency and flexibility when working with complex data models.

4

Value of the Relational Model

  • Simpler data modeling: You only need to specify join fields—no need to choose join types. The relational model handles the rest automatically to ensure data integrity.

  • Eliminates data bloat: When data granularities do not match, you no longer need to preprocess data during modeling. The relational model resolves data bloat automatically and ensures accurate calculations.

  • Supports more analytical scenarios without repeated modeling: The relational model is highly reusable. You do not need to build separate models for each analytical scenario, which reduces the total number of models and simplifies maintenance and management.

For more information, see the advantages of the relational model.

Comparison Between Physical and Relational Models

Physical Model

Relational Model

______________________________________________________________________概念介绍:了解关系模型

______________________________________________________________________概念介绍:了解关系模型 (1)

Problems:

  • When tables have different aggregation granularities, direct physical joins cause data bloat. This requires data preprocessing and adds extra ETL work.

  • Each dataset becomes a large wide table suited only for a specific analytical scenario. As analytical needs grow, many redundant datasets accumulate, making management and maintenance difficult.

Solutions:

  • You no longer need to select a join type. Just define relationships between tables. Quick BI automatically chooses the appropriate join type and decides whether to apply pre-aggregation at query time. This lowers modeling complexity while ensuring data correctness.

  • The relational model does not produce a fixed wide table. Instead, it dynamically selects the necessary tables and join methods based on each query. You can model all related tables in a single relational model, replacing multiple physical models.

Key Concepts

Fact Tables and Dimension Tables

Fact tables and dimension tables are common terms in data modeling that describe two different types of tables.

  • Fact table: Stores quantifiable business metrics containing facts related to a business process. Examples include course completion counts, quiz average scores, and learning duration in an online education platform.

  • Dimension table: Stores descriptive attributes containing dimensions related to a business process. Examples include course type, student grade level, instructor name, and learning date.

Fact and dimension tables are linked through shared fields. This lets you associate dimensions with metrics during queries and analysis, enabling multidimensional analysis.

Example

Fact Tables

Order Table

Order ID

Date

Product ID

Quantity

Amount

1

2025-12-01

A

1

50

2

2025-12-01

A

2

100

3

2025-12-01

B

3

60

4

2025-12-02

C

1

10

Inventory Records

Date

Product ID

Inventory Quantity

2025-12-01

A

10

2025-12-01

B

20

2025-12-01

C

5

2025-12-02

C

4

Dimension Table

Product ID

Product Name

Category

Brand

A

Vinda Facial Tissues (One Carton)

Household Goods

Qingfeng

B

M&G File Folders (One Set)

Stationery

Morning Light

C

Prawn Crackers by Oishi (Large Pack)

Food

Oishi

Layers in Data Modeling

Each dataset you create in Quick BI has a data model. Think of this model as a relationship diagram of data tables that tells Quick BI how to query your database tables.

Logical Layer and Physical Layer

Quick BI’s data model has two layers:

  • Logical layer:

    • When you open the dataset modeling canvas, you first see the logical layer. In most cases, you only need to model at this layer.

    • Use relationships—relationship lines—to define connections between nodes. Each node represents a logical table, which can be a single table, a custom SQL statement, or a wide table formed by physically joining or merging multiple tables or SQL statements.

    • Modeling at the logical layer constructs the complete data model.

  • Physical layer:

    • From any logical table in the logical layer, you can access its physical canvas—the physical layer.

    • The physical layer uses traditional physical joins or merges to define relationships among physical tables. Each node is either a database table or a custom SQL statement.

    • Modeling at the physical layer produces a fixed wide table, which becomes a single logical node in the logical layer.

Logical Layer

Physical Layer

Relationship lines

Venn diagrams

image

image

Relationship Between Logical and Physical Layers

In the logical layer, logical tables are connected through relationships to form a relational model. You do not need to specify a join type for these relationships, and no fixed wide table is created.

Each logical table corresponds to a separate physical model—either single-table or multi-table—in the physical layer. Double-click a logical table or use the image icon → “Enter Physical Canvas” to access its physical layer. In the physical layer, you must specify exact join types when modeling relationships via joins or merges, and the result is a fixed wide table.

Note

Each logical table in the logical layer has a corresponding physical model—either single-table or multi-table—in the physical layer.

4

In earlier Quick BI versions, data models had only a physical layer. Starting with V6.1, models include both logical and physical layers, adding support for the relational model.

Relationship Type and Data Match Degree

When configuring a relationship, click “More Options” to set the relationship type and data match degree. Quick BI uses these settings to select the optimal join method for queries. Accurate configuration improves query performance.

Important
  • If you are unfamiliar with your data distribution or the concepts of relationship type and data match degree, keep the default settings. Changing them incorrectly may cause data bloat or data loss.

  • Only adjust these settings if you fully understand your data distribution and are confident it will not change in the future. This can optimize query performance in the relational model.

image

Association

Relationship type indicates whether join key values in one table are unique and whether values in both tables correspond uniquely.

  • 1: Values are unique.

  • N: Values are not unique.

Relationship Type

Example

Diagram

1:1

Each person has exactly one ID number, and each ID number belongs to exactly one person.

image

1:N

Each province has many cities, but each city belongs to only one province.

概念介绍:了解关系模型-流程图 (2)

N:1

概念介绍:了解关系模型-流程图 (3)

N:N

One book can have multiple authors, and one author can write multiple books.

概念介绍:了解关系模型-流程图 (4)

Data Match Degree

Data match degree indicates whether all join key values in one table can be fully matched to the other table—that is, whether the data is complete.

  • Partial match: Some values cannot be matched to the other table.

  • Exact match: All values can be matched to the other table.

Data Match Degree

Example

Diagram

Match All

Every country has provinces, and every province belongs to a country.

概念介绍:了解关系模型-流程图 (5)

Partial match: full match

Every book has an author, but some authors may not have published books yet.

概念介绍:了解关系模型-流程图 (6)

Exact: Partial

Match type: Partial match

Some students haven’t enrolled in courses, and some courses have no enrolled students.

概念介绍:了解关系模型-流程图 (7)

Scenarios for Using the Relational Model

Applicable Scenarios

Scenario 1: Simple Data Modeling for Business Users

Use the relational model if you have limited knowledge of SQL or databases.

Relational modeling is simpler than physical modeling. Just specify join keys between tables and keep advanced settings at their defaults. The relational model prevents data bloat automatically and eliminates the need to manage data integrity or uniqueness, lowering the modeling barrier and improving accuracy.

Example

An HR department implements a points system to encourage employees to attend training and events. Employees earn points for participation and redeem them for gifts. The underlying database has two tables:

  • Points Earned Table: Date, Employee ID, Department, Activity Name, Points Earned

  • Points Redeemed Table: Date, Employee ID, Department, Gift Name, Points Redeemed

These tables have the following relationship:

Points Earned Table – Points Redeemed Table

Relationship Type

N:N

An employee can participate in multiple activities and redeem gifts multiple times. “Employee ID” is non-unique in both tables.

Data Match Degree

Scope: All

Xiao Wang has earned points but has never redeemed gifts, so Xiao Wang appears in the Points Acquisition Table but not in the Points Redemption Table;

If an employee has never earned points, they cannot redeem gifts. Consequently, the Points Redemption Table cannot have an entry if the Points Acquisition Table does not.

HR wants to analyze each employee’s remaining points. A naive approach would join the tables directly on Employee ID. But because Employee ID is non-unique in both tables, this causes data bloat. The correct physical modeling approach requires pre-aggregating both tables by Employee ID before joining—a task requiring data preprocessing skills.

With the relational model, HR simply joins on Employee ID. Quick BI automatically handles aggregation during calculation to ensure correctness.

For more details, see How Does the Relational Model Work?

Scenario 2: Improved Dataset Reusability Across Multiple Analytical Scenarios

When many underlying tables exist, IT teams can drag all related tables into the logical canvas to build a single comprehensive relational model. Business users then select only the fields they need. This avoids creating separate wide tables for each analytical scenario, preventing dataset proliferation and simplifying maintenance.

In this scenario, IT should accurately configure relationship type and data match degree based on data characteristics to improve query performance and reduce the impact of complex modeling.

Example

Consider the same HR points scenario:

  • Points Earned Table: Date, Employee ID, Department, Activity Name, Points Earned

  • Points Redeemed Table: Date, Employee ID, Department, Gift Name, Points Redeemed

Unlike the previous example, a centralized IT team must prepare datasets for all analysts. HR requests support for three scenarios. With physical modeling, IT would need to build three separate datasets.

Scenario

Analysis Description

Physical Modeling Approach

Scenario 1

Analyze participation count and points earned per activity

Points Earned Table (single-table model)

Scenario 2

Analyze redemption count and participant count per gift

Points Redeemed Table (single-table model)

Scenario 3

Analyze each employee’s remaining points and show a leaderboard

Aggregate both tables by “Employee ID,” then join

Because the two tables have different granularities, a direct physical join causes data bloat and incorrect results. But aggregating by Employee ID loses details such as Activity Name and Gift Name, making Scenarios 1 and 2 impossible. Thus, physical modeling requires three separate datasets.

With the relational model, IT builds just one dataset. Quick BI automatically selects the right calculation method based on the fields used in each analysis to ensure correctness.

Scenario

Analysis Description

Relational Modeling Configuration

Drag into Field

Relational Model Handling

Scenario 1

Analyze participation count and points earned per activity

Join Key: Employee ID

N:N

Section: All

Dimension: Activity Name

Measure: Employee ID (distinct count), Points Earned (sum)

Single-table query

Scenario 2

Analyze redemption count and participant count per gift

Dimension: Gift Name

Measure: Employee ID (distinct count), Points Redeemed (sum)

Single-table query

Scenario 3

Analyze each employee’s remaining points and show a leaderboard

Dimension: Employee ID

Measure: SUM(Points Earned) - SUM(Points Redeemed)

Aggregated join

For more details, see How Does the Relational Model Work?

Limits of the Relational Model

Performance Limits

To prevent data bloat, the relational model applies special processing to query SQL, making it more complex. Compared to traditional physical joins, queries generated by the relational model contain more subqueries and nesting levels, which can reduce performance. Performance also depends heavily on data volume and model complexity. As these increase, the performance gap between relational and physical models widens.

If you understand your data distribution well, you can optimize query performance by adjusting relationship type and data match degree. Generally, performance ranks as follows:

  • Relationship type: 1:1 > 1:N = N:1 > N:N

  • Data match degree: Exact:Exact > Exact:Partial = Partial:Exact > Partial:Partial

Important
  • If you are unfamiliar with your data distribution or the concepts of relationship type and data match degree, keep the default settings. Changing them incorrectly may cause data bloat or data loss.

  • Only adjust these settings if you fully understand your data distribution and are confident it will not change in the future. This can optimize query performance in the relational model.

Even so, if you have strong data processing skills and require very high query performance, we recommend continuing to use traditional physical modeling to avoid the extra computation introduced by the relational model’s complex logic.

Data Volume Limit

When measures come from multiple logical tables, Quick BI queries and calculates each logical table separately, then joins the results. To ensure query efficiency and service stability, each query is limited to 10,000 rows. For details, see How Does the Relational Model Work?

This 10,000-row limit applies to aggregated results. For example, if the join field is Region and the query dimension is Product Type, Quick BI aggregates by Region and Product Type and returns up to the first 10,000 rows.

Due to the computational complexity of the relational model, you cannot paginate beyond 10,000 rows. If your query dimensions have many enumeration values or if you require more detailed granularity, the relational model may return incomplete results. In such cases, we recommend using traditional physical joins for modeling.

Feature Limits

The introduction of the relational model required significant changes to dataset processing and computation. The following features are incompatible with older versions:

Quick BI introduced the initial version of the relational model in V6.1. The following features currently support only single-logical-table datasets. Support for multi-logical-table datasets will be added in future versions:

  • Data Preparation

Complex filter conditions cannot use fields from multiple logical tables. The following features are affected:

  • Row-level permissions, including conditional combination authorization and user tag–based authorization

  • Dashboard composite query controls

  • Monitoring and Alerts alert rules

Extraction acceleration limit: If a query involves more than three logical tables, the system bypasses the acceleration engine and executes the query directly via live connection.