SHOEISHA iD

※旧SEメンバーシップ会員の方は、同じ登録情報(メールアドレス&パスワード)でログインいただけます

CodeZine編集部では、現場で活躍するデベロッパーをスターにするためのカンファレンス「Developers Summit」や、エンジニアの生きざまをブーストするためのイベント「Developers Boost」など、さまざまなカンファレンスを企画・運営しています。

Developers Summit 2024 セッションレポート(AD)

データ基盤をオンプレ+AWSに刷新! 技術選定とプロジェクト進行のポイントをマイナビの事例に学ぶ

【15-C-5】マイナビの全社データ基盤のモダナイズ

  • このエントリーをはてなブックマークに追加

データ基盤をオンプレ+AWSに刷新! どのような構成に?

 こうした課題に対して、マイナビではどのように解決したかを見ていこう。まずは導入したツールだ。「収集」「加工」では、データプレパレーションツール「Paxata」を導入した。事業部のユーザーなど非エンジニアでもデータ加工できるETLツールとなっている。「蓄積」はデータクラウド「Snowflake」。「活用」に関してはBIツール「Tableau」を導入した。なお、「検索」に関してはデータカタログに相当するものになるが「まだありませんが、導入を進めていきたいと思っています」とよそじ氏は言う。

 解決前後を比較するために、まずは導入前の構成から見ていこう。当初はすべてシステムはオンプレで構成されていた。他システムのSQL Serverから、WindowsのバッチとSystemwalkerでデータマートのSQL Serverへとデータを連携させていた。この主な理由は元システムの負荷を高めないようにするためだ。

 ただ課題もいくつかあった。データ連携部分では、処理スピードがなかなか出せず、Windowsバッチをうまく扱えるエンジニア確保にも苦戦した。またSSIS(ETL)がSQL Serverに依存していて技術の見直しが難しい、バージョン管理にも苦戦していた。

従来のオンプレ環境における課題
従来のオンプレ環境における課題

 スペックを高めようにも、オンプレなのでハードウェア増強は簡単ではなく、またVMのリソース管理も大きな負担になっていた。ディスクサイズを節約するためにデータ長を最小限にしたら、取得元のデータ長が変わってしまい対応に苦労したこともある。スペックを増やせない状況では、負荷増加を懸念してユーザーも気軽に増やせないという不自由さもある。

 BIはTableauを使用していたものの、6年前のスペックで使用していたため表示が遅い状態になっていた。データプレパレーションツールPaxataは一度データを貯めたうえで処理する仕様になっていたところ、ユーザーの利用量予測が難しくディスクサイズが足りなくなる事態にも遭遇していた。

 モダナイズ後は下図の通り。オンプレは残るものの、データ連携以降の右側をAWS(クラウド)に移行し、技術刷新した。

あああ
オンプレ+AWS環境に

 データ連携部分はWindowsからLinuxへとOSを変更し、インフラエンジニアに比較的馴染みがあるシェルスクリプトが使えるようにした。続いてEmbulkと組み合わせることで、データ加工におけるWindows依存を解消した。

 またワークフローエンジンにAirflowを採用、ここでPythonを使えるようになり、さらに並列化で処理スピードを改善できた。またサーバーレスのMWAAを採用することで運用コストを削減した。

 データレイクはAmazon S3にすることで、メンテナンスがほぼ不要となり、スケーラビリティも確保した。またデータマートで採用したSnowflakeとの相性がいいことも選定の決め手となった。S3はSnowflakeの外部ステージとしてログ分析なども行える。

 そしてデータマートにSnowflakeを採用することで、これもスケーラビリティを確保できて、ウェアハウスを分離できるので負荷分散も可能となる。また利用時のみ即時立ち上げができるため、利用料を最小限にできてコスト削減につなげることができた。よそじ氏は「SnowflakeはSaaSなので保守が要らなくなり、デジ戦が本来やるべきデータの民主化に注力できるようになったのはすごく良かったです」と話す。そして随所にGitHubでバージョン管理とレビューができる体制を敷き、オペレーションミスが減った。

次のページ
移行のための技術選定とプロジェクト進行のポイントは?

関連リンク

この記事は参考になりましたか?

  • このエントリーをはてなブックマークに追加
Developers Summit 2024 セッションレポート連載記事一覧

もっと読む

この記事の著者

加山 恵美(カヤマ エミ)

フリーランスライター。茨城大学理学部卒。金融機関のシステム子会社でシステムエンジニアを経験した後にIT系のライターとして独立。エンジニア視点で記事を提供していきたい。EnterpriseZine/DB Onlineの取材・記事や、EnterpriseZine/Security Onlineキュレーターも担当しています。Webサイト:http://emiekayama.net

※プロフィールは、執筆時点、または直近の記事の寄稿時点での内容です

川又 眞(カワマタ シン)

インタビュー、ポートレート、商品撮影写真をWeb雑誌中心に活動。

※プロフィールは、執筆時点、または直近の記事の寄稿時点での内容です

CodeZine編集部(コードジンヘンシュウブ)

CodeZineは、株式会社翔泳社が運営するソフトウェア開発者向けのWebメディアです。「デベロッパーの成長と課題解決に貢献するメディア」をコンセプトに、現場で役立つ最新情報を日々お届けします。

※プロフィールは、執筆時点、または直近の記事の寄稿時点での内容です

提供:株式会社マイナビ

【AD】本記事の内容は記事掲載開始時点のものです 企画・制作 株式会社翔泳社

この記事は参考になりましたか?

この記事をシェア

  • このエントリーをはてなブックマークに追加
CodeZine(コードジン)
https://codezine.jp/article/detail/19163 2024/05/10 12:00

おすすめ

アクセスランキング

アクセスランキング

イベント

CodeZine編集部では、現場で活躍するデベロッパーをスターにするためのカンファレンス「Developers Summit」や、エンジニアの生きざまをブーストするためのイベント「Developers Boost」など、さまざまなカンファレンスを企画・運営しています。

新規会員登録無料のご案内

  • ・全ての過去記事が閲覧できます
  • ・会員限定メルマガを受信できます

メールバックナンバー

アクセスランキング

アクセスランキング