You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何在Microsoft Fabric中搭建Medallion架构及青铜到黄金管道?

在Microsoft Fabric中搭建从青铜层到黄金层的Medallion数据管道

1. 准备基础环境

  • 创建一个Fabric工作区,在工作区内新建3个Lakehouse,分别命名为Bronze_LH、Silver_LH、Gold_LH,对应Medallion架构的三层。
  • 确保拥有工作区编辑权限及Lakehouse的读写权限。

2. 青铜层:导入原始数据

青铜层用于存储未经处理的原始数据,支持多种导入方式:

  • 本地文件上传:直接将CSV/Parquet等格式的原始文件上传到Bronze_LH的Files或Tables目录。
  • 复制数据活动:用Fabric Data Pipeline的复制数据活动,从Azure SQL、Blob Storage、API等外部数据源同步原始数据到Bronze_LH的表中。示例Spark SQL语句:
    CREATE TABLE Bronze_LH.raw_sales
    USING CSV
    OPTIONS (path 'Files/raw/sales/*.csv', header 'true', inferSchema 'true');
    

3. 白银层:数据清洗与转换

白银层负责完成标准化、去重、补全缺失值、格式转换等核心清洗操作,可通过两种方式实现:

  • Spark Notebook处理:
    # 读取青铜层原始数据
    df = spark.sql("SELECT * FROM Bronze_LH.raw_sales")
    
    # 执行清洗逻辑:去重、填充缺失值、转换日期格式
    cleaned_df = df.dropDuplicates() \
                    .fillna({"customer_id": "unknown", "amount": 0}) \
                    .withColumn("sale_date", to_date(col("sale_date"), "yyyy-MM-dd"))
    
    # 将清洗后的数据写入白银层
    cleaned_df.write.mode("overwrite").saveAsTable("Silver_LH.cleaned_sales")
    
  • 可视化数据流:用Data Pipeline的数据流活动,通过拖拽配置过滤无效数据、映射字段类型、关联表等规则,无需编写代码。

4. 黄金层:数据聚合与业务建模

黄金层是面向业务场景的结构化数据模型,比如维度表、事实表,用于BI分析或报表输出:

  • Spark SQL创建聚合表示例:
    -- 创建每日区域销售汇总的黄金层表
    CREATE TABLE Gold_LH.daily_sales_summary
    USING PARQUET
    AS
    SELECT
      sale_date,
      region,
      COUNT(DISTINCT order_id) AS total_orders,
      SUM(amount) AS total_revenue
    FROM Silver_LH.cleaned_sales
    GROUP BY sale_date, region;
    
  • 数仓模式:如果熟悉传统数仓,也可以用Fabric Data Warehouse构建黄金层,支持T-SQL语法完成建模。

5. 自动化调度

若需定期同步更新数据,可在Data Pipeline中配置触发器:

  • 时间触发:设置每日凌晨等固定时间,自动执行从青铜到白银再到黄金的全流程。
  • 事件触发:绑定青铜层数据更新事件,当有新原始数据导入时自动启动处理流程。

内容的提问来源于stack exchange,提问作者Anonymous

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.03 15:33:12