iT邦幫忙

2026 iThome 鐵人賽

DAY 20
0
Build on Google AI

使用gemini 準備 az-900系列 第 20

使用gemini 準備AZ-900 Day20 Azure Synapse Analystics & Databricks

  • 分享至 

  • xImage
  •  

【Day 20】Azure Synapse Analytics & Databricks:從資料湖到洞察的分析選型 feat. AWS 雙強對照

系列專欄:從 AWS 視角征服 Azure:AZ-900 30 天通關實戰
難度指數:★★★★☆
今日任務:區分線上交易(OLTP)與巨量分析(OLAP),並以資料倉儲、資料湖、SQL 與 Apache Spark 的責任邊界,判斷 Azure Synapse Analytics 與 Azure Databricks 的適用情境。

🎯 前言與今日目標

Day 19 的 Cosmos DB 解決了 Titan 科技「玩家此刻要快速讀寫資料」的問題;但遊戲營運團隊今天問的是另一題:如何把數十 TB 的事件日誌、交易紀錄與行銷資料安全地彙整,讓分析師用 SQL 做報表、資料工程師批次轉換資料、資料科學家以 Spark 訓練模型?把這些跨月掃描與聚合查詢直接丟回線上交易資料庫,會與玩家即時請求競爭資源,成本、延遲與事故爆炸半徑都會一起升高。

今天的判斷鏈是 資料落地位置 → 工作負載型態 → 查詢/轉換引擎 → 身分與網路邊界。看到企業資料倉儲與整合式分析工作區,要想到 Synapse;看到團隊以 Apache Spark、Notebook 與協作式資料工程/機器學習為主,要想到 Databricks。兩者都能在資料湖上工作,並不是互斥的同義詞。

📚 Part 1:0.5 小時觀念裝備(AWS ↔ Azure 深度對照)

📐 Titan 的批次分析資料路徑

┌──────────────────────────────────────────────────┐
│ 業務系統:交易、遊戲事件、CRM、裝置遙測資料      │
└─────────────────────────┬────────────────────────┘
                          ▼
┌──────────────────────────────────────────────────┐
│ Azure Data Lake Storage Gen2:原始與整理後資料   │
└───────────────┬──────────────────┬───────────────┘
                ▼                  ▼
     ┌────────────────┐   ┌────────────────┐
     │ Synapse SQL    │   │ Databricks     │
     │ 倉儲/查詢     │   │ Spark/Notebook│
     └────────┬───────┘   └────────┬───────┘
              └──────────┬─────────┘
                         ▼
              ┌────────────────────┐
              │ Power BI 與營運決策 │
              └────────────────────┘

💡 架構師重點筆記:資料湖不是免責的「大硬碟」。若原始、清理與可供報表使用的資料混在同一路徑,或讓每個人用過度授權帳號任意掃描,錯誤資料與資料外洩都會擴大。先分層、定義資料擁有者與存取權,再選擇 SQL 或 Spark 引擎。

🧒 ELI13 總覽:資料湖、資料倉儲與 Spark 像一座港口

把 Titan 的資料平台想成港口:ADLS Gen2 是堆放原料貨櫃的港區,能以低成本保存原始資料;Synapse 像港口的報關、倉儲與查詢中心,讓分析師以 SQL 有秩序地盤點貨物、產出報表;Databricks 則像大型加工廠,讓工程團隊用 Spark 把混雜的原料切分、清洗、加工成可交付的產品。三者可以共同服務同一批資料,但「把貨堆進港口」不等於「已完成報關」,也不等於「已加工完成」。

這個比喻可避免三個常見誤會:資料湖不是資料倉儲;Notebook 不是祕密管理工具;Spark 叢集也不是讓所有使用者都直接碰原始個資的理由。資料平台的難題不是只有能不能跑,而是誰能讀、讀哪一層、成本由誰負責、以及失敗後能否重跑。

1. Why:為什麼分析工作負載需要獨立資料路徑?

OLTP 與 OLAP 的衝突源自存取型態。交易系統偏好小筆、可預期、低延遲的讀寫;分析系統則會掃描很長時間範圍、跨資料來源做 join、group by 與聚合。若讓 Power BI、資料科學實驗與玩家交易共用同一份線上資料庫,月結查詢可能搶走 CPU/IO,甚至把熱門交易逾時誤判成應用程式故障。

更合理的抽象是運算與儲存分離:將原始資料匯入資料湖,使用可重跑的管線建立已驗證、可分析的資料集合,再分別讓 SQL 與 Spark 工作負載讀取。這並不代表資料複製可以無限制增加;每個副本都要有資料擁有者、保留期限、敏感度分類與刪除流程。否則「為了分析複製一份」很快就演變成不可追蹤的個資散落。

1.5【延伸】資料湖分層:Bronze/Silver/Gold 是責任邊界,不是目錄裝飾

Titan 可將 ADLS Gen2 中的資料分為三層:

  • Bronze(原始層):保留從交易、CRM 與事件串流接收到的原貌,供稽核與重跑使用。此層不應直接提供給一般報表使用者。
  • Silver(清理層):完成格式標準化、去重、基本品質檢查與敏感欄位處理。資料工程的失敗重跑通常以此層與原始層的可追溯性為依據。
  • Gold(消費層):依營運指標、部門或產品定義整理成可由 BI/SQL 使用的資料集,明確標示資料新鮮度與口徑。

這不是 Azure 強制的產品功能,而是資料工程常用的治理模式。它的價值在於縮小錯誤爆炸半徑:若某次清理程式邏輯錯誤,只需重建受影響的 Silver/Gold,而非覆寫唯一的原始事實來源。AWS 的 S3 資料湖也能採同樣概念;雲端服務名稱不同,資料血緣與可重跑性原則相同。

2. Azure Synapse Analytics:先判斷 SQL 的責任,再挑 pool

Synapse 是整合式分析工作區,不是一個只有單一引擎的「大資料庫」。從 AZ-900 的選型角度,最容易混淆的是三個詞:

  • serverless SQL pool:依查詢需求讀取資料湖中的檔案,不需要預先佈建 dedicated SQL warehouse。適合探索、間歇查詢或把資料湖開放給 SQL 分析的情境;每次掃描量與資料格式會影響成本。
  • dedicated SQL pool:為持續性資料倉儲工作負載配置專用資源,適合需要較穩定、可預期 SQL 效能與倉儲模型的情境。它不是「查一次就免費歸零」的 serverless 模式。
  • Spark pool:在 Synapse 工作區內以 Spark 做大規模資料處理。它和 Azure Databricks 都可處理 Spark,不表示兩者的協作、治理與營運工作流完全等價。

⚠️ 名稱陷阱:Azure SQL Data Warehouse 是舊名稱,現行名稱為 Azure Synapse Analytics。碰到 2020 題庫時,先做名稱轉換,再判斷題目是否仍符合現行服務邊界;不能把舊名當成另一個產品,也不能用過時名稱掩蓋新的功能差異。

2.5【延伸】Synapse 的資料整合不等於「所有 ETL 都自動安全」

Synapse pipelines 與 Azure Data Factory 的資料整合能力,可用於排程、複製與轉換資料。但管線本身只是一條受控的資料流,不會自動替 Titan 解決來源 schema 演變、重複事件、晚到資料或錯誤重跑。每條管線都應記錄輸入版本、輸出位置、失敗通知與重跑策略;連線到來源系統時,應使用受控身分或 Key Vault,而不是把資料庫密碼塞在活動設定裡。

對 AWS 背景讀者而言,這個抽象近似 Glue 的 crawler/job 與 workflow:它們幫忙編排與轉換,卻不會自動保證資料品質。資料品質規則、目錄、權限與監控仍是架構設計的一部分。

3. Azure Databricks:Spark、Notebook 與工作流程的邊界

Azure Databricks 的核心是受控 Apache Spark 與協作工作區。它適合 Titan 的資料工程師把多來源事件資料以 Python、SQL、Scala 或 R 轉換,讓資料科學家在同一類協作介面中探索資料與準備特徵。Notebook 能保留分析脈絡,但Notebook 不等於正式部署流程:可重複的生產作業仍要有版本控制、參數化、測試、排程、失敗重試與權限審查。

Spark 的分散式特性也不是免費的擴展按鈕。若將大量小檔案、資料偏斜(data skew)或不必要的全表 shuffle 交給叢集,工作可能變慢、成本升高,甚至只有少數 executor 被熱分割拖住。資料工程團隊應觀察工作負載、設定資料分割與檔案格式,並以工作集群與預算告警限制實驗性工作對正式分析平台的衝擊。

3.5【延伸】何時 Synapse 與 Databricks 可以一起用?

這不是二選一考題時才需要的觀念。Titan 可以讓 Databricks 負責 Spark 清理與特徵工程,把已驗證的資料寫入資料湖的消費層;接著讓 Synapse SQL 與 Power BI 面向分析師提供一致的查詢/報表體驗。共同資料湖不代表互相繞過權限:資料湖、工作區與 BI 都要維持一致的資料分類與最小權限。

反過來,如果團隊沒有 Spark 資料工程需求,只需以 SQL 查詢資料湖與建置企業報表,就不必為了「看起來比較強」而增加 Databricks。服務越多,權限、網路端點、成本標籤與事故排查面就越大。先以存取模式與團隊能力選工具,才是降低爆炸半徑的作法。

4. Risk:分析架構最常見的三種失敗

把資料湖當成公開共享磁碟:所有人都能讀取 Bronze 層,等於把原始個資與交易資料擴散到不需要的人。修正方式是分層授權、建立資料目錄與只提供 Gold 資料集給一般報表角色。

把 serverless 當成無成本:serverless SQL 省掉預先配置,不代表掃描資料免費。未分割的原始檔、重複掃描與沒有查詢治理的儀表板,都可能讓小型試驗變成持續成本。修正方式是量測掃描量、整理資料格式、設定預算與把高頻穩定負載重新評估為適當的容量模型。

把 Notebook 當成祕密保管庫與正式發布管道:硬編碼金鑰一旦被複製、匯出或寫進執行記錄,就失去輪替與稽核能力。修正方式是以 Microsoft Entra ID 受控身分、最小 RBAC 與 Key Vault 管理祕密,並讓程式碼經版本控制與審查後再排程執行。

5. Blast Radius:資料、運算與身分各自要有護欄

分析平台的爆炸半徑至少有三層。資料層:錯誤 ETL 不應覆寫 Bronze 原始資料;以不可變原始層、版本化輸出與品質檢查來縮小範圍。運算層:實驗 Notebook 不應耗盡正式報表的資源;以工作負載隔離、容量限制、標籤與監控分開處理。身分層:一個廣泛的儲存體金鑰不應讓所有工作負載讀寫整座資料湖;以受控身分、範圍化角色與資料夾/資料集邊界授權。

復原也應演練:管線失敗後能否從原始資料重跑?Gold 指標若算錯,能否定位是哪一個版本、哪些報表受影響?區域或工作區不可用時,哪些報表可以延遲,哪些決策流程必須切換?這些問題把「能查詢」提升成可營運的資料產品。

5.5【延伸】網路、祕密與可觀測性:分析服務也要 Zero Trust

生產資料湖與分析工作區應評估 Private Endpoint、受控虛擬網路及私人 DNS,避免資料平面端點被無限制暴露在公網。網路隔離不能取代身分驗證;即使流量留在私網,也仍要以 Microsoft Entra ID、RBAC 與資料層授權限制誰能讀寫。

祕密則應放入 Key Vault 或以受控身分避免長期祕密。最後,為資料管線建立日誌、失敗告警、掃描量/叢集使用量監控、成本標籤與預算,才能在錯誤擴散前看見它。安全、可靠性與成本不是資料工程完成後才補的三份文件,而是每次讀寫路徑的一部分。

📖 AZ-900 核心名詞解釋與速查

  1. Azure Synapse Analytics

    • 定義:整合資料整合、企業資料倉儲與巨量資料分析能力的 Azure 分析服務。
    • AWS 對照:依工作負載可聯想 Amazon Redshift 或 Amazon Athena;不能直接視為完全相同的單一服務。
    • 考點:舊稱 Azure SQL Data Warehouse;看到資料倉儲/分析工作區要優先想到 Synapse。
  2. Azure Databricks

    • 定義:Azure 上以 Apache Spark 為核心、支援 Notebook 協作的資料工程與分析平台。
    • AWS 對照:Amazon EMR 是 Spark 叢集運算的近似對照,但操作體驗與治理整合不同。
    • 考點:Spark、資料工程、Notebook 與大規模轉換是典型線索。
  3. Data lake(資料湖)

    • 定義:以低成本、可擴展方式保存大量原始與處理後資料的儲存架構;本篇以 ADLS Gen2 作為 Azure 範例。
    • AWS 對照:Amazon S3 常作為 AWS 資料湖的儲存底座。
    • 考點:資料湖是儲存與治理基礎,不等於資料倉儲或單一分析引擎。
  4. OLAP(線上分析處理)

    • 定義:針對大量歷史資料進行彙總、查詢與報表分析的工作負載型態。
    • 考點:OLAP 與需要低延遲單筆交易的 OLTP 應分離,避免彼此爭用資源。

🎮 Part 2:1 小時實戰情境 Role-Play

🏛️ 情境背景:Titan 科技的營運資料湖

Titan 的遊戲營運團隊每天收集數十億筆事件資料,資料工程師要以 Python/Spark 清洗多來源資料並建立特徵資料集;分析師則要用 SQL 產生長期營運與營收報表。CTO 要求原始資料留在 ADLS Gen2、不要讓報表查詢直接壓到線上交易庫,且所有服務帳號都必須避免使用硬編碼祕密。

🧩 決策任務

哪個方案最符合需求?

  • A:讓 Power BI 與所有分析師直接對正式 Cosmos DB 做全表掃描,省掉資料管線。
  • B:以 ADLS Gen2 作資料湖,讓 Azure Databricks 負責 Spark 資料工程,並以 Synapse SQL 能力提供資料倉儲/分析查詢;使用受控身分與最小權限。
  • C:在單一 VM 手動安裝 Spark 與 SQL Server,將所有資料、Notebook 和帳密放在同一台主機。
  • D:只建立 Azure Queue Storage,因為佇列可以取代資料湖、Spark 與資料倉儲。

🎯 解題拆解與解析

✅ 正解:B。 題目同時包含資料湖、Spark 資料工程、企業 SQL 分析、交易與分析隔離,以及避免祕密硬編碼。Databricks 對應 Spark/Notebook 協作;Synapse 對應資料倉儲與分析 SQL;ADLS Gen2 是兩者可共用的資料湖底座。受控身分與最小權限將資料存取權限限制在必要範圍。

❌ A 的陷阱:Cosmos DB 適合線上操作型請求;把長期大範圍分析直接壓在交易資料庫,會讓報表與玩家請求互相爭用資源,也擴大資料讀取與成本風險。

❌ C 的陷阱:自架 VM 把修補、叢集擴縮、高可用、祕密保管與網路防護全交回 Titan,且所有風險集中在單一故障點,不符合受控分析平台與防禦性設計需求。

❌ D 的陷阱:Queue Storage 解決的是非同步訊息傳遞,不是可儲存與查詢巨量分析資料、執行 Spark 轉換或建置資料倉儲的服務。

🧩【延伸任務】資料品質出錯時,先停止哪一層?

活動首日,Titan 發現 Gold 層的「付費玩家數」比財務系統多 18%。CTO 要求立刻處理,但不能讓工程師直接刪除原始日誌。最安全的 Runbook 是:先暫停下游報表刷新並標示資料新鮮度;保留 Bronze 原始資料;找出造成重複計數的 Silver/Gold 轉換版本;在隔離環境修正、以可追溯的輸入重新計算,最後再發布新的 Gold 版本。這個順序避免把可稽核的原始事實與錯誤的衍生結果一起刪掉。

錯誤決策 為何危險 防禦性替代方案
直接覆寫原始資料 失去重跑、稽核與比對依據 保留 Bronze,重建衍生層
讓每位分析師修正式 Notebook 權限與結果不可控 以版本控制、審查與排程作業發布
關閉所有資料湖存取 使必要營運也中斷 暫停受影響 Gold 資料集,保留最小必要路徑
忽略已發出的報表 錯誤決策持續擴散 標記受影響儀表板、通知資料擁有者並重算

🎯 Part 3:AZ-900 精選高頻真題解析

驗證狀態:真題 1 與真題 3 已經 Microsoft Learn 官方文件逐選項交叉驗證確認,但 ExamTopics 討論頁無法定位到與 Synapse / serverless SQL 完全對應的 AZ-900 專屬題號(列表頁已無法存取),因此未附社群 tally。真題 2 已同時完成 ExamTopics 社群驗證(Q212,Playwright 讀取)與 Microsoft Learn 交叉驗證。

📝 AZ-900 高頻真題 1:資料倉儲的現行名稱(ExamTopics 更名考點改編)

舊系統文件要求 Titan 將「Azure SQL Data Warehouse」遷移到現行 Azure 分析服務。這個舊名稱現在對應哪個服務?

  • A:Azure Synapse Analytics
  • B:Azure Cosmos DB
  • C:Azure Queue Storage
  • D:Azure Virtual Network
  • 正確答案A. Azure Synapse Analytics
  • 關鍵字識別:「SQL Data Warehouse」+「現行名稱」。這是典型的服務更名辨識題。
  • 陷阱識破(逐選項查證)
    • B. Azure Cosmos DB:全球分散式 NoSQL 資料庫,提供多模型 API 與個位數毫秒延遲,與企業資料倉儲分析無關。
    • C. Azure Queue Storage:非同步訊息佇列服務,用於應用元件解耦,不具備任何資料倉儲或分析查詢能力。
    • D. Azure Virtual Network:網路隔離與路由邊界,是基礎設施層服務,不是資料服務。
  • 官方文件原文:Microsoft Learn 頁面標題即為 "What is dedicated SQL pool (formerly SQL DW)?",並明確陳述:「Dedicated SQL (Structured Query Language) pool (formerly SQL DW) refers to the enterprise data warehousing features that are available in Azure Synapse Analytics.」
  • ⚠️ 補充說明:更精確的對應是 Azure SQL Data Warehouse → Azure Synapse Analytics 中的 dedicated SQL pool。Synapse Analytics 是更廣泛的整合式分析工作區,包含 serverless SQL pool、Spark pool、Data Explorer 與 Pipelines。
  • 來源與驗證:改寫自 ExamTopics 社群回報的資料服務更名高頻考點;並經 Microsoft Learn:What is dedicated SQL pool (formerly SQL DW)?Azure Synapse Analytics 概觀 交叉驗證確認。

📝 AZ-900 高頻真題 2:Spark 資料工程服務辨識(ExamTopics Q212 改編)

以下敘述是否正確?「Azure Databricks 是以 Apache Spark 為基礎的分析服務。」

  • A:不需修改(敘述正確)
  • B:應改為 Azure Data Factory
  • C:應改為 Azure DevOps
  • D:應改為 Azure HDInsight
  • 正確答案A. 不需修改
  • 關鍵字識別:「Azure Databricks」+「Apache Spark」+「分析服務」。三者的搭配完全正確。
  • 陷阱識破(逐選項查證)
    • B. Azure Data Factory:是完全託管的無伺服器資料整合服務(ETL/ELT 管線),不是以 Apache Spark 為核心的分析平台。雖然 ADF 可呼叫 Spark 做轉換,但它本身的定位是資料管線編排。
    • C. Azure DevOps:是軟體開發團隊的整合工具平台(規劃、程式碼、建置、測試、部署),與 Apache Spark 或資料分析毫無關係。
    • D. Azure HDInsight:是支援多種開源框架(Hadoop、Spark、Hive、Kafka、HBase)的企業級分析服務。它不是專門以 Apache Spark 為基礎——Spark 只是它支援的眾多框架之一。
  • 官方文件原文:Microsoft Learn 描述 Azure Databricks 為「a unified, open analytics platform for building, deploying, sharing, and maintaining enterprise-grade data, analytics, and AI solutions at scale」,並明確列出 Apache Spark 為 Databricks 員工原創的核心開源專案之一。Azure 產品頁面更直接稱其為「Apache Spark-based data and AI platform」。
  • 來源與驗證:改寫自 ExamTopics 社群回報的高頻考點(原題 Q212,HOTSPOT 題型,社群一致認定「Azure Databricks」為正確答案,最高讚留言 14 upvotes 明確支持;經 Playwright read_discussion.py 讀取討論頁確認);並經 Microsoft Learn:Azure Databricks 是什麼?Azure Databricks 產品頁 交叉驗證確認。

📝 AZ-900 高頻真題 3:資料湖上的 SQL 查詢

Titan 已把歷史事件資料存放在 ADLS Gen2。分析師想依需要用 SQL 查詢資料湖,並避免預先維護持續運行的專用資料倉儲資源。Synapse 中最貼近的能力是?

  • A:serverless SQL pool
  • B:Azure Virtual Machine Scale Sets
  • C:Azure Key Vault
  • D:Azure Bastion
  • 正確答案A. serverless SQL pool
  • 關鍵字識別:「依需要」+「SQL 查詢資料湖」+「避免預先維護專用資源」。三個關鍵字直接指向 serverless SQL pool 的設計目標。
  • 陷阱識破(逐選項查證)
    • B. Azure Virtual Machine Scale Sets:是 IaaS 運算擴縮機制,用於自動調整 VM 數量以因應負載,與資料湖 SQL 查詢無關。
    • C. Azure Key Vault:是集中祕密、金鑰與憑證管理服務,用於保護敏感資訊,不是查詢引擎。
    • D. Azure Bastion:是安全遠端連線服務,讓使用者透過瀏覽器以 RDP/SSH 連入 VM,與資料湖分析無關。
  • 官方文件原文:Microsoft Learn 的 Synapse SQL 架構頁面明確區分兩種模型——「For predictable performance and cost, create dedicated SQL pools」vs.「For unplanned or bursty workloads, use the always-available, serverless SQL endpoint.」。並確認:「Serverless SQL pool allows you to query your data lake files, while dedicated SQL pool allows you to query and ingest data from your data lake files.」
  • 來源與驗證:改寫自 ExamTopics 社群回報的 Synapse SQL 選型高頻考點;並經 Microsoft Learn:Synapse SQL 架構Synapse Analytics 概觀 交叉驗證確認。

📝 AZ-900 真題 4:巨量冷資料的分析選型(2020 gratisexam 題庫 Q26 改編)

⚠️ 來源說明:本題改寫自 2020 年 gratisexam AZ-900 題庫 Q26,屬歷史題庫層,已與 Microsoft Learn 交叉驗證;舊題所稱 SQL Data Warehouse 已按現行名稱 Azure Synapse Analytics 修正,不將舊稱當作現行服務。

Titan 要保留 20 TB 的歷史遊戲日誌,平時少量存取、每月由 Power BI 與分析團隊做大範圍彙總。哪個架構方向最合理?

  • A:將所有日誌常駐於 Cosmos DB,讓 OLTP 資料庫直接處理分析。
  • B:以 ADLS Gen2 保存分析資料,並以 Synapse Analytics 執行資料倉儲或資料湖分析。
  • C:改用 Azure DNS,因為 DNS 可管理大量記錄。
  • D:只用 Azure Queue Storage,因為佇列可以做報表彙總。

答案:B。 巨量、低頻存取、彙總與 BI 是分析型訊號;資料湖加上 Synapse 比把分析壓在 OLTP NoSQL 資料庫更合適。C 與 D 分別是名稱解析與訊息傳遞服務,沒有分析查詢能力。

📝 AZ-900 真題 5:分析資料的祕密與權限邊界(2020 gratisexam 題庫 Q56 題型延伸)

⚠️ 來源說明:本題依 2020 年 gratisexam AZ-900 題庫 Q56 的「服務邊界與最小權限」題型改寫,屬歷史題庫層;本題採用現行 Microsoft Entra ID、受控身分與 Key Vault 的防禦性設計,不使用已過期名稱。

Titan 的 Databricks Notebook 必須存取資料湖與第三方資料來源。哪項做法最符合防禦性設計?

  • A:將高權限存取金鑰直接寫入 Notebook,方便每位工程師複製。
  • B:為工作負載授與所需的最小權限,並以受控身分或 Key Vault 管理祕密。
  • C:把所有分析師加為訂用帳戶 Owner,避免權限問題。
  • D:將資料湖公開到網際網路,讓 Spark 更容易讀取。

答案:B。 最小權限、受控身分與集中祕密管理能縮小外洩與誤操作的爆炸半徑。A 容易讓祕密流入程式碼與記錄;C 過度授權;D 擴大網路曝露面。

📝【加強】真題 6:Synapse 與 Databricks 的工作負載邊界

Titan 的分析師只需要用 SQL 定期查詢 ADLS Gen2 中已整理的 Parquet 資料;資料工程團隊沒有 Spark Notebook 或機器學習的需求。哪個判斷最精確?

  • A:先評估 Synapse 的 SQL 分析能力;不應只因為是大數據就強制導入 Databricks。
  • B:一定要使用 Cosmos DB,因為它是所有 Azure 資料服務的共同底座。
  • C:Azure Databricks 是檔案共用服務,Synapse 才是網路服務。
  • D:必須把資料搬回交易資料庫才能使用 SQL。

答案:A。 題幹的主要工作是資料湖 SQL 分析,沒有出現 Spark、Notebook 或資料工程協作需求。Synapse SQL 是直接的候選;Databricks 不是錯誤服務,但不應在需求不足時增加一個工作區、權限與成本面。

📝【加強】真題 7:serverless 的成本陷阱

Titan 建立 serverless SQL 查詢原始資料湖。某份儀表板每五分鐘掃描全部未分割的歷史檔案。哪項改善最符合成本與效能治理?

  • A:因為是 serverless,所以不必監控掃描量或資料格式。
  • B:量測掃描量,將資料整理成適當格式與分割,並評估查詢頻率與預算。
  • C:把所有分析師設為訂用帳戶 Owner,讓查詢更快。
  • D:把存取金鑰貼到報表說明頁,讓每個人直接下載原始資料。

答案:B。 serverless 指的是不預先管理專用運算資源,不是資料掃描與查詢沒有成本。整理資料與治理查詢可降低不必要掃描;C、D 則擴大權限與祕密外洩風險。

📝【加強】真題 8:資料湖存取的最小權限

Titan 的轉換工作只需要將 Silver 資料寫入指定路徑,不需要讀取所有 HR 原始檔。哪種設計最符合最小權限?

  • A:授與工作負載整個訂用帳戶 Owner。
  • B:以受控身分授與該工作負載必要的資料路徑與作業權限。
  • C:將 storage account key 硬編碼到所有 Notebook。
  • D:將資料湖設為匿名公開讀寫。

答案:B。 受控身分配合範圍化的角色授權能限制憑證與存取範圍。A 是過度授權;C 讓祕密散落;D 完全破壞資料平面邊界。

💡 AWS SAA-C03 / CLF-C02 概念補充與雙雲考點連動演練

架構師收斂心法

先問「資料要被誰、以什麼方式消費」:交易服務需要低延遲單筆操作,不要被 OLAP 掃描拖慢;分析師需要 SQL 與受治理的資料集,優先看 Synapse;資料工程師需要分散式 Spark 與 Notebook 協作,評估 Databricks。接著才問運算要常駐還是按查詢、資料是否已整理、以及權限是否能限制到資料集與工作負載。

┌────────────────────────────────────────────────────┐
│ 先判斷資料消費模式                                  │
├───────────────┬────────────────┬───────────────────┤
│ 即時交易      │ SQL/BI 分析   │ Spark 資料工程    │
│ SQL/Cosmos DB│ Synapse        │ Azure Databricks  │
├───────────────┴────────────────┴───────────────────┤
│ 共同底座:ADLS Gen2、Entra ID、最小權限、監控       │
└────────────────────────────────────────────────────┘

經典情境:資料湖上的雙引擎協作

Titan 已在 ADLS Gen2 保存原始事件資料。資料工程師需要以 Spark 做去重與 sessionization,分析師需要每天早上用 SQL 檢視已核准的營運指標。Azure 可讓 Databricks 產出已清理的資料層,再由 Synapse SQL/Power BI 消費;AWS 方向上可由 EMR/Glue 做 Spark 轉換,再由 Athena 或 Redshift Spectrum 讀取 S3 資料。這是架構觀點的對照,不是可互換設定:每一邊都必須各自設計資料目錄、IAM/Entra 權限、網路端點與成本監控。

雙雲考場口訣

資料湖是底座,不是報表引擎
SQL 倉儲/資料湖分析:Synapse ↔ Redshift/Athena
Spark/Notebook 資料工程:Databricks ↔ EMR(方向性對照)
先分資料層,再分權限;先量測掃描,再談 serverless

📐 Part 4:以戰代訓課程對照

項目 內容
對應課程章節 本主題課程未收錄
官方考綱領域 Describe Azure Architecture & Services(占比 35–40%)
課程涵蓋範圍 本主題課程未收錄。
本文補充範圍 以 Microsoft Learn 補齊 Synapse 的資料倉儲/SQL 分析定位、Databricks 的 Apache Spark 資料工程定位、ADLS Gen2 資料湖分層,以及資料分析的最小權限與網路邊界;RPG 素材僅用於 Titan 情境與 AWS 對照。

⚠️ 考綱變更:2020 題庫的 Azure SQL Data Warehouse 已更名為 Azure Synapse Analytics;本文一律採用現行名稱。

🚀 今日總結與明日預告

🏆 今日 3 點速記

  1. OLTP 處理即時單筆交易;OLAP 處理大量歷史資料的彙總與洞察,兩者應避免互相壓垮。
  2. 看到企業資料倉儲、資料湖 SQL 與整合式分析工作區,優先判斷 Azure Synapse Analytics;看到 Apache Spark、Notebook 與資料工程協作,優先判斷 Azure Databricks。
  3. 資料湖是分析底座而非無治理的資料堆;使用受控身分、最小權限、Key Vault、私人網路與成本監控來縮小資料外洩與超支的爆炸半徑。

🔮 明日預告:Day 21 Phase 3 階段總複習

明天 Titan 科技將進入資料金庫的階段驗收:Blob、檔案與磁碟、資料遷移、關聯式資料庫、Cosmos DB 與大數據分析服務會放進同一張選型地圖,透過 15 題情境題檢驗你是否能在壓力下選出正確服務。


上一篇
使用gemini 準備AZ-900 Day19 Azure Cosmos DB : 全球分散式 NoSQL 的一致性取捨
系列文
使用gemini 準備 az-90020
圖片
  熱門推薦
圖片
{{ item.channelVendor }} | {{ item.webinarstarted }} |
{{ formatDate(item.duration) }}
直播中

尚未有邦友留言

立即登入留言