이 지침은 사용자가 대규모 분석을 위해 게놈, 임상, 돌연변이, 발현, 이미징 데이터를 준비하고 데이터 레이크에 대해 대화형 쿼리를 수행하는 데 도움이 됩니다. 이 지침에는 코드형 인프라(IaC) 자동화, 신속한 반복을 위한 지속적 통합 및 지속적 배포(CI/CD), 데이터 저장과 변환을 위한 모으기 파이프라인, 대화형 분석을 위한 노트북 및 대시보드가 포함되어 있습니다. 또한 AWS HealthOmics, Amazon Athena, Amazon SageMaker 노트북을 사용하여 유전체 변이 데이터와 유전체 주석 데이터를 저장하고 쿼리하는 방식을 보여줍니다. 이 지침은 Bioteam과의 협업 하에 작성되었습니다.
아키텍처 다이어그램
-
아키텍처
-
CI/CD
-
아키텍처
-
1단계
The Cancer Genome Archive(TCGA)에서 데이터를 수집하고 형식을 지정한 후 카탈로그로 작성합니다. Registry of Open Data on AWS(RODA)에서 TCGA API를 통해 원시 데이터를 가져옵니다. AWS Glue의 추출, 전환, 적재(ETL) 작업에서 데이터를 변환하고 AWS Glue 크롤러를 사용하여 카탈로그로 만듭니다. 이렇게 하면 Athena에서 쿼리에 데이터를 사용할 수 있습니다.2단계
The Cancer Imaging Atlas(TCIA)에서 데이터를 수집하고 형식을 지정한 후 카탈로그로 만듭니다. RODA에서 TCIA API를 통해 원시 데이터를 가져옵니다. AWS Glue의 ETL 작업에서 데이터를 변환하고 AWS Glue 크롤러를 사용하여 카탈로그로 만듭니다. SageMaker 노트북을 사용하여 이미지 위치를 쿼리하고 표시할 수 있습니다.
3단계
샘플 VCF인 1000 게놈 프로젝트의 VCF 데이터 및 ClinVar 주석 VCF가 Amazon Omics 변이 및 주석 저장소로 모이고 Lake Formation에서 테이블로 제공됩니다.
4단계
연구 과학자는 QuickSight의 시각적 인터페이스를 통해 다중 모달 데이터를 분석합니다. 이 데이터는 SPICE(초고속 병렬 인 메모리 계산 엔진) 데이터베이스에 캐시되어 쿼리 성능을 최적화합니다.
5단계
데이터 사이언티스트는 SageMaker 노트북 환경을 통해 제공된 Jupyter Notebook을 사용하여 코드로 데이터를 분석합니다.
-
CI/CD
-
1단계
setup.sh 스크립트가 포함된 AWS CodeBuild 프로젝트를 생성합니다. 이 스크립트는 나머지 AWS CloudFormation 스택과 코드 리포지토리, 코드를 생성합니다.2단계
랜딩 존(zone) 스택은 AWS CodeCommit pipe 리포지토리를 생성합니다. 랜딩 존(zone) 스택의 설정이 완료되면 setup.sh 스크립트가 CodeCommit 파이프 리포지토리로 소스 코드를 푸시합니다.3단계
배포 파이프라인(pipe) 스택은 CodeCommit 코드 리포지토리, Amazon CloudWatch 이벤트, AWS CodePipeline 코드 파이프라인을 생성합니다. 배포 파이프라인(pipe) 스택의 설정이 완료되면 setup.sh 스크립트가 CodeCommit 코드 리포지토리로 소스 코드를 푸시합니다.
4단계
CodePipeline(code) 파이프라인은 코드베이스(genomics, imaging, omics) CloudFormation 스택을 배포합니다. CodePipeline 파이프라인의 설정이 완료되면, 계정에 배포되는 리소스에는 객체 액세스 로그/빌드 아티팩트/데이터 레이크에 있는 데이터의 저장을 위한 Amazon Simple Storage Service(S3) 버킷, 소스 코드를 위한 CodeCommit 리포지토리, 코드 아티팩트 구축을 위한 CodeBuild 프로젝트, 리소스의 구축 및 배포를 자동화하기 위한 CodePipeline 파이프라인, 예제 AWS Glue 작업, 크롤러 및 데이터 카탈로그, Amazon SageMaker Jupyter Notebook 인스턴스 등이 포함됩니다.Amazon Omics 참조 저장소(Reference Store), 변이 저장소(Variant Store), 주석 저장소(Annotation Store)가 프로비저닝되고, 샘플 VCF(Variant Call File), 서브넷 1000 게놈 VCF, ClinVar 주석 VCF가 분석을 위해 모여집니다. AWS Lake Formation을 사용하여 데이터 레이크 관리자는 Amazon Athena 및 SageMaker를 통해 Omics 변이 및 주석 저장소의 데이터에 대한 액세스를 사용 설정할 수 있습니다. Amazon Omics 참조 저장소, 변이 저장소, 주석 저장소는 공개적으로 사용 가능한 변이 및 주석 데이터를 저장하고 이를 쿼리 및 분석에 사용할 수 있도록 프로비저닝됩니다.
5단계
이미징 스택은 Amazon QuickSight 스택을 배포할 수 있는 CloudFormation Quick Start에 대한 하이퍼링크를 생성합니다. QuickSight 스택은 다중 오믹스 데이터 세트를 대화형으로 탐색하는 데 필요한 Identity and Access Management(IAM) 및 QuickSight 리소스를 생성합니다.
Well-Architected 원칙
AWS Well-Architected Framework는 클라우드에서 시스템을 구축하는 동안 사용자가 내리는 의사 결정의 장단점을 이해하는 데 도움이 됩니다. 이 프레임워크의 6가지 원칙을 통해 안정적이고 안전하며 효과적이고 비용 효율적이며 지속 가능한 시스템을 설계 및 운영하기 위한 아키텍처 모범 사례를 배울 수 있습니다. AWS Management Console에서 추가 요금 없이 사용할 수 있는 AWS Well-Architected Tool을 사용하면 각 원칙에 대한 여러 질문에 답하여 이러한 모범 사례와 비교하며 워크로드를 검토할 수 있습니다.
위의 아키텍처 다이어그램은 Well-Architected 모범 사례를 고려하여 생성된 솔루션의 예시입니다. Well-Architected를 완전히 충족하려면 가능한 많은 Well-Architected 모범 사례를 따라야 합니다.
-
운영 우수성
이 지침은 CodeBuild와 CodePipeline을 사용하여 Variant Call File(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 변이 저장소 데이터 및 AWS Glue Catalog 데이터 액세스는 Lake Formation을 사용하여 완전히 관리되며, Athena, SageMaker 노트북 및 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를 선택했습니다. 사용자는 필요에 따라 새 AWS Glue 작업과 AWS Glue 크롤러를 추가하여 새로운 The Cancer Genome Atlas(TCGA) 및 The Cancer Image Atlas(TCIA) 데이터 세트를 수집할 수 있습니다. 또한 새 작업과 크롤러를 추가하여 자체 독점 데이터 세트를 수집하고, 준비하고, 카탈로그화할 수 있습니다.
데이터 분석
이 아키텍처는 분석용 Jupyter Notebook 환경을 제공하기 위해 SageMaker 노트북을 선택했습니다. 사용자는 기존 환경에 새 노트북을 추가하거나 새 환경을 생성할 수 있습니다. Jupyter Notebook보다 RStudio를 선호하는 경우 RStudio on Amazon SageMaker를 사용할 수 있습니다.
데이터 시각화
이 아키텍처는 데이터 시각화 및 탐색을 위한 대화형 대시보드를 제공하기 위해 QuickSight를 선택했습니다. QuickSight 대시보드는 개별 CloudFormation 템플릿을 통해 설정되므로 대시보드를 사용할 계획이 없다면 프로비저닝하지 않아도 됩니다. QuickSight에서 자체 분석을 생성하고 추가 필터 또는 시각화를 탐색하며 데이터 세트 및 분석을 동료와 공유할 수 있습니다.
구현 리소스
이 리포지토리는 대규모 분석을 위해 게놈, 임상, 돌연변이, 발현 및 이미징 데이터를 준비하고 데이터 레이크에 대해 대화형 쿼리를 수행할 수 있는 확장 가능한 환경을 AWS에 생성합니다. 이 솔루션은 1) HealthOmics 변이 저장소 및 주석 저장소에 유전체 변이 데이터 및 주석 데이터를 저장하는 방법, 2) 다중 모달 데이터 준비 및 카탈로그화를 위한 서버리스 데이터 모으기 파이프라인을 프로비저닝하는 방법, 3) 대화형 인터페이스를 통해 임상 데이터를 시각화 및 탐색하는 방법, 4) Amazon Athena 및 Amazon SageMaker를 사용하여 다중 모달 데이터 레이크를 대상으로 대화형 분석 쿼리를 실행하는 방법을 보여줍니다.
실험 및 사용을 위한 자세한 안내는 AWS 계정 내에서 제공됩니다. 배포, 사용, 정리를 포함한 지침 구축의 각 단계는 검토되어 배포를 위해 준비됩니다.
시작점으로서 샘플 코드를 제공합니다. 이 샘플 코드는 업계에서 검증되었고 규범적이지만 최종적인 것은 아니며, 시작하는 데 도움을 줄 것입니다.
관련 콘텐츠
Guidance for Multi-Modal Data Analysis with Health AI and ML Services on AWS(AWS에서 Health AI와 기계 학습 서비스를 통해 다중 모달 데이터 분석을 위한 지침)
기고자
BioTeam은 데이터 활용에 대한 과학계의 요구 사항과 실제 가능한 작업 간의 격차를 줄여 과학적 발견을 가속화하는 데 전념하는 생명 과학 IT 컨설팅 회사입니다. 2002년부터 과학, 데이터 및 기술의 교차점에서 업계를 지원해 온 BioTeam은 학제간 기능을 통해 전략, 고급 기술 및 IT 서비스를 적용함으로써 가장 까다로운 연구, 기술 및 운영 문제를 해결합니다. 과학적 니즈를 강력한 과학적 데이터 에코시스템으로 바꾸는 데 능숙하며 생명 공학 스타트업부터 최대 규모의 글로벌 제약 회사와 연방 정부 기관부터 학계 연구 기관에 이르는, 생명 과학 연구 분야의 광범위한 리더와 파트너를 맺을 수 있는 역량을 가지고 있습니다.
고지 사항
샘플 코드, 소프트웨어 라이브러리, 명령줄 도구, 개념 증명, 템플릿 또는 기타 관련 기술(AWS 직원을 통해 제공되는 상기 항목 포함)은 AWS 이용계약 또는 귀하와 AWS 간의 서면 계약(적용되는 것)에 따라 AWS 콘텐츠로 제공됩니다. 이 AWS 콘텐츠를 프로덕션 계정, 프로덕션 또는 기타 중요한 데이터에 사용해서는 안 됩니다. 귀하는 특정 품질 제어 방식 및 표준에 따라 프로덕션급 사용에 적절하게 샘플 코드와 같은 AWS 콘텐츠를 테스트, 보호 및 최적화할 책임이 있습니다. AWS 콘텐츠를 배포하면 Amazon EC2 인스턴스를 실행하거나 Amazon S3 스토리지를 사용할 때와 같이 요금이 부과되는 AWS 리소스를 생성하거나 사용하는 것에 대한 AWS 요금이 발생할 수 있습니다.
본 지침에 서드 파티 서비스 또는 조직이 언급되어 있다고 해서 Amazon 또는 AWS와 서드 파티 간의 보증, 후원 또는 제휴를 의미하지는 않습니다. AWS의 지침을 기술적 시작점으로 사용할 수 있으며 아키텍처를 배포할 때 서드 파티 서비스와의 통합을 사용자 지정할 수 있습니다.