Which Columns Belong in DimProduct?

Answer Correct answer: B, C, F — include ProductID, ProductName, and ProductColor in DimProduct as the product key and descriptive attributes.

You have a Fabric workspace that contains a lakehouse named Lakehouse1. Data is ingested into Lakehouse1 as one flat table. The table contains the following columns. exhibit You plan to load the data into a dimensional model and implement a star schema. From the original flat table, you create two tables named FactSales and DimProduct. You will track changes in DimProduct. You need to prepare the data. Which three columns should you include in the DimProduct table? Each correct answer presents part of the solution. NOTE: Each correct selection is worth one point.

  1. Date
  2. ProductName Correct Answer
  3. ProductColor Correct Answer
  4. TransactionID
  5. SalesAmount
  6. ProductID Correct Answer

Community Insight

The question tests dimensional modeling: a dimension table carries the business key plus descriptive attributes, and the trap is pulling in fact-side columns like Date or SalesAmount, or excluding ProductID.

When converting a flat sales table into a star schema in Microsoft Fabric, dimension tables hold descriptive product attributes while fact tables hold measures and transactional keys. The correct DimProduct columns are ProductID, ProductName, and ProductColor, leaving Date, TransactionID, and SalesAmount in FactSales.

The most common wrong pick is BCE (swapping ProductID for SalesAmount); learners confuse a numeric measure in FactSales with a product descriptor, breaking the star schema's key relationship.

Community Discussion (18 comments)

alqazqzy.asseel 👍 1 Selected: BCF
All product information without transaction, sales, or date columns
Josekonoor 👍 1 Selected: BCF
dimProduct -> Unique Product
balanceBananes 👍 2 Selected: BCF
Everything about the products
fdsdfgxcvbdsfhshfg 👍 3 Selected: BCF
BCF seem to be correct, but it won't allow us to track changes so on a fence with these answer, some additional logic coming from Date column is required
AndrewsOtis 👍 2 Selected: BCF
Correct BCF It is relation with a Dimension table of Products. The others are Fact items
Wipag 👍 2 Selected: BCF
✔ F. ProductID Primary/business key of the dimension. Used to join with the fact table (FactSales). ✔ B. ProductName Descriptive attribute of the product. Typically shown in reports. ✔ C. ProductColor Another descriptive attribute. Useful for slicing data and analysis.
smanzana 👍 2 Selected: BCF
Correct BCF
DarioReymago 👍 2 Selected: BCF
ProductID ProductName ProductColor
renan_moraes37 👍 2 Selected: BCE
For dimension needs to be every information about the products like Color and name, also the key which is productID
oose 👍 1 Selected: BCF
The trabsactio the date and the sumbshould be the other table
Kiracloud 👍 1 Selected: BCF
  • ProductID acts as a unique identifier for each product (primary key). - ProductName provides a descriptive name, useful for reporting and analysis. - ProductColor adds valuable categorical information, potentially useful in filtering and segmentation. Other columns like Date, TransactionID, and SalesAmount are better suited for fact tables (FactSales), since they contain transaction-specific details rather than product attributes.
maham 👍 2 Selected: ABF
The dimension table has to track the changes also. Then date field is important for SCD. So Product color takes second priority in this list
yue_young 👍 1
Please also note that the Date column may not be the product modified date.
shmmini 👍 3
in this case, the transaction date is referenced. you cannot use it as it is. If you have to track SCD, you have to create your own Date Column, and populate it differently, not from this table
Madhu2023 👍 2 Selected: BCF
BCF are the attributes of Product. TranId , Date and SalesAmt quaify for fact table instead
robertlavigne 👍 1 Selected: BCF
Date: Should be in the FactSales table ProductName: Attribute of the product and belongs in DimProduct ProductColour: Attribute of the product and belongs in DimProduct TransactionID: Belongs in the FactSales Table Sales Amount: Belongs in the FactSales Table ProductID: Will be the primary key for DimProduct
QAZdbarhate12345678 👍 13 Selected: BCF
Columns to Include in DimProduct ProductID - This is the unique identifier for each product and acts as the primary key in the DimProduct table. ProductName - Contains the name of the product, which is a descriptive attribute. ProductColor - Contains the color description of the product, which is also a descriptive attribute.
Tuki93 👍 4 Selected: BCF
I believe the provided answer is correct

Comments & Corrections

No comments yet — spotted an error or have a note? Share it below.

Log in to comment, report an error, or add a note about this question.

Submitted for moderation before publishing. Keep it helpful and respectful.

Expert Analysis

Why the Answer Is Correct

ProductID is the business/primary key that joins DimProduct to FactSales, and ProductName and ProductColor are descriptive attributes about the product itself—the exact contents of a dimension table in a star schema. As Wipag noted, ProductID is the "Primary/business key of the dimension. Used to join with the fact table (FactSales)." Every value in these three columns describes a product, independent of any individual sale, which is precisely what dimensional modeling requires for a dimension.

Why the Other Options Are Wrong

Date, TransactionID, and SalesAmount are all transaction-level facts: Date and TransactionID identify when and which sale occurred, and SalesAmount is a additive measure—these belong in FactSales, as AndrewsOtis noted, "The others are Fact items." Date specifically cannot seed change tracking here, since shmmini observed that with SCD tracking "you have to create your own Date Column" rather than reusing the transaction date. Option E, SalesAmount, is a classic distractor because it is numeric product-related data, yet it measures the sale rather than describing the product.

Community Comment Notes

The comments converge on BCF, with the top-rated explanation from QAZdbarhate12345678 walking through ProductID as unique identifier, ProductName as descriptive attribute, and ProductColor as a further attribute. One commenter on the fence, fdsdfgxcvbdsfhshfg, worried that "it won't allow us to track changes" because a true SCD type 2 dimension needs surrogate keys and date-stamped versioning columns. That is a fair design caveat, but those SCD columns would be generated during transformation, not taken from the original flat table, so BCF remains the best selection among the given options.

Official Reference

Exam Strategy

For star schema questions, sort every column into two buckets: things that describe an entity (dimension) versus things that describe an event's quantity, time, or ID (fact). If a column would stay the same for every row of a given product, it belongs in the dimension table.

Frequently Asked Questions

Why can't SalesAmount or Date be part of DimProduct?

SalesAmount is an additive measure and Date identifies the sale event, so both are fact-table columns. Dimension tables hold only attributes that describe the product itself.

How do I track changes in DimProduct if no date column is included?

SCD tracking uses surrogate keys and generated valid-from/valid-to dates created during transformation, not the transaction Date from the original flat table.

More DP-700 FAQ →

Related Analysis

← Back to DP-700 Study Guide