Amazon QuickSight で高チャートを使い多地域可視化
AWS Machine Learning Blog は、Amazon QuickSight のネイティブ機能では表現が困難な複雑な多地域・多キャリアの競合分析において、Highcharts カスタムビジュアライゼーションを統合することで、より高度で統一的なダッシュボード構築を実現する方法を解説している。
キーポイント
ネイティブ機能の限界と課題
地域ごとの競合構造の違い(キャリア数や市場密度)により、Amazon QuickSight の標準チャートでは多層的な問いに同時に答えることが困難で、代替案はメンテナンスコストを増大させる。
Highcharts カスタムビジュアライゼーションの導入
QuickSight に Highcharts を埋め込むことで、Tilemap による地域支配力の可視化や、Polar Line Chart(レーダーチャート)による多キャリア・多カテゴリの包括的なプロファイル作成が可能になる。
高度な分析チャートの活用
Bullet Charts で目標達成率を色分けで示す、Dumbbell Charts で市場間のばらつきを可視化するなど、QuickSight 単体では実装できない詳細な分析チャートを容易に利用できるようになる。
データ主権と統合の実現
AWS リージョン間でデータを分散したまま(データ主権を維持しつつ)、QuickSight のフェデレーテッドデータセット機能を通じて統一的な視覚化を実現する構成が提案されている。
重要な引用
The challenge you face is not only geographic but also structural.
Amazon Quick Sight can't encode which carrier or combination of carriers dominates each geographic tile.
By embedding Highcharts as a custom visual in Quick Sight, you address these limitations with a single, unified JSON configuration.
影響分析・編集コメントを表示
影響分析
この記事は、BI ツールの標準機能の限界を超え、特定の複雑なビジネス要件(多地域・多キャリア分析)に対して、既存の強力なライブラリを組み合わせることで解決策を提供する実用的なアプローチを示しています。特に、データガバナンス(主権維持)と高度な可視化の両立を求める組織にとって、QuickSight の拡張可能性を具体的に示す重要なケーススタディとなります。
編集コメント
QuickSight の標準機能の限界を補完する具体的な手法として、Highcharts の導入事例が非常に参考になります。特にデータ主権を維持しながら複雑な可視化を実現する構成は、大規模組織における BI 戦略において重要な示唆を含んでいます。
キャリアのパフォーマンスデータが複数のリージョンにまたがる場合、ダッシュボードは単一のビュー内で根本的に異なる競争構造を統合する必要があります。例えば米国では、49 の州と数百の都市圏全体で 3 つのキャリア(Carrier 1~3)を比較します。一方、英国では別の国レベルの地域セットにおいて 4 つのキャリア(Carrier 4~7)を比較することになります。ここで直面する課題は地理的な違いだけでなく、構造そのものの違いにもあります。
これらのリージョン間には、キャリア数や市場の密度、地域の詳細度合いに大きな差があります。そのため、単一の標準的なチャートタイプでは、複雑なストーリー全体を伝えることはできません。誰がリードしているのか、どの程度の差があるのか、一貫性はあるのか、そして改善傾向にあるのかあるいは悪化しているのかといった、多層的な問いに同時に答えられる可視化が必要です。
これらの問いを大規模に分析しようとした場合、ネイティブの Amazon Quick 可視化機能だけでは不十分であることがわかります。Amazon QuickSight では、どのキャリア、あるいはどのキャリアの組み合わせが各地理的なタイルで支配しているかを表現できません。また、7 つのパフォーマンスカテゴリにわたって 7 つすべてのキャリアを同時にプロファイルするレーダーチャートを描画することもできません。さらに、データの微妙なニュアンスを浮き彫りにするために必要なブレットチャートやダンベルチャートといったチャートタイプも生成することができないのです。
ネイティブの QuickSight でこれらの可視化を再現しようとすると、結局は地域ごとに別ダッシュボードを作成するか、差分を示すために積み上げ棒グラフで代用したり、キャリアの最良市場と最悪市場の間の変動を隠してしまう平均値を使ったりすることになります。こうした妥協点はメンテナンス負荷を増大させ、ステークホルダーが確信を持ってデータ駆動型の意思決定を行うために必要な洞察を曖昧にしてしまいます。
Highcharts を QuickSight のカスタムビジュアルとして埋め込むことで、単一の統一された JSON 設定でこれらの制限に対処できます。タイルマップチャートタイプと colorAxis.dataClasses を活用すれば、複数の地域にわたるキャリアの支配力(複数キャリアによる同率首位を含む)を一つの可視化で表現でき、地域のフィルタリング用の凡例トグルも備えています。また、極座標線グラフは、多様なキャリアとカテゴリ間での比較を可能にする真の多角形レーダーチャートを描画し、競合環境の全体像を把握できます。
地理的な表示やレーダーチャートに加え、Highcharts は分析に必要な多彩なチャートタイプも提供します。100 点満点を目標としたパフォーマンスを色分けされたゾーンで示すバレットチャート、キャリアの最良市場と最悪の都市圏市場との差を明確にするダミーベルチャート、期間ごとのスコア差分を分解して示すウォーターフォールチャートなど、用途に応じて使い分けることができます。
本記事では、Amazon QuickSight のネイティブチャート機能の制限を克服し、Highcharts カスタムビジュアライゼーションを活用してマルチリージョン対応のキャリアパフォーマンスダッシュボードを構築する方法をご紹介します。AWS リージョン間でデータ主権を維持しつつ、QuickSight のフェデレーテッドデータセット機能を用いて統合された可視化を実現する手法を解説します。本ソリューションには、実運用レベルで即座に使用可能なチャート設定が含まれており、セキュリティ、コンプライアンス、スケーラビリティの要件にも対応しています。
ソリューション概要
アーキテクチャの選定は、データ居住性の要件、レイテンシの要求、およびコンプライアンス義務といった要素によって決定されます。これらに対応するアーキテクチャパターンとして、以下の 2 つが挙げられます。
オプション 1: 単一 AWS リージョン
このアプローチでは、US や UK など複数の国のキャリアデータを 1 つの AWS リージョン(例:us-east-1 または eu-west-1)に保存します。国を論理的に識別するための「country」カラムを持つ、単一の QuickSight SPICE (Super-fast, Parallel, In-memory Calculation Engine) データセットを利用します。
このアーキテクチャはデータセットと SPICE の更新処理が 1 つで済むため管理が容易ですが、潜在的な欠点もあります。例えば米国リージョンを選択した場合、データは物理的に UK 国外に保存されることになります。データセットに個人識別情報(PII)が含まれる場合、これは英国の一般データ保護規則(GDPR)やデータ居住性ルールと抵触する可能性があります。
オプション 2:国ごとに AWS リージョンを分ける
データ主権の法律により、特定のデータ(特に個人情報、ネットワーク利用パターン、機密性の高いパフォーマンス指標など)を、収集された法域内で物理的に保存・処理する必要がある場合があります。例えば、英国の通信事業者データを扱う場合、EU 離脱後も維持されている UK GDPR は、英国消費者や英国ネットワークのパフォーマンスに関する個人および運用上の機密データが、英国または欧州経済領域(EEA)内に設置されたインフラ上に存在することを義務付けています。
つまり、米国の通信事業者データは米国リージョン(us-east-1 や us-west-2 など)、英国のデータは EU に準拠したリージョンにそれぞれ配置し、生データを境界を越えて混在させることはできません。両方のデータセットは主権が独立しています。これらの要件に違反しない限り、米国のデータと英国のデータを 1 つの Amazon Simple Storage Service(Amazon S3)バケットに統合することは不可能です。
AWS リージョンごとにデータが分散していても、生データを国境を越えて移動させることなく、Quick のアーキテクチャを活用すれば、単一の統合された Highcharts ダッシュボードを構築できます。重要なのは、データの結合をストレージ層ではなく Quick レベルでフェデレーションすることです。具体的には、米国(us-east-1)の集計済みデータセットと英国(eu-west-2)の集計済みデータセットをそれぞれリージョン固有の SPICE インスタンスに取り込みます。その後、Amazon Quick のデータ準備機能によって、データ準備時にこれらが単一の論理データセットとして結合されます。
こうして生成された統合データセットは、複数のリージョンにまたわるキャリアを同時に可視化する一連の Highcharts 設定(タイルマップ、レーダーチャート、バレットチャート、ダンベルチャート、ウォーターフォールチャート、ストリームグラフ)へと供給されます。生データの主権情報は、それぞれのホームリージョンから流出することはありません。フェデレーションされるのは、各リージョン内で計算された RootScore、Rank、ColorValue といった集計指標のみです。これにより、データ居住要件を満たしつつ、ダッシュボードに必要な統合的な可視化を可能にしています。
オプション 1 は多くのシナリオに適していますが、本稿ではより複雑な要件に対応する必要があるため、通信事業者が頻繁に直面する課題を解決できるオプション 2 の手順について詳しく解説します。
ソリューションアーキテクチャ
以下の図は、データ主権を維持しつつ複数のリージョンにまたがるキャリアのパフォーマンスデータを統合する仕組みを示しています。米国向けには us-east-1 リージョンに、英国向けには eu-west-2 リージョンにそれぞれ独立したデータパイプラインが存在し、各リージョン内でパフォーマンス指標を集約します。
QuickSight の「Data Prep」機能により、これらの集約済みデータセットはクエリ実行時に統合され、論理的な単一のデータセットとして扱われます。この統一されたデータセットが Highcharts カスタムビジュアルに供給されるため、生データを国境を越えて転送することなく、複数のリージョンにまたがるダッシュボードの構築が可能になります。

事前準備
作業を開始する前に、以下の環境と知識を整えてください。
- QuickSight にアクセスできる AWS アカウント
- 複数の AWS リージョンに設定されたデータソース
- QuickSight のダッシュボード作成およびデータ連携に関する基本的な理解
- Highcharts の JSON 設定ファイルの読み書きができること
- 複数リージョンにまたがるデータソースへのアクセス権限を持つ IAM ポリシー
データ準備
複数のリージョンからデータを統合するには、QuickSight 上でデータソースを適切に設定する必要があります。この手順により、リージョンを超えたデータ取得を実現する接続経路が確立されます。
Quick コンソール左側のナビゲーションパネルから「データセット」を選択します。
「データソースの作成」をクリックして、最初のリージョン用データソースを追加しましょう。データソースの種類(Amazon S3、Amazon RDS など)またはご自身で選択した他のデータソースを指定します。
最初のリージョンの接続情報として、エンドポイント URL や認証資格情報を設定してください。
「接続を検証」をクリックし、データのアクセスが可能か確認します。
接続検証に成功したら、「データソースの作成」を実行します。
分析対象とする他の AWS リージョンについても、手順 2〜6 を繰り返し実行してください。
各リージョンのデータソース設定が完了したら、これらを統合して単一のデータセットとして結合できます。
データ集約と変換の設定
データソースへの接続が完了したら、複数のリージョンからデータを結合するための集約ルールを設定します。この手順により、データのフォーマットを統一し、一貫性のある分析結果を得ることができます。
QuickSight の「データセット」セクションから、新しいデータセットを作成します。
前節で登録済みのデータソースとそのスキーマのいずれかを選択し、「編集/プレビュー」をクリックします。
データ準備画面では「データの追加」を選び、2 つ目のリージョン用データソースをリストから選択してください。その後、「結合(縦方向に積み上げ)」を選択して、両方のデータセットを統合します。
この際、列名が一致しているか確認し、必要に応じて名前を変更しましょう。また、データの発生源を識別するための計算フィールド「Region」を追加します(例:IF(条件, 'US', 'UK'))。結合後のデータセットをプレビューして、行数が正しいか検証してください。
リージョン間でデータ形式に差異がある場合は、計算フィールドを追加して正規化を行います。例えば、タイムスタンプを共通のタイムゾーンに変換する処理などです。
設定が完了したら「保存して公開」を実行し、集約されたデータセットを公開します。公開後は、「スケジュール更新」でリフレッシュスケジュールを設定し、データを最新の状態に保ちましょう。ビジネス要件に応じて、時間単位・日次・週次のいずれかの頻度を設定できます。
これで、集約されたデータセットを用いて Highcharts の可視化を作成できるようになります。
Highcharts 可視化用のリージョン横断分析データをセットアップする方法については、Amazon Redshift、Amazon S3、Amazon QuickSight を活用した多地域分析ソリューションの構築 のチュートリアルをご覧ください。
データセットの概要
本チュートリアルで使用したキャリアパフォーマンスデータセットには、英国と米国の 2 カ国にまたがる 7 つのキャリアに関する記録が含まれています。このデータセットでは、「通話」「データ通信」「総合評価」「信頼性」「応答速度」「テキストメッセージ」「動画配信」という 7 つのパフォーマンスカテゴリについて、2024 年後半(2H)と 2025 年前半(1H)の 2 つの測定期間における順位と 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 | 通話 | USA | 1.0 | 99.53 | 2024-2H |
| Carrier1 | 通話 | USA | 1.0 | 98.08 | 2024-2H |
| Carrier1 | 通話 | USA | 1.0 | 82.18 | 2024-2H |
| Carrier1 | 通話 | USA | 1.0 | 99.99 | 2024-2H |
| Carrier1 | 通話 | 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}})を使用して、データがどのように動的に流れてくるかを示しています。
すべてのコードブロックには、以下の 2 つの要素が含まれています。
- フィールドウェルマッピング:どのデータセットフィールド(carrier, category, rootscore, rank, product_period, country)を各フィールドウェルに割り当てるかを指定します。これにより、データセットからチャートへデータがどのように流れるかが定義されます。
- JSON テンプレート:QuickSight のフィールドウェルエンジンがレンダリング時に解決するプレースホルダートークン(例:{{carrier_list}} や {{avg_rootscore_period_1}})を使用します。各チャートの後に続くマッピング凡例には、それぞれのプレースホルダーが何に置き換わるかが記載されています。
Highcharts の実装ウォークスルー
このセクションでは、QuickSight のネイティブなビジュアライゼーション機能だけでは対応できない「マルチリージョンのキャリア分析」要件を満たすための Highcharts による可視化を実践的に解説します。コードの詳細に入る前に、以下の要件表を確認してください。この表は各可視化に対応する Highcharts のチャートタイプをマッピングし、それぞれのビジュアルが達成すべき目的と、なぜ QuickSight の標準的なチャートでは同じ結果が出せないのかを説明しています。
続く各チャートの例には、QuickSight の Highcharts カスタムビジュアライザーに直接コピー&ペーストして使用できる完全な JSON 設定が含まれています。また、期待される出力を示すレンダリング済みプレビューも用意されています。すべての設定は、キャリア名やリージョン値をハードコードするのではなく、QuickSight のフィールドウェルと動的にバインドされているため、JSON を書き換えることなく、ご自身のデータセットに合わせてこれらの例をそのまま流用できます。必要なのは、ご自身のキャリアとリージョン情報を反映させたルックアップテーブルのみです。
要件一覧
| # | ビジュアル名 | Highcharts タイプ | 要件の概要 | なぜ Highcharts か |
|---|
| 1 | US キャリアパフォーマンス・レーダー | polar + line | 通話、データ、総合評価、信頼性、対応速度、テキスト、動画の 7 つのカテゴリにおける各 US キャリアの平均スコアを示すスパイダー(多角形)チャート。 | QuickSight には極座標やレーダーチャートの標準タイプが存在しません。また、ネイティブ機能ではポリゴングリッドを用いたマルチ軸・マルチキャリアの重ね合わせ表示は作成できません。
- ターゲットバブルを備えた重なり合う棒グラフ
column
7 つのキャリアすべてについて、2024 年下期と 2025 年上期の RootScore を一つのビューで比較します。2024 年下期を表す棒は幅広の実線で描画され、2025 年上期の棒は半透明のオーバーレイとしてその上に重なります。y=100 の位置に配置されたオレンジ色のバブルが目標値を示し、破線の赤い参照線によってベンチマークが強調されます。
QuickSight には同様のチャートタイプが存在しません。積み上げ棒グラフなどの代替案を使うと、差分のストーリー性が完全に失われてしまいます。
- ウィンシェア×ボリュームを表す変幅グラフ(Variwide Chart)
variwide
各キャリアの勝率を棒の高さで表現し、そのカテゴリでの 1 位獲得総数を棒の幅に割り当てます。これにより、2 つの主要なパフォーマンス指標を一つの棒に統合できます。
QuickSight のすべての棒グラフは等しい固定幅しか持たないため、市場ボリュームといった第 2 の次元を棒の幅で表現することはできません。
- ウィンの流れを表すストリームグラフ(Streamgraph)
streamgraph
各キャリアごとの流れる帯の幅が、期間を通じた総合 1 位獲得数を示し、競争力の動向を可視化します。
QuickSight にはストリームグラフというチャートタイプが存在しません。有機的に流れる比例配分の形状は、Highcharts にのみ固有の機能です。
- 市場シェアを可視化する六角形タイルマップ
六角形のグリッドにおいて、各タイルは獲得した市場の約 1% を表します。各通信キャリアがそのシェアに応じてグリッドを埋め尽くすことで、競争集中度を直感的に把握できるビジュアルが完成します。
Amazon QuickSight に標準で用意されている地図視覚化機能(塗り分けマップやポイントマップなど)は、地理的な形状や座標を描画するものであり、抽象的な六角形グリッドには対応していません。ネイティブの「タイルマップ」や「ヘックスビンチャート」という種類も存在しません。
- 米国と英国を統合したパックドバブル(詰まった円)チャート
すべての通信キャリアを単一のパックドバブル構成にまとめ、各キャリアごとに明確なクラスタ領域を設けます。
しかし、パックドバブルのチャートタイプは用意されていません。また、1 つのビジュアル内で複数のキャリアを別々のクラスタ領域としてグループ化することもできません。
Highcharts カスタム視覚化の作成
各ビジュアルを作成するには、以下の手順に従ってください。
- 「Analyses」に移動し、対象となる分析を開きます。
- Highcharts 視覚化を追加します。
- 分析を事前に用意したデータセットにマッピングします。
- フォームパネル内の JSON 設定を更新します。
- データセットのフィールドを、JSON で参照されているフィールドウェルにマッピングします。
- チャートが正しくレンダリングされるか確認します。
チャート 1:2024 年下半期と 2025 年上半期の平均全体 RootScore の比較
以下のチャートは、7 つの通信キャリアすべてにおける、2024 年下半期(2H)と 2025 年上半期(1H)という 2 つの測定期間における平均全体 RootScore を比較したものです。各キャリアには 2 つの重なる棒グラフが表示されており、前期を示す幅広の実線バーと、後期を示す半透明のオーバーレイが配置されています。これにより、期間ごとの改善または悪化を即座に把握できます。
オレンジ色のバブルはスコア 100 の目標地点を示し、破線の赤い参照ラインがこのベンチマークを強調しています。Carriers 1~3 は一貫して 95 を上回るスコアを記録しており、100 に近づいていることが確認できます。
原文を表示
When your carrier performance data spans multiple regions, your dashboard must reconcile fundamentally different competitive structures within a single view. For example, in the US, you rank three carriers (Carrier 1–3) across 49 states and hundreds of metro markets. In the UK, you’re comparing four carriers (Carrier 4–7) across a separate set of national regions. The challenge you face is not only geographic but also structural.
The differences in carrier count, market density, and regional detail between these two geographies mean that no single out-of-the-box chart type can tell your full story. You need visualizations that answer layered questions simultaneously: who leads, by how much, how consistently, and whether they are improving or declining.
You will find that native Amazon Quick visualizations do not tell your full story when you try to answer these questions at scale. Amazon Quick Sight can’t encode which carrier or combination of carriers dominates each geographic tile. It can’t render a radar chart that profiles all seven carriers across seven performance categories simultaneously. And it can’t produce chart types such as bullet charts and dumbbell charts, which you need to surface the nuances in your data.
Every time you try to approximate these visuals in native Quick Sight, you end up building separate dashboards per Region, using stacked bar workarounds for deltas, or averaging metrics that mask volatility between a carrier’s best and worst markets. These compromises add maintenance overhead and obscure the insights your stakeholders need to make confident, data-driven decisions.
By embedding Highcharts as a custom visual in Quick Sight, you address these limitations with a single, unified JSON configuration. With its tilemap chart type and colorAxis.dataClasses, you can encode carrier dominance (including multi-carrier ties) across multiple regions in one visual, with legend toggles for region filtering. Its polar line chart renders a true polygon radar for multi-carrier, multi-category comparison, giving you the full competitive profile.
Beyond geographic and radar views, Highcharts unlocks the chart types your analysis demands. You can use bullet charts to show performance against a 100-point target with color-banded zones, dumbbell charts to expose the spread between a carrier’s best and worst metro market, and waterfall charts to break down period-over-period score deltas.
This post shows you how to build multi-Region carrier performance dashboards in Quick Sight using Highcharts custom visualizations to overcome native chart limitations. You will learn how to maintain data sovereignty across AWS Regions while creating unified visualizations through the Quick Sight federated dataset capability. The solution includes production-ready chart configurations and addresses security, compliance, and scalability requirements.
Solution overview
Your architecture depends on factors such as data residency requirements, latency needs, and compliance obligations. Two architectural patterns address this:
Option 1: Single AWS Region
With this approach, you store carrier data (for example, both US and UK) in one AWS Region (for example, us-east-1 or eu-west-1), using a single Quick Sight SPICE (Super-fast, Parallel, In-memory Calculation Engine) dataset with a country column to logically identify the data.
While this architecture is simpler for you to manage with one dataset and one SPICE refresh, it carries a potential drawback: if you choose a US-based Region, your data physically resides outside the UK, which may conflict with the UK General Data Protection Regulation (GDPR) or data residency rules if your dataset contains personally identifiable information (PII).
Option 2: Separate AWS Regions per country
Sometimes, data sovereignty laws require you to physically store and process certain categories of data (particularly data about individuals, network usage patterns, and commercially sensitive performance metrics) within the legal jurisdiction where you collected the data. For example, for UK carrier data, the UK GDPR (retained post-Brexit) mandates that personal and operationally sensitive data about UK consumers and UK network performance must reside on infrastructure located within the UK or the broader European Economic Area. This means that you must place US carrier data in a US AWS Region (for example, us-east-1 or us-west-2) and UK carrier data in an EU-adherent Region, with no co-mingling of raw data across those boundaries. The two datasets are sovereign. You can’t merge them into a single Amazon Simple Storage Service (Amazon S3) bucket without violating one or both jurisdictions’ requirements.
Despite the data residing in separate AWS Regions, you can build a single unified Highcharts dashboard using Quick architecture without moving raw data across borders. You use federated dataset joins at the Quick layer rather than at the storage layer: you ingest the aggregated US dataset (in us-east-1) and the aggregated UK dataset (in eu-west-2) into their respective regional SPICE instances, and the Data Prep capability of Amazon Quick appends them at data prep time into a single logical dataset. The resulting unified dataset feeds a single set of Highcharts configurations (tilemap, radar, bullet, dumbbell, waterfall, streamgraph) that render multi-Region carriers together. No raw sovereign data leaves its home Region. You federate only the aggregated RootScore, Rank, and ColorValue metrics computed within each Region into the unified view, satisfying data residency requirements while still enabling the combined visualizations your dashboard requires.
While Option 1 suits most scenarios, the post walks you through Option 2 because it addresses the more complex requirements that telecommunications companies frequently encounter.
Solution architecture
The following diagram shows how the multi-Region architecture federates carrier performance data while maintaining data sovereignty. Two regional data pipelines, one in us-east-1 for US carrier data and one in eu-west-2 for UK carrier data independently aggregate performance metrics within their respective Regions. At the Quick layer, the Data Prep capability federates these aggregated datasets at query time into a single logical dataset. This unified dataset feeds the Highcharts custom visuals, enabling a combined multi-Region dashboard without moving raw data across borders

Prerequisites
Before you begin, make sure that you have the following:
- An AWS account with access to Quick.
- Data sources configured across multiple AWS Regions.
- Basic familiarity with Quick Sight dashboards and data integration.
- Understanding of JSON configuration for Highcharts.
- AWS Identity and Access Management (IAM) permissions to access data sources across regions.
Data preparation
To aggregate data from multiple regions, configure your data sources in Quick. This step helps you establish the connections that enable cross-Region data retrieval.
- In the Quick console, navigate to Datasets from the left navigation panel.
- Choose Create data source to begin adding your first regional data source.
- Select your data source type (such as Amazon S3, Amazon Relational Database Service (Amazon RDS), or another data source of your choice).
- Enter the connection details for your first region, including endpoint URLs and authentication credentials.
- Choose Validate connection to verify data accessibility.
- After validating the connection, choose Create data source.
- Repeat steps 2–6 for each additional AWS Region that you want to include in your analysis.
After configuring your regional data sources, you can proceed to combine them into a unified dataset.
Configure data aggregation and transformation
After connecting your data sources, set up aggregation rules to combine data from multiple regions. This step helps maintain consistent data formatting and produces a unified analysis.
- Choose Datasets under Quick.
- Choose Create dataset.
- Select one of the data sources you registered in the previous section and its associated schema.
- Choose Edit/Preview data.
- In the Data Preparation interface, choose Add data.
- Select your second regional data source from the list.
- Choose Append to stack the datasets vertically.
- Verify that column names match between datasets (rename if needed).
- Add a calculated field named Region to identify data origin (for example, IF(condition, 'US', 'UK')).
- Preview the combined dataset to verify row counts.
- Add calculated fields to normalize data formats across regions if needed. For example, convert timestamps to a common time zone.
- Choose Save & publish to publish your aggregated dataset.
- After you publish the dataset, configure the refresh schedule for this dataset under Schedule refresh to keep your aggregated data current.
Set the frequency based on your business requirements (hourly, daily, or weekly).
You can now create Highcharts visualizations using your aggregate dataset.
To learn how to set up cross-region analytics data for your Highcharts visualizations, see this walkthrough on building a multi-Region analytics solution.
Dataset overview
The carrier performance dataset used in this walkthrough contains records spanning seven carriers across two countries (UK, USA). The dataset includes seven performance categories (Call, Data, Overall, Reliability, Responsiveness, Text, Video), with rankings and RootScore metrics across two measurement periods (2024-2H, 2025-1H).
The dataset schema consists of the following attributes:
Field
Description
carrier
Carrier ID (for example, Carrier1 through Carrier7)
category
Performance category (Call, Data, Overall, Reliability, Responsiveness, Text, Video)
country
Country of measurement (USA, UK)
rank
Competitive ranking (1–4) within that market and category
rootscore
Performance score (0–100 scale)
product_period
Measurement period (2024-2H, 2025-1H)
The following table shows a representative sample from the dataset:
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
Understanding dynamic field well bindings
The code blocks in this post show how data flows dynamically from the dataset by using placeholder tokens ({{token}}) that map to specific dataset queries.
Each code block includes two components:
- The field well mapping specifies which dataset fields (carrier, category, rootscore, rank, product_period, country) map to which field wells. These define how data flows from the dataset into the chart.
- The JSON template uses placeholder tokens (for example, {{carrier_list}} and {{avg_rootscore_period_1}}) that the Quick Sight field well engine resolves at render time. The mapping legend that follows each chart documents what each placeholder resolves to.
Highcharts implementation walkthrough
In this section, you walk through Highcharts visualizations that address the multi-Region carrier analysis requirements that native Quick Sight visuals can’t fulfill on their own. Before diving into the code, review the following requirements table. It maps each visualization to its Highcharts chart type, summarizes what the visual must accomplish, and explains why you cannot achieve the same result with built-in Quick Sight chart types. Each chart that follows includes a complete JSON configuration you can copy directly into your Quick Sight Highcharts custom visual, along with a rendered preview showing the expected output. Because every configuration binds dynamically to the Quick Sight field wells rather than hardcoding carrier names or region values, you can adapt these examples to your own dataset without rewriting the JSON. Only your lookup table needs to reflect your carriers and regions.
Requirements
#
Visual name
Highcharts type
Requirement summary
Why Highcharts
1
US Carrier Performance Radar
polar + line
Spider/polygon chart showing each US carrier’s average score across seven categories (Call, Data, Overall, Reliability, Responsiveness, Text, Video).
No polar or radar chart type in Quick Sight. You can’t create a multi-axis, multi-carrier overlay with a polygon grid natively.
2
Overlapping Column Chart with Target Bubbles
column
Compare 2024-2H and 2025-1H RootScore for all seven carriers in a single view. The 2024-2H column renders a wider solid bar. The 2025-1H column overlaps it as a semitransparent overlay. Orange bubbles at y=100 mark the target, and a dashed red reference line reinforces the benchmark.
No similar chart type in Quick Sight. If you use stacked bar workarounds, you lose the delta narrative entirely.
3
Variwide Chart: Win Share × Volume
variwide
Carrier1 win % as bar height. Total #1 wins in that category as bar width, thus two key performance indicators in one bar.
All Quick Sight bars have equal fixed width. You can’t encode a second dimension (market volume) into bar width.
4
Streamgraph: Win Flow
streamgraph
Flowing stream width per carrier showing #1 Overall win count across periods and reveals competitive momentum.
No streamgraph type in Quick Sight. The organic flowing proportional share shape is exclusive to Highcharts.
5
Hexagonal Tilemap for Market Share
tilemap
A hexagonal grid where each tile represents ~1% of markets won. Carriers fill the grid proportionally to their share, creating an immediately intuitive visual of competitive concentration.
Quick Sight built-in map visuals (filled maps, point maps) render geographic shapes or coordinates, not abstract hex grids. There’s no native “tilemap” or hex-bin chart type.
6
Combined US + UK Packed Bubble
packedbubble
All carriers in a single packed bubble configuration with distinct cluster regions per carrier.
No packed bubble type is available. You can’t group carriers into distinct cluster regions within one visual.
Create a Highcharts custom visual
To build each visualization, follow these steps:
- Navigate to Analyses and open your analysis.
- Add a Highcharts visual.
- Map the analysis to your prepared dataset.
- Update the JSON configuration in the format panel.
- Map your dataset fields to the field wells referenced in the JSON.
- Verify that the chart renders correctly.
Chart 1: Average overall RootScore, 2024-2H compared to 2025-1H
The following chart compares the average overall RootScore for all seven carriers across two measurement periods (2024-2H and 2025-1H). Each carrier displays two overlapping columns, a wider solid bar for the earlier period and a semitransparent overlay for the later period so you can immediately see period-over-period improvement or decline. Orange bubbles positioned at 100 mark the target score, and a dashed red reference line reinforces this benchmark. You can observe that Carriers 1–3 consistently score above 95 and approach the 10
関連記事
今日のまとめ
AI日報で今日の重要ニュースをまとめ読み