在 Microsoft Fabric 中镜像 Snowflake
Fabric 中的镜像功能提供了一种简单的体验,可避免复杂的 ETL(提取转换加载),并可将你现有的 Snowflake 仓库数据与 Microsoft Fabric 中的其他数据集成在一起。 你可以将现有的 Snowflake 数据持续地直接复制到 Fabric 的 OneLake 中。 在 Fabric 中,可以解锁强大的商业智能、人工智能、数据工程、数据科学和数据共享应用场景。
有关在 Fabric 中配置用于镜像的 Snowflake 数据库的教程,请参阅教程:配置来自 Snowflake 的 Microsoft Fabric 镜像数据库。
为什么要使用 Fabric 中的镜像功能?
使用 Fabric 镜像功能时,无需将来自多个供应商的不同服务拼凑在一起。 相反,你可以享受高度集成且易于使用的端到端产品,该产品旨在简化你的分析需求,并为在 Microsoft、Snowflake 和可读取开源 Delta Lake 表格式的上千种技术解决方案之间建立开放性和协作而构建。
内置了哪些分析体验?
镜像数据库是 Fabric 数据仓库中的一个项,有别于“仓库”和“SQL 分析终结点”。
镜像在 Fabric 工作区中创建三个项:
每个镜像数据库都有一个自动生成的 SQL 分析终结点,可基于镜像过程创建的增量表,提供丰富的分析体验。 用户可以使用熟悉的 T-SQL 命令来定义和查询数据对象,但不能操作 SQL 分析终结点的数据,因为它是只读副本。 可在 SQL 分析终结点中执行以下操作:
- 浏览从 Snowflake 引用 Delta Lake 表中数据的表。
- 创建无代码查询和视图,无需编写任何代码行即可直观地浏览数据。
- 开发 SQL 视图、内联 TVF(表值函数)和存储过程,以 T-SQL 封装语义和业务逻辑。
- 管理对象的权限。
- 在同一工作区中查询其他仓库和湖屋中的数据。
除了 SQL 查询编辑器外,还有一个广泛的、可查询 SQL 分析终结点的工具生态系统,其中包括 SQL Server Management Studio (SSMS)、使用 Visual Studio Code 的 mssql 扩展甚至 GitHub Copilot。
安全注意事项
若要启用 Fabric 镜像,需要为 Snowflake 数据库设置包含以下权限的用户权限:
CREATE STREAM
SELECT table
SHOW tables
DESCRIBE tables
有关详细信息,请参阅 Snowflake 文档,了解流式处理表的访问控制特权和流式处理所需的权限。
重要
在源 Snowflake 仓库中建立的任何粒度的安全性,都必须在 Microsoft Fabric 中的镜像数据库中重新配置。 有关详细信息,请参阅 Microsoft Fabric 中的 SQL 粒度权限。
镜像 Snowflake 的成本注意事项
Fabric 不对镜像收取进入 OneLake 的网络数据入口流量费用。 当 Snowflake 数据被复制到 OneLake 时,不会产生镜像成本。
镜像数据时,会产生 Snowflake 计算和云查询成本:虚拟仓库计算和云服务计算。
- Snowflake 虚拟仓库计算费用:
- 如果在 Snowflake 中读取数据更改,然后反过来将更改镜像到 Fabric 中,则 Snowflake 端将对计算收费。
- 任何在后台运行用于检查数据更改的元数据查询都不会产生任何 Snowflake 计算费用;但是,产生数据的查询(如将唤醒 Snowflake 仓库并进行计算的
SELECT *
)将产生费用。
- Snowflake 服务计算费用:
- 尽管后台任务(如编写、元数据查询、访问控制、显示数据更改,甚至 DDL 查询)不会产生任何计算费用,但这些查询仍会产生与云服务相关的费用。
- 根据你拥有的 Snowflake 版本类型,你将为产生的任何云服务成本支付相应的信用额度。
在下面的屏幕截图中,可以看到正在镜像到 Fabric 的关联 Snowflake 数据库产生的虚拟仓库计算成本和云服务计算成本。 在此场景中,大部分云服务计算成本(黄色部分)来自于基于之前所提及各点的数据更改查询。 虚拟仓库计算费用(蓝色部分)完全是由从 Snowflake 读取数据更改并将该更改镜像到 Fabric 中所产生的。
有关 Snowflake 特定云查询成本的详细信息,请参阅 Snowflake 文档:了解总体成本。