How Do You Access the Productline1 Lakehouse Shortcut from a Fabric Notebook?

Get data
Answer Correct answer: B — Query the shortcut with spark.sql("SELECT * FROM Lakehouse1.ResearchProduct") since ResearchProduct is a table in Lakehouse1.

Case study - This is a case study. Case studies are not timed separately. You can use as much exam time as you would like to complete each case. However, there may be additional case studies and sections on this exam. You must manage your time to ensure that you are able to complete all questions included on this exam in the time provided. To answer the questions included in a case study, you will need to reference information that is provided in the case study. Case studies might contain exhibits and other resources that provide more information about the scenario that is described in the case study. Each question is independent of the other questions in this case study. At the end of this case study, a review screen will appear. This screen allows you to review your answers and to make changes before you move to the next section of the exam. After you begin a new section, you cannot return to this section. To start the case study - To display the first question in this case study, click the Next button. Use the buttons in the left pane to explore the content of the case study before you answer the questions. Clicking these buttons displays information such as business requirements, existing environment, and problem statements. If the case study has an All Information tab, note that the information displayed is identical to the information displayed on the subsequent tabs. When you are ready to answer a question, click the Question button to return to the question. Overview - Contoso, Ltd. is a US-based health supplements company. Contoso has two divisions named Sales and Research. The Sales division contains two departments named Online Sales and Retail Sales. The Research division assigns internally developed product lines to individual teams of researchers and analysts. Existing Environment - Identity Environment - Contoso has a Microsoft Entra tenant named contoso.com. The tenant contains two groups named ResearchReviewersGroup1 and ResearchReviewersGroup2. Data Environment - Contoso has the following data environment: The Sales division uses a Microsoft Power BI Premium capacity. The semantic model of the Online Sales department includes a fact table named Orders that uses Import made. In the system of origin, the OrderID value represents the sequence in which orders are created. The Research department uses an on-premises, third-party data warehousing product. Fabric is enabled for contoso.com. An Azure Data Lake Storage Gen2 storage account named storage1 contains Research division data for a product line named Productline1. The data is in the delta format. A Data Lake Storage Gen2 storage account named storage2 contains Research division data for a product line named Productline2. The data is in the CSV format. Requirements - Planned Changes - Contoso plans to make the following changes: Enable support for Fabric in the Power BI Premium capacity used by the Sales division. Make all the data for the Sales division and the Research division available in Fabric. For the Research division, create two Fabric workspaces named Productline1ws and Productine2ws. In Productline1ws, create a lakehouse named Lakehouse1. In Lakehouse1, create a shortcut to storage1 named ResearchProduct. Data Analytics Requirements - Contoso identifies the following data analytics requirements: All the workspaces for the Sales division and the Research division must support all Fabric experiences. The Research division workspaces must use a dedicated, on-demand capacity that has per-minute billing. The Research division workspaces must be grouped together logically to support OneLake data hub filtering based on the department name. For the Research division workspaces, the members of ResearchReviewersGroup1 must be able to read lakehouse and warehouse data and shortcuts by using SQL endpoints. For the Research division workspaces, the members of ResearchReviewersGroup2 must be able to read lakehouse data by using Lakehouse explorer. All the semantic models and reports for the Research division must use version control that supports branching. Data Preparation Requirements - Contoso identifies the following data preparation requirements: The Research division data for Productline1 must be retrieved from Lakehouse1 by using Fabric notebooks. All the Research division data in the lakehouses must be presented as managed tables in Lakehouse explorer. Semantic Model Requirements - Contoso identifies the following requirements for implementing and managing semantic models: The number of rows added to the Orders table during refreshes must be minimized. The semantic models in the Research division workspaces must use Direct Lake mode. General Requirements - Contoso identifies the following high-level requirements that must be considered for all solutions: Follow the principle of least privilege when applicable. Minimize implementation and maintenance effort when possible. Which syntax should you use in a notebook to access the Research division data for Productline1?

  1. spark.read.format(“delta”).load(“Tables/productline1/ResearchProduct”)
  2. spark.sql(“SELECT * FROM Lakehouse1.ResearchProduct ”) Correct Answer
  3. external_table(‘Tables/ResearchProduct)
  4. external_table(ResearchProduct)

Community Votes

B
79%
A
21%

79% of anonymous learners picked answer B. Votes are pick records left by other test-takers — they are not the verified answer.

Community Insight

It tests how a OneLake shortcut surfaces as a queryable table in a Fabric lakehouse, and the trap is inventing a productline1 path segment that the case study never creates.

This DP-600 case-study question asks which notebook syntax reads the Productline1 data that Contoso exposes through a shortcut named ResearchProduct in Lakehouse1. The answer is the Spark SQL query against Lakehouse1.ResearchProduct, because the shortcut is registered as a table in the lakehouse rather than under a productline1 folder.

The most common wrong pick is option A, spark.read.format("delta").load("Tables/productline1/ResearchProduct"), which adds an extra productline1 folder level that does not exist because the shortcut was created directly in the Tables folder as ResearchProduct.

Community Discussion (27 comments)

David_Webb 👍 15 Selected: B
The correct answer is B. The folder hierarchy of Tables in Lakehouse is incorrect for A.
wispa2001 👍 10 Selected: B
df = spark.read.format("delta").load("Tables/MyShortcut") display(df) OR df = spark.sql("SELECT * FROM MyLakehouse.MyShortcut LIMIT 1000") display(df) https://learn.microsoft.com/en-us/fabric/onelake/onelake-shortcuts
Atiwari95 👍 1 Selected: B
The Correct Answer is B. The hierarchy of table is correct in B option.
NRezgui 👍 1 Selected: B
spark.sql(“SELECT * FROM Lakehouse1.ResearchProduct ”)
NRezgui 👍 1 Selected: B
spark.sql(“SELECT * FROM Lakehouse1.ResearchProduct ”)
MultiCloudIronMan 👍 2 Selected: A
Based on the case study details, the data for Productline1 is stored in an Azure Data Lake Storage Gen2 storage account named storage1 in the delta format. A shortcut to this storage, named ResearchProduct, is created in Lakehouse1 within the Productline1ws workspace. Given this structure, the path "Tables/productline1/ResearchProduct" is justified because it references the shortcut created in Lakehouse1 that points to the data stored in storage1. This path aligns with the case study's description of the data environment and planned changes.
Rakesh16 👍 1 Selected: B
B-->spark.sql(“SELECT * FROM Lakehouse1.ResearchProduct ”)
jass007_k 👍 3
The correct answer is B) Though A also looks correct, but the path mentioned is incorrect. The path should be Tables/ResearchProduct. We are directly creating a shortcut with the name ResearchProduct under Tables folder in Lakehouse1. There is no mention of the productline1 folder created.
jass007_k 👍 2
Both seem to be correct option A and option B. I have tried both syntaxes with shortcut data. Also its mentioned that format of data is in delta so I will go with option A)
Egocentric 👍 3
A is for when you want to load data. Answer is B, its only when you requesting specific data from specific table
Egocentric 👍 2
answer is A. in B there is no productline1
nyoike 👍 6 Selected: A
With the recent introduction of schema-enabled Lakehouses, BOTH A and B are correct. That is assuming ResearchProduct table was created in a schema-enabled Lakehouse in the productline1 schema. I have tested A in a Fabric Spark notebook that is schema-enabled and it works.
Miro_dd 👍 1 Selected: B
Hierarchy for answer A is not correct
ziggy1117 👍 1 Selected: B
https://learn.microsoft.com/en-us/fabric/onelake/onelake-shortcuts df = spark.read.format("delta").load("Tables/MyShortcut") OR df = spark.sql("SELECT * FROM MyLakehouse.MyShortcut LIMIT 1000")
ca63a55 👍 1
If answer B is the correct, why Files folder dosen`t appear between Lakehouse1 and ResearchProduct? It has to be like "lakehouse1.Files.ResearchProduct", hasn't it?
stilferx 👍 1 Selected: A
IMHO, I would go with A, because of there is a clear statement ProductLine1. Technically, A and B should work, but B doesn't have "ProductLine", what is confusing
KASH2001 👍 1
There is no productline1 used in Answer B. Then how it could be correct....
laitoanthang 👍 1 Selected: B
Yeah, the answer is B. Cause the folder hierarchy is kind of not true. It should be something else....
NICVU 👍 2
The correct answer id B. The productionline1 represents workspace so in option A spark.read.format(“delta”).load(“Tables/productline1/ResearchProduct”) there they mentioned productionline1 which is workspace so it is wrong
rmeng 👍 1 Selected: B
B. spark.sql(“SELECT * FROM Lakehouse1.ResearchProduct ”)
Shri_Learning 👍 2 Selected: B
A syntax error
shem576 👍 2
Should be A : This syntax uses the spark.read.format().load() method to read data from the specified location in the Delta format, which is a popular format for managing big data within data lakes or warehouses. It specifies the path where the data for Productline1's research division is stored. Option B, spark.sql("SELECT * FROM Lakehouse1.ResearchProduct"), executes a SQL query to select all data from a table named ResearchProduct in a database/schema called Lakehouse1. However, it doesn't specify the path or format of the data, so it may not be appropriate for accessing specific data within a notebook, especially if it's stored in a Delta format in a specific location.
earlqq 👍 2 Selected: B
B is the correct one
TashaP 👍 3
Cant be A: The path specified seems to assume a direct file system access rather than accessing through a lakehouse structure or shortcut. This syntax is used for reading data from a Delta Lake storage format. The answer IS B: assuming 'Lakehouse1.ResearchProduct' refers to a structured dataset within Lakehouse1, This syntax correctly uses Spark SQL to query data. This is consistent with how lakehouse data is accessed through SQL queries. Cant be C: Incomplete/incorrect format for accessing data in a spark environment. It is not the typical syntax used for Spark DataFrame or SQL API Calls. Cant be D: Similar logic to C, it is missing the context/format needed to access the data. The syntax is not a correct Spark API call.
Jeff_Zhu 👍 4 Selected: B
The correct answer is B. A should correct as : df = spark.read.format("delta").load("Tables/ResearchProduct") The Table folder could not handle two hierarchical
SamuComqi 👍 4
B. spark.sql(“SELECT * FROM Lakehouse1.ResearchProduct ”) The syntax of C and D is correct for KQL databases (incorrect in this use-case). When the shortcut is created, no additional folders have been added to the Tables section, therefore answer A is incorrect. Once created, the line of answer B can be used to access data correctly. https://learn.microsoft.com/en-us/fabric/onelake/onelake-shortcuts
Momoanwar 👍 2 Selected: A
I think A. We get data from shirtcut

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

Contoso creates Lakehouse1 in Productline1ws and then creates a shortcut named ResearchProduct that points to the delta data in storage1. A OneLake shortcut placed in the Tables section of a lakehouse is exposed as a table of that lakehouse, so it is addressable as Lakehouse1.ResearchProduct. Option B, spark.sql("SELECT * FROM Lakehouse1.ResearchProduct"), uses exactly that lakehouse-qualified name and returns the Productline1 data inside a Fabric notebook, which is the mechanism the Data Preparation requirements demand. It also satisfies the general requirement to minimize implementation and maintenance effort, since no path construction or schema assumptions are needed.

Why the Other Options Are Wrong

Option A assumes the data sits one folder deeper, at Tables/productline1/ResearchProduct, but the case study never creates a productline1 folder or schema inside Lakehouse1; as David_Webb put it, "The folder hierarchy of Tables in Lakehouse is incorrect for A." The corrected path would simply be Tables/ResearchProduct, which is why several voters treat A as a near-miss rather than a valid answer. Options C and D use external_table(...) syntax, which belongs to KQL databases and the Kusto query language, not to Spark notebooks reading a lakehouse table, as SamuComqi correctly observed. There is also no table function or shortcut alias registered under the bare name ResearchProduct that external_table could resolve in a PySpark session.

Community Comment Notes

David_Webb and jass007_k both landed on B by pointing out that the shortcut is created directly under Tables with no productline1 level, and wispa2001 supplied the official OneLake shortcuts page showing the same SQL pattern. nyoike raised the nuance that with schema-enabled lakehouses A can also work when a productline1 schema exists, but the case study does not state that Lakehouse1 is schema-enabled, so the safe exam answer remains B. Egocentric framed the distinction well: "A is for when you want to load data. Answer is B, its only when you requesting specific data from specific table." Jeff_Zhu and TashaP reinforced that Lakehouse1.ResearchProduct is the structured dataset name and the correct Spark SQL target.

Official Reference

Exam Strategy

In Fabric case-study questions, first pin down exactly where the artifact lives (workspace, lakehouse, folder, schema) before evaluating syntax; the distractor usually adds or removes one path segment. Then filter options by engine: spark.read/spark.sql are notebooks, while external_table belongs to KQL, not Spark.

Frequently Asked Questions

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.

Related Analysis

Practice All DP-600 Questions

Access 115 questions with complete answers and detailed explanations.

View Full DP-600 Practice Test →

← Back to DP-600 Study Guide