[SEO 부제목]
중요: 이 지침을 활용하려면 신규 고객이 더 이상 사용할 수 없는 AWS CodeCommit을 사용해야 합니다. AWS CodeCommit의 기존 고객은 평소처럼 이 지침을 계속 사용하고 배포할 수 있습니다.
이 지침은 프로덕션 등급의 생물정보학 워크플로를 대규모로 구축하고 실행하는 방법을 보여줍니다. 자동화, 워크플로 분석, 스토리지, 운영 및 비용 관찰성에 AWS 서비스를 사용하면 DevOps 모범 사례에 따라 생물정보학 워크플로의 수명 주기를 관리할 수 있습니다. 이 아키텍처를 자체 인프라의 기반으로 사용하고 필요에 따라 특정 측면을 업데이트하여 환경에 통합하고 요구 사항을 충족할 수 있습니다.
참고: [고지 사항]
아키텍처 다이어그램
[아키텍처 다이어그램 설명]
1단계
AWS DataSync를 사용하여 서열 데이터를 Amazon Simple Storage Service(S3)로 전송합니다. 데이터가 FASTQ 형식인 경우 AWS HealthOmics(Amazon Omics의 후속 서비스)의 서열 스토어로 데이터를 가져와서 비용을 절감할 수 있습니다.
2단계
HealthOmics는 Workflow Description Language(WDL), Nextflow 또는 Common Workflow Language(CWL)와 같은 언어로 생물정보학 워크플로를 실행하여 원시 데이터를 분석합니다. 이러한 워크플로를 비공개 또는 Ready2Run(HealthOmics에서 호스팅)으로 구축할 수 있습니다.
워크플로 내에서 실행되는 도구는 Amazon Elastic Container Registry(Amazon ECR) 내에 Docker 이미지로 저장됩니다. 워크플로 출력은 Amazon S3에 업로드됩니다.
3단계
HealthOmics는 문제 해결 및 모니터링을 위해 워크플로 엔진 로그, 태스크 로그 및 워크플로 실행 로그를 Amazon CloudWatch에 게시합니다.
4단계
HealthOmics는 Amazon EventBridge를 사용하여 이벤트를 게시합니다. 그러면 AWS Lambda 함수를 사용하여 더 많은 생물정보학 워크플로를 시작하거나 Amazon Simple Notification Service(SNS)를 사용하여 사용자 또는 그룹에 워크플로 실패를 알리는 등의 다운스트림 작업을 자동화할 수 있습니다.
5단계
워크플로 실행 ID, 태그, 샘플 ID, 워크플로 출력 파일 위치와 같은 HealthOmics 워크플로의 유용한 메타데이터를 Amazon DynamoDB 테이블에서 추적할 수 있습니다. AWS Glue 크롤러는 AWS Glue 데이터 카탈로그에 이 데이터를 수집합니다. Amazon Athena를 사용하여 이 데이터를 쿼리할 수 있습니다.
6단계
워크플로 개발자 및 생물정보학자는 AWS CodeCommit을 통한 지속적 통합 및 지속적 전달을 사용하여 신규 및 기존 워크플로를 반복하고 버전 제어를 유지할 수 있습니다. AWS CodePipeline을 사용하여 AWS CodeBuild 작업을 간접적으로 호출하는 방법으로 HealthOmics에서 새 워크플로 생성을 자동화할 수 있습니다.
7단계
AWS Cost and Usage Reports(AWS CUR)는 비용 모니터링을 용이하게 합니다. 보고서를 생성하고 Amazon S3 버킷에 업로드하도록 이 서비스를 구성할 수 있습니다. AWS Glue 크롤러는 이 데이터를 AWS Glue 데이터 카탈로그로 수집하도록 구성됩니다. Amazon Athena를 사용하여 이 데이터를 쿼리하고 비용과 관련된 인사이트를 도출할 수 있습니다.
Well-Architected 원칙
AWS Well-Architected Framework는 클라우드에서 시스템을 구축하는 동안 사용자가 내리는 의사 결정의 장단점을 이해하는 데 도움이 됩니다. 이 프레임워크의 6가지 원칙을 통해 안정적이고 안전하며 효과적이고 비용 효율적이며 지속 가능한 시스템을 설계 및 운영하기 위한 아키텍처 모범 사례를 배울 수 있습니다. AWS Management Console에서 추가 요금 없이 사용할 수 있는 AWS Well-Architected Tool을 사용하면 각 원칙에 대한 여러 질문에 답하여 이러한 모범 사례와 비교하며 워크로드를 검토할 수 있습니다.
위의 아키텍처 다이어그램은 Well-Architected 모범 사례를 고려하여 생성된 솔루션의 예시입니다. Well-Architected를 완전히 충족하려면 가능한 많은 Well-Architected 모범 사례를 따라야 합니다.
-
운영 우수성
이 지침은 AWS CodeCommit, AWS CodeBuild 및 AWS CodePipeline을 사용하여 버전 제어를 생성하고 생물정보학 워크플로의 소스 코드 구축 및 배포를 자동화합니다. 또한 DynamoDB를 사용하여 HealthOmics의 출력 파일을 추적하고 메타데이터를 실행할 수 있습니다. 이 지침은 DevOps 모범 사례를 사용하여 워크플로 코드를 관리하고 워크플로 실행 메타데이터를 보여줍니다. 따라서 점진적 변경을 통해 정확한 결과를 얻을 수 있습니다. 워크플로 실행 메타데이터를 추적하면 관련 워크플로의 실행 상태 및 출력 파일을 쉽게 찾아 다운스트림 보고 또는 과학적 분석을 수행할 수 있습니다.
-
보안
이 지침은 AWS Key Management Service(AWS KMS)를 사용하여 저장 시 암호화를 제공하고 DataSync를 사용하여 모든 네트워크 트래픽에 대한 전송 중 암호화를 제공합니다. 또한 AWS Identity and Access Management(IAM)로 잠재적으로 민감한 데이터에 대한 세분화된 액세스 제어를 제공하여 권한 있는 사용자만 특정 작업을 수행하여 데이터를 처리하고 분석하도록 할 수 있습니다.
-
신뢰성
이 지침을 통해 HealthOmics를 사용하여 계산 집약적인 생물정보학 워크플로를 대규모로 조정할 수 있습니다. 이 서비스에는 실수로 인한 오버프로비저닝을 방지하기 위한 특정 서비스 할당량(예: 가상 CPU 수)이 있습니다. 또한 Amazon S3와 DynamoDB는 기본 제공 백업을 통해 고가용성을 제공합니다. 또한 이 지침은 EventBridge를 사용하여 실패와 같은 이벤트를 캡처하며, 이에 대한 대응으로 Amazon SNS를 통한 실시간 알림을 제공하여 적절한 조치를 취하도록 합니다. HealthOmics 워크플로 및 기본 도구에 대한 정보가 담긴 세부 로그를 제공하는 Amazon CloudWatch를 사용하여 이벤트를 빠르게 조사할 수 있습니다.
-
성능 효율성
이 지침을 사용하면 특정 태스크에 대한 동시 워크플로를 다양한 CPU 및 메모리 구성으로 실행할 수 있습니다. 필요한 CPU, 메모리 및 스토리지를 지정하여 리소스를 요청할 수 있습니다. 그러면 HealthOmics가 적절한 인프라를 프로비저닝합니다. 이 기능은 비즈니스 요구 사항에 따라 적절한 리소스로 규모를 조정하는 데 도움이 됩니다.
-
비용 최적화
이 지침은 HealthOmics 서열 스토어를 사용합니다. 서열 스토어를 사용하면 기가베이스당 저렴한 비용으로 페타바이트 규모의 유전체 데이터 파일을 효율적으로 저장 및 공유할 수 있으므로 Amazon S3에 비해 비용이 절감됩니다. 또한 AWS CUR을 사용하여 AWS 비용 및 사용량에 대한 가장 상세한 정보에 액세스하고, 최적화가 필요한 영역을 식별하고, 프로젝트, 부서 또는 사용자와 같은 속성을 기반으로 비즈니스 동향을 이해할 수 있습니다.
-
지속 가능성
이 지침은 자체 인프라를 프로비저닝하고 관리할 필요 없이 프로젝트가 환경에 미치는 영향을 최소화하는 데 도움이 되는 관리형 및 서버리스 서비스를 사용합니다. HealthOmics는 워크플로 실행을 요청할 때만 리소스를 프로비저닝하고 완료 시 리소스를 해제합니다. 마찬가지로 Lambda를 사용하여 자체 서버를 프로비저닝하지 않고도 소규모 태스크를 함수로 실행할 수 있습니다.
구현 리소스
실험 및 사용을 위한 자세한 안내는 AWS 계정 내에서 제공됩니다. 배포, 사용, 정리를 포함한 지침 구축의 각 단계는 검토되어 배포를 위해 준비됩니다.
시작점으로서 샘플 코드를 제공합니다. 이 샘플 코드는 업계에서 검증되었고 규범적이지만 최종적인 것은 아니며, 시작하는 데 도움을 줄 것입니다.
관련 콘텐츠
Designing an event-driven architecture for Bioinformatics workflows using AWS HealthOmics and Amazon EventBridge(AWS HealthOmics와 Amazon EventBridge를 사용하여 생물정보학 워크플로를 위한 이벤트 기반 아키텍처 설계)
Guidance for a Laboratory Data Mesh on AWS
Guidance for Migration & Storage of Sequence Data with AWS HealthOmics
Multimodal Data Analysis with AWS Health and Machine Learning Services(AWS 의료 및 기계 학습 서비스를 사용한 멀티모달 데이터 분석)
Secure Your Genomic Workflows and Data with AWS HealthOmics(AWS HealthOmics를 사용하여 유전체 워크플로와 데이터 보호)
고지 사항
샘플 코드, 소프트웨어 라이브러리, 명령줄 도구, 개념 증명, 템플릿 또는 기타 관련 기술(AWS 직원을 통해 제공되는 상기 항목 포함)은 AWS 이용 계약 또는 귀하와 AWS 간의 서면 계약(둘 중 해당되는 것)에 따라 AWS 콘텐츠로 제공됩니다. 이 AWS 콘텐츠를 프로덕션 계정, 프로덕션 또는 기타 중요한 데이터에 사용해서는 안 됩니다. 귀하는 특정 품질 제어 방식 및 표준에 따라 프로덕션급 사용에 적절하게 샘플 코드와 같은 AWS 콘텐츠를 테스트, 보호 및 최적화할 책임이 있습니다. AWS 콘텐츠를 배포하면 Amazon EC2 인스턴스를 실행하거나 Amazon S3 스토리지를 사용할 때와 같이 요금이 부과되는 AWS 리소스를 생성하거나 사용하는 것에 대한 AWS 요금이 발생할 수 있습니다.
본 지침에 서드 파티 서비스 또는 조직이 언급되어 있다고 해서 Amazon 또는 AWS와 서드 파티 간의 보증, 후원 또는 제휴를 의미하지는 않습니다. AWS의 지침을 기술적 시작점으로 사용할 수 있으며 아키텍처를 배포할 때 서드 파티 서비스와의 통합을 사용자 지정할 수 있습니다.