Community Q&A
DP-600 — frequently asked questions
Community-vetted answers to 86 common questions about this exam, each traced back to a specific practice question.
Questions from real practice questions
Each Q&A comes from a specific question — follow the link for the full analysisFabric Version Control: Azure Repos vs GitHub
Why is GitHub not the correct answer for Fabric version control?
According to current exam standards and documentation, Fabric natively supports only Azure Repos for Git integration within the same tenant.
Can I store semantic models in OneDrive for version control?
No. OneDrive is a file storage service and does not provide Git-based branching or version control features required by the requirement.
Descriptive vs Diagnostic Analytics in Fabric Notebooks
Why isn't comparing multiple factors considered diagnostic analytics?
Comparing factors describes 'what' is happening across segments. Diagnostic analytics requires actively investigating 'why' those differences exist through causal analysis.
What is the key difference between descriptive and diagnostic analytics?
Descriptive summarizes historical data to show trends and distributions. Diagnostic analyzes that data to identify root causes and reasons behind those trends.
Optimizing DAX Queries with ISEMPTY in Fabric
Why is ISEMPTY faster than COUNTROWS?
ISEMPTY checks for the existence of any row without counting them, which avoids aggregation overhead.
How do I fix the ISEMPTY logic error?
Wrap the function in NOT, e.g., NOT ISEMPTY(...), to keep rows where the table is not empty.
Optimizing DAX Query Performance with NOT ISEMPTY
Is NOT ISEMPTY(CALCULATETABLE(...)) valid DAX syntax?
Yes, it is valid. It evaluates the table returned by CALCULATETABLE and returns TRUE if any rows exist, acting similarly to an EXISTS clause in SQL.
Why is COUNTROWS slower than ISEMPTY?
COUNTROWS must iterate through all matching rows to calculate the total number, while ISEMPTY can stop processing as soon as it finds the first row, saving computational resources.
Accessing OneLake Shortcuts in Fabric Notebooks
Can I use spark.sql to read a shortcut directly?
No, unless a table or view has been explicitly created in the Lakehouse catalog pointing to the shortcut. Otherwise, use the Files/ path.
Why is the Files/ prefix needed in the load path?
The Files/ prefix identifies the OneLake file system root, allowing Spark to resolve the shortcut location as a directory structure.
PySpark DataFrame describe() for String and Numeric Stats
Why doesn't df.describe() work for string columns?
It only computes count, min, and max for strings. Mean and stddev are mathematically undefined for non-numeric data.
How to get stats for all columns in Spark?
Use summary() with explicit aggregation functions or filter columns by type before applying describe().
Fabric Lakehouse SQL Endpoint Capabilities
Can I update managed tables using the SQL endpoint?
No, the SQL analytics endpoint is strictly read-only. Write operations must be performed using Spark notebooks or dataflows.
Why can't I see external tables in the SQL endpoint?
External tables created via Spark are not registered in the SQL catalog, so they are invisible to the SQL endpoint's T-SQL interface.
Dynamic RLS USERNAME() Blank Result Fix
Why does USERNAME() return blank if the user is in AD?
Because the user object must be synced to Microsoft Entra ID. If it's not in the sync list, it doesn't exist in the cloud identity store.
Is USERPRINCIPALNAME() better than USERNAME()?
USERPRINCIPALNAME() is often safer for clarity, but both require the user to be successfully authenticated and present in the directory.
Identifying Max Values for Numeric Columns in Power Query
Why isn't Table.Max used if we need max values?
Table.Max returns the single row with the highest value in one specified column. It cannot generate a summary of max values for all numeric columns at once.
What does Table.Profile return exactly?
It returns a table with statistics like Min, Max, Average, Standard Deviation, and Count for every column in the source table.
Model Scoring Languages in Fabric Notebook
Why can't I use T-SQL for model scoring in Fabric Notebooks?
T-SQL runs in the SQL Pool engine, whereas Fabric Notebooks run in the Spark pool. The PREDICT function in this context refers to Spark-based ML inference, not SQL Server's predictive analytics.
Is R supported for model scoring in Fabric Notebooks?
Yes, SparkR is listed as a supported language alongside PySpark and Spark SQL. However, PySpark is generally preferred due to better ecosystem integration with libraries like MLflow and scikit-learn.
Fabric Deployment Pipeline Folder Structure Behavior
Does moving an item to a folder exclude it from deployment?
No. Moving an item changes its path, but it remains part of the workspace content. The deployment pipeline deploys all items, preserving their new folder paths.
Why is Pipeline1 still at the root in Workspace2?
Pipeline1 was never moved into a folder in Workspace1. Therefore, it stays at the root level in the target workspace after deployment.
Displaying All Rows in Power BI Python Visuals
Why doesn't changing Summarize By to None work?
In Python visuals, the primary method to disable grouping is ensuring row uniqueness via an index field, as the Summarize By property is less reliable for this specific visual type.
What is the difference between Option A and Option C?
Option A refers to Python coding syntax (iloc), while Option C refers to adding a column to the underlying dataset to force distinctness before the script runs.
Enabling XMLA Read-Write Access in Microsoft Fabric
Why isn't the Tenant setting the first step?
Tenant settings enable the XMLA endpoint globally. Since the endpoint is already present, the specific read-write toggle is managed at the Capacity level.
Can I enable read-write on a specific dataset?
No. XMLA read-write access is a property of the Capacity hosting the dataset, not individual datasets or workspaces.
Fabric Admin Portal Settings for Direct Lake XMLA
Why is Option C wrong for Direct Lake models?
The 'Users can edit data model in the Power BI service' setting explicitly excludes Direct Lake models and XMLA-based editing according to Microsoft documentation.
Why do we need both Tenant and Capacity XMLA settings?
Tenant settings (A) enable the feature globally, while Capacity settings (D) define the permission level (Read/Write). Both are required for external tools to publish changes.
Power BI PBIP File Format for TMDL Bulk Changes
Why can't I use PBIX for TMDL bulk edits?
PBIX is a binary format. It cannot be read or written by TMDL scripts or editors like VS Code. PBIP uses plain text files for metadata.
What is the difference between PBIP and PBIT?
PBIP is a project format for development and collaboration. PBIT is a static template file used to generate new reports with predefined structures.
Power BI Fabric Deployment Pipeline Permissions
Why is Admin access to the pipeline required?
Admin access to the pipeline allows users to view pipeline settings and initiate deployment steps. Without this, even Contributor access to workspaces won't allow triggering the pipeline flow.
Can I use Member access instead of Contributor for Dev/Test?
While Member access includes Contributor capabilities, the exam options specify Contributor. Contributor is the precise role needed for deploying items. Using Member might imply additional management rights not strictly required for just deploying items.
Power BI DirectQuery Performance Features
Why is Query Caching not the best answer?
Caching stores results for the first page load but does not consistently optimize queries for new visuals or pages as effectively as aggregations which reduce the underlying data volume.
What is the difference between User-defined and Automatic Aggregations?
User-defined aggregations require manual creation of summary tables, while Automatic aggregations are created by the service based on query patterns without manual intervention.
Power BI Incremental Refresh Resource Failure Cause
Does query folding work with CSV files in Power BI?
Traditionally no, but in Microsoft Fabric with OneLake, yes. OneLake supports query folding for CSVs, enabling efficient filtering at the source.
What happens if query folding fails for a large dataset?
Power BI pulls all raw data into the service memory to apply transformations locally, which can quickly exhaust available resources and cause refresh failures.
Direct Lake Fallback to DirectQuery with Row-Level Security
Does Direct Lake support RLS?
Yes, but not natively against parquet files. It supports RLS by falling back to DirectQuery mode to query the SQL endpoint.
What causes Direct Lake to fallback?
Connecting to tables/views in the SQL analytics endpoint that enforce RLS or contain T-SQL views triggers a fallback to DirectQuery.
How to find frequently used columns loaded into memory in Direct Lake?
Why is Analyze in Excel wrong for identifying memory-heavy columns?
Analyze in Excel connects to the model for PivotTable exploration and does not expose column-level memory or storage segment details.
Does DISCOVER_MEMORYGRANT show column memory usage?
No, it reports memory grants for queries in progress, not the column segments stored in memory.
How to Reduce Fabric Semantic Model Memory and Refresh Time?
Why is replacing TotalQuantity with a calculated column wrong in this Fabric model?
Calculated columns are stored in the model and consume memory, so they increase model size and refresh time instead of reducing them.
Why does splitting OrderDateTime into date and time columns reduce memory?
Separating the datetime column lowers the number of distinct values in each resulting column and improves VertiPaq compression, which reduces memory usage.
Which file format and shortcut location enable Fabric SQL endpoint queries?
Why can't a Parquet shortcut in the Tables section be queried via the SQL endpoint?
The Fabric SQL analytics endpoint exposes only Delta tables. A Parquet shortcut in Tables is not materialized as a Delta table, so it remains a file object and cannot be queried through the SQL endpoint.
Why is a Files-section shortcut insufficient for SQL endpoint queries?
Files-section shortcuts expose raw objects for Spark or notebook reads but do not create table metadata. The SQL analytics endpoint therefore cannot see the S3 objects as queryable tables.
How to Convert CSV to Delta with V-Order in Fabric Lakehouse?
Why can't I use the Optimize feature to convert CSV files to Delta?
Optimize only applies to existing Delta tables to compact files and apply V-Order; it cannot read CSV files or change the table format.
Does Load to Tables automatically enable V-Order for new tables?
Yes. Tables created via Load to Tables use the Delta Lake format with V-Order optimization enabled by default.
How Do You Set a Partition Column in a Fabric Copy Activity?
Why can't I pick the partition column while the Destination Mode is set to Append?
Append only inserts rows into the existing unpartitioned Table1, so the Enable partition option stays hidden. Fabric lets you define partition columns only when Overwrite re-creates the Delta table with that partition scheme.
Is Enable partition discovery on the Source tab the same as destination partitioning?
No. Source partition discovery reads partition folders from the source files, while destination partitioning for Table1 is configured on the Destination tab under Advanced, after Table action is set to Overwrite.
How Do You Access the Productline1 Lakehouse Shortcut from a Fabric Notebook?
Why is spark.read.format("delta").load("Tables/productline1/ResearchProduct") wrong for ResearchProduct?
It inserts a productline1 folder that Lakehouse1 never has; the shortcut is created directly under Tables, so the correct path would be Tables/ResearchProduct, not with an extra level.
Can external_table('Tables/ResearchProduct) read lakehouse data in a Fabric notebook?
No. external_table is KQL syntax for querying external tables in Eventhouse/KQL databases, not PySpark notebook code against Lakehouse1 tables.
Which Fabric Data Store Supports Dataflows and Automatic V-Order?
Why isn't a lakehouse correct if it also stores Delta tables?
Lakehouse V-Order depends on the engine that writes the table, and compaction needs you to run OPTIMIZE ... VORDER yourself, so the automatic guarantee the question demands is not assured.
Can Dataflow Gen2 load and append into a Fabric warehouse?
Yes. Dataflow Gen2 supports a Warehouse destination with the Append update method, so the folder on the local computer can be loaded and appended without pipelines.
Fabric Pipeline Schedule Repeat Frequency
Why can't I use Hourly for Monday and Friday?
Hourly recurrence applies to all days continuously. It lacks the UI element to filter execution to only specific weekdays like Monday and Friday.
Does Weekly run every 4 hours automatically?
Yes, when combined with the 'Repeat every' setting. You select Weekly, pick Mon/Fri, and set the interval to 4 hours.
Identify Long-Running Query in Fabric Warehouse DMV
Why not use sys.dm_pdw_exec_requests for Fabric?
sys.dm_pdw_exec_requests is specific to Azure Synapse Analytics (SQL DW). Fabric warehouses use standard SQL Server DMVs like sys.dm_exec_requests.
Where can I find the official list of Fabric DMVs?
Microsoft's official documentation for Fabric Data Warehouse monitoring lists all supported DMVs, including sys.dm_exec_requests for query diagnosis.
How to Implement a Date Dimension in a Fabric Lakehouse?
Why can't a stored procedure activity be used to populate the date dimension?
In a Fabric Lakehouse, the SQL analytics endpoint does not support creating or executing stored procedures; that feature is exclusive to the Warehouse.
How does a T-SQL view meet the 'always contain dates from 2010 to current year' requirement?
A view with a recursive CTE and GETDATE() dynamically generates the date range each time it is queried, so it always includes the current year without manual refresh.
What Implements Calculation Groups for Direct Lake Semantic Models?
Why can't Power BI Desktop add a calculation group to the Direct Lake models?
Direct Lake semantic models live in a Fabric workspace and Desktop cannot open them, so the calculation group must be added through the XMLA endpoint with a modeling tool like Tabular Editor.
Why is the Power BI service not the expected answer for calculation groups?
The service can author calculation groups for Direct Lake models via model explorer, but the DP-600 scenario expects the XMLA modeling tool Tabular Editor to implement them.
Which Fabric pipeline activity supports Power Query M for copying CSV data?
Why is the Copy data activity wrong if the task is to copy CSV files into a lakehouse?
Copy data moves files with connector mappings but has no Power Query M engine, so it fails the stated requirement that the activity support M expressions.
Can a Dataflow activity in a Fabric pipeline actually write into a lakehouse?
Yes. Dataflow Gen2 supports a Lakehouse destination, so the same activity that evaluates your M transformations can load the CSV data into Lakehouse1.
Validating Dynamic RLS in Power BI
Why can't I just test as the 'HR' role?
Static roles show all data allowed by the role. Dynamic roles require a specific user identity to apply filters correctly, so testing as a user is necessary.
Does 'Test as role' work in Power BI Service?
Yes, administrators can use 'Test as role' in the Power BI Service portal to simulate access for specific users assigned to roles.
Applying DLP Policies to Power BI Fabric Items
Why doesn't creating a workspace identity apply DLP?
Workspace identities manage access permissions and role assignments, not data classification or security policies like DLP.
Can I apply DLP directly without sensitivity labels?
No, in Microsoft 365 and Fabric, DLP policies are typically triggered and enforced through the application of sensitivity labels to the content.
Using Display Function for Chart View in Fabric Notebooks
Why is show incorrect for Chart view?
Show only renders text output. It does not create the interactive widget required for switching to the Chart tab.
Does display work on RDDs too?
Yes, the display function supports both Spark DataFrames and Resilient Distributed Datasets (RDDs) in Fabric notebooks.
Default Permissions for Shared Fabric Warehouses
Does default warehouse sharing allow report building?
No. Default sharing grants SQL endpoint access. Report building requires access to the linked semantic model/dataset.
Can users edit data in a shared warehouse by default?
No. The default permission is 'Read'. Write/Edit permissions must be explicitly assigned.
Executing Stored Procedures in Fabric Data Factory Pipelines
Why can't I use the Stored Procedure activity?
In Fabric Data Factory, the Stored Procedure activity executes the code but does not support returning output parameters or result sets to the pipeline.
Is there a better alternative to Script activity?
If the Lookup activity were an option, it would be preferred for simple value retrieval. However, for general script execution with outputs, Script is the correct choice among the provided options.
Increase XMLA Endpoint Write Speed in Power BI
Why is Direct Lake not the answer for XMLA write speed?
Direct Lake optimizes read/query performance. For write operations via XMLA, the Large Model format is the specific feature designed to enhance write throughput and compression.
Does deleting unused columns help XMLA writes?
No. While it reduces storage, it does not engage the specialized engine optimizations provided by the Large semantic model format for write acceleration.
Optimize Power BI Report Rendering with Performance Analyzer
What does the 'Other' category mean in Power BI Performance Analyzer?
'Other' represents time spent on non-data-preparation tasks, such as waiting for other visuals to finish rendering, background processing, or UI preparation.
Why isn't optimizing DAX the right solution here?
The DAX query duration is only 27 ms, which is negligible compared to the 1047 ms in 'Other'. Optimizing a fast query won't solve a bottleneck caused by visual contention.
Configuring Direct Lake Behavior in Power BI
What happens if Direct Lake Behavior is set to Automatic?
It allows fallback to DirectQuery mode if data cannot be efficiently loaded into memory, which violates the requirement for pure Direct Lake.
Can I set Direct Lake Behavior per partition?
No, Direct Lake Behavior is a model-level property. Partition settings control storage and refresh, not the global query fallback logic.
Identifying Analytics Types from Fabric Notebook Code
How do I distinguish descriptive from diagnostic analytics?
Descriptive analytics summarizes what happened (e.g., histograms), while diagnostic analytics investigates why it happened (e.g., correlation analysis).
Is a histogram considered predictive analytics?
No, a histogram describes the current or past distribution of data. Predictive analytics would use this data to forecast future trends.
How to Model Order Items by Date, Product, and Customer?
Why can't I relate OrderItem to Product using only ProductID?
ProductID is only part of Product's composite primary key, so it repeats across companies and would not uniquely match each row, producing incorrect order-item analysis.
Why does the Company table need to be denormalized into Customer and Product?
Denormalizing company attributes into both tables preserves the data while letting you remove the Company table, keeping a simple star schema for analysis by date, product, and customer.
Fabric Copy Activity Partitioning Prerequisites
Why can't I use Append mode for partitioning?
In Microsoft Fabric Copy activities, partition column configuration is only exposed when the Table action is set to Overwrite.
Is partition discovery needed for Lakehouse tables?
Partition discovery helps identify source folder structures, but it is not the primary step for defining destination partition columns.
Fabric Version Control: Azure Repos vs GitHub
Is GitHub still not supported in Fabric?
No, GitHub is now supported as of September 2024. However, this specific exam question relies on older documentation where only Azure Repos was available.
Why can't I use OneDrive for version control?
OneDrive is a file hosting service. It does not provide the structured Git-based version control, branching, and CI/CD pipeline integration required by Fabric workspaces.
← Back to DP-600 Implementing Analytics Solutions Using Microsoft Fabric Study Guide