生成AIによってデータの民主化は現実的に
内閣府は2023年8月、日本国内で企業のビッグデータが生んだ価値は、10年から20年の平均で国内総生産(GDP)に換算すると、1年で17兆円になるという推計を発表した。「20年というとまだ生成AIがそれほど活用されていなかった時代。今だとデータの価値は20兆円超になると思われる」(山田氏)
このようにデータは非常に重要なものだが、データ活用をする上で、さまざまな課題にぶつかる企業も多い。
「変化の激しいビジネス環境で生き残るには、データに基づいた迅速な意思決定が不可欠だが、従来の専門家依存のデータ分析では時間がかかり過ぎることや、データを見る人が毎回同じだと多角的に見ることが難しい上、分析できる量や種類が限られるという課題があった」(山田氏)

このような課題を解決する手段の一つがデータの民主化である。そのために必要になるのがセルフサービスのデータ基盤だ。「生成AIによって、その実現がかなり現実的になってきた」と山田氏は語る。
このとき、注意したいのはセルフサービスのデータ基盤をモノリシックな形にしないことだ。モノリシックな形だと修正や対応が遅くなってしまうため、マイクロサービスのように「ドメインごとにデータの責任者を配置することが大事」だと山田氏は言う。データ活用の仕組みとしては、データの活用にあたって事故が起きないように上位にガバナンスレイヤーを置き、その下にドメインごとでデータ活用をしていく。「そのようなセルフサービス+データメッシュアーキテクチャは今後のデータ活用のトレンドになる」と山田氏は語る。

このようなセルフサービスデータ基盤を構築する際に、Google Cloudが提供するBigQueryと、Googleの生成AIモデルGeminiの組み合わせが役立つという。
生成AIで正しいSQLを効率的に書くには
山田氏はデータ分析を大きく4つのフェーズに分け、各フェーズで役立つ機能を紹介した。
第1のフェーズは「データ発見・準備」。BigQuery上でGeminiを使うと、さまざまなデータのアセットに対してセマンティック検索(自然文での検索)ができるようになる。SQLを書く人にとってはあまり有用な機能ではないと思うかもしれないが、「そうではない」と山田氏。例えば「以前にSQLで分析したテーブルの名前が思い出せない」という経験をしたことのある人は多いのではないだろうか。山田氏も「何度も経験した」と言う。そんなときに便利に使えるのがセマンティック検索である。「キーワード検索で見つからなかったものがひっかかってくる」(山田氏)
次に、BigQueryのGUI上でデータの前処理が簡単に行える機能「Data Preparation」。日付のフォーマットがバラバラ、都道府県名のところに市まで入っている、データが抜けている、大文字小文字が混在している……。このようなデータはそのまま分析することができないので、データエンジニアが前処理をする必要がある。だがData Preparationを使えば、BigQueryのGUI上にある「データの準備」とボタンを押すだけで、誰でも簡単に前処理ができるようになる。
どれだけ簡単にできるのか、山田氏はデモを実施。形式が不揃いな日付が入ったカラムを選択すると、Geminiが修正案を提示し、その案を適用すると、GUI上でフォーマットが全て修正された状態で見られるようになるのだ。日付だけではない。都道府県名のカラムに市まで入っている場合は、1行だけ正しい値に修正すれば、Geminiが他の行も確認し、他に市まで入っているデータも「削った方がいいのでは」という提案をしてくれたり、データが入っていない行があればその行を削除したり、ドルマークなどの通貨記号が入っている場合は数字として扱えるように直してくれるという。
データが来るたびに毎回、前処理をするのは手間がかかる。組み立てた変換処理を保存すれば再実行や定期実行も可能になる。
第2のフェーズは「データの加工・分析」。「自然言語でSQLを作ることができる」と山田氏は説明を続ける。BigQuery上でSQLを生成する方法は複数ある。コーディングサポートツールを使う方法もあれば、SQLエディタ内に記載したコメントからSQLを生成する方法や、SQLエディタで入力中にGeminiが続きを自動補完する方法もある。中でも山田氏が推奨するのはコメントで生成する方法だ。「ゼロから生成するよりもある程度、生成AIにテンプレートを作ってもらって編集する方が早い。また何がしたかったのか、コメントとして残るので、他の人にもわかりやすい」(山田氏)
このようにGeminiを使うと、SQLを高速かつ正確に書けるようになるという。

山田氏は、Geminiでより良いSQLを生成するコツも紹介。それには「メタデータを拡充すること」が重要だという。生成AIはテーブル名や列名、そこに書いてある説明(description)を見てSQLを生成するからだ。descriptionの整備は、生成AIのためだけではない。人間にとっても作業効率向上につながるという。
さらに、分析対象テーブルがあらかじめ分かっている場合は、明示的にテーブル名をプロンプトに含めることも効果的だ。その他、一般的なプロンプトチューニングのテクニックも有用だという。
実際、メタデータを拡充するとSQLがどう変わるのかデモを実施。descriptionがきちんと書かれていると、生成AIはそれを見て正しいSQLを作成することが証明された。「ハルシネーションを起こさないためにも、メタデータを埋めてほしい」(山田氏)
山田氏が続いて紹介したのが、「Data Insights」。「データ分析のコールドスタート問題を解決するための機能」と説明する。
データ分析のコールドスタート問題とは、テーブルを初めて渡された人は、その中身が分からないので、すぐにSQLを作成することができない。Data Insightsはテーブルに対して、生成AIがサンプルのSQLを提案してくれる。「テーブルに対して『こういう分析をするのならこういうSQLがある』というテンプレートを20種ほど自動的に生成してくれる。自分がやりたい分析に合ったSQLをテンプレートから選んで、そのまま使ってもいいし、少し変えたいところがあればカスタマイズして使うこともできる」(山田氏)
データ分析のための機能は他にもある。「お気に入りの機能の一つ」と山田氏が前置きし、紹介したのが「Data Canvas」。データ分析の際、最初にテーブルを検索し、それに対してSQLを作成して実行、最後に可視化するというステップを踏む。この3つのステップをすべて自然言語で出来るようにしたのが、Data Canvasである。実際にBigQueryのUI上でData Canvasを作成、クエリを実行し、最後にグラフ化する様子をデモで見せた。
「Data Canvasは複数のテーブルをジョインさせたり、SQLの結果に対してさらに分析したりというような深掘りもできます」(山田氏)
例えばSQLを何度か叩く複雑なデータ分析をしても、その変遷を1枚のキャンバスに残し、保存できる。それを共有すれば、ナレッジシェアとして使うこともできる。
生成AIでデータの解釈やレポーティングも容易に
第3のフェーズは「データの解釈・評価」。ここではSQLを簡単に解釈する機能を紹介。SQLの気になる箇所を選択し、「Explain this query」をクリックすると、GeminiがSQLの内容を自然言語で説明してくれる。
続いて紹介したのはBIツール「Looker」で使える「Dashboard Summary」という機能だ。ダッシュボードの各タイルの概要をGeminiが解釈し、次のステップなどを自然言語で返してくれる機能である。使う際は、「Lookerに最初からGeminiが組み込まれているわけではない。そのため組み込みが必要」と注意を促した。

さらにGoogle Cloudが提供するBI製品「Looker Studio Pro」の「Conversational Analytics」機能も披露した。この機能は「会話分析」というボタンをクリックすると、会話ドリブンでデータ分析ができるようになるもの。
BigQueryはもちろん、Googleスプレッドシートなど手元のファイルもアップロードすればデータソースとして使える。今回のセッションでは、実際に手元のファイルをアップロードして、データソースとして使う場面をデモで紹介。データの解釈はもちろん、こういう分析をしたいと自然言語で投げかけると、それに対する結果を返してくれる。さらにその結果のサマリーもConversational Analyticsが作成してくれる。「この機能の最大の特徴は、分析の算出方法をブラックボックス化することなく出してくれること。安心して生成AIを使った自然言語による分析ができる」(山田氏)
第4のフェーズは「データの活用・展開」。BIツールでダッシュボードを作成した際、それを基にスライドを作成、レポートとして提出することを求められることも多い。そこで山田氏が紹介したのは、Looker Studio Proを使う方法だ。Looker Studio Proの右横にGeminiのサイドパネルを出し、「スライドを生成」をクリックするだけで、ダッシュボードの内容にサマリーを付与した状態でスライドを生成してくれるのだ。
これまで紹介した機能のほかにも、データ分析に役立つ機能がある。それはBigQueryからデータを移動することなく、直接Geminiを呼び出せるというもの。例えば、BigQueryに入っているユーザーコメントを感情分析することもできる。またBigQueryはマルチモーダルにも対応しているため、Geminiを使えば、SQLだけで音声データを文字に起こし、それを要約して分類し、さらに可視化することもできるようになっているという。
「今後、分析するデータの8割以上が非構造化データになってくると言われている。それをSQLで扱えるのはBigQueryの大きな強み」と山田氏は言い切る。
最後に山田氏が紹介したのが「Vertex AI Search」という機能だ。「これは簡単にGoogleライクな検索エンジンが作れる機能」と言う。データソースにBigQueryを選択すると、Vertex AI Searchのさまざまな機能が使えるようになるという。例えばブーストという機能を使えば、条件に合致したドキュメントを優先的に表示、または下げることが可能になる。「例えばECサイトでこの期間に●×というワードで検索されたら、この商品を上位に出したいというようなことができるようになる」(山田氏)
「ぜひBigQueryとGeminiを使って、皆さんがお持ちのデータの価値を向上していただきたい」山田氏は最後にこう語り、セッションを締めた。