You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Many Sigma users are used to creating a new workbook and then adding raw warehouse tables as the foundation for their content. This often requires the user to do extra workjoining tables togetherand adding calculated columns.
15
+
Many Sigma users are used to creating a new workbook and then using warehouse tables as the data source for their content. This often requires the user to do extra data preparation work, like joining tables together, renaming fields or creating aggregations. This modeling logic is bound to a single workbook and is not reusable across your Sigma deployment. This can lead to duplicated effort and inconsistent reporting.
16
16
17
-
Data models avoid that work and provide business users a curated set of data with all the relevant tables, columns, and calculations pre-configured for them. This accelerates their work and also ensures that the data conforms to corporate standards.
17
+
With Data Models, you can define your data transformation and semantics in one place, and use them anywhere in Sigma. This avoids duplicating effort, and provides a single source of truth for your Analytics Engineering team to collaborate on key business logic and metric definitions.
18
18
19
-
Data modeling in Sigma allows you to structure, join, and prepare data for exploration and analysis—without writing SQL.
19
+
In this QuickStart, you'll learn how to:
20
20
21
-
By creating and defining relationships across your data sources, you empower teams to analyze clean, consistent data and leave data governance concerns to the modelers.
22
-
23
-
In this QuickStart, you’ll learn how to:
24
-
25
-
- Understand Sigma's data modeling philosophy
21
+
- Understand Sigma's data modeling philosophy and features
26
22
- Create a data model using sample data
27
23
- Define relationships across tables
28
24
- Add custom columns and formulas
29
25
- Create metrics
30
26
- Use column-level security
31
27
- Use column folders
32
28
- Materialize a data model
33
-
-Publish reusable models for analysis
29
+
-Deploy reusable models for analysis
34
30
35
31
### Our Modeling Approach
36
-
A primary design goal for Sigma data modeling is to make it as easy as possible to create a model so your business users spend more time focused on which data to expose, to whom, and what the standard calculations need to be.
32
+
A primary design goal for Sigma data modeling is to make model creation seamless so your data team can move fast, without managing additional complex code, and deliver governed analytics to stakeholders.
37
33
38
-
Sigma works directly on your cloud data warehouse and models data on top of the source tables, without copying or extracting it. Your data stays in your warehouse.
39
-
40
-
Sigma models are collaborative and versioned—ideal for both data teams and business users.
34
+
Business users can focus on gaining insights from data without needing to worry about its physical structure, and can also contribute directly to the data model through Sigma’s UI. Sigma models are collaborative and versioned—ideal for both data teams and business users.
41
35
42
36
<asideclass="positive">
43
37
<strong>IMPORTANT:</strong><br> Some screens in Sigma may appear slightly different from those shown in QuickStarts. This is because Sigma is continuously adding and enhancing functionality. Rest assured, Sigma’s intuitive interface ensures that any differences will not prevent you from successfully completing any QuickStart.
@@ -168,7 +162,7 @@ Duration: 5
168
162
169
163
Since we know that marketing will always need columns from the `D_CUSTOMER` and `F_POINT_OF_SALE` tables, we can join them directly.
170
164
171
-
Using the standard method, we will join these two tables. The combination of these three tables will satisfy marketing's initial request.
165
+
Using joins, we’ll connect these two tables. Combined with the base table, this satisfies marketing’s initial request.
172
166
173
167
From `Plugs Sales`, select `Element source` > `Join` from the table menu:
174
168
@@ -219,15 +213,6 @@ The results look like this:
219
213
220
214
<imgsrc="assets/dm_32a.png"width="800"/>
221
215
222
-
### Column details
223
-
Sometimes it may not be clear if a column has data of interest. For example, for `Transaction type`, we can check the `Column details` and see the distribution of values:
224
-
225
-
<imgsrc="assets/dm_37.png"width="350"/>
226
-
227
-
In this manner, we can see that it does have data that may be of interest:
228
-
229
-
<imgsrc="assets/dm_38.png"width="500"/>
230
-
231
216
Click `Publish`.
232
217
233
218

@@ -236,26 +221,14 @@ Click `Publish`.
236
221
## Relationships
237
222
Duration: 5
238
223
239
-
Data models can be used as a starting point for builders in Sigma to create new workbooks. Relationships power this starting point and include features to allow the builder to quickly get what they need, instead of accessing raw warehouse content (e.g., tables, views).
224
+
Data models serve as a starting point for builders in Sigma to explore data. Relationships power this experience and make it easy for the builder to quickly get what they need through predefined modeling logic, rather than working directly with raw warehouse content such as tables or views.
240
225
241
226
Once built, the data model might look like this, allowing the builder to get moving much more quickly than starting a workbook from scratch.
242
227
243
228
<imgsrc="assets/dm_55.png"width="800"/>
244
229
245
-
### Key Concepts in Sigma Data Modeling
246
-
247
-
- Relationships allow you to specify the join logic between two different tables in a data model. After doing so, all of the fields from the “target” table become available for analysis when viewing the “source” table. **The result is an intelligent query engine that only executes joins when they are needed for analysis.**
248
-
249
-
- All visible levels in a dataset are flattened when used in worksheets or dashboards. This can lead to duplication if joins are not carefully managed.
250
-
251
-
- Hidden levels do not appear in downstream worksheets, making them ideal for handling one-to-many joins without overwhelming end users.
252
-
253
-
- Model grain matters: Joining too many tables—especially those with one-to-many relationships—can inflate row counts and distort metrics.
254
-
255
-
- You don’t always need to create child datasets. With careful use of hidden joins, a single well-structured model can support both detailed and summary-level use cases.
256
-
257
230
### Creating the relationships
258
-
We could just join the other tables to `Plugs Sales` using the typical workbook join workflow.
231
+
We could just join the other tables to `Plugs Sales` using the join workflow.
259
232
260
233
While this will still work, we’d miss out on one of the key benefits of using relationships—join pruning.
261
234
@@ -280,7 +253,7 @@ Before we can create a relationship, we need to add the two tables we want to ex
280
253
281
254
Add the `D_PRODUCT` and `D_STORE` tables from the `RETAIL` schema directly to the workbook.
282
255
283
-
Click the <imgsrc="assets/eyeicon.png"width="40"/> icon to prevent the tables from appearing in downstream workbooks:
256
+
Click the <imgsrc="assets/eyeicon.png"width="40"/> icon to prevent the tables from appearing in the published data model:
284
257
285
258
<imgsrc="assets/dm_10a.png"width="800"/>
286
259
@@ -383,7 +356,9 @@ Reopen query history and click into the new entry:
383
356
384
357
<imgsrc="assets/dm_19f.png"width="800"/>
385
358
386
-
Now we see the `D_PRODUCT` table is being joined but the `D_STORE` table is still not present.
359
+
Now we see the `D_PRODUCT` table is being joined but the `D_STORE` table is still not present:
360
+
361
+
<imgsrc="assets/dm_19h.png"width="800"/>
387
362
388
363
<asideclass="positive">
389
364
<strong>IMPORTANT:</strong><br> Be thoughtful when deciding which tables to include as relationships instead of using a standard join to the base table. Consider four key factors: need, performance, security, and cost.
Copy file name to clipboardExpand all lines: site/sigmaguides/src/Fundamentals 1: Getting Around - v3/Fundamentals 1: Getting Around v3.md
+3-1Lines changed: 3 additions & 1 deletion
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -8,7 +8,7 @@ tags: default
8
8
authors: phil@sigmacomputing.com
9
9
lastUpdated: 2025-04-01
10
10
11
-
# Fundamentals 1: Getting Around
11
+
# Fundamentals 01: Getting Around
12
12
<!---->
13
13
14
14
## Overview
@@ -26,6 +26,8 @@ If you fall into that category, please review these summaries:
26
26
27
27
[I am a Dashboard Builder New to Sigma. How Can I Quickly Get Up To Speed?](https://community.sigmacomputing.com/docs?topic=3650)
28
28
29
+
[I am interesting in data modeling in Sigma, see Fundamentals 10: Data Modeling](https://quickstarts.sigmacomputing.com/guide/fundamentals_10_data_modeling/index.html?index=..%2F..index#0)
30
+
29
31
Each QuickStart in the series will use sample data Sigma provides to all customers. We will be using sales data from our fictitious company **Plugs Electronics.**
Copy file name to clipboardExpand all lines: site/sigmaguides/src/Fundamentals 2: Data - v3/Fundamentals 2: Data.md
+3-1Lines changed: 3 additions & 1 deletion
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -8,7 +8,7 @@ tags: default
8
8
authors: phil@sigmacomputing.com
9
9
lastUpdated: 2025-03-13
10
10
11
-
# Fundamentals 2: Data
11
+
# Fundamentals 02: Data
12
12
<!-- ------------------------ -->
13
13
14
14
## Overview
@@ -543,6 +543,8 @@ Up until now, we have been using one table, but in practice, it is often necessa
543
543
544
544
Data modeling is a broad topic, and in order to make this section 'fundamental,' we will join a sample table from our `Sigma Sample Database` connection as before.
545
545
546
+
For those looking for a more comprehensive data modeling solution, see [Fundamentals 10: Data Modeling](https://quickstarts.sigmacomputing.com/guide/fundamentals_10_data_modeling/index.html?index=..%2F..index#0)
547
+
546
548
**We will also move a little faster now that we have been oriented in Sigma.**
547
549
548
550
We want to add a column to show inventory on-hand, from the `F_INVENTORY_ADJUSTED` table by joining it to the existing `Plugs_Store_Sales` table, **on the Data page.**
Copy file name to clipboardExpand all lines: site/sigmaguides/src/Fundamentals 2: Working with Tables-v2/Fundamentals 2: Working with Tables.md
+2Lines changed: 2 additions & 0 deletions
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -495,6 +495,8 @@ Up until now, we have been using one table, but in practice, it is often necessa
495
495
496
496
Data modelling is a broad topic, and in order make this section "fundamental", we will join a sample table from our `Sigma Sample Database` connection as before.
497
497
498
+
For those looking for a more comprehensive data modeling solution, see [Fundamentals 10: Data Modeling](https://quickstarts.sigmacomputing.com/guide/fundamentals_10_data_modeling/index.html?index=..%2F..index#0)
499
+
498
500
**We will also move a little faster now that we have been oriented in Sigma.**
499
501
500
502
We want to add a column to show inventory on-hand, from the `F_INVENTORY_ADJUSTED` table by joining it to the existing `PLUGS_DATA` table, on the `Data` page.
0 commit comments