🚀 快速安装

复制以下命令并运行,立即安装此 Skill:

npx @anthropic-ai/skills install github/awesome-copilot/fabric-lakehouse

💡 提示:需要 Node.js 和 NPM

何时使用此技能

在需要以下操作时,可使用此技能:

  • 生成包含 Fabric 湖仓一体化平台的定义、上下文及其功能的文档或解释。
  • 使用最佳实践设计、构建和优化湖仓一体化解决方案。
  • 理解 Microsoft Fabric 中湖仓一体化的核心概念和组件。
  • 学习如何在湖仓一体化平台中管理表格型数据和非表格型数据。

Fabric 湖仓一体化平台

核心概念

什么是湖仓一体化?

Microsoft Fabric 中的湖仓一体化是一个项目,为用户提供存储表格型数据(如表)和非表格型数据(如文件)的地方。它结合了数据湖的灵活性和数据仓库的管理能力。它提供:

  • 在 OneLake 中为结构化和非结构化数据提供统一存储
  • Delta Lake 格式,支持 ACID 事务、版本控制和时间旅行
  • 用于 T-SQL 查询的SQL 分析端点
  • 用于 Power BI 集成的语义模型
  • 支持其他表格格式,如 CSV、Parquet
  • 支持任何文件格式
  • 用于表优化和数据管理的工具

关键组件

  • Delta 表:具有 ACID 合规性和模式强制管理的表
  • 文件:“文件”部分中的非结构化/半结构化数据
  • SQL 端点:自动生成的用于查询的只读 SQL 接口
  • 快捷方式:指向外部/内部数据的虚拟链接,无需复制数据
  • Fabric 物化视图:为快速查询性能而预计算并存储的表

湖仓一体化平台中的表格型数据

表格型数据以表的形式存储在“表”文件夹下。湖仓一体化平台中表的主要格式是 Delta。湖仓一体化平台可以将表格数据存储为其他格式,如 CSV 或 Parquet,但这些格式仅适用于 Spark 查询。
表可以是内部的,即数据存储在“表”文件夹下;也可以是外部的,即仅将表的引用存储在“表”文件夹下,而数据本身存储在引用的位置。表通过快捷方式引用,快捷方式可以是内部的(指向 Fabric 中的另一个位置)或外部的(指向存储在 Fabric 外部的数据)。

湖仓一体化平台中表的模式

创建湖仓一体化平台时,用户可以选择启用模式。模式用于组织湖仓一体化平台表。模式作为“表”文件夹下的文件夹实现,并将表存储在这些文件夹中。默认模式是“dbo”,它不能被删除或重命名。所有其他模式都是可选的,可以创建、重命名或删除。用户可以使用模式快捷方式引用位于另一个湖仓一体化平台中的模式,从而通过单个快捷方式引用目标模式中的所有表。

湖仓一体化平台中的文件

文件存储在“文件”文件夹下。用户可以创建文件夹和子文件夹来组织他们的文件。任何文件格式都可以存储在湖仓一体化平台中。

Fabric 物化视图

一组预先计算好的表,这些表会根据计划自动更新。它们为复杂的聚合和连接提供快速的查询性能。物化视图是使用 PySpark 或 Spark SQL 定义的,并存储在关联的笔记本中。

Spark 视图

由 SQL 查询定义的逻辑表。它们不存储数据,而是提供一个用于查询的虚拟层。视图是使用 Spark SQL 定义的,并存储在表旁边的湖仓一体化平台中。

安全性

项目访问或控制平面安全性

用户可以拥有工作区角色(管理员、成员、参与者、查看者),这些角色提供对湖仓一体化平台及其内容的不同级别的访问权限。用户还可以通过湖仓一体化平台的共享功能获得访问权限。

数据访问或 OneLake 安全性

对于数据访问,使用 OneLake 安全模型,该模型基于 Microsoft Entra ID(前身为 Azure Active Directory)和基于角色的访问控制。湖仓一体化平台数据存储在 OneLake 中,因此对数据的访问通过 OneLake 权限进行控制。除了对象级权限,湖仓一体化平台还支持表的列级和行级安全性,从而精细控制谁能查看表中的特定列或行。

湖仓一体化平台快捷方式

快捷方式创建指向数据的虚拟链接,无需复制数据:

快捷方式类型

  • 内部:链接到其他 Fabric 湖仓一体化平台/表,跨工作区数据共享
  • ADLS Gen2:链接到 Azure 中的 ADLS Gen2 容器
  • Amazon S3:AWS S3 存储桶,跨云数据访问
  • Dataverse:Microsoft Dataverse,业务应用程序数据
  • Google Cloud Storage:GCS 存储桶,跨云数据访问

性能优化

V-Order 优化

为了通过语义模型更快地读取数据,请在 Delta 表上启用 V-Order 优化。这会预先对数据进行排序,从而提高常见访问模式的查询性能。

表优化

还可以使用 OPTIMIZE 命令优化表,该命令将小文件压缩为大文件,还可以应用 Z-排序来提高对特定列的查询性能。随着数据的持续引入和更新,定期优化有助于保持性能。Vacuum 命令可用于清理旧文件并释放存储空间,尤其是在更新和删除操作之后。

数据沿袭

湖仓一体化平台项目支持数据沿袭,允许用户跟踪数据的来源和转换。湖仓一体化平台中表和文件的沿袭信息会被自动捕获,显示数据如何从源头流向目的地。这有助于调试、审计和理解数据依赖关系。

PySpark 代码示例

有关详细信息,请参阅 PySpark 代码

将数据引入湖仓一体化平台

有关详细信息,请参阅获取数据

📄 原始文档

完整文档(英文):

https://skills.sh/github/awesome-copilot/fabric-lakehouse

💡 提示:点击上方链接查看 skills.sh 原始英文文档,方便对照翻译。

声明:本站所有文章,如无特殊说明或标注,均为本站原创发布。任何个人或组织,在未征得本站同意时,禁止复制、盗用、采集、发布本站内容到任何网站、书籍等各类媒体平台。如若本站内容侵犯了原著者的合法权益,可联系我们进行处理。