良いポイント
弊社ではCloud Firestoreに日々追加されるデータをBigQueryに送って使っています。弊社はB2C向けのプロダクトを展開しており、以前はAmplitudeという外部のアナリティクスツールを使っていましたが、プロダクトのコアメトリクスはFirestoreに貯まるデータを直接カウントすれば良いとなり、BigQueryに切り替えています。
Cloud Firestore単体だと難しい日次集計・ランキング・期間比較などのメトリクスをBigQueryだと簡単に書け、集計したデータをSlackに定期実行で送信しているので、日々のメトリクスのトラッキングがとても便利です。
また、弊社ではユーザー数が数百万人規模まで伸びたのですが、ユーザー数やコンテンツ量、注視すべきメトリクスがスケールしても、BigQueryは問題なく対応できているのが良い点です。
改善してほしいポイント
コスト面が一番の要改善ポイントだと思います。ユーザー数やコンテンツ量が増えると、1回のクエリを回すだけでも結構なコストがかかってしまいます。クエリの書き方や期間の切り方で無駄にコストがかかってしまうので、ここを毎回注意していますが、もっとわかりやすくクエリが提案される・書けるとなれば良いなと思います。また、実行するクエリがどれぐらいスキャンするかは出されますが、「どこを直すと効くか」という提案があるとありがたいです。
他には、FirestoreとBigQueryではデータの構造が違うため、Firestoreからデータを流す際にはスキーマの設計が重要だと思います。しかし、初期ユーザーにとっては結構わかりにくいので、もっとわかりやすく知ることが出来たら良いです。
どのような課題解決に貢献しましたか?どのようなメリットが得られましたか?
毎日のプロダクトのコアメトリクスのトラック・分析に使っています。Cloud Firestoreに溜まっていく様々なデータをBigQuery経由で、わかりやすいフォーマットで、Slackに通知されるようになっているため、日々の意思決定や改善方法の検討などに役立っています。