タイミーがニアリアルタイムのデータ基盤を導入して得たものと課題
タイミーのデータ基盤では、データ品質(完全性、適時性、整合性)を重視して、旧基盤から新基盤への移行が進められている。
旧基盤では、Embulkで各種データを抽出してBigQueryのData Lakeにロードし、dbtでトランスフォームを行いながら、Staging層やData Ware House層にBigQueryの実テーブルを作成するプロセスを取っていた。そして、それらのデータをBIツールによって参照していた。
このデータ基盤では、4時間ごとにEmbulkによるデータ連携を行っていた。しかし、サービスの成長に伴いデータ量が増えるにつれて処理が遅延するようになり、適時性が悪化。また、テーブル単位の転送ではデータの整合性を保つことが難しいという課題が発生した。
これを解決するため、新基盤ではDatastreamを導入し、リアルタイムでデータを連携できる仕組みに移行。さらに、dbtによるBigQueryへのテーブル作成の処理をビュー作成へと変更することで、データ更新を自動反映し、ユーザーが即時利用できる環境を実現した。
しかし、運用を続ける過程で新基盤の課題が判明した。Datastreamがat least once保証を守れずデータ欠損が発生すること、その際に詳細なログが出力されず検知・調査が困難なこと、Datastreamの動作が不安定なことである。これらの課題を解決するためのアーキテクチャを構築中であり、今後の改善に注力していく計画であることが語られた。