當您的運營商績效資料跨越多個區域時,儀表板必須在一個檢視中協調根本不同的競爭結構。例如,在美國,您需要在49個州和數百個都市市場中對三個運營商(運營商1-3)進行排名。在英國,您需要在不同的國家區域中比較四個運營商(運營商4-7)。挑戰不僅是地理上的,更是結構上的。
運營商數量、市場密度和區域細節的差異意味著沒有單一的開箱即用圖表型別可以講述完整的故事。您需要能夠同時回答分層問題的視覺化:誰領先、領先多少、一致性如何,以及他們是改善還是下降。
您會發現,當您嘗試大規模回答這些問題時,原生Amazon QuickSight視覺化無法講述完整的故事。QuickSight無法編碼哪個運營商或運營商組合主導每個地理圖塊。它無法生成同時展示所有七個運營商在七個績效類別中的雷達圖。也無法生成子彈圖、啞鈴圖等圖表型別,而這些正是您所需的資料細節。
每次您嘗試在原生QuickSight中近似這些視覺化時,最終都會按區域構建單獨的儀表板,使用堆疊條形圖作為差值變通辦法,或者平均指標,從而掩蓋運營商最佳和最差市場之間的波動。這些妥協增加了維護開銷,並模糊了利益相關者做出自信、資料驅動決策所需的洞察。
透過將Highcharts作為自定義視覺化嵌入QuickSight,您可以用一個統一的JSON配置解決這些限制。利用其瓦片地圖圖表型別和colorAxis.dataClasses,您可以在一個視覺化中編碼跨多個區域的運營商主導地位(包括多運營商平局),並透過圖例切換進行區域過濾。其極線圖可生成真正的多邊形雷達,用於多運營商、多類別比較,提供完整的競爭概況。
除了地理和雷達檢視,Highcharts還提供了您的分析所需的其他圖表型別。您可以使用子彈圖顯示相對於100分目標的效能,並帶有彩色分割槽;使用啞鈴圖展示運營商最佳和最差都市市場之間的差距;使用瀑布圖分解逐期分數變化。
本文向您展示如何使用Highcharts自定義視覺化在QuickSight中構建多區域運營商績效儀表板,克服原生圖表限制。您將學習如何透過QuickSight聯合資料集能力維護跨AWS區域的資料主權,同時建立統一的視覺化。該解決方案包括生產就緒的圖表配置,並解決安全性、合規性和可擴充套件性要求。
解決方案概述
您的架構取決於資料駐留要求、延遲需求和合規義務等因素。兩種架構模式可解決此問題:
選項1:單一AWS區域
使用此方法,您將運營商資料(例如美國資料和英國資料)儲存在一個AWS區域(例如us-east-1或eu-west-1)中,使用單個QuickSight SPICE資料集,並透過國家/地區列進行邏輯標識。
雖然此架構管理起來更簡單(一個資料集和一個SPICE重新整理),但存在潛在缺陷:如果您選擇基於美國的區域,您的資料物理上位於英國之外,如果資料集包含個人身份資訊,則可能違反英國GDPR或資料駐留規則。
選項2:按國家劃分的獨立AWS區域
有時,資料主權法要求您在收集資料的法律管轄區內物理儲存和處理某些類別的資料(特別是關於個人、網路使用模式和商業敏感績效指標的資料)。例如,對於英國運營商資料,英國GDPR規定有關英國消費者和英國網路效能的個人和操作敏感資料必須位於英國或更廣泛的歐洲經濟區內的基礎設施上。這意味著您必須將美國運營商資料放置在美國AWS區域(例如us-east-1或us-west-2),將英國運營商資料放置在歐盟區域,且原始資料不能跨邊界混用。這兩個資料集是主權的。您不能將它們合併到單個Amazon S3儲存桶中而不違反一個或兩個司法管轄區的規定。
儘管資料位於不同的AWS區域,但您可以使用QuickSight架構構建統一的高程圖表儀表板,而無需跨邊界移動原始資料。您可以在QuickSight層使用聯合資料集連線,而不是在儲存層:將聚合的美國資料集(在us-east-1中)和聚合的英國資料集(在eu-west-2中)攝取到各自的區域SPICE例項中,然後Amazon QuickSight的資料準備功能在資料準備時將它們附加到一個邏輯資料集中。生成的統一資料集饋送一組Highcharts配置(瓦片地圖、雷達、子彈圖、啞鈴圖、瀑布圖、流圖),這些配置一起渲染多區域運營商。沒有原始主權資料離開其所屬區域。您僅將每個區域內計算的聚合RootScore、排名和ColorValue指標聯合到統一檢視中,既滿足資料駐留要求,又實現了儀表板所需的組合視覺化。
雖然選項1適用於大多數場景,但本文詳細介紹了選項2,因為它解決了電信公司經常遇到的更復雜的需求。
解決方案架構
下圖展示了多區域架構如何聯合運營商績效資料同時維護資料主權。兩個區域資料管道(us-east-1用於美國運營商資料,eu-west-2用於英國運營商資料)在各自區域內獨立聚合績效指標。在QuickSight層,資料準備功能在查詢時將這些聚合資料集聯合成一個邏輯資料集。該統一資料集饋送Highcharts自定義視覺化,從而實現組合的多區域儀表板,而無需跨邊界移動原始資料。
前提條件
開始之前,請確保您具備以下條件:
- 可訪問QuickSight的AWS賬戶。
- 跨多個AWS區域配置的資料來源。
- 對QuickSight儀表板和資料整合有基本瞭解。
- 理解Highcharts的JSON配置。
- 具有跨區域訪問資料來源的AWS Identity and Access Management(IAM)許可權。
資料準備
要聚合來自多個區域的資料,請在QuickSight中配置資料來源。此步驟有助於建立連線,實現跨區域資料檢索。
- 在QuickSight控制台中,從左側導航面板轉到“資料集”。
- 選擇“建立資料來源”以新增第一個區域資料來源。
- 選擇資料來源型別(例如Amazon S3、Amazon RDS或其他資料來源)。
- 輸入第一個區域的連線詳細資訊,包括端點URL和身份驗證憑據。
- 選擇“驗證連線”以確認資料可訪問。
- 驗證連線後,選擇“建立資料來源”。
- 對每個要包含在分析中的其他AWS區域重複步驟2-6。
配置區域資料來源後,可以繼續將它們組合成統一資料集。
配置資料聚合和轉換
連線資料來源後,設定聚合規則以組合來自多個區域的資料。此步驟有助於保持資料格式一致,並生成統一分析。
- 在QuickSight中選擇“資料集”。
- 選擇“建立資料集”。
- 選擇上一步中註冊的資料來源之一及其關聯模式。
- 選擇“編輯/預覽資料”。
- 在資料準備介面中,選擇“新增資料”。
- 從列表中選擇第二個區域資料來源。
- 選擇“追加”以垂直堆疊資料集。
- 驗證資料集之間的列名稱是否匹配(如有必要,重新命名)。
- 新增名為“Region”的計算欄位以標識資料來源(例如,IF(condition, 'US', 'UK'))。
- 預覽組合資料集以驗證行計數。
- 根據需要新增計算欄位以標準化跨區域的資料格式,例如將時間戳轉換為公共時區。
- 選擇“儲存併發布”以釋出聚合資料集。
- 釋出資料集後,在此資料集下的“計劃重新整理”中配置重新整理計劃,以保持聚合資料最新。
- 根據業務需求設定頻率(每小時、每天或每週)。
現在,您可以使用聚合資料集建立Highcharts視覺化。
要了解如何為Highcharts視覺化設定跨區域分析資料,請參閱關於構建多區域分析解決方案的演練。
資料集概述
本演練中使用的運營商效能資料集包含跨兩個國家(英國、美國)的七個運營商的記錄。資料集包括七個績效類別(通話、資料、整體、可靠性、響應性、簡訊、影片),以及兩個測量期間(2024年下半年、2025年上半年)的排名和RootScore指標。
資料集模式包括以下屬性:
| 欄位 | 描述 | |------|------| | carrier | 運營商ID(例如Carrier1至Carrier7) | | category | 績效類別(通話、資料、整體、可靠性、響應性、簡訊、影片) | | country | 測量國家(美國、英國) | | rank | 該市場和類別內的競爭排名(1-4) | | rootscore | 績效得分(0-100分制) | | product_period | 測量期間(2024-2H, 2025-1H) |
下表顯示了資料集的一個代表性樣本:
| carrier | category | country | rank | rootscore | product_period | |---------|----------|---------|------|-----------|----------------| | Carrier1 | Call | USA | 1.0 | 99.53 | 2024-2H | | Carrier1 | Call | USA | 1.0 | 98.08 | 2024-2H | | Carrier1 | Call | USA | 1.0 | 82.18 | 2024-2H | | Carrier1 | Call | USA | 1.0 | 99.99 | 2024-2H | | Carrier1 | Call | USA | 1.0 | 98.79 | 2024-2H | | Carrier1 | Call | USA | 1.0 | 98.37 | 2024-2H | | Carrier1 | Call | USA | 1.0 | 99.96 | 2024-2H | | Carrier1 | Call | USA | 1.0 | 99.12 | 2024-2H |
理解動態欄位井繫結
本文中的程式碼塊展示了資料如何使用佔位符標記({{token}})從資料集中動態流動,這些標記對映到特定的資料集查詢。
每個程式碼塊包含兩個元件:
- 欄位井對映指定哪些資料集欄位(carrier、category、rootscore、rank、product_period、country)對映到哪些欄位井。這些定義了資料如何從資料集流入圖表。
- JSON模板使用佔位符標記(例如{{carrier_list}}和{{avg_rootscore_period_1}}),QuickSight欄位井引擎在渲染時解析這些標記。每個圖表後的對映圖例記錄了每個佔位符解析的內容。
Highcharts實現演練
在本節中,您將逐步瞭解解決多區域運營商分析需求的Highcharts視覺化,這些需求是原生QuickSight視覺化無法獨立滿足的。在深入程式碼之前,請檢視以下需求表。它將每個視覺化對映到其Highcharts圖表型別,總結視覺化必須完成的內容,並解釋為何無法使用內建QuickSight圖表型別實現相同結果。每個後續圖表都包含一個完整的JSON配置,您可以直接複製到QuickSight Highcharts自定義視覺化中,以及顯示預期輸出的渲染預覽。由於每個配置都動態繫結到QuickSight欄位井,而不是硬編碼運營商名稱或區域值,因此您可以將這些示例適應到自己的資料集中。