(19)【発行国】日本国特許庁(JP)
(12)【公報種別】公開特許公報(A)
(11)【公開番号】P2024094822
(43)【公開日】2024-07-10
(54)【発明の名称】解析システム、及び解析方法
(51)【国際特許分類】
G06F 8/65 20180101AFI20240703BHJP
【FI】
G06F8/65
【審査請求】未請求
【請求項の数】7
【出願形態】OL
(21)【出願番号】P 2022211645
(22)【出願日】2022-12-28
【国等の委託研究の成果に係る記載事項】(出願人による申告)平成29~令和3年度、国立研究開発法人日本医療研究開発機構、「創薬等ライフサイエンス研究支援基盤事業」「創薬等ライフサイエンス研究のための相関構造解析プラットフォームによる支援と高度化」委託研究開発、産業技術力強化法第17条の適用を受ける特許出願
(71)【出願人】
【識別番号】504151365
【氏名又は名称】大学共同利用機関法人 高エネルギー加速器研究機構
(74)【代理人】
【識別番号】100165179
【弁理士】
【氏名又は名称】田▲崎▼ 聡
(74)【代理人】
【識別番号】100188558
【弁理士】
【氏名又は名称】飯田 雅人
(74)【代理人】
【識別番号】100175824
【弁理士】
【氏名又は名称】小林 淳一
(74)【代理人】
【識別番号】100152272
【弁理士】
【氏名又は名称】川越 雄一郎
(74)【代理人】
【識別番号】100181722
【弁理士】
【氏名又は名称】春田 洋孝
(72)【発明者】
【氏名】山田 悠介
(72)【発明者】
【氏名】守屋 俊夫
【テーマコード(参考)】
5B376
【Fターム(参考)】
5B376AA07
5B376CA01
(57)【要約】
【課題】解析を行うユーザが自身で解析ソフトウェアを更新することなく最新の解析ソフトウェアを用いてセキュリティの確保された状態で解析ができること。
【解決手段】クラウドコンピューティングを用いた解析システムであって、アカウント作成部と、第1ユーザアカウントに専用に割り当てられた第1仮想ネットワークと、第2ユーザアカウントに専用に割り当てられた第2仮想ネットワークとを構築する仮想ネットワーク構築部と、解析ソフトウェアを第1仮想ネットワーク内に記憶する記憶部と、第1仮想ネットワークと第2仮想ネットワークとを互いに接続する仮想ネットワーク接続部とを備え、解析ソフトウェアは、第1仮想ネットワークと第2仮想ネットワークとが互いに接続されることによって第1ユーザアカウントと第2ユーザアカウントとの間で共有されており、解析ソフトウェアが更新されると更新後の解析ソフトウェアが共有される。
【選択図】
図3
【特許請求の範囲】
【請求項1】
クラウドコンピューティングを用いた解析システムであって、
解析を行うための解析環境を提供する第1ユーザに対する第1ユーザアカウントと、前記解析環境を利用する第2ユーザに対する第2ユーザアカウントとを作成するアカウント作成部と、
前記第1ユーザアカウントに専用に割り当てられた仮想ネットワークである第1仮想ネットワークと、前記第2ユーザアカウントに専用に割り当てられた仮想ネットワークである第2仮想ネットワークとを前記解析システムのネットワーク内に構築する仮想ネットワーク構築部と、
前記解析を行うための解析ソフトウェアを前記第1仮想ネットワーク内に記憶する記憶部と、
前記第1仮想ネットワークと前記第2仮想ネットワークとを互いに接続する仮想ネットワーク接続部と、
を備え、
前記解析ソフトウェアは、前記第1仮想ネットワークと前記第2仮想ネットワークとが互いに接続されることによって前記第1ユーザアカウントと前記第2ユーザアカウントとの間で共有されており、前記解析ソフトウェアが更新されると、互いに接続された前記第1仮想ネットワーク、及び前記第2仮想ネットワークを介して前記第1ユーザアカウントと前記第2ユーザアカウントとの間で更新後の前記解析ソフトウェアが共有される
解析システム。
【請求項2】
第1命令に応じて、前記解析ソフトウェアに基づく解析のための環境を前記第2仮想ネットワーク内に設定し、
第2命令に応じて、前記解析を実行するための仮想マシンを前記第2仮想ネットワーク内に生成し、
第3命令に応じて、前記第2ユーザに紐づけられた第3ユーザの端末である第3ユーザ端末と前記仮想マシンとを接続する
請求項1に記載の解析システム。
【請求項3】
前記仮想マシンは、第1仮想マシンであって、
前記第1仮想マシンは、1以上の第2仮想マシンに前記解析を並列計算に基づいて実行させる
請求項2に記載の解析システム。
【請求項4】
前記解析は、1つの解析対象に対して1以上の解析方法から選択された解析方法に基づいて実行される
請求項1に記載の解析システム。
【請求項5】
前記第2ユーザに紐づけられた1以上の第3ユーザ、及び当該第3ユーザの1以上の解析対象毎にリソース使用量を管理する
請求項1に記載の解析システム。
【請求項6】
前記解析とは、クライオ電子顕微鏡によって撮像された結果についての解析である
請求項1に記載の解析システム。
【請求項7】
クラウドコンピューティングを用いた解析システムにおける解析方法であって、
解析を行うための解析環境を提供する第1ユーザに対する第1ユーザアカウントと、前記解析環境を利用する第2ユーザに対する第2ユーザアカウントとを作成するアカウント作成ステップと、
前記第1ユーザアカウントに専用に割り当てられた仮想ネットワークである第1仮想ネットワークと、前記第2ユーザアカウントに専用に割り当てられた仮想ネットワークである第2仮想ネットワークとを前記解析システムのネットワーク内に構築する仮想ネットワーク構築ステップと、
前記解析を行うための解析ソフトウェアを前記第1仮想ネットワーク内に記憶する記憶ステップと、
前記第1仮想ネットワークと前記第2仮想ネットワークとを互いに接続する仮想ネットワーク接続ステップと、
を有し、
前記解析ソフトウェアは、前記第1仮想ネットワークと前記第2仮想ネットワークとが互いに接続されることによって前記第1ユーザアカウントと前記第2ユーザアカウントとの間で共有されており、前記解析ソフトウェアが更新されると、互いに接続された前記第1仮想ネットワーク、及び前記第2仮想ネットワークを介して前記第1ユーザアカウントと前記第2ユーザアカウントとの間で更新後の前記解析ソフトウェアが共有される
解析方法。
【発明の詳細な説明】
【技術分野】
【0001】
本発明は、解析システム、及び解析方法に関する。
【背景技術】
【0002】
データ測定装置によって得られた測定データをサーバに送信し、サーバによって測定データに基づく解析を行うシステムが知られている。例えば、電子顕微鏡によって得られた撮像データをサーバに送信し、サーバによって撮像データに基づく解析を行うシステムが知られている。(例えば、特許文献1)。
【先行技術文献】
【特許文献】
【0003】
【発明の概要】
【発明が解決しようとする課題】
【0004】
しかしながら、特許文献1に記載されるようなシステムでは、測定データをサーバに送信する必要があり、セキュリティが十分ではなかった。また、解析手法は日々進化しており、分野によっては解析に用いられる解析ソフトウェアが頻繁に更新される場合がある。特許文献1に記載されるようなシステムでは、解析を行うユーザは、最新の解析ソフトウェアを利用しようとする場合、解析ソフトウェアが更新される度に解析ソフトウェアをダウンロードサーバなどから取得し、インストールする必要があった。
セキュリティを確保しながら、解析を行うユーザが解析ソフトウェアの更新作業を自身ですることなく常に最新の解析ソフトウェアを用いて即座に解析を開始できることが求められている。
【0005】
本発明は上記の点に鑑みてなされたものであり、解析を行うユーザが自身で解析ソフトウェアを更新することなく常に最新の解析ソフトウェアを用いてセキュリティの確保された状態で解析ができる解析システム、及び解析方法を提供する。
【課題を解決するための手段】
【0006】
本発明は上記の課題を解決するためになされたものであり、本発明の一態様は、クラウドコンピューティングを用いた解析システムであって、解析を行うための解析環境を提供する第1ユーザに対する第1ユーザアカウントと、前記解析環境を利用する第2ユーザに対する第2ユーザアカウントとを作成するアカウント作成部と、前記第1ユーザアカウントに専用に割り当てられた仮想ネットワークである第1仮想ネットワークと、前記第2ユーザアカウントに専用に割り当てられた仮想ネットワークである第2仮想ネットワークとを前記解析システムのネットワーク内に構築する仮想ネットワーク構築部と、前記解析を行うための解析ソフトウェアを前記第1仮想ネットワーク内に記憶する記憶部と、前記第1仮想ネットワークと前記第2仮想ネットワークとを互いに接続する仮想ネットワーク接続部と、を備え、前記解析ソフトウェアは、前記第1仮想ネットワークと前記第2仮想ネットワークとが互いに接続されることによって前記第1ユーザアカウントと前記第2ユーザアカウントとの間で共有されており、前記解析ソフトウェアが更新されると、互いに接続された前記第1仮想ネットワーク、及び前記第2仮想ネットワークを介して前記第1ユーザアカウントと前記第2ユーザアカウントとの間で更新後の前記解析ソフトウェアが共有される解析システムである。
【0007】
また、本発明の一態様は、上記の解析システムにおいて、第1命令に応じて、前記解析ソフトウェアに基づく解析のための環境を前記第2仮想ネットワーク内に設定し、第2命令に応じて、前記解析を実行するための仮想マシンを前記第2仮想ネットワーク内に生成し、第3命令に応じて、前記第2ユーザに紐づけられた第3ユーザの端末である第3ユーザ端末と前記仮想マシンとを接続する。
【0008】
また、本発明の一態様は、上記の解析システムにおいて、前記仮想マシンは、第1仮想マシンであって、前記第1仮想マシンは、1以上の第2仮想マシンに前記解析を並列計算に基づいて実行させる。
【0009】
また、本発明の一態様は、上記の解析システムにおいて、前記解析は、1つの解析対象に対して1以上の解析方法から選択された解析方法に基づいて実行される。
【0010】
また、本発明の一態様は、上記の解析システムにおいて、前記第2ユーザに紐づけられた1以上の第3ユーザ、及び当該第3ユーザの1以上の解析対象毎にリソース使用量を管理する。
【0011】
また、本発明の一態様は、上記の解析システムにおいて、前記解析とは、クライオ電子顕微鏡によって撮像された結果についての解析である。
【0012】
また、本発明の一態様は、クラウドコンピューティングを用いた解析システムにおける解析方法であって、解析を行うための解析環境を提供する第1ユーザに対する第1ユーザアカウントと、前記解析環境を利用する第2ユーザに対する第2ユーザアカウントとを作成するアカウント作成ステップと、前記第1ユーザアカウントに専用に割り当てられた仮想ネットワークである第1仮想ネットワークと、前記第2ユーザアカウントに専用に割り当てられた仮想ネットワークである第2仮想ネットワークとを前記解析システムのネットワーク内に構築する仮想ネットワーク構築ステップと、前記解析を行うための解析ソフトウェアを前記第1仮想ネットワーク内に記憶する記憶ステップと、前記第1仮想ネットワークと前記第2仮想ネットワークとを互いに接続する仮想ネットワーク接続ステップと、を有し、前記解析ソフトウェアは、前記第1仮想ネットワークと前記第2仮想ネットワークとが互いに接続されることによって前記第1ユーザアカウントと前記第2ユーザアカウントとの間で共有されており、前記解析ソフトウェアが更新されると、互いに接続された前記第1仮想ネットワーク、及び前記第2仮想ネットワークを介して前記第1ユーザアカウントと前記第2ユーザアカウントとの間で更新後の前記解析ソフトウェアが共有される解析方法である。
【発明の効果】
【0013】
本発明によれば、解析を行うユーザが自身で解析ソフトウェアを更新することなく最新の解析ソフトウェアを用いてセキュリティの確保された状態で解析ができる。
【図面の簡単な説明】
【0014】
【
図1】本発明の実施形態に係る解析ネットワークの構成の一例を示す図である。
【
図2】本発明の実施形態に係る研究機関、解析者、及び当該解析者が行う解析の関係の一例を示す図である。
【
図3】本発明の実施形態に係るクラウドサーバ内のネットワーク構成の一例を示す図である。
【
図4】本発明の実施形態に係るクラウドサーバの機能構成の一例を示す図である。
【
図5】本発明の実施形態に係る解析実行手順の一例を示す図である。
【
図6】本発明の実施形態に係る並列クラスタの構成の一例を示す図である。
【発明を実施するための形態】
【0015】
(実施形態)
以下、図面を参照しながら本発明の実施形態について詳しく説明する。
図1は、本実施形態に係る解析ネットワーク1の構成の一例を示す図である。本実施形態では、解析ネットワーク1は、一例として、クライオ電子顕微鏡によって撮像された結果についての解析を行うためのネットワークである。解析ネットワーク1は、少なくとも1以上の解析設備と、少なくとも1以上の解析者端末と、クラウドサーバ2とを備える。解析設備とは、データ測定装置を含む設備である。解析設備には、解析計算を行うためのオンプレミスの解析サーバ、及びファイルサーバなどが含まれても、含まなくてもよい。
【0016】
図1では一例として、解析ネットワーク1に備えられる少なくとも1以上の解析設備のうち解析設備3と、解析設備4-1と、解析設備4-2とが示されている。また、
図1では一例として、少なくとも1以上の解析者端末のうち、解析者端末31と、解析者端末32と、解析者端末41と、解析者端末42と、解析者端末43と、解析者端末44とが示されている。解析者端末は、例えば、パーソナルコンピュータ(Personal Computer:PC)、ワークステーション、またはサーバなどのコンピュータである。
【0017】
解析ネットワーク1では、1以上の解析設備それぞれと、クラウドサーバ2とがネットワークによって接続されている。1以上の解析設備それぞれから、クライオ電子顕微鏡によって撮像されたデータがネットワークを介してクラウドサーバ2に送信される。当該ネットワークは、例えば、専用回線を用いた通信ネットワーク、またはインターネットなどである。専用回線を用いた通信ネットワークとは、例えば、学術情報ネットワーク(Science Information NETwork:SINET)である。
【0018】
また、解析ネットワーク1では、1以上の解析者端末それぞれと、クラウドサーバ2とがネットワークによって接続されている。解析者は、解析者端末からクラウドサーバ2に接続し、クラウドサーバ2によって解析データを解析する。
【0019】
クラウドサーバ2は、ネットワークを経由して利用される仮想サーバである。クラウドサーバ2は、例えば、ネットワークによって相互に接続された1台以上のサーバである。当該サーバは、スーパーコンピュータなどのコンピュータである。クラウドサーバ2は、例えば、クラウドネットワークサービスの機能を備える。クラウドネットワークサービスとは、例えば、アマゾン社によって提供される「Amazon Web Service(AWS)」(登録商標)である。なお、クラウドネットワークサービスの種類は、AWS以外であってもよい。クラウドサーバ2によって解析を行うことを、クラウドコンピューティングという。クラウドサーバ2は、クラウドコンピューティングを用いた解析システムの一例である。
【0020】
1以上の解析設備それぞれは、1以上の研究機関のいずれかに備えられる。研究機関とは、例えば、大学、研究所、機構、企業などの団体、または当該団体内の研究グループである。研究機関は、1人以上の個人であってもよい。また、1以上の研究機関それぞれには、1以上の解析者が所属している。1以上の研究機関には、解析設備を備える研究機関と、解析設備を備えない研究機関とがある。本実施形態において、解析設備は、少なくともクライオ電子顕微鏡を備える。
【0021】
1以上の研究機関には、解析を行うための解析環境を他の研究機関に提供する第1研究機関L1が含まれる。解析環境には、例えば、解析ソフトウェアが含まれる。当該解析ソフトウェアには、解析を効率よく行うための解析ノウハウが反映されている。
【0022】
クライオ電子顕微鏡などの解析設備には、高額な導入費用、及び保守が必要である。また、クライオ電子顕微鏡などの解析設備では、導入時の設定、及び解析ソフトウェアの更新、または新規導入などの保守管理には、労力とノウハウが必要である。また、クライオ電子顕微鏡などの解析設備では、多量の画像データを扱うため、大容量のストレージが必要である。クライオ電子顕微鏡によって撮像されたデータの解析には、非常に多くの計算リソースが必要である。研究機関によっては、クライオ電子顕微鏡によって撮像されたデータの解析を行うための解析環境を備えられない場合がある。解析ネットワーク1では、解析環境を備えられない研究機関であっても、クラウドサーバ2によって、大容量のストレージ、及び非常に多くの計算リソースが必要な解析を実行できる。
【0023】
また、解析ネットワーク1では、第1研究機関L1によって提供される解析環境がクラウドサーバ2によって、第1研究機関L1と、他の研究機関との間で共有される。これによって、解析のノウハウを十分に持っていない研究機関であっても、第1研究機関L1によって提供される解析環境を利用して解析を実行できる。
【0024】
また、解析データは、研究機関内で機密情報として保持される必要がある。さらに、解析のプロジェクトの情報は、当該プロジェクトに携わる解析者のみによって共有される必要がある。ここで後述するようにクラウドサーバ2には、ユーザアカウントに専用に割り当てられた仮想ネットワークが構築される。解析ネットワーク1では、解析データが当該仮想ネットワークを介してアクセスされることによって解析環境における強力なセキュリティが保証される。
【0025】
図1に示す例では、解析設備3は、第1研究機関L1に備えられる。第1研究機関L1では、解析者端末31、及び解析者端末32はそれぞれ第1研究機関L1に所属する解析者によって使用される。上述したように第1研究機関L1は、解析環境を他の研究機関に提供する。
【0026】
解析設備4-1は、第2研究機関L2-1に備えられる。第2研究機関L2-1では、解析者端末41は第2研究機関L2-1に所属する解析者によって使用される。解析設備4-2は、第2研究機関L2-2に備えられる。第2研究機関L2-2では、解析者端末42は第2研究機関L2-2に所属する解析者によって使用される。第2研究機関L2-3では、解析者端末43は第2研究機関L2-3に所属する解析者によって使用される。第2研究機関L2-4では、解析者端末44は第2研究機関L2-4に所属する解析者によって使用される。なお、第2研究機関L2-3、及び第2研究機関L2-4には、解析設備は備えられていない。
【0027】
図2は、本実施形態に係る研究機関、解析者、及び当該解析者が行う解析の関係の一例を示す図である。
図2では、mの第2研究機関L2-i(i=1、2、・・・、m:mは第2研究機関の数)が示されている。以下では、mの第2研究機関L2-iのうち第2研究機関L2-1を例にとって第2研究機関L2-1、解析者、当該解析者が行う解析の関係について説明するが、第2研究機関L2-iのうち第2研究機関L2-1以外の第2研究機関についても当該関係は同様である。
【0028】
第2研究機関L2-1には、n人の解析者U1-i(i=1、2、・・・、n:nは解析者の数)が所属している。以下では、n人の解析者U1-iのうち解析者U1-1を例にとって解析者U1-1、及び解析者U1-1が行う解析の関係について説明するが、解析者U1-iのうち解析者U1-1以外の解析者についても当該関係は同様である。
【0029】
解析者U1-1は、j個の解析のプロジェクトP1-i(i=1、2、・・・、j:jはプロジェクトの数)に携わっている。解析とは、例えば、タンパク質の3次元構造についての単粒子解析である。プロジェクトP1-iとは、例えば、解析対象(タンパク質の3次元構造など)によって指定される。なお、解析は、単粒子解析以外の解析であってもよい。
【0030】
1つのプロジェクトでは、同一の解析対象に対して1以上のコンフィギュレーションから選択されたコンフィギュレーションに基づいて解析が実行される。コンフィギュレーションには、例えば、解析手法、解析ソフトウェア、解析手法と解析ソフトウェアに適した複数の計算ノードのハードウェアの構成(仕様)、及び当該複数の計算ノードの並列計算設定のうち1以上が含まれる。本実施形態において計算ノードとは、1台の計算機をいう。なお、複数の計算ノードの具体例については後述する。したがって、クラウドサーバ2において行われる解析は、1つの解析対象に対して1以上の解析方法から選択された解析方法に基づいて実行される。同一の解析対象に対して、異なる解析手法が行われる場合がある。なお、1つの解析対象に対して、当該解析対象に割り当てられた所定の解析方法に基づいて解析が行われてもよい。その場合、プロジェクトにおいてコンフィギュレーションの選択は不要である。
【0031】
以下では、j個のプロジェクトP1-iのうちプロジェクトP1-1を例にとってプロジェクトP1-i、及び1以上のコンフィギュレーションとの関係について説明するが、プロジェクトP1-iのうちプロジェクトP1-1以外のプロジェクトについても当該関係は同様である。プロジェクトP1-1では、k個のコンフィギュレーションC1-i(i=1、2、・・・、k:kはコンフィギュレーションの数)が用いられて解析が行われる。
【0032】
図3は、本実施形態に係るクラウドサーバ2内のネットワーク構成の一例を示す図である。クラウドサーバ2には、クラウドサーバ2を利用するためのユーザアカウントとして、第1ユーザアカウント5と、第2ユーザアカウント6とが作成されている。第1ユーザアカウント5は、第1研究機関L1に対して作成されたユーザアカウントである。第1研究機関L1は、解析を行うための解析環境を提供する。第2ユーザアカウント6は、第2研究機関L2に対して作成されたユーザアカウントである。第2研究機関L2は、第1研究機関L1が提供する解析環境を利用する。
【0033】
本実施形態では、一例として、第2ユーザアカウント6は、第2研究機関L2が解析ネットワーク1の利用を開始する時期に作成される。なお、第2研究機関L2が解析ネットワーク1の利用を開始する以前から第2研究機関L2がクラウドサーバ2を利用するためのアカウントが作成されている場合には、当該アカウントが第2ユーザアカウント6として用いられてもよい。
【0034】
図3では、
図1に示した1以上の研究機関(第2研究機関L2-1、第2研究機関L2-2、第2研究機関L2-3、及び第2研究機関L2-4など)のうち1つを第2研究機関L2に代表させて説明している。なお、第1研究機関L1は、第1ユーザの一例である。第2研究機関L2は、第2ユーザの一例である。
【0035】
クラウドサーバ2では、第1ユーザVPC50と、第2ユーザVPC60とがクラウドサーバ2のネットワーク内に構築されている。第1ユーザVPC50は、第1ユーザアカウント5に専用に割り当てられた仮想ネットワーク(Virtual Private Cloud:VPC)である。第2ユーザVPC60は、第2ユーザアカウント6に専用に割り当てられた仮想ネットワークである。VPCは、インターネットに接続しないプライベートなネットワークであり、強固なセキュリティが保証される。第1ユーザVPC50、及び第2ユーザVPC60としてはそれぞれ、Amazon Virtual Private Cloud (Amazon VPC)(登録商標)が好適に用いられる。なお、第1ユーザVPC50、及び第2ユーザVPC60としてはそれぞれ、Amazon VPCに限られず、他のVPCが利用されてよい。
【0036】
第1ユーザVPC50と、第2ユーザVPC60とは、互いに接続可能である。第1ユーザVPC50と、第2ユーザVPC60とを互いに接続するためは、仮想ネットワーク接続が用いられる。仮想ネットワーク接続では、IP(Internet Protocol)アドレスを用いて2つのVPC同士が接続される。ここでIPアドレスとしては、例えば、プライベートIPv4アドレスまたはIPv6アドレスが用いられる。仮想ネットワーク接続が行われたVPC同士は、互いのインスタンスが1つのプライベートなネットワーク環境に存在しているかのように、相互に通信可能である。例えば、Amason VPCにおいてはVPC peering connectionという機能がある。仮想ネットワーク接続には、例えばAWS VPCにおけるVPC peering connectionが好適に用いられる。なお、仮想ネットワーク接続は、AWS VPCにおけるVPC peering connectionに限られない。
【0037】
第1ユーザVPC50内には、ネットワークファイルシステム501が備えられる。また、第1ユーザアカウント5に割り当てられた第1ストレージ500が、クラウドサーバ2のネットワーク内に備えられる。第1ストレージ500は、第1ユーザVPC50の外に備えられる。
【0038】
第1ストレージ500は、各種の情報を記憶する。第1ストレージ500としては、例えば、アマゾン社によって提供される「Amazon Simple Storage Service」ストレージバケット(Amazon S3)(登録商標)が好適に用いられる。なお、第1ストレージ500としては、Amazon S3に限られず、各種のデータベースが利用されてよい。
【0039】
第1ストレージ500には、ネットワークファイルシステム501への接続が確立される前に実行されるスクリプトが記憶される。解析環境初期設定スクリプトIS1は、当該スクリプトの一例である。つまり、解析環境初期設定スクリプトIS1は、第1ストレージ500に記憶される。解析環境初期設定スクリプトIS1は、ネットワークファイルシステム501へのアクセスについての初期設定を行うためのスクリプトである。
【0040】
ネットワークファイルシステム501は、各種データの管理、及び当該各種データの操作を行うファイルシステムである。特にネットワークファイルシステム501には、コンフィギュレーションC1に対応する解析手法が記憶される。なお、コンフィギュレーションC1に対応する解析手法は、解析環境601のローカルディスク上にも記憶される。ネットワークファイルシステム501は、例えばLinux(登録商標)などのOS(Operating System)によってマウント可能なファイルシステムであることが好ましい。ネットワークファイルシステム501としては、例えば、Amazon Elastic File System (Amazon EFS)が好適に用いられる。なお、ネットワークファイルシステム501としては、Amazon EFSに限られず、各種のファイルシステムが利用されてよい。
【0041】
ネットワークファイルシステム501には、ネットワークファイルシステム501への接続が確立された後に実行されるスクリプト、及び実行体が記憶されている。解析ソフトウェアA1は、当該実行体の一例である。つまり、解析ソフトウェアA1は、ネットワークファイルシステム501に記憶される。上述したように、ネットワークファイルシステム501は、第1ユーザVPC50内に備えられる。したがって、解析ソフトウェアA1は、第1ユーザVPC50内に記憶される。また、並列クラスタ603の設定のためのスクリプト(並列クラスタ設定スクリプトという)は、当該スクリプトの一例である。
【0042】
解析ソフトウェアA1は、解析を行うためのソフトウェアである。本実施形態では、解析ソフトウェアA1は、クライオ電子顕微鏡による撮像結果を解析するためのソフトウェアである。解析ソフトウェアA1は、バージョンアップ、またはパッチリリースに伴って逐次迅速に第1研究機関L1によって頻繁に更新される。これによって、解析ソフトウェアA1には、最新の解析手法が反映される。
【0043】
解析ソフトウェアA1は、例えば、クライオ電子顕微鏡による単粒子解析のための解析ソフトウェアであるRELIONである。解析ソフトウェアA1は、RELIONに限られず、cryoSPARCなど他の解析ソフトウェアであってもよい。一例として、並列クラスタ設定スクリプト、及びRELIONなどの解析ソフトウェアはネットワークファイルシステム501に記憶される。
【0044】
解析ソフトウェアA1は、第1ユーザVPC50と第2ユーザVPC60とが互いに接続されることによって第1ユーザアカウント5と第2ユーザアカウント6との間で共有される。ここで第1ユーザVPC50と第2ユーザVPC60との接続には、上述した仮想ネットワーク接続が用いられる。つまり、第1ユーザVPC50と第2ユーザVPC60とが互いに接続されると、解析ソフトウェアA1は、第1ユーザVPC50内に記憶されているにもかかわらず、第2ユーザVPC60内に記憶されているかのように利用可能となる。
【0045】
解析ソフトウェアA1が更新されると、互いに接続された第1ユーザVPC50、及び第2ユーザVPC60を介して第1ユーザアカウント5と第2ユーザアカウント6との間で更新後の解析ソフトウェアA1が共有される。上述したように、解析ソフトウェアA1は、バージョンアップ、またはパッチリリースに伴って頻繁に更新される。解析ソフトウェアA1が更新された場合であっても、第1ユーザVPC50と第2ユーザVPC60とが仮想ネットワーク接続によって互いに接続されることによって、第2ユーザアカウント6に属する解析者U1は、最新の解析手法が反映された解析ソフトウェアA1を即座に利用することができる。つまり、解析ネットワーク1では、解析者U1は、解析ソフトウェアが更新される度に最新の解析ソフトウェアをダウンロードするなどして、自身が利用する解析ソフトウェアを自身で更新する必要がない。
【0046】
一方、第1ストレージ500に記憶される解析環境初期設定スクリプトIS1は、仮想ネットワーク接続によって共有されず、スクリプトが解析者U1は自身の端末(解析者端末41という。
図3において不図示)から送信される命令によって実行される。なお、解析者端末41は、第2ユーザ端末の一例である。
【0047】
なお、
図3では、解析ソフトウェアとして解析ソフトウェアA1のみが示されているが、ネットワークファイルシステム501には、複数の解析ソフトウェアが記憶されていてもよい。その場合、上述したコンフィギュレーションC1には、複数の解析ソフトウェアのうちいずれか、もしくはこれら複数の解析ソフトウェアの組合せを用いるかを指定する情報が含まれる。
【0048】
第1ユーザVPC50、第1ストレージ500、及びネットワークファイルシステム501は、第1ユーザアカウント5が作成されると、当該第1ユーザアカウント5に対して割り当てられて構築/生成される。
第2ユーザVPC60は、第2ユーザアカウント6が作成されると、当該第2ユーザアカウント6に対して割り当てられて構築される。
【0049】
クラウドサーバ2では、解析者アカウント600が作成されている。解析者アカウント600は、解析者U1に対して作成された解析者アカウントである。解析者U1は、第2研究機関L2に所属している。
【0050】
解析者アカウント600に対するアクセス権限は、第2研究機関L2によって設定される。例えば、解析者U1は、第2研究機関L2に所属する他の解析者の解析者アカウントについて、解析者の名前、及びプロジェクトの名前などの情報を取得している場合、当該他の解析者の解析者アカウント内のデータを参照することができるように設定される。また例えば、第2研究機関L2に所属し同一のプロジェクトに参加している複数の解析者について、当該複数の解析者それぞれの解析者アカウント内の同一プロジェクトについてのデータを参照することができるように設定されてもよい。
【0051】
解析者アカウント600によって、解析者端末41からコンソールを介してクラウドサーバ2のリソースを操作できる。当該操作には、スクリプトまたはプログラムが用いられる。
【0052】
解析者アカウント600内には、解析環境601、高速並列ファイルシステム602、並列クラスタ603、及び第2ストレージ604が構築/生成されている。ここで解析環境601、高速並列ファイルシステム602、並列クラスタ603は、解析者アカウント600内であってかつ第2ユーザVPC60内に構築/生成されている。第2ストレージ604は、解析者アカウント600内であってかつ第2ユーザVPC60の外に生成されている。
解析環境601は、プロジェクトP1に対して構築されている。解析環境601は、解析者アカウント600を有する解析者U1による解析者端末41からの操作によって構築される。
【0053】
図3に示す例では、高速並列ファイルシステム602、並列クラスタ603、及び第2ストレージ604は、コンフィギュレーションC1に基づいて解析を行うために割り当てられたリソースである。
高速並列ファイルシステム602、及び並列クラスタ603は、解析者アカウント600を有する解析者U1による解析者端末41からの操作によって、プロジェクトP1についての解析を実行するために生成される。
第2ストレージ604は、第2ユーザアカウント6が作成されて当該第2ユーザアカウント6に対して割り当てられて生成されるストレージのうちプロジェクトP1に対して割り当てられたリソースである。
【0054】
解析環境601は、解析を行うための統合開発環境を提供する。解析環境601には、C/C++、JAVA(登録商標)などのプログラミング言語向けのコンパイラー、Python(登録商標)などのスクリプト言語向けのインタープリテーター、デバッガ、及びターミナルなどが含まれる。解析環境601としては、例えば、AWS Cloud9(登録商標)が好適に用いられる。なお、解析環境601としては、AWS Cloud9に限られず、各種の統合開発環境が利用されてよい。
【0055】
高速並列ファイルシステム602は、並列クラスタ603の入出力データを一時的に記憶する。高速並列ファイルシステム602は、所定以上のアクセススピードを有している。第2ストレージ604に記憶される各種データの管理、及び当該各種データの操作を行ってもよい。高速並列ファイルシステム602としては、例えば、Amazon FSx for Lustreが好適に用いられる。なお、高速並列ファイルシステム602としては、Amazon FSx for Lustreに限られず、各種のファイルシステムが利用されてよい。
【0056】
並列クラスタ603は、並列計算を実行する仮想マシンによって構成される。プロジェクトP1のコンフィギュレーションC1に基づく解析は、並列クラスタ603によって実行される。なお、並列クラスタ603が実行する計算は、並列計算でなくてもよい。また、解析実行の設定は、ユーザが手動で解析実行を行う設定であってもよい。
【0057】
第2ストレージ604は、各種の情報を記憶する。第2ストレージ604が記憶する情報には、解析を行う測定データ及び解析結果が含まれる。また、第2ストレージ604は、並列クラスタ603の入出力データを長期間、または永続的に保存するために用いられてもよい。第2ストレージ604としては、例えば、Amazon S3(登録商標)が好適に用いられる。なお、第2ストレージ604としては、Amazon S3に限られず、各種のデータベースが利用されてよい。
【0058】
図4は、本実施形態に係るクラウドサーバ2の機能構成の一例を示す図である。クラウドサーバ2は、アカウント作成部20と、仮想ネットワーク構築部21と、仮想ネットワーク接続部22と、解析実行部23と、記憶部24とを備える。
【0059】
アカウント作成部20、仮想ネットワーク構築部21、仮想ネットワーク接続部22、解析実行部23、及び記憶部24はそれぞれ、クラウドサーバ2を構成する1以上のサーバに分散されて備えられる。アカウント作成部20、仮想ネットワーク構築部21、仮想ネットワーク接続部22、及び解析実行部23はそれぞれ、クラウドサーバ2を構成する1以上のサーバに備えられるCPU(Central Processing Unit)、GPU(Graphics Processing Unit)、またはFPGA(Field-programmable Gate Array)などの演算装置がRAM(Random Access Memory)または記憶部24からプログラムを読み込んで処理を実行することにより実現される。
【0060】
アカウント作成部20は、第1ユーザアカウント5と、第2ユーザアカウント6とを作成する。上述したように第1ユーザアカウント5は、解析を行うための解析環境を提供する第1研究機関L1に対するアカウントである。第2ユーザアカウント6は、第1研究機関L1によって提供される解析環境を利用する第2研究機関L2に対する第2ユーザアカウント6である。
【0061】
仮想ネットワーク構築部21は、第1ユーザVPC50と、第2ユーザVPC60とをクラウドサーバ2のネットワーク内に構築する。上述したように第1ユーザVPC50は、第1ユーザアカウント5に専用に割り当てられた仮想ネットワークである。第2ユーザVPC60は、第2ユーザアカウント6に専用に割り当てられた仮想ネットワークである。
【0062】
仮想ネットワーク接続部22は、第1ユーザVPC50と第2ユーザVPC60とを互いに接続する。
【0063】
解析実行部23は、解析者端末41から送信される命令によって、解析設備4-1から送信される解析データについて、解析ソフトウェアA1を用いて解析を行う。解析実行部23は、例えば、解析環境601、高速並列ファイルシステム602、及び並列クラスタ603を含む。解析実行部23は、解析ソフトウェアA1に基づく解析のための環境を第2ユーザVPC60内に設定する。解析実行部23は、解析を実行するための仮想マシン(後述するヘッドノード605)を第2ユーザVPC60内に生成する。解析実行部23は、解析者端末41と仮想マシン(後述するヘッドノード605)とを接続する。
【0064】
記憶部24は、各種の情報を記憶する。記憶部24は、例えば、解析ソフトウェアA1を第1ユーザVPC50内に記憶する。記憶部24は、第1ストレージ500、及び第2ストレージ604を含む。記憶部24は、1以上の記憶装置を用いて構成される。記憶装置とは、例えば、磁気ハードディスク装置、または半導体記憶装置等である。
【0065】
次に
図5を参照し、解析者U1が並列クラスタ603を用いて解析を実行する手順について説明する。解析ネットワーク1では、解析者アカウント600を作成しさえすれば、解析者U1は
図5に示す少なくとも3つの手順を実行するだけで解析を開始できる。したがって、解析ネットワーク1では、解析者U1が解析を開始するための煩雑な設定は不要である。
【0066】
図5は、本実施形態に係る解析実行手順の一例を示す図である。
図5に示す解析実行手順を解析者U1が実行するためには、解析者U1に対する解析者アカウント600が作成されている必要がある。解析実行手順を説明する前に、第1研究機関L1による解析者アカウント600の作成について説明する。
【0067】
解析者U1が利用する解析環境を構築するための所定の設定ファイル(解析環境構築設定ファイルという)が第1ストレージ500に予め記憶されている。解析環境構築設定ファイルには、VPCの設定、クラウドサーバ2を利用する上でのインフラストラクチャ環境を指定する情報などが含まれる。解析環境構築設定ファイルは、VPC、及びインフラストラクチャ環境を自動で設定するためのテンプレートである。なお、解析環境構築設定ファイルは、第1ストレージ500に予め記憶される代わりに、解析者U1によって解析者端末41からクラウドサーバ2に送信されてもよい。
【0068】
当該解析環境構築設定ファイルは、例えば、第1ストレージ500に記憶されている。当該解析環境構築設定ファイルの形式としては、例えば、AWS CloudFormation(登録商標)の形式が好適に用いられる。なお、解析環境構築設定ファイルの形式としては、AWS CloudFormationの形式に限られず、他の設定ファイルの形式が利用されてよい。
【0069】
第1研究機関L1は、まず、第2研究機関L2から第2ユーザアカウント6の情報を取得する。第1研究機関L1は、取得した第2ユーザアカウント6内において解析環境構築設定ファイルの設定を適用する、または第2研究機関L2に当該解析環境構築設定ファイルの設定を適用することを依頼する。解析環境構築設定ファイルが適用されると、第2ユーザアカウント6内に第2ユーザVPC60が構築される。第2ユーザVPC60が構築されると、当該第2ユーザVPC60と、第1ユーザVPC50とは、仮想ネットワーク接続によって互いに接続される。
【0070】
第1研究機関L1は、第2研究機関L2からの依頼に応じて、解析者U1のための解析者アカウント600を作成する。解析者アカウント600に対しては、解析環境構築設定ファイルに基づいてインフラストラクチャ環境が設定される。なお、解析者アカウント600は、第2研究機関L2によって作成されてもよい。
【0071】
以降、解析者U1は
図5に示す少なくとも3つの手順(ステップS10、ステップS20、及びステップS30)を実行するだけで解析を開始できる。
【0072】
図5に示すステップS10、ステップS20、ステップS30、及びステップS40の手順は、解析者U1によって自身の解析者端末41を経由し接続された解析環境601においてそれぞれの手順に対応するスクリプト(それぞれ第1命令、第2命令、第3命令、及び第4命令という)が実行されることによって、クラウドサーバ2において実行される。ステップS10の当該スクリプトは第1ストレージ500に保存されている。ステップS20、ステップS30、及びステップS40それぞれの当該スクリプトは、第1ユーザVPC50内のネットワークファイルシステム501に保存されている。
【0073】
ステップS10:クラウドサーバ2は、解析環境601において実行される第1命令に応じて、解析ソフトウェアA1に基づく解析のための解析環境601を第2ユーザVPC内に設定する。第1命令は、解析環境601を設定するための命令である。第1命令を実行するためのスクリプトは、上述した第1ストレージ500に保存されている解析環境初期設定スクリプトIS1である。したがって、クラウドサーバ2は、解析環境601において解析環境初期設定スクリプトIS1を実行することによって、解析環境601を第2ユーザVPC内に設定する。
【0074】
解析者アカウント600は、仮想ネットワーク接続によって第2ユーザVPC60と接続されている第1ユーザVPC50内に保存されているスクリプトを実行できる。当該スクリプトが実行されることによって、クラウドサーバ2は、解析環境601においてネットワークファイルシステム501のマウントを行う。解析環境601においてネットワークファイルシステム501のマウントが行われることによって、第2命令、第3命令、及び第4命令が利用可能となる。
【0075】
クラウドサーバ2は、並列クラスタ603の管理ツールのインストールを行う。クラウドサーバ2は、第2ストレージ604のインスタンスの生成を行う。第2ストレージ604のインスタンスが生成されると、解析に用いられるデータが解析者端末41から第2ストレージ604にアップロードできる状態となる。解析に用いられるデータは、例えば、クライオ電子顕微鏡によって撮像されたデータなどであり、解析設備に備えられるデータ測定装置、解析サーバ、またはファイルサーバなどからクラウドサーバ2に送信されるデータである。
【0076】
また、クラウドサーバ2は、解析者アカウント600内のインスタンスにセキュアソケットシェル(Secure Socket Shell:SSH)を用いたリモート接続(SSH接続)によって接続する際の認証のためのキーペア(プライベートキー、及び公開キー)を生成する。クラウドサーバ2は、並列クラスタ設定スクリプトを実行することによって、並列クラスタ603の設定のためのファイル(並列クラスタ設定ファイルという)を作成する。
【0077】
上述したコンフィギュレーションC1は、解析環境初期設定スクリプトIS1が実行されることによって作成される。作成されたコンフィギュレーションC1は、後述するステップS20において実行される第2命令で用いられる。上述した並列クラスタ設定ファイルが示す並列クラスタ603の設定の情報は、コンフィギュレーションC1に含まれる情報の一例である。
【0078】
なお、並列クラスタ設定ファイルの作成は、ステップS20において実行されてもよい。例えば、複数の設定が定常的に作成される場合には、当該並列クラスタ設定ファイルの作成は、ステップS20において実行されてもよい。
【0079】
ステップS20:クラウドサーバ2は、解析環境601において実行される第2命令に応じて、解析を実行するための仮想マシンを第2ユーザVPC60内に生成する。第2命令は、仮想マシンを生成するための命令である。
【0080】
クラウドサーバ2は、並列クラスタ設定ファイルに基づいて並列クラスタ603のインスタンスを仮想マシンとして生成する。ステップS20において生成される仮想マシンには、ヘッドノード605が含まれる。並列クラスタ603のインスタンスの詳細は、
図6を参照し後述する。
【0081】
クラウドサーバ2は、並列クラスタ設定ファイルに基づいて高速並列ファイルシステム602のインスタンスを生成する。クラウドサーバ2は、生成した並列クラスタ603に解析ソフトウェアをインストールし、並列クラスタ603が当該解析ソフトウェアに基づく解析を実行するための設定を行う。並列クラスタ603にインストールされる解析ソフトウェアとは、ネットワークファイルシステム501に記憶されている解析ソフトウェアA1である。
【0082】
なお、並列クラスタ設定ファイルは、上述したようにコンフィギュレーションC1の一部である。したがって、並列クラスタ603のインスタンス、及び高速並列ファイルシステム602のインスタンスはコンフィギュレーションC1に基づいて生成される。
【0083】
ステップS30:クラウドサーバ2は、解析者端末41からの第3命令に応じて、解析者端末41と、ステップS20において第2ユーザVPC60内に生成された仮想マシンとを接続する。当該仮想マシンは、ヘッドノード605である。つまり、第3命令が実行されることによって、解析者端末41は、並列クラスタ603内に生成されたヘッドノード605にリモート接続される。第3命令は、仮想マシンに接続するための命令である。
【0084】
解析者端末41と仮想マシンとが接続されると、解析者U1は解析者端末41から当該仮想マシンを使用して解析を実行する。上述したように当該仮想マシンには解析ソフトウェアA1がインストールされており、当該解析には解析ソフトウェアA1が利用される。
【0085】
解析者端末41と第2ユーザVPC60内に生成された仮想マシンとの接続には、例えば、SSH接続、NICE DCV接続(NICEは登録商標)、ブラウザ上で実行されるウェブアプリケーション、またはインターネットなどが用いられる。
SSH接続では、解析者U1はコマンドラインインターフェースを介して仮想マシンを使用して解析を実行する。なお、第3命令がSSH接続である場合、解析環境601がヘッドノード605にSSH接続によって接続されて、解析者端末41からヘッドノード605を使用した解析が可能になる。
NICE DCV接続では、解析者U1はグラフィカルインターフェースを介して仮想マシンを使用して解析を実行する。なお、第3命令がNICE DCV接続である場合、NICE DCV接続に必要なURL(Uniform Resource Locator)が発行され、そのURLに解析者端末41からアクセスすることで解析者端末41がヘッドノード605に直接接続される。
【0086】
ステップS40:クラウドサーバ2は、解析者端末41からの第4命令に応じて、ステップS20において第2ユーザVPC60内に生成された仮想マシンを削除する。第4命令は、仮想マシンを削除するための命令である。
【0087】
ここで並列クラスタ603による解析によって生成された解析データの出力は、高速並列ファイルシステム602に保存されている。クラウドサーバ2は、並列クラスタ603のインスタンスを削除する前に、当該並列クラスタ603による解析によって生成された解析データの出力を第2ストレージ604に複製(エクスポート)する。その後、クラウドサーバ2は、並列クラスタ603のインスタンスと高速並列ファイルシステム602のインスタンスを削除する。
以上で、解析実行手順は終了する。
【0088】
なお、ステップS10の処理はプロジェクトごとに1回だけ実行される。一方、ステップS20、ステップS30、ステップS40の各処理はプロジェクト期間中に1回以上実行される。換言すれば、ステップS20、ステップS30、ステップS40の各処理はプロジェクト期間中に複数回繰り返し実行される場合がある。また、ステップS40の後に、ステップS10において設定した解析環境601の設定を削除する処理が実行されてもよい。
【0089】
ここで
図6を参照し、並列クラスタ603の構成について説明する。
図6は、本実施形態に係る並列クラスタ603の構成の一例を示す図である。
図6に示す例では、並列クラスタ603を構成する仮想マシン(インスタンス)として、ヘッドノード605と、計算ノード606とが第2ユーザVPC60内に生成されている。
図6では、計算ノード606の一例として、計算ノード606-1、計算ノード606-2、及び計算ノード606-3の3つの仮想マシンが生成されている。
【0090】
ヘッドノード605は、常時起動している。ヘッドノード605は、上述したステップS30において解析者端末41から接続される仮想マシンである。
図6では、一例として、NICE DCV接続によって接続が行われている場合の接続画面B1が示されている。ヘッドノード605は、解析ソフトウェアA1から投入されるジョブのスケジューリングを行う。当該スケジューリングには、解析ソフトウェアA1から投入されるジョブを計算ノード606へ割り振ることが含まれる。
【0091】
ここで解析ソフトウェアA1には、例えば、Slurm Workload Managerなどのジョブスケジューラが用いられる。ヘッドノード605は、解析ソフトウェアA1から投入されるジョブを取得し、取得したジョブの種類、規模などを判定する。ヘッドノード605は、判定した結果に応じて、当該ジョブを計算ノード606に投入する。解析ソフトウェアA1に投入されるジョブは同時に複数投入され、複数の計算装置(プロセッサ、及び計算機のうち2以上)を使って並列に実行されることが可能である。また、投入される一つのジョブが、複数の計算装置が協調して1つの処理を行う並列計算であってもよい。解析ソフトウェアA1に投入されるジョブを実行するためには、並列クラスタ603による並列実行及び並列計算、またはこの組み合わせが好適である。ここで本実施形態において、並列実行とは、複数の計算装置(プロセッサ、及び計算機のうち2以上)を使って複数のプログラムを同時に実行することをいう。また、本実施形態において、並列計算とは、複数の計算装置(プロセッサ、及び計算機のうち2以上)が協調して1つの処理を行うことをいう。
【0092】
以下、解析ソフトウェアA1から投入されるジョブを並列計算ジョブという場合がある。なお、解析に用いられるデータ(解析設備から送信されるデータ)は、解析者端末41からの命令で第2ストレージ604にジョブが投入される前に予めアップロードされる。
【0093】
ヘッドノード605は、計算ノード606による並列計算ジョブの実行結果を高速並列ファイルシステム602から取得する。ここで高速並列ファイルシステム602には、計算ノード606から出力される並列計算ジョブの実行結果が記憶されている。ヘッドノード605は、取得した並列計算ジョブの実行結果を解析ソフトウェアA1による解析結果として、解析者端末41に送信する。解析者端末41では、当該解析結果が表示される。
【0094】
ヘッドノード605は、ジョブスケジューラに並列計算ジョブを投入する。ジョブスケジューラは、計算ノード606に解析を実行させる。ジョブスケジューラは、計算ノード606が起動していない場合、計算ノード606を起動させる。ジョブスケジューラは、計算ノード606が既に起動している場合、当該計算ノード606に並列計算ジョブを投入する。
【0095】
図6に示す例では、ヘッドノード605は、計算ノード606-1、計算ノード606-2、及び計算ノード606-3に、解析ソフトウェアA1に投入された並列計算ジョブを実行させる。つまり、ヘッドノード605は、1以上の計算ノード606に解析を並列計算に基づいて実行させる。
【0096】
1以上の計算ノード606には、互いに異なるコンフィギュレーションが割り当てられてよい。つまり、1以上の計算ノード606はそれぞれ、互いに異なる解析手法に基づいて解析を実行することもできる。例えば、1以上の計算ノード606のうち1番目からn1番目までの計算ノードには、1番目のコンフィギュレーションが割り当てられ、(n1+1)番目からn2番目までの計算ノードには、2番目のコンフィギュレーションが割り当てられ、(n2+1)番目からn3番目までの計算ノードには、3番目のコンフィギュレーションが割り当てられる(ここで、n1、n2、及びn3はそれぞれ自然数)。クラウドサーバ2では、1つのプロジェクトについて、ヘッドノード605によって生成される1以上の計算ノード606によって互いに異なる解析手法に基づいて解析を実行できるため、異なる解析手法を実行するための余分なリソースは不要である。
【0097】
なお、ヘッドノード605は、第1仮想マシンの一例である。計算ノード606-1、計算ノード606-2、及び計算ノード606-3は、それぞれ第2仮想マシンの一例である。
【0098】
計算ノード606は、解析を実行する時点においてのみジョブスケジューラによって自動的に起動される。計算ノード606は、解析が終了しその後一定時間新たなジョブが投入されない場合、ジョブスケジューラによって自動的に削除される。
【0099】
解析ネットワーク1では、クラウドサーバ2は、研究機関に所属する解析者、及び当該解析者の1以上のプロジェクト毎にリソース使用量を管理する。例えば、解析者、及びプロジェクトを単位として、リソースにタグが付与される。上述したステップS10では、第2ストレージ604に対してタグが付与される。ステップS20では、生成された仮想マシンのインスタンス(ヘッドノード605、及び計算ノード606)に対してタグが付与される。タグに基づいて、解析者、及びプロジェクトを単位として、リソース使用量が管理される。リソース使用量とは、計算機、及びストレージなどの計算資源の使用量をいう。例えば、計算機の使用量とは、ヘッドノードが生成されてから削除されるまでの時間に応じた量である。
【0100】
ここで研究機関は第2ユーザの一例であって、解析者は第2ユーザに紐づけられた第3ユーザの一例である。したがって、クラウドサーバ2では、第2ユーザ(研究機関)に紐づけられた1以上の第3ユーザ(解析者)、及び当該第3ユーザの1以上の解析対象毎にリソース使用量を管理する。
なお、クラウドサーバ2は、リソース使用量を管理しなくてもよい。リソース使用量は、クラウドサーバ2とは別体のサーバによって管理されてもよい。
【0101】
なお、
図6において、リージョンR1は、複数のリージョンのうちの1つである。リージョンは、クラウドサーバ2のデータセンター群の単位である。複数のリージョンは互いに分離されており、リージョン毎に当該リージョンに紐づいているリソースのみが表示される。さらにリージョン毎に複数の独立した領域としてゾーンが存在する。インスタンスを生成し、起動するためには、解析者U1は、リージョンを選択する。リージョン毎に使用するゾーンは第1研究機関L1が定め、解析環境構築設定ファイルに記載されている。
図6に示す例では、リージョンとしてリージョンR1が選択され、VPCとして第2ユーザVPC60が構築されている。この第2ユーザVPC60内でゾーンZ1にサブネットが構築されている。
【0102】
なお、本実施形態では、第1ユーザVPC50と第2ユーザVPC60とが常に互いに接続される場合の一例について説明したが、これに限られない。第1ユーザVPC50と第2ユーザVPC60とは、所定の期間のみ互いに接続されてもよい。例えば、第1ユーザVPC50と第2ユーザVPC60とは、1日に1回のみ互いに接続されて、第1ユーザVPC50内のデータと、第2ユーザVPC60内のデータとの同期が行われてもよい。
【0103】
上述したように解析ソフトウェアA1は、頻繁に更新される。頻繁に更新されるとは、例えば、24時間より短い頻度、1日から6日程度の頻度、1週間から3週間程度の頻度、または1か月から3か月程度の頻度などで更新されることをいう。解析ソフトウェアA1は、3か月より長い頻度で更新されてもよい。
【0104】
なお、本実施形態では、解析ネットワーク1がクライオ電子顕微鏡によって撮像された結果についての解析を行うためのネットワークである場合の一例について説明したが、これに限られない。解析ネットワーク1を用いて行われる解析は、クライオ電子顕微鏡によって撮像された結果についての解析以外の解析(例えば、X線結晶解析、または小角散乱法など)であってもよい。ただし、本実施形態において説明したように、解析ネットワーク1では、解析ソフトウェアが更新された場合であっても、VPC同士が接続されていることによって、解析者U1は最新の解析ソフトウェアを利用することができる。解析ネットワーク1は、解析ソフトウェアが頻繁に更新されるような解析手法が完全には確立していない成長の過程にある研究の解析に好適に用いられる。
【0105】
以上に説明したように、本実施形態に係る解析システム(本実施形態において、クラウドサーバ2)は、クラウドコンピューティングを用いた解析システムであって、アカウント作成部20と、仮想ネットワーク構築部21と、記憶部24と、仮想ネットワーク接続部22とを備える。
アカウント作成部20は、解析を行うための解析環境を提供する第1ユーザ(本実施形態において、第1研究機関L1)に対する第1ユーザアカウント5と、解析環境を利用する第2ユーザ(本実施形態において、第2研究機関L2)に対する第2ユーザアカウント6とを作成する。
仮想ネットワーク構築部21は、第1ユーザアカウント5に専用に割り当てられた仮想ネットワークである第1仮想ネットワーク(本実施形態において、第1ユーザVPC50)と、第2ユーザアカウント6に専用に割り当てられた仮想ネットワークである第2仮想ネットワーク(本実施形態において、第2ユーザVPC60)とを解析システム(本実施形態において、クラウドサーバ2)のネットワーク内に構築する。
記憶部24は、解析を行うための解析ソフトウェアA1を第1仮想ネットワーク(本実施形態において、第1ユーザVPC50)内に記憶する。
仮想ネットワーク接続部22は、第1仮想ネットワーク(本実施形態において、第1ユーザVPC50)と第2仮想ネットワーク(本実施形態において、第2ユーザVPC60)とを互いに接続する。
解析ソフトウェアA1は、第1仮想ネットワーク(本実施形態において、第1ユーザVPC50)と第2仮想ネットワーク(本実施形態において、第2ユーザVPC60)とが互いに接続されることによって第1ユーザアカウント5と第2ユーザアカウント6との間で共有されており、解析ソフトウェアA1が更新されると、互いに接続された第1仮想ネットワーク(本実施形態において、第1ユーザVPC50)、及び第2仮想ネットワーク(本実施形態において、第2ユーザVPC60)を介して第1ユーザアカウント5と第2ユーザアカウント6との間で更新後の解析ソフトウェアA1が共有される。
【0106】
この構成により、本実施形態に係る解析システム(本実施形態において、クラウドサーバ2)では、解析ソフトウェアA1が更新されると、互いに接続された第1仮想ネットワーク(本実施形態において、第1ユーザVPC50)、及び第2仮想ネットワーク(本実施形態において、第2ユーザVPC60)を介して第1ユーザアカウント5と第2ユーザアカウント6との間で更新後の解析ソフトウェアA1を共有することができるため、解析を行うユーザが自身で解析ソフトウェアを更新することなく最新の解析ソフトウェアA1を用いてセキュリティの確保された状態で解析ができる。
【0107】
クライオ電子顕微鏡を用いた単粒子解析のような解析では、解析環境には、高額な導入費用及び保守、煩雑なセットアップ、並びにソフトウェア管理が必要となる。クライオ電子顕微鏡を用いた単粒子解析では、多量(例えば、1データセット数TB)の画像データを解析するため、非常に多くの計算リソースが必要となる。
【0108】
全ての研究機関が必要な計算リソースを確保できるわけではない。そのため従来は、限られた計算リソースを複数のプロジェクトで共有しており、慢性的に計算リソースが不足することによって解析を待たなければならないプロジェクトが発生していた。また、解析設備に故障が起きる場合がある。一方、解析に用いる解析ソフトウェアには、RELIONなどオープンソースが用いられる場合があり、頻繁に更新される場合がある。
【0109】
本実施形態に係る解析システム(本実施形態において、クラウドサーバ2)を備える解析ネットワーク1は、複数の解析設備(本実施形態において、クライオ電子顕微鏡)に対してモノのインターネット(Internet of Things:IoT)を適用し、高度なデータ解析を可能にする。
【0110】
解析ネットワーク1では、クラウドサーバ2を利用しているため、解析に必要な台数だけ仮想マシンを生成できる。そのため、解析ネットワーク1では、解析に大規模な計算が必要となる場合であっても、クラウドサーバ2を利用しない場合に比べて処理に要する期間を短縮できる。
【0111】
解析環境を持っていない解析者であっても、第1ユーザ(本実施形態において、第1研究機関L1)が提供する解析環境を、クラウドサーバ2にアクセスすることによって利用することができる。ここで解析ネットワーク1では、解析者は、上述したように、ステップS10、ステップS20、及びステップS30の3つの解析手順によって解析を開始できる。そのため、解析者は、解析を開始するための煩雑なセットアップが不要である。
【0112】
以上、図面を参照してこの発明の一実施形態について詳しく説明してきたが、具体的な構成は上述のものに限られることはなく、この発明の要旨を逸脱しない範囲内において様々な設計変更等をすることが可能である。
【符号の説明】
【0113】
2…クラウドサーバ(クラウドコンピューティング)、L1…第1研究機関(第1ユーザ)、L2…第2研究機関(第2ユーザ)、5…第1ユーザアカウント、6…第2ユーザアカウント、20…アカウント作成部、21…仮想ネットワーク構築部、22…仮想ネットワーク接続部、24…記憶部、50…第1ユーザVPC(第1仮想ネットワーク)、60…第2ユーザVPC(第2仮想ネットワーク)、A1…解析ソフトウェア