このガイダンスは、ユーザーが大規模な分析のためにゲノム、臨床、変異、発現、および画像データを準備し、データレイクに対してインタラクティブなクエリを実行するために役立ちます。Infrastructure as Code (IaC) のオートメーション、迅速なイテレーションのための継続的インテグレーションと継続的デリバリー (CI/CD)、データを保存および変換するための取り込みパイプライン、インタラクティブな分析のためのノートブックとダッシュボードが含まれています。また、AWS HealthOmics、Amazon Athena、および Amazon SageMaker ノートブックを使用して、ゲノミクスバリアントと注釈データを保存およびクエリする方法も示します。このガイダンスは Bioteam と共同して構築されました。
アーキテクチャ図
-
アーキテクチャ
-
CI/CD
-
アーキテクチャ
-
ステップ 1
The Cancer Genome Archive (TCGA) からデータを取り込み、フォーマットし、カタログ化します。生データは、TCGA API を通じて Registry of Open Data on AWS (RODA) からプルされます。データは AWS Glue 抽出、変換、ロード (ETL) ジョブで変換され、AWS Glue Crawler でカタログ化されます。これにより、データは Athena でクエリできるようになります。ステップ 2
The Cancer Imaging Atlas (TCIA) のデータが取り込まれ、フォーマットされ、カタログ化されます。生データは、TCIA API を介して RODA からプルされます。データは AWS Glue ETL ジョブで変換され、AWS Glue Crawler でカタログ化されます。イメージの場所は、SageMaker ノートブックを使用してクエリおよび表示できます。
ステップ 3
One Thousand Genomes プロジェクトの VCF データ、サンプル VCF、および ClinVar Annotation VCF は、Amazon Omics Variant および Annotation Store に取り込まれ、Lake Formation でテーブルとして使用できるようになります。
ステップ 4
研究者は、QuickSight のビジュアルインターフェイスを通じて、マルチモーダルデータを分析します。データは SPICE (Super-fast、Parallel、In-memory Calculation Engine) データベースにキャッシュされ、クエリのパフォーマンスが最適化されます。
ステップ 5
データサイエンティストは、SageMaker Notebook 環境で提供される Jupyter Notebook を使用して、データをコードで分析します。
-
CI/CD
-
ステップ 1
setup.sh スクリプトを含む AWS CodeBuild プロジェクトを作成します。このスクリプトは、残りの AWS CloudFormation スタックとコードリポジトリ、およびコードを作成します。ステップ 2
ランディングゾーン (zone) スタックは、AWS CodeCommit パイプリポジトリを作成します。ランディングゾーン (zone) スタックがセットアップを完了すると、setup.sh スクリプトがソースコードを CodeCommit パイプリポジトリにプッシュします。ステップ 3
デプロイパイプライン (pipe) スタックは CodeCommit コードリポジトリ、Amazon CloudWatch イベント、AWS CodePipeline コードパイプラインを作成します。デプロイパイプライン (pipe) スタックがセットアップを完了すると、setup.sh スクリプトがソースコードを CodeCommit コードリポジトリにプッシュします。
ステップ 4
CodePipeline (code) パイプラインはコードベース (ゲノム、イメージング、オミクス) CloudFormation スタックをデプロイします。CodePipeline パイプラインがセットアップを完了すると、アカウントにデプロイされたリソースに、オブジェクトアクセスログ、ビルドアーティファクト、データレイク内のデータを保存するための Amazon Simple Storage Service (Amazon S3) バケットが含まれます。ほかにも、ソースコード用の CodeCommit リポジトリ、コードアーティファクトを構築するための CodeBuild プロジェクト、リソースの構築とデプロイを自動化するための CodePipeline パイプライン、AWS Glue ジョブ、クローラー、およびデータカタログのサンプル、Amazon SageMaker Jupyter Notebook インスタンスが含まれます。Amazon Omics Reference Store、Variant Store、Annotation Store がプロビジョニングされ、サンプルバリアントコールファイル (VCF)、サブセット 1000 ゲノム VCF、および ClinVar Annotation VCF が分析のために取り込まれます。データレイク管理者は、AWS Lake Formation とともに Amazon Athena と SageMaker を使用して、Omics Variant と Annotation Store のデータへのアクセスを有効にできます。 Amazon Omics Reference Store、Variant Store、Annotation Store は、公開されているバリアントおよび注釈データを保存し、クエリおよび分析に使用できるようにプロビジョニングされています。
ステップ 5
イメージングスタックは、CloudFormation クイックスタートへのハイパーリンクを作成し、これを起動することで Amazon QuickSight スタックをデプロイすることができます。QuickSight スタックは、マルチオミクスデータセットをインタラクティブに調査するために必要な Identity and Access Management (IAM)およびQuickSight リソースを作成します。
Well-Architected Pillars
AWS Well-Architected フレームワークは、クラウドでシステムを構築する際に行う決定の長所と短所を理解するのに役立ちます。フレームワークの 6 つの柱により、信頼性が高く、安全かつ効率的で、費用対効果が高く、持続可能なシステムを設計および運用するためのアーキテクチャのベストプラクティスを学ぶことができます。AWS マネジメントコンソールで無料で提供されている AWS Well-Architected Tool を使用し、各柱の一連の質問に回答することで、これらのベストプラクティスに照らしてワークロードを確認できます。
上記のアーキテクチャ図は、Well-Architected のベストプラクティスを念頭に置いて作成されたソリューションの例です。完全に Well-Architected であるためには、可能な限り多くの Well-Architected ベストプラクティスに従う必要があります。
-
運用上の優秀性
このガイダンスでは、CodeBuild と CodePipeline を使用して、Variant Call Files (VCF) を取り込んで保存し、The Cancer Genome Atlas (TCGA) と The Cancer Imaging Atlas (TCIA) のデータセットからマルチモーダルデータとマルチオミクスデータを扱うソリューションに必要なすべてを構築、パッケージ化、デプロイしています。サーバーレスのゲノミクスデータの取り込みと分析は、フルマネージド サービスである Amazon Omics を使用して実証されています。ソリューションの CodeCommit リポジトリで行われたコードの変更は、提供される CodePipeline のデプロイパイプラインを通じてデプロイされます。
-
セキュリティ
このガイダンスでは、IAMによるロールベースアクセスを使用し、すべてのバケットで暗号化を有効にし、プライベートとし、パブリックアクセスをブロックしています。AWS Glue のデータカタログでは暗号化が有効になっており、AWS Glue によって Amazon S3 に書き込まれるメタデータはすべて暗号化されています。すべてのロールは最小特権で定義され、サービス間の通信はすべてお客様のアカウント内にとどまります。管理者はJupyter notebook、Amazon Omics Variant Storesのデータ、 AWS Glue AWS Glue CatalogのデータアクセスをLake Formationを使って完全に管理し、Athena、SageMaker Notebook 、 QuickSight のデータアクセスを提供されたIAM ロールを通して管理することができます。
-
信頼性
AWS Glue、Amazon S3、Amazon OmicsとAthenaはすべてサーバーレスであり、データ量の増加に応じてデータアクセスのパフォーマンスをスケールします。AWS Glue は、データ統合ジョブの実行に必要なリソースをプロビジョニング、設定、スケールします。Athena はサーバーレスであるため、迅速にデータのクエリを実行できます。サーバーやデータウェアハウスの設定や管理は不要です。QuickSight SPICE インメモリストレージは、データ調査を数千人のユーザーまでスケールします。
-
パフォーマンス効率
サーバーレステクノロジーを使用することで、使用するリソースのみをプロビジョニングします。各 AWS Glue ジョブは、データ変換のためにオンデマンドで Spark クラスターをプロビジョニングし、終了したらリソースをデプロビジョニングします。新しい TCGA データセットを追加する場合は、新しい AWS Glue ジョブや AWS Glue クローラーを追加して、オンデマンドでリソースをプロビジョニングできます。Athena では、クエリが自動的に並列で実行されます。そのため、ほとんどの結果を数秒で得ることができます。 Amazon Omics は、ファイルを Apache Parquet に変換することで、バリアントクエリのパフォーマンスを大規模に最適化します。
-
コストの最適化
オンデマンドでスケールするサーバーレステクノロジーを利用することで、お支払いいただくのは、利用したリソースについての料金のみとなります。さらにコストを最適化するために、SageMaker のノートブック環境を使用していないときに停止することができます。また、QuickSight のダッシュボードは、別の CloudFormationテンプレートでデプロイされるため、可視化ダッシュボードを使用する予定がない場合は、デプロイしないことでコストを削減することも可能です。 Amazon Omicsは、バリアントデータのストレージコストを大規模に最適化します。クエリのコストは、Athena がスキャンするデータ量によって決まり、それに応じてクエリを記述することで最適化できます。
-
サステナビリティ
マネージドサービスと動的スケーリングを幅広く使用することで、バックエンドサービスの環境への影響を最小限に抑えることができます。持続可能性の重要な要素は、ノートブックサーバーインスタンスの使用を最大化することです。使用していないときは、ノートブック環境を停止することをお勧めします。
その他の考慮事項
データ変換
このアーキテクチャでは、クエリとパフォーマンスのためにソリューション内のデータセットを取り込み、準備し、カタログ化するために必要な抽出、変換、ロード (ETL) のために AWS Glue を選択しました。必要に応じて、新しい The Cancer Genome Atlas (TCGA) と The Cancer Image Atlas (TCIA) のデータセットを取り込むために、新しい AWS Glue ジョブや AWS Glue Crawler を追加できます。また、新しいジョブやクローラーを追加して、独自のデータセットを取り込み、準備し、カタログ化することも可能です。
データ分析
このアーキテクチャでは、分析のための Jupyter Notebook 環境を提供するために、SageMaker Notebooks を選択しました。既存の環境に新しいノートブックを追加することも、新しい環境を作成することも可能です。Jupyter Notebook よりも RStudio の方が好きな方は、RStudio on Amazon SageMaker を使うことができます。
データの可視化
このアーキテクチャでは、データの可視化と調査のためのインタラクティブなダッシュボードを提供するために、QuickSight を選択しました。QuickSight ダッシュボードのセットアップは、別の CloudFormation テンプレートを介して行われるため、ダッシュボードを使用する予定がない場合は、プロビジョニングを行う必要はありません。QuickSight では、独自の分析を作成したり、追加のフィルターや可視化を調査したり、データセットや分析を同僚と共有したりすることができます。
実装リソース
このリポジトリは、大規模な分析のためにゲノム、臨床、変異、発現、および画像データを準備し、データレイクに対してインタラクティブなクエリを実行するためのスケーラブルな環境を AWS に構築します。このソリューションでは、1) HealthOmics Variant Store と Annotation Store を使用してゲノムバリアントデータと注釈データを保存する方法、2) マルチモーダルデータの準備とカタログ化のためにサーバーレスのデータインジェストパイプラインをプロビジョニングする方法、3) インタラクティブなインターフェイスを通じて臨床データを視覚化して詳しく確認する方法、および 4) Amazon Athena と Amazon SageMaker を使用して、マルチモーダルデータレイクに対してインタラクティブな分析クエリを実行する方法を示します。
AWS アカウント内で実験および使用するための詳細なガイドが提供されています。ガイダンス構築の各段階 (デプロイ、使用、およびクリーンアップを含む) は、デプロイに向けて準備するために詳細に検討されています。
サンプルコードは出発点です。これは業界で検証済みであり、規範的ではありますが決定的なものではなく、内部を知ることができ、開始に役立ちます。
関連コンテンツ
AWS での健康 AI と ML サービスによるマルチモーダルデータ分析のガイダンス
貢献者
BioTeam はライフサイエンス IT コンサルティング会社で、科学者がデータを使って何をしたいかということと、何ができるのかということの間のギャップを埋めることによって、科学的発見を加速させることに情熱を注いでいます。2002 年以来、科学、データ、テクノロジーの交差点で活動してきた BioTeam は、最も困難な研究、技術、運用の問題を解決する戦略、先端技術、IT サービスを適用するための学際的能力を備えています。科学的ニーズを強力な科学的データエコシステムに変換することに長けている私たちは、バイオテクノロジーのスタートアップから世界最大の製薬会社、連邦政府機関から学術研究機関に至るまで、ライフサイエンス研究のリーダーたちと幅広く提携する能力を誇りとしています。
免責事項
サンプルコード、ソフトウェアライブラリ、コマンドラインツール、概念の実証、テンプレート、またはその他の関連技術 (私たちの担当者から提供される前述のものを含む) は、AWS カスタマーアグリーメント、またはお客様と AWS との間の関連文書契約 (いずれか該当する方) に基づき、AWS コンテンツとしてお客様に提供されるものです。お客様は、この AWS コンテンツを、お客様の本番アカウント、または本番データもしくはその他の重要なデータで使用すべきではありません。お客様は、サンプルコードなどの AWS コンテンツを、お客様固有の品質管理手法および基準に基づいて、本番グレードでの使用に適したテスト、セキュリティ確保、および最適化を行う責任を負います。AWS コンテンツのデプロイには、Amazon EC2 インスタンスの実行や Amazon S3 ストレージの使用など、AWS の課金対象リソースを作成または使用するための AWS 料金が発生する場合があります。
本ガイダンスにおける第三者のサービスまたは組織への言及は、Amazon または AWS と第三者との間の承認、後援、または提携を意味するものではありません。AWS からのガイダンスは技術的な出発点であり、アーキテクチャをデプロイするときにサードパーティのサービスとの統合をカスタマイズできます。