Genomics and BigData - case study

5,118 views
4,990 views

Published on

Genomics and BigData - case study

Published in: Science
0 Comments
6 Likes
Statistics
Notes
  • Be the first to comment

No Downloads
Views
Total views
5,118
On SlideShare
0
From Embeds
0
Number of Embeds
3,606
Actions
Shares
0
Downloads
51
Comments
0
Likes
6
Embeds 0
No embeds

No notes for slide

Genomics and BigData - case study

  1. 1. dÉåçãáÅë=áå=_áÖ=a~í~== 빅데이터=관점에서의=유전체=데이터 Permissions: you are free to blog or live-blog about this presentation as long as you attribute the work to its authors Chang Bum Hong
  2. 2. 오늘 할 이야기는.. Genomics에서의 클라우드 필요성 Cloud Computing Cloud in Genomics 사례로 살펴보는 Big Data 분석에 필요한 HPC Cloud의 요소
  3. 3. 1,588명의 응답자 가운데 54%가 자신의 게놈을 분석해 보고 싶다고 응답 Nature, 2010
  4. 4. “기초의학연구와 임상의학의 의료 분야에 가장 큰 혜택을 줄것이며, 5-10년후 개인 맞춤의학이 보편화 될것, 하지만 컴퓨팅과 소프트웨어 부족은 큰 걸림돌” Nature, 2010
  5. 5. Data Size
  6. 6. Needs Public Data
  7. 7. Various Software http://seqanswers.com/wiki/Software
  8. 8. Complicate Pipeline
  9. 9. Computing resources Fusaro VA, Patil P, Gafni E, Wall DP, Tonellato PJ (2011) Biomedical Cloud Computing With Amazon Web Services. PLoS Comput Biol 7(8): e1002147
  10. 10. Linux skill Nature Biotech (2006)
  11. 11. To the Clinic - License, HIPPA
  12. 12. To the Clinic - License, HIPPA
  13. 13. To the Clinic - License, HIPPA
  14. 14. Cloud Computing and HPC (Hight Performance Computing)
  15. 15. 컴퓨터와 스마트폰 동기화, 사진/음악/동영상 감상, 대용량 파일 공유 우리가 흔히 접하고 생각하는 클라우드
  16. 16. 오늘 이야기할 클라우드는…
  17. 17. 오늘 이야기할 클라우드는… Journal of Biomedical Informatics (2013)
  18. 18. 하드웨어의 가상화뿐만 아니라, 다양한 서비스로의 확대 Amazon Web Services의 서비스 목록
  19. 19. 하드웨어의 가상화뿐만 아니라, 다양한 서비스로의 확대 Google의 서비스 목록
  20. 20. 하드웨어의 가상화로 부터 얻는 것 원하는 OS를 선택이 가능하다 맞춤 OS 제작이 가능하다
  21. 21. 재현성 (reproducibility) 확보 손쉬운 분석 환경 구축 나의 분석 환경 + 데이터 + 스크립트 “나의 분석 환경 + 데이터 + 스크립트” 바로 얼려서 다른 사람들과 공유
  22. 22. 하드웨어의 가상화로 부터 얻는 것 운영중인 서버에 디스크 추가 디스크의 내용을 이미지화하여 공유
  23. 23. 하드웨어의 가상화로 부터 얻는 것 원하는 사양의 서버를 원하는 만큼 생성이 가능하다
  24. 24. 하드웨어의 가상화로 부터 얻는 것 또 다른 스토리지 서비스 Object Storage http://whatis.techtarget.com/reference/Object-storage-Fast-Guide
  25. 25. 하드웨어의 가상화로 부터 얻는 것 또 다른 스토리지 서비스 Object Storage
  26. 26. 이 모든것이 바로 Cloud Software -IaaS 구축 가능한 오픈소스 클라우드 플랫폼 OpeStack, Eucalyptus, OpenNebula, CloudStack
  27. 27. OpenStack Architecture
  28. 28. HPC Clustering
  29. 29. Cloud in Genomics
  30. 30. Cloud in Genomics Genomics의 구체적 cloud 사례들 서비스 구분 서비스명 서비스 내용 KT IaaS Amazon WebServices PaaS, SaaS 서비스회사들을 적극 지원 public dataset을 통한 간접 지원 ucloud biz Google Cloud 컴퓨팅과 스토리지 지원 ucloud biz NeCTAR Research Cloud OpenStack 기반 연구자를 위한 Private Cloud ucloud biz SaaS DNANexus NGS 데이터 분석 파이프라인 제공 g-Analysis SevenBridge Genomics NGS 데이터 분석 파이프라인 제공 g-Analysis GotCloud NGS 데이터 분석 파이프라인 제공 g-Analysis Globus Genomics Galaxy를 AWS 기반으로 제공 g-Galaxy GenomeSpace Storage 기반의 bioinformatics 서비스 제공 g-Storage PaaS CloudMan 스토리지 기반의 Bioinformatics 툴 지원 SeqWare 유전체 분석 가능한 기반 플랫폼 제공 StarCluster AWS 기반의 HPC Cluster 컴퓨팅 환경 제공 CycleComputing AWS 기반의 HPC Cluster 컴퓨팅 환경 제공 Google Genomics, BigQeury NGS 데이터 분석을 위한 API 제공 g-Insight
  31. 31. 사례로 살펴보는 Big Data 분석에 필요한 HPC Cloud의 요소
  32. 32. http://seqware.github.io/docs/
  33. 33. HPC Cloud의 요소 - Sequencers http://seqware.github.io/docs/ LIMS Object Storage High Speed File Transfer IaaS HPC Private Cloud OpenStack… Job Schedule Bioinformatics Linux… Bioinformatics Bioinformatics Hadoop and Database
  34. 34. LIMS for NGS Clarity LIMS from GenoLogics Galaxy LIMS for NGS Bioinformatics (2013)
  35. 35. LIMS for NGS Galaxy LIMS https://bitbucket.org/jelle/galaxy-central-tron-lims/
  36. 36. Data Upload - online
  37. 37. Data Upload - offline Import/Export
  38. 38. HPC Cloud의 요소 - Storage http://seqware.github.io/docs/ LIMS Object Storage High Speed File Transfer IaaS HPC Private Cloud OpenStack… Job Schedule Bioinformatics Linux… Bioinformatics Bioinformatics Hadoop and Database
  39. 39. http://www.genomespace.org/ GenomeSpace is a cloud-based interoperability framework to support integrative genomics analysis through an easy-to-use Web interface.
  40. 40. HPC Cloud의 요소 - HPC http://seqware.github.io/docs/ LIMS Object Storage High Speed File Transfer IaaS HPC Private Cloud OpenStack… Job Schedule Bioinformatics Linux… Bioinformatics Bioinformatics Hadoop and Database
  41. 41. Before Cloud Computing 구매 요청 -> 견적서…->서버실 확보>하드웨어설치-> 소프트웨 어 설정 -> 최종 테스트 ->구형=하드웨어I=구형=데이터
  42. 42. NeCTAR
  43. 43. StarCluster and CloudMan http://star.mit.edu/cluster/ https://wiki.galaxyproject.org/CloudMan/AWS/GettingStarted
  44. 44. HPC Cloud의 요소 - Pipeline http://seqware.github.io/docs/ LIMS Object Storage High Speed File Transfer IaaS HPC Private Cloud OpenStack… Job Schedule Bioinformatics Linux… Bioinformatics Bioinformatics Hadoop and Database
  45. 45. DNANexus and HGSC
  46. 46. DNANexus and HGSC
  47. 47. DNANexus and HGSC
  48. 48. DNANexus and HGSC
  49. 49. HPC Cloud의 요소 - Web Service http://seqware.github.io/docs/ LIMS Object Storage High Speed File Transfer IaaS HPC Private Cloud OpenStack… Job Schedule Bioinformatics Linux… Bioinformatics Bioinformatics Hadoop and Database
  50. 50. Google Genomics https://developers.google.com/genomics
  51. 51. Google Genomics API http://googleresearch.blogspot.co.uk/2014/02/google-joins-global-alliance-for.html Interoperability: One API, Many Apps
  52. 52. Google Genomics Examples API를 이용한 특정 샘플의 특정 read 정보 추출
  53. 53. Google Genomics Examples API와 JavaScript를 이용한 Genome Browser
  54. 54. HPC Cloud의 요소 - Query Engine http://seqware.github.io/docs/ LIMS Object Storage High Speed File Transfer IaaS HPC Private Cloud OpenStack… Job Schedule Bioinformatics Linux… Bioinformatics Bioinformatics Hadoop and Database
  55. 55. Google BigQuery
  56. 56. # Compute the Ti/Tv ratio for BRCA1. SELECT transitions, transversions, transitions/transversions AS titv FROM ( SELECT SUM(IF(mutation IN ('A->G', 'G->A', 'C->T', 'T->C'), INTEGER(num_snps), INTEGER(0))) AS transitions, SUM(IF(mutation IN ('A->C', 'C->A', 'G->T', 'T->G', 'A->T', 'T->A', 'C->G', 'G->C'), INTEGER(num_snps), INTEGER(0))) AS transversions, FROM ( SELECT CONCAT(reference_bases, CONCAT(STRING('->'), alternate_bases)) AS mutation, COUNT(alternate_bases) AS num_snps, FROM [google.com:biggene:1000genomes.variants1kG] WHERE contig = '17' AND position BETWEEN 41196312 AND 41277500 AND vt = 'SNP' GROUP BY mutation ORDER BY mutation)); Google BigQuery with plot result <- query_exec(project = "google.com:biggene", dataset = "1000genomes", query = sql, billing = billing_project) Ti/Tv ratio in BRCA1
  57. 57. # Count the variation for each sample including phenotypic traits SELECT samples.genotype.sample_id AS sample_id, gender, population, super_population, COUNT(samples.genotype.sample_id) AS num_variants_for_sample, SUM(IF(samples.af >= 0.05, INTEGER(1), INTEGER(0))) AS common_variant, SUM(IF(samples.af < 0.05 AND samples.af > 0.005, INTEGER(1), INTEGER(0))) AS middle_variant, SUM(IF(samples.af <= 0.005 AND samples.af > 0.001, INTEGER(1), INTEGER(0))) AS rare_variant, SUM(IF(samples.af <= 0.001, INTEGER(1), INTEGER(0))) AS very_rare_variant, FROM FLATTEN([google.com:biggene:1000genomes.variants1kG], genotype) AS samples JOIN [google.com:biggene:1000genomes.sample_info] p ON samples.genotype.sample_id = p.sample WHERE samples.vt = 'SNP' AND (samples.genotype.first_allele > 0 OR samples.genotype.second_allele > 0) GROUP BY sample_id, gender, population, super_population ORDER BY sample_id; Google BigQuery with R ggplot(result, aes(x = population, y = common_variant, fill = super_population)) + geom_boxplot() + ylab("Count of common variants per sample") + ggtitle("Common Variants (Minimum Allelic Frequency 5%)") Variant type
  58. 58. Google BigQuery with RStudio Markdown/Knit HTML
  59. 59. Publish your R code with git and RPubs https://github.com/ http://www.rpubs.com/
  60. 60. Data storage: $0.026 (per GB/month) Data query: $0.005 / GB 1000 genomes data Data storage: $0.026 (per GB/month) * 5,500 GB = $143 / month = 15,700/월 Data query (allele frequency query): $0.005 / GB * 647 GB = $3.3 = 3,600원 Cost 30초안에 1000genomes의 모든 allele frequency를 구하다.
  61. 61. Conclusion 적어도 지금 이순간까지 종합선물셋트는 없다. 맛없는 과자도 들어있다. 자신의 현재 상황에 맞는 과자를 담아라.

×