---
# System prepended metadata

title: "\U0001F9E0 Microsoft Fabric 教材講義（基礎入門）"

---

 

---

# 🧠 Microsoft Fabric 教材講義（基礎入門）

## 一、Microsoft Fabric 簡介

### 1. 定義與特性

Microsoft Fabric 是一個 **端對端（End-to-End）資料分析平台**，提供資料專業人員與企業使用者一個統一的整合環境，可於單一平台內完成資料的 **收集、儲存、處理與分析**。

### 2. 平台特點

* **SaaS 模式（Software as a Service）**：免除繁瑣的部署。
* **統一環境**：整合 Data Factory、Synapse、Power BI 等分析工具。
* **單一資料湖 OneLake**：集中管理並避免資料重複。
* **內建 Copilot（生成式 AI 助手）**：可協助查詢、產生 SQL、建立報表與摘要。

---

## 二、Fabric 六大主要服務模組

| 模組                                   | 功能說明                |
| ------------------------------------ | ------------------- |
| **Data Engineering**                 | 處理、轉換與開發大規模資料流程。    |
| **Data Integration (Data Factory)**  | 提供 ETL 與資料整合流程自動化。  |
| **Data Warehousing**                 | 支援大規模結構化資料倉儲分析。     |
| **Real-Time Intelligence**           | 進行即時資料分析與監控。        |
| **Data Science**                     | 建立、訓練與部署機器學習模型。     |
| **Business Intelligence (Power BI)** | 建立互動式報表與儀表板，支援決策分析。 |

---

## 三、OneLake 核心架構

### 1. OneLake 概念

OneLake 是 Microsoft Fabric 的集中式資料湖儲存架構，基礎建置於 **Azure Data Lake Storage (ADLS)** 之上，支援多種資料格式（Delta、Parquet、CSV、JSON）。

### 2. 功能特色

* 各分析引擎（如 Spark、T-SQL、KQL）可直接存取 OneLake 資料。
 | 分析引擎                       | 主要用途       | 語言                         | 存取方式                                                          |
| ------------------------------ | ------------ | --------------------------- | ---------------------------------------------------------------- |
| **Spark**                      | 大數據處理、機器學習   | PySpark / Scala / Spark SQL | 直接讀取 Delta Parquet 檔：| |
| **T-SQL**                      | 傳統資料倉儲、BI 查詢 | Transact-SQL                | 透過 *Lakehouse* 或 *SQL Endpoint* 查詢 OneLake 資料表，如同查詢資料庫|
| **KQL (Kusto Query Language)** | 日誌、即時監控分析    | KQL                         | 可查詢 *Real-Time Analytics* 資料集，資料仍在 OneLake 中 |


* 使用統一格式 **Delta-Parquet**，避免資料複製與搬移。
* 可與 Azure、Amazon、Google、Dataverse 及 On-Premises 系統整合。

| 特性         | Parquet   | Delta                    |
| ---------- | --------- | ------------------------ |
| 基礎格式       | 欄式儲存格式    | Parquet + 交易日誌（ACID）     |
| 支援更新/刪除    | ❌ 不支援     | ✅ 支援                     |
| 時間旅行（版本控制） | ❌ 無       | ✅ 有                      |
| 資料一致性      | 弱         | 強（ACID）                  |
| Schema 演化  | 基本支援      | 完整支援                     |
| 適用場景       | 批次分析      | 實時分析 + 批次混合              |
| 常見應用       | Data Lake | Lakehouse / ETL Pipeline |


### 3. 快捷方式（Shortcuts）

允許直接連結外部雲端或本地資料，而不需搬移資料，確保資料一致性與即時同步。

### 4. 鏡射（Mirroring）

可將 **Azure SQL Database** 或其他雲端資料倉儲資料鏡射至 Fabric 平台，以進行集中分析。

---

## 四、工作區（Workspace）

### 1. 定義

工作區是 Microsoft Fabric 中的邏輯容器，用於管理資料集、報表與模型，並協助團隊協作與安全控管。

### 2. 功能

* 整理與管理不同類型的資料資產。
* 每個工作區可獨立授權、控管與版本管理。
* 可與 **Git** 整合進行版本追蹤與協作。

### 3. 權限角色

| 角色                    | 權限             |
| --------------------- | -------------- |
| **系統管理員 (Admin)**     | 管理工作區與設定。      |
| **成員 (Member)**       | 可建立與修改內容。      |
| **參與者 (Contributor)** | 可共同作業但無完整管理權限。 |
| **檢視者 (Viewer)**      | 僅能瀏覽內容，無修改權限。  |

---

## 五、集中管理與治理（Governance）

### 1. 管理入口網站

集中於 **Fabric 系統管理入口網站（Admin Portal）**，提供：

* 群組與許可權設定。
* 資料閘道與來源設定。
* 效能監測與使用量分析。
* API 與 SDK 介面，支援自動化與系統整合。

### 2. OneLake 目錄（Catalog）

提供集中治理與稽核功能，包括：

* 元資料與敏感性標籤管理。
* 數據刷新狀態追蹤。
* 提供資料譜系（Lineage）視覺化，以支援合規與安全管控。

---

## 六、Fabric 的使用角色與協作流程

| 角色        | 在 Fabric 中的任務與工具                                   |
| --------- | -------------------------------------------------- |
| **資料工程師** | 使用 Data Factory / Spark 建立 Pipeline，進行資料整合與轉換。     |
| **分析工程師** | 建立語意模型與資料湖倉 (Lakehouse)，策劃可供重用的數據集。                |
| **資料分析師** | 使用 Power BI 建立互動式報表（Direct Lake 模式），減少轉換負擔。        |
| **資料科學家** | 使用 Notebook（Python + Spark）進行建模，並可與 Azure ML 整合部署。 |
| **公民開發者** | 使用 Power BI、Dataflow 進行低程式碼自助式分析。                  |

---

## 七、Copilot 智能助理（AI 助手）

### 1. 定義

**Copilot** 是 Fabric 內建的生成式 AI 助手，利用大型語言模型（LLM）協助使用者在平台內更高效完成工作。

### 2. 主要功能

| 模組                                  | Copilot 功能               |
| ----------------------------------- | ------------------------ |
| **Data Engineering / Data Science** | 智慧代碼補全、自動化轉換、分析建議。       |
| **Data Factory**                    | 自動產生 ETL 程式與流程說明。        |
| **Data Warehousing / SQL**          | 將自然語言轉換為 SQL 查詢。         |
| **Power BI**                        | 自動生成報表、提供問答功能與摘要分析。      |
| **Real-Time Intelligence**          | 自然語言轉譯成 KQL 查詢，簡化即時資料分析。 |

這句話描述的是 **Microsoft Fabric 或 Azure 生態系中常見的資料整合流程**，
意思是透過 **Data Factory** 與 **Spark** 的組合來建立一條 **資料處理管線（Data Pipeline）**，
實現「資料整合（Integration）」與「資料轉換（Transformation）」的工作。
以下是專業層面的完整說明與架構解析 👇

---

## 🧭 一、整體概念

**Data Pipeline（資料處理管線）**：
指一系列自動化的步驟，負責從不同來源擷取資料、清理、轉換、整合，最後載入至目標（如 OneLake、SQL Warehouse、Power BI）。

在 Microsoft Fabric / Azure 架構中，可利用：

* **Data Factory**：負責 **ETL / ELT 控制流程、排程、資料擷取**
* **Spark（Notebook 或 Job）**：負責 **資料轉換與分析邏輯**

---

## 🧩 二、Data Factory 的角色：整合與自動化

Data Factory（資料工廠）是整個 Pipeline 的「管控中心」：

### 📘 功能

| 功能類別                     | 說明                                                                         |
| ------------------------ | -------------------------------------------------------------------------- |
| **資料擷取（Data Ingestion）** | 從多種來源收集資料：資料庫（SQL, PostgreSQL）、雲端儲存（Azure Blob, AWS S3）、API、CSV、IoT 資料串流等。 |
| **排程與觸發器**               | 可設定每日/每小時執行、事件觸發（如新檔上傳時）。                                                  |
| **資料流（Data Flow）設計**     | 以視覺化拖拉介面設計資料清理、轉換邏輯（Mapping Data Flow）。                                    |
| **協調 Spark 任務**          | 可以在 Pipeline 內呼叫 Spark Notebook、Spark Job，進行複雜資料處理。                        |

---

## ⚙️ 三、Spark 的角色：資料轉換與運算核心

Spark 是處理大量資料的分散式運算引擎。

### 📘 常見用途

| 任務類型                     | Spark 處理內容                                            |
| ------------------------ | ----------------------------------------------------- |
| **資料清理（Cleaning）**       | 處理缺值、錯誤資料型別、欄位標準化                                     |
| **資料轉換（Transformation）** | Join、Aggregation、Pivot、Feature Engineering            |
| **資料載入（Load）**           | 將處理後的資料寫回 OneLake（Delta Table）、SQL Warehouse、Power BI |
| **機器學習**                 | 使用 Spark MLlib 進行特徵工程與模型訓練                            |

### 📘 例：

```python
# 從 OneLake 讀取原始資料
df = spark.read.format("delta").load("OneLake/raw/patient_records")

# 清理與轉換
df_clean = df.dropna(subset=["age", "diagnosis"]) \
             .withColumnRenamed("patient_id", "PID") \
             .filter(df.age > 18)

# 寫回轉換後的資料
df_clean.write.format("delta").mode("overwrite").save("OneLake/curated/patient_records")
```

---

## 🔄 四、整體 Pipeline 流程範例（醫療資料案例）

 
---

## 🧠 五、整合優點

| 項目        | 說明                                |
| --------- | --------------------------------- |
| **模組化設計** | Data Factory 負責流程控制，Spark 專注運算邏輯。 |
| **彈性高**   | 支援批次（Batch）與即時（Streaming）處理。      |
| **高擴展性**  | 可依資料量自動調整 Spark Cluster 資源。       |
| **資料一致性** | 搭配 OneLake（Delta 格式）確保 ACID 特性。   |

---

## 📘 六、實務應用舉例（醫療資料整合）

| 流程階段          | 使用技術                 | 功能說明                                       |
| ------------- | -------------------- | ------------------------------------------ |
| 1. 擷取資料       | Data Factory         | 從 HIS / EMR / CSV 匯入病人檢驗與用藥資料              |
| 2. 清理與轉換      | Spark                | 將各院所資料 Schema 對齊、進行代碼映射（如 LONIC、SNOMED CT） |
| 3. 匯入 OneLake | Spark / Data Factory | 寫入 Delta Table，供後續分析                       |
| 4. 分析與可視化     | Power BI / Notebook  | 建立病歷分析與 AI 模型訓練報表                          |

---

## ✅ 七、總結一句話

> 使用 **Data Factory** 建立自動化管線，
> 結合 **Spark** 執行高效資料轉換，
> 最終將資料整合進 **OneLake（Delta 格式）**，
> 即為現代化「資料整合與轉換 Pipeline」的最佳實踐。

---

是否希望我幫你畫一張「Fabric Data Pipeline（Data Factory + Spark + OneLake）」的簡報用示意圖？
可以用在你的健保或慢病管理系統簡報裡。

### 3. 啟用方式

由 **系統管理員** 於 Power BI 管理入口網站的「租用戶設定」中啟用。
可針對特定安全群組或整個組織開放。
![image](https://hackmd.io/_uploads/HJpYTb9pgx.png)


---

## 八、Fabric 平台整體架構說明（圖表解釋）
![image](https://hackmd.io/_uploads/B1gjpZcpgl.png)


### 1. 底層：資料來源整合層

* 支援 Azure、Amazon、Dataverse、Google、Amazon S3、On-Premises 資料來源。
* 透過 **Shortcuts** 與 **Mirroring** 實現即時整合。

### 2. 中層：運算層（Serverless Compute）

* Spark（Data Engineering）
* T-SQL（Data Warehousing）
* KQL（Real-Time Intelligence）
* Analysis Services（Power BI 語意層）

### 3. 上層：應用層（Fabric Services）

* Data Factory、Data Engineering、Data Science、Data Warehousing、Real-Time Intelligence、Power BI。
* 皆共用 OneLake 儲存與運算架構。

---

## 九、課程應用建議（講師教學引導）

1. **故事線導入**：「從資料到洞察」（Data → Insight）

2. **實作順序建議**：

   * 建立 Fabric 工作區
   ![image](https://hackmd.io/_uploads/rJihpWq6gx.png)

   * 建立 Lakehouse 並上傳 Dataset
   * 使用 Data Factory Pipeline 整合資料流
   * 以 Power BI 建立報表
   * 啟用 Copilot 展示自然語言查詢

3. **重點提示**：

   * 強調 OneLake 為資料整合核心。
   * 展示 Copilot 如何加速開發流程。
   * 引導學員認識資料治理與安全機制的重要性。

---

## 十、延伸學習建議

* Microsoft Learn 模組：
  👉 [https://learn.microsoft.com/training/paths/get-started-fabric/](https://learn.microsoft.com/training/paths/get-started-fabric/)
* 進階主題：

  * Data Activator 即時事件觸發
  * Semantic Model 優化
  * Dataflow Gen2 自動化
  * Git 版本控制與協作 