RADAR: Catch gray failures with anomaly detection
https://www.databricks.com/blog/radar-catch-gray-failures-anomaly-detection📌 監控全綠、客戶已在流失:Databricks如何抓「灰色故障」
TL;DR:Databricks用異常偵測系統RADAR,把灰色故障的發現時間縮短95%,且精準率超過90%。
儀表板上的 CPU、延遲、伺服器狀態全部亮綠燈,系統看起來完美無缺。但有那麼一段時間,一部分客戶正悄悄流失,沒有任何警報被觸發,直到有人開始接到客訴電話才驚覺出事——這正是「灰色故障」(gray failure)最陰險的地方。
🤔 健康檢查說沒事,客戶說不是這樣
Databricks 在部落格中將這種現象比喻為「牆後的煙」:從外面看房子好好的,裡面的損害卻在擴散,等得越久,波及範圍就越大。微軟論文將這個現象稱為「differential observability」(差異化可觀測性):你的故障偵測器沒發現問題,但使用者確實感受到了。多數團隊的應對方式,是等客戶回報再處理,但客訴管道有三個先天限制,這意味著光靠工單無法即時掌握灰色故障的全貌。
🧩 RADAR:把「大量使用者同時踩到同一個坑」變成可偵測訊號
RADAR(Reliability Anomaly Detection, Alerting, and Root-cause analysis)鎖定的核心訊號是「使用者錯誤」。以 Databricks 自身場景為例:某個區域的一群使用者突然無法建立特定類型的叢集,每個請求都回傳 INVALID_ARGUMENT——一個表面上是「使用者自己的問題」的錯誤。但當大量使用者在同一時間點集體踩到同一個「你的錯」錯誤時,這就不再是使用者的問題,而是系統的問題。RADAR 把這個直覺變成一套四階段流程:蒐集與儲存資料、偵測異常、告警與去重、視覺化呈現根因。
在 Databricks 平臺上,這四個階段分別對應到:Delta table(蒐集與儲存)、Job(偵測異常)、工單系統(告警去重)、Dashboard(視覺化)。整套系統透過 Declarative Asset Bundle(DAB)以單一單元部署。
📊 內部實測:發現時間縮短95%,精準率逾90%
Databricks 表示,在導入 RADAR 之前,團隊依賴客戶工單發現這類事件,往往要拖上數天。導入之後,事件發現時間縮短了 95%,精準率超過 90%,且整個偵測過程不需要人工介入去辨識模式。
🧩 不限於使用者錯誤:任何「可能悄悄出錯的數字」都適用
Databricks 強調,RADAR 這套模式並不綁定於特定指標——他們拿使用者錯誤當範例,但同樣的偵測邏輯可以套用在任何可能無聲劣化的量化訊號上。為了降低導入門檻,Databricks 把整套內部系統濃縮成一份 GitHub 上的 markdown scaffold(腳手架文件),像食譜一樣把 RADAR 的每個環節對應到具體的 Databricks 元件。使用者只需要提供自己的指標、這份 scaffold,以及一段簡短的 prompt,交給 AI agent,就能在 Databricks 上直接建出一套完整的 RADAR 系統。
🎯 實務啟示:別讓客戶變成你的監控系統
這篇文章對 SRE 與平臺工程師最有價值的一點,不是 RADAR 本身的演算法細節(文中並未提供),而是它提出的框架:與其為每個新指標手動搭建告警管線,不如把「蒐集、偵測、告警去重、視覺化」四階段抽象成可重複套用的樣板,再用 AI agent 加速落地。對已經在 Databricks 生態圈的團隊而言,這份公開的 scaffold 提供了一條現成的起點。
🔗 來源
- 標題:RADAR: Catch gray failures with anomaly detection
- 作者/機構:Databricks
- 連結:https://www.databricks.com/blog/radar-catch-gray-failures-anomaly-detection
#AnomalyDetection #SRE #Observability #Databricks #Reliability #IncidentResponse #DataEngineering #PlatformEngineering #AIAgent #DeltaLake
原始資料 Databricks · 收集於 2026-09-19
摘要原文
Some of the most damaging outages are the ones your monitoring never flags: a slice of your customers quietly fails while every health check still reads normal. These "gray failures" leak users and revenue for hours before anyone connects the dots. This post is about catching them early with anomaly detection — how we do it at Databricks with a system called RADAR, and how you can build the same thing for whatever metric matters most to your business. It's written for the people who own service reliability: SREs, platform and data engineers, on-call responders, and the engineering leaders they answer to. Picture a normal Wednesday. Keeping a customer-facing service reliable is your job, and every dashboard on your wall is green — CPU healthy, latency fine, servers up, database connected. By every signal your team watches, the system looks perfect. For nearly seven hours, your monitoring insisted everything was fine while customers walked and revenue leaked. That Wednesday is a textbook gray failure. On the surface everything looks healthy; underneath, one specific piece has quietly stopped working — and it hurts customers without ever tripping an alert. Two things make gray failures so sneaky: Think of it as smoke behind the wall. From the outside the house looks fine, but inside the damage is spreading — and the longer you wait, the bigger the blast radius. Researchers have a name for the underlying problem, too: Microsoft’s Gray Failure: The Achilles’ Heel of Cloud-Scale Systems calls it differential observability — your failure detectors don’t notice a problem even while your users clearly do. Most teams handle gray failures exactly the way that Wednesday played out: they wait for customers to tell them. Customer reports matter — they’re real human pain — but your customers shouldn’t be your monitoring system. Leaning on reports alone has three problems: The fix isn’t to stop reading tickets — keep doing that. It’s to add automatic detection that runs all the time and catches what people miss. Concretely, you want something that fires the moment a lot more customers than usual start hitting the same issue at the same time. That’s the idea behind RADAR — Reliability Anomaly Detection, Alerting, and Root-cause analysis. We built it at Databricks to catch gray failures in minutes instead of hours. The name fits: when visibility is low, you don’t wait until something hits you — you scan for weak signals early. Here’s how we point it at one especially useful signal: user errors. A gray failure often shows up as a sudden spike in errors that look like the user’s fault. Picture a bunch of users in one region who suddenly can’t spin up a certain type of cluster. Each request fails with INVALID_ARGUMENT - an error that is politely saying, “this one’s on you.” But when many users hit the same “your fault” error at the same moment, it stops being their fault. It’s ours. That spike is exactly the pattern RADAR is built to catch. RADAR turns that instinct into a pipeline with four stages: Running RADAR on ourselves changed the shape of these incidents. Before, we waited on customer tickets to discover such incidents, leading to days of delay. With RADAR, we achieved a 95% reduction in incident-discovery time , at over 90% precision , with no human needed to spot the pattern. As a result, we are able to keep the blast radius of gray failures contained. Here’s the part that matters most for you: RADAR doesn’t care what the metric is. We happen to point it at user errors, but the same pattern works anywhere a number can quietly go wrong: It’s the same pattern under different settings. Anywhere you have something that could quietly go wrong, RADAR applies. The best news: every piece you need is already on Databricks. Map the four stages to the platform and it looks like this: And the whole thing deploys as a single unit through a Declarative Asset Bundle (DAB) . Wiring all those parts together by hand is the annoying bit — so we removed it. We distilled the entire internal RADAR system into a single scaffold: one markdown file that works like a recipe, mapping each part of RADAR to a specific Databricks component (collect and store → a Delta table; detect the anomaly → a job; alert and dedupe → a ticket; visualize → a dashboard). Then comes the payoff. You bring your own metric — wherever your signal lives — and hand the metric, the scaffold, and a short prompt to an AI agent. It builds the whole RADAR system for you, live on Databricks. You can follow the Github instructions on how to build one from a single prompt. Get the RADAR scaffold on GitHub Because the best outcome isn’t a faster response to angry customers — it’s that your customers never have to discover your incidents for you. Subscribe to our blog and get the latest posts delivered to your inbox.
由 claude-code/sonnet 自動生成