1
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

はじめに

Claudeを搭載したClickHouse Agentsがパブリックベータになりました。

Claude を搭載した ClickHouse Agents が、パブリックベータとして公開されました。
「とりあえずサンプルデータを入れて、ノーコードで可視化まで試してみたい」——そんな声に応えてくれるのが、この ClickHouse Agents です。本記事では、新規サービスの作成 → サンプルデータの取り込み → ClickHouse Agents による自動ダッシュボード生成 という一連の流れを、実際の画面とクエリ例を交えながら紹介します。

題材は、世界中の携帯電話基地局の位置情報を集めた Cell Towers(OpenCelliD)データセット(約1.1GB / 4,300万行超)lat(緯度)・lon(経度)・radio(通信方式)といった地理+カテゴリ列を持つ、可視化映えするデータです。


全体の流れ

  1. ClickHouse Cloud で新規サービス geo-sample-demo を作成(AWS 東京リージョン)
  2. Data sources から Cell Towers サンプルデータdefault データベースに取り込み
  3. ClickHouse Agents を起動し、日本語で「ダッシュボードを作って」と指示
  4. 生成された HTML ダッシュボードで全体像を把握

clickhouse-geo-sample-demo.gif


1. 新規サービスの作成

ClickHouse Cloud のコンソール(https://cloud.clickhouse.com)にログインし、右上の 「+ New service」 をクリックします。

作成フォームでは以下を設定します。

項目 設定値
Database ClickHouse(リアルタイム分析向け)
Service name geo-sample-demo
Cloud provider AWS
Region Tokyo (ap-northeast-1)

clickhouse-geo-sample-demo-2 (dragged).tiff

入力したら 「Create service」 をクリック。数十秒〜数分でプロビジョニングが完了し、Overview 画面に遷移します。バージョンは執筆時点で 25.12 でした。

clickhouse-geo-sample-demo-4 (dragged).tiff


2. サンプルデータ(Cell Towers)の取り込み

  1. 左メニューの 「Data sources」 を開く。
  2. 「Add sample data」 カードを選択。
    clickhouse-geo-sample-demo-10 (dragged).tiff
  3. データセット一覧から 「Cell Towers (1.1 GB)」「Get started」 をクリック。
  4. Import Options で「Destination database」が default になっていることを確認(プレビューに radio / mcc / net / area / cell / unit / lon / lat / range / samples ... の列が表示されます)。
    clickhouse-geo-sample-demo-16 (dragged).tiff
  5. 「Import dataset」 をクリック。Data upload history に Cell Towers / Sample Data / success と表示されれば完了です。
    clickhouse-geo-sample-demo-17 (dragged).tiff

テーブルの中身を確認するクエリ例

SQL console から以下を実行すると、取り込み内容を確認できます。

-- 行数の確認
SELECT count() AS total_rows
FROM default.cell_towers;
-- → 約 43.28M 行

-- 先頭数行のサンプル
SELECT radio, mcc, net, lon, lat, range, samples
FROM default.cell_towers
LIMIT 5;

cell_towers テーブルの主なカラムは次のとおりです。

カラム 説明
radio Enum8 通信方式(GSM / UMTS / LTE / CDMA / NR)
mcc UInt16 Mobile Country Code(国コード)
net UInt16 Mobile Network Code(事業者)
lon / lat Float64 経度 / 緯度
range UInt32 推定カバー半径(m)
samples UInt32 観測サンプル数

3. ClickHouse Agents で可視化(ノーコード)

ここからが本題です。左サイドメニューの 「ClickHouse agents」(Beta) を開き、「Launch ClickHouse agents」 をクリックします。

clickhouse-geo-sample-demo-20 (dragged).tiff

初回起動時に 「Enable Generative AI features?(生成AI機能の有効化)」 という同意ダイアログが表示されるので、内容を確認のうえ 「I agree」 で進みます。すると ClickHouse Agent(LibreChat ベース・Powered by Claude) が新しいタブで開きます。

日本語で指示するだけ

実際に投入したプロンプト:

default データベースにある Cell Towers(基地局)データを解析して、インタラクティブな HTML ダッシュボードを作成してください。データには radio(通信方式タイプ: GSM/UMTS/LTE/CDMA など)、lat(緯度)、lon(経度)、mcc(国コード)、range、samples などの列が含まれています。要件は次の通りです:(1) geo 情報(lat/lon)を使い、世界地図上に基地局の密度を示すヒートマップを含めること。(2) radio タイプ別の基地局数の集計グラフ。(3) MCC(国)別の上位ランキング。(4) 全体の主要統計(総基地局数など)。1つの HTML ファイルにまとめて出力してください。

clickhouse-geo-sample-demo-26 (dragged).tiff

Agent はまずスキーマを確認(list_tables)し、続いて 複数の分析クエリを並行実行、最後に HTML ダッシュボードを自動生成してくれました。途中経過は「Ran list_tables」「Used 6 tools」「Writing command」のように可視化されます。

clickhouse-geo-sample-demo-30 (dragged).tiff

Agent が実際に投げていた分析クエリ(再現)

ノーコードとはいえ、裏側では素直な ClickHouse の集計クエリが走ります。代表的なものを再現すると以下のようになります。

-- ① radio タイプ別の基地局数
SELECT radio, count() AS cnt
FROM default.cell_towers
GROUP BY radio
ORDER BY cnt DESC;

-- ② mcc(国)別の上位ランキング Top 20
SELECT mcc, count() AS cnt
FROM default.cell_towers
GROUP BY mcc
ORDER BY cnt DESC
LIMIT 20;

-- ③ 登録年別 × radio タイプ別の推移
SELECT toYear(created) AS year, radio, count() AS cnt
FROM default.cell_towers
GROUP BY year, radio
ORDER BY year;

-- ④ radio タイプ別の平均カバー半径
SELECT radio, round(avg(range)) AS avg_range_m
FROM default.cell_towers
GROUP BY radio
ORDER BY avg_range_m DESC;

-- ⑤ 緯度経度を5°グリッドに丸めた地理的な密度(ヒートマップ用)
SELECT
    floor(lat / 5) * 5 AS lat_bin,
    floor(lon / 5) * 5 AS lon_bin,
    count() AS cnt
FROM default.cell_towers
GROUP BY lat_bin, lon_bin
ORDER BY cnt DESC;

4. 生成されたダッシュボードと分析結果

数分で 「Cell Towers Global Dashboard」 が完成しました。KPI カードと5種類のチャート(ドーナツ/ランキングバー/推移ライン/積み上げ横棒/地理ヒートマップ)で構成された、見栄えのするダッシュボードです。

clickhouse-geo-sample-demo-39 (dragged).tiff
clickhouse-geo-sample-demo-40 (dragged).tiff

主要な集計結果(KPI)は次のとおりでした。

指標
総基地局数 43.28M
UMTS (3G) 20.69M(最多 / 全体の約47.8%)
LTE (4G) 12.10M
GSM (2G) 9.93M
CDMA 556K
NR (5G) 867(新興)
平均カバー半径 2,437m
カバー国・地域数 224

ダッシュボードと Agent の解説から読み取れたインサイト:

  • 通信方式は UMTS(3G) が約47.8%で最多。次いで LTE(4G)、GSM(2G) と続き、NR(5G) はまだごく少数(データセットの収集時期による)。
  • 国別(MCC)では USA (310) が約5.02Mで断トツ1位。以降はドイツ・ロシア・フランス・ブラジルが続く。
  • 登録年別の推移を見ると 2015〜2016 年に UMTS・LTE が急増(2016年の UMTS は900万超)。その後はピークアウトし整理フェーズへ。
  • 平均カバー半径は世代で傾向が異なる:GSM (4,057m) > CDMA (3,101m) > LTE (2,383m) > UMTS (1,672m)。旧世代は広域カバー重視、新世代は高密度・短距離型へ進化していることが読み取れる。
  • 地理的分布は欧州中部・北米東海岸・東南アジアに高密度クラスターが見られる。

まとめ

  • ClickHouse Cloud なら、新規サービス作成からサンプルデータ取り込みまで数分。Cell Towers のような geo データもワンクリックで投入できる。
  • ClickHouse Agents(Beta)に日本語で指示するだけで、スキーマ確認 → 分析クエリ生成・実行 → HTML ダッシュボード生成までを自動でこなしてくれる。
  • ポイントは 「対象テーブルとカラムを明確に伝える」 こと。曖昧でも動くが、cell_towersradio/lat/lon/mcc を明示すると意図に沿った可視化になりやすい。

ノーコードでここまでできるので、「まずデータを触って全体像を掴む」用途に非常に向いています。ぜひ試してみてください。

1
0
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
1
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?