Amazon Web Services ブログ

寄稿:塩野義製薬株式会社での、 セルフサービスの解析環境払い出しの仕組み “オンデマンド計算環境” をご紹介

本稿は、塩野義製薬株式会社による、従来型の解析環境の問題を根本解決する “オンデマンド計算環境” の開発について、当該の内製開発をリードされた、データサイエンス部 髙市 伸宏 様より寄稿いただきました。

1. イントロダクション

塩野義製薬は、1878年に創業して以来、“常に人々の健康を守るために、必要な最もよい薬を提供する” ことを掲げて活動を続けています。近年ではSHIONOGI Group Vision (2030年Vision) として、“新たなプラットフォームでヘルスケアの未来を創り出す” ことを目指して、革新的なヘルスケア製品・サービスをグローバルに創出し、社会課題に挑戦する試みを進めています。

その中でデータサイエンス部は、高度データ活用技術を通じたソリューション創出や業務プロセスの変革を推進する立場にあり、その目的のために、各種の計算基盤を保有し、稼働させてきました。また、その基盤環境は一定の統制のもとで全社に開放し、全社での活用をしてまいりました。
本ブログでは、その計算基盤環境を、クラウドネイティブで革新的な環境へと作り替えた取り組みをご紹介します。

2. 背景

Python言語やR言語といったオープンソース言語による統計解析や機械学習といったデータ解析は、今や多くの企業のデータサイエンス活動として見られるようになりました。その環境は、一般的には比較的大きな計算資源を持つ計算機を解析環境として設け、多くのユーザーで共用することによって、望むデータ解析の実現と、ガバナンスと、コスト効率が図られます。

しかし、この方式には以下のようなリスクがあります。

  1. 共用している計算機の障害発生により、多くのユーザーの解析が停止する
  2. ユーザー同士の操作が、同一計算機上で互いに干渉する
  3. 多数のユーザーの操作により、GPU等の計算資源の奪い合いが発生する
  4. 多様化するタスク、データモダリティに対して、柔軟に対応できない

上記の事象はすべて、発生すればするほど、本来果たすべきデータサイエンス活動の速度を、時には極端に落としてしまうことになります。よって、前述のリスクを根本のレベルから回避していくことが会社としては必要であり、課題でした。

この課題の根本にあるギャップ (理想像とのギャップ) は、要約すれば、解析環境の “スケール性”、“独立性”、“柔軟性” でした。一方でAWSクラウドには、使い方次第で、これらに対応できる各種のサービスが設けられていました。よって、従来の解析環境を単純に移行する (“リフト” する) のではなく、AWSクラウドに “シフト” することで、その利点を的確に引き出せば、根本的な解決が図れるものと捉えました。

図1 従来型環境のリスクと、解決方針

3. 開発の方針

まず設計の思想として、解析環境の共有という方針からの脱却を図りました。すなわち、解析環境はユーザー個人単位に分割して、ユーザー個人が、必要な時に、必要なだけの計算資源を持つ解析環境を、セルフサービスで (“オンデマンド” で) 得られるようにする、という方針を取りました。さらに、その解析環境は、多種多様なタスクに対応できるよう、複数種類をあらかじめ用意しておく方針を取りました。

このような方針を取ることで、計算機の共用により発生していた課題 (障害等による検討のストップ、ユーザー操作同士の干渉、計算資源の枯渇、自由度の不足) の、根本的な解決を図ることとしました。

そしてこのセルフサービスによる払い出しは、AWS Service Catalog を核として構成することで非常にシンプルな実現が図れるため、それを採用することとしました。

AWS Service Catalogは、組織が承認したクラウドリソースやアプリケーションをあらかじめカタログ化しておき、ユーザーが安全かつ簡単に利用できるようにするサービスです。今回は、解析環境のテンプレートを Service Catalog 上に複数種類用意しておき、ユーザーが必要なときに必要なだけ払い出せるようにしました。そしてこのように、AWS Service Catalogを核として構成する一連の仕組みを、我々は独自に、“AWSオンデマンド環境” と呼称することとしました。

図2 開発方針

4. ソリューションの概要

この “AWSオンデマンド環境” では、以下の事項が実現しました。

  1. ユーザーは、事前申請により得た権限範囲で、数種類の個人用解析環境を、自由に払い出すことができる
  2. ユーザーは、CPU性能、GPU性能、ディスク容量などの性能を、自身のタスクに応じて、自ら指定できる
  3. ユーザーは、セキュリティグループのようなインフラ知識を全く意識することなく、極めて簡単に払い出すことができる
  4. 自身が払い出した個人用解析環境は、ユーザーが自らの意思で削除することができる

ユーザーの権限は、AWS IAM Identity Centerに基づく権限セット (許可セット) によって円滑な付与を実現しました。AWS Service Catalogによって払い出す個人用解析環境の定義は、あらかじめ S3 (Amazon Simple Storage Service) のバケットに配置したAWS CloudFormationテンプレートからのデプロイにより実現します。そのデプロイのアクションは、デプロイに使用するIAMロールを指定する機能である、AWS Service Catalogの起動制約 (Launch Constraints) を利用することで、ユーザーの権限を不必要に大きくすることに由来する事故を防ぎ、安心して、解析環境のデプロイ・削除が可能な仕組みを実現しています。

図3 AWS アーキテクチャ図

さらに、個人環境払い出しに使用するCloudFormationテンプレートには、バリデーションチェック付きの入力欄 (パラメタ) を設けておくことで、必ず一定の基本タグが与えられるようにしました。

一方で、払い出しの事前には値が決まらず、払い出しの瞬間にルールベースで値が決定するタグについては、まずそのルールをAmazon EventBridge ルールとして実装し、タグの付与は AWS Lambdaの関数として実装しました。AWS Service Catalog由来の払い出し実行のイベントを引き金に、Amazon EventBridge ルール経由で、当該の Lambda 関数が起動するようにすることで、追加のタグが必ず付与されるようにしました。

これらの方法の組み合わせにより、払い出しの背景情報を持つ一定のタグが一貫して入るようにすることで、多数の社内ユーザーによる利用実績データを、乱れなく蓄積することも実現しました。

図4 タグ付け戦略図

5. 各種の成果

この “AWSオンデマンド環境” の実現により、従来法が抱えていた課題を根本的に解決したことに加えて、金銭的コスト、時間的コストのいずれも、従来法に比較して改善しました。特に時間的コストは、個人用解析環境を得るまでの時間がそれまでの1万分の1となり、飛躍的に向上しました。

さらに今回の仕組みは、解析環境を個人の単位に分割したものであるため、大きな試行錯誤を行ったとしても他ユーザーへの影響が原理的に発生せず、しかも個人解析環境は、従来法では到底考えられなかった、個人解析環境の破棄が可能になりました。これは、これまでは取り入れることができなかった “スクラップ&ビルド” の考えを、データサイエンスに取り入れることを可能にしました。

図5-1 各種成果の図

図5-2 各種成果の図

また、確立したこの “AWSオンデマンド環境” からは、複数の機械学習モデルや、それを組み込んだアプリケーションが生まれ、社内デプロイまで到達するものも生まれました。
さらに当環境は、データサイエンス部だけでなく社内の他部門からの利用も受け付けており、現在では合計8部門の50名超のユーザーまで拡大して、各種の活用が見られています。

利用部門からは、“混雑に関係なく、いつでも、任意の性能の解析環境が得られる”, “個人専用の環境であり、他ユーザーへの影響が発生しないので、思い切った検討ができる”, “必要が無くなった際だけでなく、環境を壊してしまった際に、リスク無く捨てられる点が大きい。安心してチャレンジできる” といった、多数の声が得られています。

この “AWSオンデマンド環境” からは、これまでに累計500回を超える解析環境の払い出しがなされており、今もなお多数の仮説・検証サイクルの高速な実行を実現しています。

6. まとめと今後の展望

AWS Service Catalogを中心技術に、計算基盤環境を、クラウドネイティブで革新的な環境へと作り替えた取り組みを、具体的なエピソードを交えてご紹介させていただきました。
今後もこの環境は、MLOpsなどを志向した拡張機能の付与にも挑みつつ、それらの活動を通じ、AWSクラウドの力の最大限に活用して、より一層の成果の創出に取り組んでまいります。

執筆者

Nobuhiro Takaichi

髙市 伸宏
塩野義製薬株式会社 DX推進本部 データサイエンス部
データエンジニアリングユニット コンピュータサイエンスグループ
2011年に大学院卒業後、塩野義製薬に入社。CMC研究本部で原薬製造法の研究開発 (プロセス化学研究) に従事。2019年よりデータマネジメント管轄部門に異動し、2021年よりデータサイエンス部に所属。主な担当業務はデータマネジメントや解析システム構築・運営にかかる企画立案と推進、新規技術導入検討など。クラウドコンピューティングを得意とする。