この記事はHacobu Advent Calendar 2024の2日目の記事です。
はじめに
株式会社Hacobu テクノロジー本部CTO室 室長の三木です。本記事は先日11/26 に行われた アーキテクチャカンファレンス2024 で発表した「マルチプロダクト戦略におけるデータ分析プロダクトのアーキテクチャ」のダイジェスト版になります。
物流課題解決へのアプローチ
Hacobuは 「持続可能な物流インフラを創る」のビジョンのもと、企業や業界の枠を越えた物流ビッグデータの蓄積・活用基盤となる「物流情報プラットフォーム」の構築を目指しています。人手不足や長時間残業といった物流の本質的な社会課題を解決するためには、様々なステークホルダーと連携しながら、データ駆動型のロジスティクスを社会に浸透させることが必要と考え、そのための手段として、物流DXを推進するSaaS型アプリケーションを提供しています。トラック予約受付サービス「MOVO Berth」、動態管理サービス「MOVO Fleet」、配車受発注・管理サービス「MOVO Vista」、生産・販売・在庫管理サービス「MOVO PSI」などのクラウドサービスと、コンサルティングサービス「Hacobu Strategy」を展開し、企業間物流の最適化を支援しています。
各領域でMOVOを用いて課題解決を促進し、物流情報のデジタルな蓄積を行なっています。蓄積したデータにより輸配送の合理化を行うことを目指したデータ分析プロダクトX-Dataになります。
MOVOのアーキテクチャの全体像
MOVOシリーズはプロダクトプラットフォームと個別プロダクトの領域に分かれていて、マイクロサービスとしてそれぞれ連携しています。
X-Data は主にFleet のデータや外部システムのデータをもとに分析を行うことができ、将来的にはBerth のデータも組み合わすことを目指しています。また、企業の枠を超えてプロジェクトという形でデータを連携・分析することもできます。プロダクトそれぞれでの最適なデータの持ち方、権限設計をしているのでそれらを統合してデータの閲覧範囲を設定し分析することが求められます。
MOVO X-Data での分析データ準備
X-Dataでの分析は専用のモデルを用意し、各プロダクトデータを統合しています。統合の過程はデータ基盤でよくあるデータレイク、ウェアハウス、マートの構成で段階的にテーブルを作るようにしました。より具体的には
- Athena によりプロダクトDBのダンプデータに対してクエリ(Extract)
- Golang によるデータ加工(Transform)
- X-Data DBへの投入(Load)
- X-Data DB上での最終加工(Transform)
という流れで行なっていて、各プロセスでの役割分担を適切に行うことでバッチのパフォーマンス向上を目指しています。
おわりに
マルチプロダクト戦略におけるデータ分析プロダクトのアーキテクチャについてダイジェスト版を紹介させていただきました。資料はこちらに格納しているので、より詳しく知りたい方はご覧いただければと思います。