ライフ サイエンスにおけるオープン ソース ビッグ コンピューティング活用のメリット

このポストは、11 月 9 日に投稿された Open-source Big Compute for Life Sciences の翻訳です。

共著者: Kenji Takeda 博士 (Microsoft Research、ソリューション アーキテクト兼テクノロジ マネージャー)

ビッグ データとビッグ コンピューティング テクノロジの力によって今、科学の世界は驚異的な速さで進化を遂げています。マイクロソフトは Azure for Research プログラム (英語) を通じて世界中の科学者と共にクラウド コンピューティングの活用に取り組んでいます。その中で、コンピューター サイエンス、エンジニアリング、ライフ サイエンスといったあらゆる分野の研究者たちが自らのプロジェクト推進のためにクラウドを最大限に活用しようと模索しており、マイクロソフトはそこからさまざまなことを学んでいます。

遺伝学、ゲノミクスと地球生物

科学における大きな進歩の中心は、遺伝学的知識の活用であり、近年では、生物学、医学、そして生物そのものに対する考え方が変化してきました。DNA シークエンシングやバイオインフォマティクスでのゲノム配列の解明により、遺伝学の理解と研究は飛躍的に進歩しています。ムーアの法則と比べても、DNA シークエンシングにかかるコストは急速に下がっているため、かつてないほど速いペースでゲノム データを収集できるようになりました。その一方、保存、処理、分析が必要なデータ量の増加により、コンピューティング能力不足という課題が発生しています。マイクロソフトは世界中のゲノミクス研究者と協力し、Azure Big Compute を活用したバイオインフォマティクスにおける課題解決に努めていますが、今回はその中から、Imperial College London の Simon O’Hanlon 氏と Matthew Fisher 教授による研究事例をご紹介したいと思います。

課題: 次世代 DNA シークエンシングを利用した危険な病原体の究明

次世代シークエンシング (NGS) とは、遺伝子データを取得するための処理を超並列化する技術です。現在最も広く利用されている NGS の手法は Sequencing by Synthesis (合成によるシークエンシング) 法と呼ばれ、時間はかかるものの Embarrassingly Parallel (驚異的並列) な処理を実現します。通常はゲノム DNA を (ヌクレオチド数十個から数百個分の長さに) 小さく断片化し、数百億から数十億の断片を同時に比較して配列を解析します。この処理には何日もかかる場合もありますが、膨大な量の配列データを生成できます。

NGS は生命科学分野の研究を変革すると同時に、コンピューティングの面で大きな課題をもたらしています。その中で Azure は、がん治療法の研究 (英語) から希少疾患の診断 (英語) まで、さまざまな NGS パイプラインの高速化に活用されています。よく知られた人体への脅威以外に、他の動物から発症する病気も多数あります。動物から人間に感染する可能性のある人獣共通感染症の病原体を解明することは、エボラ熱、鳥インフルエンザ、BSE (狂牛病) の発生を予防するうえで非常に重要です。脊椎動物に最も感染力の高い病原体の 1 つにカエルツボカビ (Batrachochytrium dendrobatidis、Bd) があります。これは真菌の一種で、両生類に感染してツボカビ症を引き起こします。Bd は 500 種以上の両生類に感染することが知られており、その中の 200 種以上の個体数の減少や絶滅の原因となっています。2005 年、国際自然保護連合 (IUCN) はツボカビ症について、「影響範囲や絶滅危険性から、これまで記録された脊椎動物の感染症の中で最も危険である」と発表しました。

Imperial College London の O’Hanlon 氏と Fisher 教授は、この両生類の脅威に対抗する最前線の研究を行っています。NGS を採用した Bd の起源と拡大の研究には、高いコンピューティング能力が必要です。NGS は高速ですが、膨大な量のデータを生成するうえに、その品質もさまざまです。NGS マシンで配列が解析された DNA の断片は、最初に巨大なジグソー パズルを完成させるように、完全なゲノムとして組み立て直す必要があります。しかし、変異率に影響を及ぼす可能性のある進化上および環境上のプロセスは驚くほど多様で、十分な処理を行うためには機械学習などの高度な技術が必要になります。従来、バイオインフォマティクスの研究者はオンプレミスのコンピューティングで配列のナンバークランチングと検索を行ってきました。しかし、NGS によりシークエンシング マシンから膨大な量のデータが生成され、ローカルのコンピューティング能力で対応することが難しくなりました。O’Hanlon 氏は次のように述べています。

「幸いにも、Imperial College London では大学にも学部にも優れたコンピューティング リソースを備えています。学部のクラスターは強力な Windows ベースのため、Windows 用に開発されたツールチェーンなら問題ありませんが、私たちが利用するツールは Unix ベースのものが多いため、Linux 中心のソリューションを必要としていました。中央 HPC サービスも高性能ですが、コンピューティング リソースに制限があるうえに、同時に使用しているユーザーが多い場合には、キューに追加したジョブが実行されるまでに長時間待つ必要がありました」。

対策: Azure Big Compute によるオープン ソース ソリューションの実現

ゲノミクス研究者は世界中で何万人にものぼり、豊富なツールやテクノロジのエコシステムが形成されています。これらのツールやテクノロジの大部分は Linux ベースのオープン ソース フレームワークで、ノート PC からスーパーコンピューターまで、あらゆるマシンで幅広く利用されています。Fisher 教授のチームのように、大学内の多数のコンピューティング リソースを利用できるケースもありますが、日々の研究では必ずしも理想的な環境とは言えません。そこで、Azure Big Compute を利用することにより、2 つの大きなメリットが得られます。それは、強力な仮想マシンと待機時間の排除です。

Azure の強力な A11 コンピューティング インスタンス (16 コア、RAM 112 GB) により、O’Hanlon 氏はゲノミクス処理パイプラインの実行時間を大幅に短縮することができました。256 コア以上の個人用 Azure クラスターを瞬時に利用できるため、作業を完全に制御することが可能です。同氏は次のように述べます。

「私にとって、Azure は理想的でした。状況ごとのニーズに合わせてコンピューティング能力を拡張できるうえに、アーキテクチャの設備投資が不要なため、必要に応じてクラスターの物理的な構成を変更することも可能です。たとえば、ある問題を解くために、大容量の RAM とプロセッサを備えたノード (Azure A11 など) が必要になることもあれば、高速な SSD ストレージとクラスターのノード間の高速相互接続が必要になることもあります。すべての操作は Azure Web ポータルからでも、今までどおり Azure コマンド ライン ツールからプログラム的に行うこともできます。新規クラスター全体のセットアップに必要なのは数行のスクリプト コードのみです。クラスターをセットアップしたら、いくつかの短いスクリプトを実行するだけで、クラスター全体にコンピューティング ジョブを分配するようにオープン ソースの Grid Engine のジョブ スケジューラを設定できます。しかし、専用クラスターを利用する最大のメリットは、何よりジョブが実行されるまでの待機時間がゼロであることです」。

解決: 1 週間分の作業を半日でこなすゲノミクスのタイム マシン

O’Hanlon 氏は以前からコマンド ラインからコンピューティングを実行していたため、作業スタイルを変えることなくすぐに Azure を活用できました。Linux コマンド ライン インターフェイス (CLI) では、ワークフローに合わせた構成の仮想マシンを簡単にセットアップし、管理することができます。O’Hanlon 氏は広く利用されている Genome Analysis Toolkit (GATK、英語) を Azure 上にセットアップして変異コールを行い、RaxML (英語) と組み合わせて最尤法による計算を行いました。その後、Ubuntu 14.04 Azure VM のクラスターに Grid Engine をインストールしてジョブの実行を管理し、A11 コンピューティング ノード全体で MPI と OpenMP を活用しました。

「Azure VM を利用することで、ほとんど調整を行わずにローカルの構成からクラウドにワークフローを直接移行することができました。Azure コマンド ライン ツールも非常に便利です。クラスターのセットアップ時やそれ以降も、ワークフローの管理に役立っています。クラスター利用は従量課金制のため、優れたツールを使用して、信頼性の高い方法で効率よくシンプルにリソースの稼働やシャットダウンを行うことが重要です。クラスターを自身で管理するため、必要に応じて、または試験的に、ツールやソフトウェアを自由にインストールしたり更新したりすることができます。おかげで最適なワークフローや環境を構成することができました」。

一見すると、この構成はこれまで利用していたものとよく似ていますが、それが重要なポイントです。O’Hanlon 氏は複雑な再設計を行うことなく、使い慣れたオープン ソースのツールを使用して、Azure 上に簡単に作業環境を再構築することができました。この新しい環境で膨大な量のコンピューティングをオンデマンドで利用できるようになりました。その結果、O’Hanlon 氏は最新のゲノム配列データの解析期間を 1 週間からわずか半日にまで短縮できたそうです。

多くの研究者にとって、クラスター上でのジョブの実行は高速ですが、キューに追加して待機すると時間がかかるだけでなく、予測も不可能になります。Azure Big Compute では、高速な大容量メモリの VM でキューを利用することなくジョブを実行できます。これは、大幅に時間を節約できる魅力的なメリットです。

まとめ

今回ご紹介した事例から、Azure がコンピューティング集中型の Linux および OSS ワークロードの実行に適していることをご理解いただけたかと思います。Azure なら、大量で複雑なプロセスをクラウドに簡単に移行することで、大容量メモリの VM とオンデマンドのスケーラビリティというメリットを得ることができます。Azure は真の意味でデスクトップの延長となりつつあり、標準の OSS ソフトウェア スタックのシームレスなサポートにより、想像以上にスムーズなクラウドへの移行が実現します。

Big Compute は当初、高速なプロセッサと大容量メモリに、InfiniBand QDR の低レイテンシ、高帯域幅のネットワーク相互接続を組み合わせてリリースされました。その後、O’Hanlon 氏や Fisher 教授のように、強力なコンピューティング インスタンスを必要としているものの、標準のギガビット イーサネット ネットワークで十分だというケースもあることが判明しました。A10 および A11 インスタンスにより、他のソリューションでは対応できない複雑なワークロードを短期間で実行できるようになったことを嬉しく思います。

最後に

O’Hanlon 氏と Fisher 教授が Azure をどのように活用しているかを見ることができたのは貴重な体験でした。Azure でどれだけワークロード時間を短縮できるか、皆様のご意見も伺えれば幸いです。そしてそれをサポートするのが、Big Compute チームMicrosoft Research (英語) の役目です。O’Hanlon 氏は 1 週間かかっていた作業を半日で終えられるようになりました。このペースであれば、1 年分のコンピューティングを 1 か月以内に完了できる計算です。皆様もこのスピードの価値について、ぜひご検討ください。

関連情報

Azure の Big Compute ソリューション:

Azure 上での Linux と OSS の利用:

Azure for Research:

マイクロソフトのゲノミクス: