クラウドプラットフォームの革新的なサービスが、従来のアプリ開発の常識を覆しつつある。面倒な作業から解放され、本質的な価値創造に貢献できる開発環境とはどのようなものなのだろうか。
2024年8月1日から2日にかけてパシフィコ横浜で開催された技術カンファレンス「Google Cloud Next Tokyo ’24」において、Google Cloud専業インテグレーターであるG-genの執行役員CTO 杉村勇馬氏と開発部エンジニアリング室 第1開発グループの大澤有輝氏は、「アプリエンジニアとインフラエンジニア、それぞれから見るGoogle Cloud」と題した講演を行った。
架空の生成AIチャットボット開発を例にクラウド利用のメリットを考察
本セッションでは、下記のようなシステム構成図で表される架空の生成AIチャットボット開発を例に、従来のオンプレミス環境でのフルスクラッチ開発とGoogle Cloudのマネージドサービスを比較しながら、クラウドの利点について議論された。
下記では、各領域での違いについてそれぞれ見ていきたい。
1. 認証・認可
大澤氏は、アプリエンジニアの立場から、オンプレミス環境でのSpring Securityフレームワークを使用した認証システムの実装について触れ、その高い学習コストや運用の難しさを指摘した。
「Spring Securityは、各種セッション情報の管理、認可ルールの実装など非常に強力なツールですが、学習コストが高く、メンテナンスできる人材が少ないのが課題でした」(大澤氏)
これに対し、杉村氏はGoogle CloudのIdentity-Aware Proxy(IAP)を紹介した。
「IAPを使えば、Googleアカウントでの認証を簡単にアプリケーションに組み込むことができます。さらに、Identity and Access Management(IAM)を組み合わせることで、たとえば、特定のユーザーやグループに対して、特定のリソースへのアクセスだけを許可するといったカスタム認可の実装も可能です。また、Google Workspaceと連携すれば、特定のメーリングリストに所属している人だけがアクセスできるといった柔軟な制御も容易にできます」(杉村氏)
2. フロントエンド・バックエンド開発とCI/CD
オンプレミス環境での開発について、大澤氏は「パフォーマンスチューニングがハードウェア性能に縛られてしまいます。特定の繁忙期にだけリソースを増強したいという要望があっても、ハードウェアの制約から難しく、アプリケーション側でのチューニングに頼らざるを得なかったです」とアプリエンジニアとしての自身の経験を振り返った。
一方、Google Cloudの利点について杉村氏は「クラウドならリソースのスケールが簡単」と語る。ただし、“札束で殴る”ように無制限にスケールアップすればよいというわけではない。杉村氏は「コスト面を考慮すると、依然としてパフォーマンスの良いコーディングは重要です」と指摘した。
CI/CDに関しては、大澤氏が「Jenkinsは便利ですが、プラグインの管理や更新による影響など、運用負荷が高かったです」と述べた。これに対し「Cloud Buildを使えば、GitHubとの連携やデプロイまでの一連の流れを自動化できます」と杉村氏。ただし、「CI/CDの仕組みを本質的に理解して設計する重要性は変わりません」とも補足した。
3. データベース
データベース運用について大澤氏は「オンプレミスでは、パフォーマンスチューニングや、バックアップ、パッチ適用など、細かな運用タスクに時間を取られていました」と振り返った。
杉村氏はGoogle Cloudのマネージドデータベースサービスについて「Cloud SQLやAlloyDB for PostgreSQLなどを使えば、これらの運用負荷を大幅に軽減できます。特にAlloyDBは、Googleが”魔改造”したPostgreSQLで、トランザクション処理で最大4倍、分析処理で最大100倍の性能向上が見込めます」と語った。
4. ロギングとモニタリング
ロギングについて「オンプレミスでは、ログファイルの管理やアーカイブ処理を自作のスクリプトで行っていました」とする大澤氏に対し、杉村氏は「Cloud Loggingは、Google Cloudのサービス全般からログを自動的に収集します。BigQueryと連携して高度な分析も可能です」と紹介した。
モニタリングに関しては、杉村氏が「Cloud Monitoringにより、CPUやメモリ使用率などのメトリクスを自動収集し、ダッシュボード表示やアラート設定が簡単にできます」と説明した。
5. 機械学習モデル
機械学習環境について大澤氏は「オンプレミスでの環境構築は、ハードウェアの確保から始まり、非常に高いハードルがあります」と印象を述べた。
杉村氏は「Vertex AIやAutoMLを使えば、高度な専門知識がなくても機械学習モデルの開発や運用が可能」と説明した。さらに「Cloud Vision APIやCloud Translation API、最新のGemini APIなど、既存のAIモデルを簡単に利用できるのも大きな利点です」と付け加えた。
事例として、G-genの顧客対応窓口でのVertex AI Search活用が紹介された。顧客からの問い合わせを受けると、AIがGoogleのドキュメントや過去の対応事例を参照し、適切な回答案を生成する。現在は、AIが直接顧客に回答するのではなく、関連するドキュメントや情報をSlack経由でオペレーターやエンジニアにサジェストする形で運用されている。杉村氏によると、このシステムの構築には1カ月もかからなかったという。
ユーザー体験向上やビジネス価値創出に注力できるように
まとめとして、杉村氏は「Google Cloudのマネージドサービスを活用することで、開発者は本質的なビジネス価値の創出に集中できます。ただし、すべてのケースでマネージドサービスが最適とは限りません。ケースに応じた適切な選択が重要です」と強調した。
大澤氏も「アプリ開発者の視点から見ても、Google Cloudは多くの面倒な作業から解放してくれます。これにより、ユーザー体験の向上により注力できるようになりました」と締めくくった。
Gemini for Google Workspaceの最新機能も紹介
G-genは本イベントでブース出展も行い、会場のEXPOエリアにて来場者との交流を深めた。ブースでは「FUSION」をテーマに、Google Cloudや生成AIの活用事例、業界別ソリューションなどを紹介。さらに、ブース内でのミニセッションも開催し、より具体的なGoogle Cloud活用法を来場者に提案した。
Gemini for Google Workspaceの概要を解説するセッションでは、ドキュメントやGmail上で動作する「Help me write」をはじめとする「Help me」シリーズ、サイドパネルでの情報検索・要約機能などについて紹介された。これらは、2024年9月に日本語対応が予定されている。セッションでは、デモンストレーションも行われ、参加者にGemini for Google Workspaceの実用性と可能性を具体的に示していた。
G-genはこれからも、Google Cloud専業インテグレーターとして、企業のクラウド活用とデジタルトランスフォーメーションを支援し続ける。クラウドテクノロジーの急速な進化と、企業のデジタル化ニーズの高まりを背景に、G-genの役割はますます重要になっていくだろう。
関連リンク
[PR]提供:G-gen