SEIRO IWAMOTOFUKUOKA 33.59°N / REMOTEREV 2026.08
SHEET FIG.2 — /work/product-feature-dev
CASE STUDY § 01-2

研究 PoC の製品統合 — ナレッジグラフ機能の本番リリース

2026 / FDE — 研究 PoC を製品へ統合し、FE / BE / インフラの全層で本番リリースまで完走 / Python · TypeScript · Nuxt · Vue · Django REST Framework · Knowledge Graph · GraphRAG · Neo4j · AWS Bedrock · EKS · Terraform
FE · BE · インフラ
SCOPE — 全層を一人で
研究成果 → 製品 → 本番
INTEGRATION — PoC で終わらせない
メジャーリリース完走
DELIVERY

課題

自分だけが読むコードではなく、既存製品の本体に手を入れる開発。レビューを通り、他のメンバーの実装と噛み合う形にしながら、リリースまで運ぶ必要がある。加えてグラフを扱う機能は、データが増えるほど「描画はできるが読み取れない」状態に陥りやすい。ノードとエッジを並べるだけでは、そこに何があるのかが分からない。

設計判断

  • 研究フェーズで有効性が確認されていた解析手法を、製品のデータ量と応答速度の要求に耐える形へ移植した。検証環境で動くことと、顧客が日常的に使う画面で動くことの間には隔たりがある
  • 可視化は力学モデルによる配置を採り、解析の結果と重ねて読めるようにした
  • グラフの計算は重く、素直に書くとイベントループを塞ぐ。非同期の扱いを見直し、キャッシュの容量設計まで含めて応答性を確保した
  • 実データを投入した状態で性能を測り、メモリ上限に起因して処理が落ちる原因を特定してから設計に反映した
  • データモデルの変更は中間テーブルの再設計を伴うため、マイグレーションを段階に分け、途中で止まっても戻せる形にした
  • 機能単位でフロントエンド・バックエンド・インフラを一人で通し、層をまたぐ待ち時間をなくした

進め方

  • 研究フェーズで検証された解析手法 (コミュニティ検出 Louvain、構造的空隙の分析、次元圧縮 UMAP、密度マップ) を、製品のデータ量と応答速度の要求に合わせて移植した
  • 可視化はノード間の関係を力学モデルで配置する方式を採り、解析結果と重ねて見られるようにした
  • 重い計算がイベントループを塞ぐ問題を解消し、キャッシュの容量設計まで含めて応答性を確保した
  • 実データを投入した状態で性能を測り、メモリ上限に起因する停止の原因を特定して設計に反映した
  • ストリーミング応答は基盤側の権限設定とパラメータ管理まで含めて有効化した
  • データモデルの変更は中間テーブルの再設計を伴うため、マイグレーションを段階に分けて適用した
  • 機能単位で全ての層を一人で通し、層をまたぐ待ち時間をなくした。実装からレビュー対応、リリースまでを日から週の単位で回している