Retty Tech Blog

実名口コミグルメサービスRettyのエンジニアによるTech Blogです。プロダクト開発にまつわるナレッジをアウトプットして、世の中がHappyになっていくようなコンテンツを発信します。

データ分析基盤Nightに登壇しました

Rettyのjp_taku2です。

Rettyでは最近、エンジニアが増えてきて AdventCalendar を書ききれる程になりました。
それに伴い、今まではデザイナーやプランナーも一緒に書いていたこのブログをTech Blogとしてリニューアルすることになりました。

今回のテーマは僕がデータ分析基盤Nightに登壇してきたので、それについて書きます。

概要

イベントへの応募が多く来られなかった方も多数いたので、概要を書いて置きたいと思います。
また、Speaker Deckの方にも記載しております。

Rettyの分析基盤の歴史について

Rettyの分析基盤は資料にあるように、Treasure Data、Treasure Data + BigQuery、現在の分析基盤というような順に状況に合わせて変化をしてきました。使用していた際にでた課題は以下の通りです。
Treasure Data
→利用ユーザーが増えてしまい、分析に時間がかかるようになってしまいました。
Treasure Data + BigQuery
→データーの管理が利用している人になってしまい、同じようなデータを別々に出す状態になってしまいました。

現在の分析基盤について

f:id:rettydev:20170223162436p:plain Rettyのデーター分析基盤はAWS AthenaBigQueryハイブリッドで構成されています。 DWHにはS3とAWS Athenaを使用し、データ自体はS3にファイルとして保存することにより、移行の行いやすさと利用のしやすさを意識した作りにしました。 DMに関してはBIツール用にはRDSを使用し、AdHoc分析用にはBigQueryを使用することにより、分析者がストレスなく使える状況を作りました。

機械学習基盤に関して

機械学習基盤は自前でパーツを購入し、オープンソースで構築をしています。 maasjujuを使用しサーバーの構築を行い、cephkubernetesDockerを使用することにり、どのサーバーにログインをしても同じデーターを使用することが可能な環境を構築しています。 GPUに関しては統一されたものを置くわけではなく、用途や状況に合わせて利用ユーザーがサーバーを選択して作業を行います。 その他詳しい内容に関しては以下の記事を参照してください。

qiita.com

まとめ

今回作成した分析基盤が今後も永続的に使い続けられるとは思っていないため、移行のし易さを考慮して設計をすることができたのではないかと考えています。
しかし、今後の課題としてはログを送信する箇所で影響が出ないように改善していく必要があると考えています。
また、分析するためのデータの鮮度をあげていくということも課題になっています。
機械学習基盤に関しては利用ユーザーが増えてきたため、安定性を上げて行こうと考えています。
 
 
 
今後はRetty Tech Blogとして記事を出していきますので、今後の記事も楽しみにしていてください。