此内容由人工智能翻译,尚未经过人工编辑审核。图像和图表保持其原始语言。
如果你读过我们关于 Fabric Direct Lake 的 上一篇博客,就会知道我们曾承诺会分享一些示例,展示 Tabular Editor 3 如何帮助你使用 Direct Lake Dataset。 在本文中,我们将演示如何使用 Tabular Editor 3 从零开始创建一个全新的 Direct Lake Dataset,并通过几个简单步骤完成配置。
回顾 Fabric Direct Lake
Direct Lake Dataset 是一种特殊的表格型 Dataset,可直接链接到 Fabric Lakehouse。 这意味着,只要 Fabric Lakehouse 中的数据发生变化,Direct Lake Dataset 就会自动反映这些变化,无需任何额外处理或刷新。
因此,基于 Direct Lake Dataset 的 Report 使用者可以在 Lakehouse 发生变化后立即看到最新数据。 从而也省去了原本可能冗长的 ETL 流程中的最后一步。
图 1:Tabular Editor 连接到 Direct Lake Dataset
注意Fabric 当前处于预览阶段,因此 Direct Lake Dataset 在可更改的内容上有若干限制:Direct Lake 已知问题和限制 | Microsoft Learn |
使用 Tabular Editor 创建 Direct Lake Dataset
从3.11.0 版本起,Tabular Editor 支持创建 Direct Lake Dataset。这使你可以在本地创建和编辑 Dataset,将其纳入源代码管理,并使用你选择的 DevOps 工具将其部署到 Fabric Workspace。
重要通过 XMLA endpoint 创建或编辑 Direct Lake Dataset,将导致你无法在 Fabric 门户中更改该 Direct Lake Dataset。 这是该功能当前的限制之一。 |
先决条件
要跟随本教程操作,你需要:
- 一个带有 Lakehouse 或 Warehouse 的 Fabric Workspace
- 在 Workspace 上具备部署 Dataset 的访问权限。
- 在你的 Fabric 试用版或租户上启用 XMLA 读/写。
- 在你的机器上安装 Tabular Editor 3.11.0 或更高版本。
注意新创建的 Dataset 不能包含其他表,或定义任何显式的数据源。 Direct Lake Dataset 不能与其他类型的 Dataset 表(Import 或 Direct Query)混用。 Direct Lake Dataset 只能包含 Direct Lake 表和分区。 |
第 1 步:查找连接字符串
创建 Direct Lake Dataset 的第一步,是在 Fabric 门户的 Workspace 中找到并复制 Lakehouse SQL endpoint 连接字符串,以及你的 Workspace XMLA 连接字符串,并先保存起来,供后续步骤使用。
- 将鼠标悬停在 Lakehouse SQL endpoint 上,然后点击三个点。
- 选择“复制 SQL 连接字符串”。
- 复制连接字符串并保存备用。
- 打开 Workspace 设置,并点击 Premium 选项卡。
- 滚动到页面底部,复制 Workspace 连接(XMLA endpoint)并保存备用。
视频:在 Tabular Editor 中创建 Direct Lake Dataset
下面第 2 步及之后的步骤也可通过此视频查看,视频演示了如何在 Tabular Editor 3 中创建 Direct Lake Dataset
第 2 步:创建 Direct Lake Dataset
收集好连接字符串之后,我们就可以使用 Tabular Editor 3 来创建 Direct Lake Dataset。
创建新的 Dataset 很简单:进入 File > New > Model,或使用快捷键 Ctrl+N。 这会打开“New Model”对话框,用于为 Dataset 命名。确保 Dataset 的兼容级别设置为 1604(Power BI Dataset)[1] 后,即可创建模型。 如果你愿意,也可以在不指定 Workspace 数据库的情况下创建 Dataset,但这样在将 Dataset 部署到 Fabric Workspace 之前,你将无法预览数据。
注意新创建的 Dataset 不能包含其他表,或定义任何显式的数据源。 目前,Direct Lake 不能与其他类型的 Dataset 表(Import 或 Direct Query)组合使用。 换句话说,Direct Lake Dataset 只能包含 Direct Lake 表和分区。 |
[1] Direct Lake Dataset 所需的最低级别。
第 3 步:在 Direct Lake Dataset 中创建表
空模型当然很好,潜力无限,但它并不能帮助业务用户从数据中获得洞察。 所以下一步自然是创建一些表,以便我们开始构建 Data model。
- 在 TOM Explorer 中右键单击数据模型,选择“Import tables…”,这将打开“导入表向导”。
- 选择“Use implicit data source”以设置 Power BI Dataset。
- 选择“Fabric OneLake (DirectLake)”作为新的数据源。
- 将 Lakehouse SQL Endpoint 连接字符串输入到服务器名称中,并完成身份验证。
- 选择要添加到 Dataset 的表。
- 将 Dataset 保存到 Power BI 服务,以及本地文件夹,格式可自行选择。
第 4 步:预览数据
如果你在上面的第 2 步中使用 Workspace 数据库设置了新 Dataset,那么你可以立即使用 Tabular Editor 3 的“Preview data”功能来测试 Direct Lake 连接。 否则,此阶段你将无法预览数据,需要先将模型部署到 Fabric Workspace。
预览数据时记得:到目前为止,我们所做的只有导入几张表,并将 Dataset 保存回 Fabric Workspace。 我们没有运行刷新来将数据导入到 Dataset 中——而常规的 Import Dataset 则需要执行这一步。 此外,通过收集 VertiPaq分析器统计信息也可以看到:数据实际上会按需加载到内存中;这与 DirectQuery Dataset 不同,后者的数据仍保留在数据源中。
第 5 步:使用 Tabular Editor 添加表
向 Direct Lake Dataset 添加更多表的过程非常简单:Import Table Wizard 会连接到现有的 Lakehouse 数据源,剩下要做的只是选择所需的表。
同样地,当 Lakehouse 中的某个表发生架构更改时,你也可以照常使用 Tabular Editor 的“Update table schema”功能。
结论
以上只是创建 Direct Lake Dataset 的前几个步骤。 在 Tabular Editor 中进行 Data model 建模的精彩内容还在后面:创建度量值、整理 Dataset、创建计算组、应用最佳实践规则——这些都还在后面。
补充:创建 Lakehouse Import 或 DQ 模式 Dataset
你也可以使用常规的 Azure DB 或 Azure Synapse 连接器之一来连接到 Lakehouse SQL Endpoint。 它只是一个 SQL Endpoint,似乎并无区别。 这样,开发者仍然可以在 Fabric Lakehouse(以及可能的 Fabric Warehouse)上构建 Import 或 DirectQuery 模式的 Dataset。
选择 Import Dataset 而不是 Direct Lake 的一个原因是:在仍然连接到 Fabric 门户中存储的 Lakehouse 的同时,保留 Import Dataset 的全部功能。 例如当下许多 Dataset 开发者都会用到的功能:计算列和计算表、DateTime 关系、复合模型等。
不过,目前尚无从 Import Dataset 迁移到 Direct Lake Dataset 的已知路径,因此在决定采用哪一种方案时,需要仔细权衡各自的收益。
对于 DirectQuery 模式的 Dataset,如果忽略当前限制,相比 Direct Lake 模式,看起来并没有太多优势。 事实上,在某些情况下,Direct Lake 模式 Dataset 会自动回退到 DirectQuery。 一旦 Direct Lake 的限制得到解决(希望在 Fabric 正式 GA 之前),在源数据位于 Fabric Lakehouse 的所有场景下,Direct Lake 都应优先于 DirectQuery。
