Gemini in BigQueryは本当に便利
以前の所長のBlogで書いた、「Google Analytics(GA4)のデータを、Gemini in BigQueryで、SQLを使わずに分析してみよう」で、本当にGoogle Analytics(GA4)のデータを、Google Cloud環境で、AIを使って、SQLを知らずに、分析できることがわかりました。
ちなみに、ここまで、BigQueryの説明も、Gemini in BigQueryについても、説明していなったので、少し説明をしておきますね。
BigQueryの特徴
高速なクエリ処理
BigQueryは、Googleが持つ世界クラスのデータ処理インフラストラクチャを活用し、数秒から数分で巨大なデータセットに対するクエリ処理を高速に行えます。
スケーラビリティ
BigQueryは自動的にリソースをスケールアップ・ダウンするため、データ量やクエリ処理の負荷に柔軟に対応できます。
サーバーレス
BigQueryはサーバー管理が不要なため、運用コストを削減できます。
安全で信頼性が高い
BigQueryは、Googleのセキュリティと信頼性のあるインフラストラクチャで保護されています。
多様なデータソースとの連携
BigQueryは、Google Cloud Storage、Cloud SQL、Cloud Spannerなど、様々なデータソースと連携できます。
BigQueryが有効な用途
BigQueryは、様々なデータ分析タスクに有効です。
ビジネスインテリジェンス
売上分析、顧客分析、マーケティングキャンペーン分析など、ビジネスの意思決定を支援する分析。
データサイエンス
機械学習モデルのトレーニングデータの準備、データ探索、分析など、データサイエンスのワークフローを加速する。
データマイニング
大規模なデータセットから隠れたパターンや傾向を発見する。
ログ分析
アプリケーションログやシステムログを分析し、問題の特定やパフォーマンス改善に役立てる。
リアルタイム分析
ストリームデータのリアルタイム分析を行い、迅速な意思決定を支援する。
BigQueryのメリット
高速なクエリ処理とスケーラビリティ
大規模なデータセットに対する分析を高速かつ効率的に行えます。
サーバーレス設計
運用コストを削減し、開発に集中できます。
多様なデータソースとの連携
既存のデータ資産を有効活用できます。
Google Cloud Platformとの統合
Google Cloud Platformの他のサービスと連携し、より高度な分析を実現できます。
一方、Gemini in BigQueryはまだ、歴史が浅く、2023年10月のGoogle I/Oで発表されました。
Gemini in BigQueryの特徴
高速なトレーニングと推論
Gemini in BigQueryのは、BigQueryの並列処理能力と独自の機械学習アルゴリズムを活用し、従来のBigQuery MLよりも大幅に高速なトレーニングと推論を実現します。
高度なモデルサポート
Gemini in BigQueryのは、従来のBigQuery MLよりも高度な機械学習モデルをサポートします。例えば、Transformerベースの言語モデルや画像認識モデルなどを利用できます。
SQLベースのインターフェース
Gemini in BigQueryのは、BigQueryのSQLインターフェースを利用して操作できます。そのため、既存のSQLスキルを活用して機械学習モデルを構築・管理できます。
スケーラビリティ
Gemini in BigQueryのは、BigQueryのスケーラビリティを継承し、大規模なデータセットに対する機械学習モデルのトレーニングと推論を効率的に行えます。
安全性和信頼性: Gemini in BigQueryのは、BigQueryのセキュリティと信頼性のあるインフラストラクチャで保護されています。
Gemini in BigQueryのメリット
データ分析の加速
Gemini in BigQueryのは、高速なトレーニングと推論により、データ分析の速度を大幅に向上させます。
高度な分析の可能
Gemini in BigQueryのは、高度な機械学習モデルをサポートすることで、従来よりも複雑な分析が可能になります。
使いやすさ
Gemini in BigQueryのは、SQLベースのインターフェースを採用することで、既存のSQLスキルを活用して機械学習モデルを構築・管理できます。
コスト効率
Gemini in BigQueryのは、BigQueryのサーバーレス設計を活用することで、運用コストを削減できます。
このように、ややGoogleの宣伝っぽい説明になりましたが、便利なことは確かなので、このまま、暫く慣れて、学んでいきましょう。
Gemini in BigQuery for GA4のプロンプトのサンプルを紹介していきますね。
現在のAIは、大きな進化中で、まだ人間の言葉を、完全に理解できません。というか、私たち人間の文章も不完全なので、どちらの問題か...
そこで、ここから、何回か、Gemini in BigQuery for GA4のプロンプトの紹介をしていきます。
基本:自分のGA4のデータの確認
まず、Gemini in BigQueryのプロンプトの前に、GA4のデータセットの名前の確認方法をおさらいしておきましょう。特に、複数のWebサイトの分析を同じBigQuery環境で行う場合には、データを明示して、Gemini in BigQueryのプロンプト入力画面に渡した方が、ミスが少なくなります。

ちなみに、Google Analytics(GA4)を、BigQueryにリンクすると、analytics_****のフォルダの元に複数のファイルが自動生成されます。これらは、以下のように、整理されます。
イベントデータ
events_*: GA4で計測されるイベントデータが保存されます。
内容: 各イベントの発生日時、ユーザーID、イベント名、イベントパラメータ、イベントカテゴリ、イベントラベルなど。
例: ページビュー、ボタンクリック、動画再生、購入など。
ユーザーデータ
users_*: GA4で計測されるユーザーデータが保存されます。
内容: ユーザーID、ユーザー属性(年齢、性別、地域など)、ユーザーの行動履歴など。
例: ユーザーが初めてサイトにアクセスした日時、ユーザーがどのページを閲覧したか、ユーザーがどのイベントを発生させたかなど。
その他
*_transform: イベントデータやユーザーデータが変換されたデータが保存されます。
*_summary: イベントデータやユーザーデータの集計結果が保存されます。
ファイル名の意味
events_ や users_ はデータの種類を表します。
数字 は、データのタイムスタンプを表します。
なので、通常は、events_*のファイルを分析すことになります。

では、このデータセットの名前の確認方法を、おさらいします。このフォルダーのevents_**の横の3点マークを押して、クエリーを選ぶと、このデータセットの名前がわかります。

すると、左の画面にサンプルのSQLが表示されます。

この、big-query-learning-429123.analytics_404904409.events_**が、具体的なデータセットのファイル名になります。長いのですが、実際には、この名前を、メモ帳などにコピー時て、プロンプトを書くときには、そこからコピペすれば良いですよね。
ちなみに、このクエリを実際に実行したければ、以下のように、SELECT と FROMの間に、*を記入すると実行できますよ。試してみてくださいね。

ページビューをカウントするプロンプト
さぁ、では実際のプロンプトのサンプルを紹介しましょう。プロンプトの入力画面は、「無題のクエリ」の初期画面の「GeminiでSQLを生成します。」から進みます。

すると、ポップアップ画面で、プロンプト入力画面が出てくるので、こちらに、皆さんが行いたいことを書けば、SQLを生成してくれます。

まずは、一番シンプルなページビューのカウント方法のプロンプトのサンプルを紹介します。
big-query-learning-429123.analytics_404904409.events*(この部分は、各自書き換えてね)のすべての期間で、セッションがpage_vew多いページを、「ページのタイトル」「ページのlocation」「page_viewのセッションの数」で整理して、page_Viewのセッション数の多い順に並べてください。
とすると、以下のような出力結果が得られます。

セッションの多いユーザーを探そう
次に、BigQueryが得意なデータ分析を行いましょう。サイトのアクセス分析を行っていると、1ユーザーで閲覧ページ数が多いユーザーがいます。それを探してみましょう。
big-query-learning-429123.analytics_404904409.events*(この部分は、各自書き換えてね)に対して、ユーザーごとに、セッション数とPV数をカウントして、セッション数の多い順に、表示してください。
出力イメージは、以下のようになります。

ある特定ユーザーの行動だけ抜き出そう
上の結果を取り出すと、一番セッションの多い人の行動が気になりますね。では、このユーザーのサイト内の行動を取り出してみましょう。
big-query-learning-429123.analytics_404904409.events*(この部分は、各自書き換えてね)のすべての期間で、user_pseudo_idが、1615079442.1721700002(この部分も、各自書き換えてね)について、そのユーザーについて、以下を集計してください。なお、日時は、日本時間で表示してください。
*セッション日時
*セッションのあったページのタイトル
順序は、セッション日時でソートしてください。
これを、押すと、Gemini in BigQueryが、SQLを提案するので、何も疑わず、挿入して実行です。

出力イメージは、以下のようになります。

以上、今回は、3つのプロンプトを紹介しました。皆さんの、便利なプロンプトもあったら、教えてくださいね。
Commentaires