こんにちは。エンスポーツの田窪です。
「BigQueryって結局なにができるん?」と思ってませんか?僕は思ってました。
という時期もあったのですが、ここ数年必要に迫られて触ってみたところ、今では「BigQueryがないと何もできへんやん」と感じています。
というわけで「BigQueryってなんなん?」と思っている人に、BigQueryの良さを噛み砕いてお伝えしてみようと思います。
BigQuery(ビッグクエリ)ってなに?
BigQueryは、Googleさんが運営する「データウェアハウス」というジャンルのサービスです。
これ単体で何ができるというわけではないのですが、アプリ内のデータとかWebサイトのデータとかをBigQueryに流すことで、BigQuery上でそのデータの分析ができるようになります。
なぜわざわざBigQueryにデータを流す必要があるのか
「いや別にBigQueryに流す必要なくない?直接データを見ればいいじゃん」
と思いませんか。思いますよね。
たとえばエンスポーツみたいなマッチングアプリだと、たくさんの利用者の皆様の情報がデータベースに保存されています。
そして皆様がプロフィールを編集したり、いいねを送ったりするたびに、データが追加されたり書き変わったりしてます。それはもう秒単位です。
となるとつまり、データベースには最新の情報しか入っていないので、過去のデータがわからないんですよね。
でも「この人の自己紹介文が何時何分何秒にこう変わったよ」とか「この人の2枚目のプロフィール写真が何時何分何秒に追加されたよ」みたいな変更履歴を毎回BigQueryに保存しておけば、BigQueryには過去の行動履歴が全部残るわけです。
それがあれば、なんかこう、なんつーか、すごいことができそうですよね。
全部の変更履歴を保存しておくということで、もちろんものすごいデータ量になりますが、BigQueryさんにかかれば余裕です。
テラバイト単位のデータを数秒で、ペタバイト単位のデータでも数分で分析できるというパワーを持っています。すっごいね。
いやいやGA4でいいじゃん
「なんか大層なことを言ってるけど、GA4でいいじゃん」
と思いませんか。思いましたよね。
たしかにGA4でも、例えばページが見られた回数だったり、ユーザー数だったりは確認できます。しかも無料で使えるので、普通のWebサイトのデータだったらGA4で十分というケースも多いです。
ただGA4のデータは、基本的に「Googleさんが用意してくれたフォーマット」でしかみれません。探索レポートである程度柔軟なレポートは作れますが、アプリのユーザー行動を確認するにはさすがに足りません。
たとえば「こういう属性のユーザーは、平均何回くらいどんな属性の人にいいねを送って、何回マッチングして、メッセージのやり取りを平均何回しているのか」みたいなサービス固有の行動パターンまでは追い切れないと。
でもBigQueryならできます。
「SQL」というデータベース言語でデータを操作することで、アイデア次第で無限にデータを切ったり貼ったりできますので、BigQueryならとにかく柔軟な分析ができるというわけです。
データ分析って、結局のところ何してるの?
うちはマッチングアプリを運営してますので、マッチングアプリの例でいきます。
例えば「users」という場所に、利用者の皆さんのプロフィールデータがズラーーっと羅列して保存されていたりします。
一方で「likes」みたいなまた別の場所に、「AさんがBさんに何時何分に"いいね"したよ」という情報がだーーーーーっと羅列されていたりします。
つまり「いいね」が羅列された場所にはプロフィール情報がないので、どんな人がどんな人に「いいね」してるのか知りたい場合は、これらの情報を結合しないといけません。手作業でやろうとしたら日が暮れます。
それに加えて「match」みたいな場所に「この人とこの人が何時何分にマッチングしたよ」という情報が入っていたりもしますし、他にもいっぱい情報がありますし、てんやわんやです。
そうなったときに、BigQuery上で情報を合体させることで、どんな人がどんな人に「いいね」を送ったのか、そのうちのどんな人同士がマッチングしたのか、という情報を導き出していたりします。
すると例えば「何歳差までならマッチ率が高いよね」とか、「こういうプロフィールの人とこういうプロフィールの人は相性が良いみたいだね」みたいなことを、データを基準に判断できるようになります。それを活用して、いわゆるマッチングアルゴリズムみたいなものだったりとか、あるいは通知の仕組みだったりとか、いろんなものを改善していくわけです。
こうやってデータを元に意思決定をしないと、そもそもどこの何を修正すればいいのかわからないし、なにか修正してもそれが良かったのかどうなのかは売上という最終アウトプットでしか判断できない。バクチみたいな運営になります。
BigQueryさんのおかげで、開発工数とか広告費とかをできるだけ無駄にせず、効率よくサービス運営ができるというわけです。
BigQueryは素晴らしい
BigQueryは素晴らしいよというお話でしたが、少しでも伝わりましたでしょうか。
とくにマッチングアプリみたいなサービスだと、マーケティングにおいてもカスタマーサクセスにおいても、データマネジメントがすごく重要です。
とはいえ「じゃあまあちょっとBigQueryってやつを触ってみるか」と思っても、データがないと学習すらしにくいというところが、ハードルを高くしているのかと思います。
が、そんな人のためにGoogleさんは公開データセットを提供してくれていたりしますので、やる気さえあれば色々と触ってみることはできます。ちょっとBigQueryに興味があるんだよという方は、一度さわってみてはいかがでしょうか。
【参考】
BigQuery の一般公開データセット
https://cloud.google.com/bigquery/public-data
Google Cloud 一般公開データセット プログラム
https://cloud.google.com/datasets