BioDevOpsによる再現性のあるバイオインフォマティクス環境の構築
-
Upload
itoshi-nikaido -
Category
Technology
-
view
668 -
download
5
Transcript of BioDevOpsによる再現性のあるバイオインフォマティクス環境の構築
BioDevOpsによる再現性のあるバイオインフォマティクス環境の構築Itoshi NIKAIDO, PhD <[email protected]> Unit Leader, Bioinformatics Research Unit RIKEN Advanced Center for Computer and Communication http://bit.accc.riken.jp/ (Version: 1.0)
1. Cloud Computing 3つのCloud Computing
3つの仮想化技術
!
2. Infrastructure as Code ハードウェア・ソフトウェア管理をプログラムする chef, vagrant !
3. Bayes Linux: Bioinformatics Analysis Environment System BioDevOps.org RIKEN Cloud System
林崎研@RIKEN GSC Mouse full-length cDNA sequencing FANTOM1-2 cDNA microarray, imprinted genes
上田研@RIKEN CDB ChIP-seq Single-Cell RNA-seq (Quartz-Seq)
Research
Outreach & Community
Knoppix for Bio KNOBKGB
自己紹介実験生物学の側で研究・オープンソースコミュニティとの関わり
RIKEN ACCC Single-Cell RNA-Seq Epigenome BioDevOp
Bioinformatics-jp
バイオインフォマティクス研究開発ユニットAdvanced Center for Computing and Communication
Informatics Biology
1. DNAシーケンサーデータ解析手法・実験手法の開発
2. 理研内外の実験研究者との共同研究・教育
3. 理研のバイオインフォマティクス研究の方向性を議論・ロールモデルになる
xi
θi
G
G0γ
σ-‐
a b
10#pg#total#RNA�
Amplified#cDNA�
Amplified#cDNA�
Sequence#Library#DNA�
1細胞RNA-Seq・新規エピゲノム実データ解析と実験技術の開発
データサイエンスとバイオインフォマティクスIT・統計・ドメイン知識の三位一体
• データを活かすことがビジネスでは必須に
• 統計と計算機、ドメイン知識の3つを兼ね備えることが必須
• バイオインフォとスキルが重複
• バイオインフォの博士新卒は企業へ
• アカデミアとの待遇に格差が大きい
http://www.ibm.com/developerworks/jp/opensource/library/os-datascience/figure1.png
人材に関するアンケート調査結果 (2013)わが国におけるバイオインフォマティクス人材を取り巻く現状
https://www.jstage.jst.go.jp/article/johokanri/56/11/56_782/_pdf
データ解析を誰がしているか? バイオインフォ研究者との共同は必要か?
必要な人材は?
エバンジェリストモデルによるBioinformatics Infrastructureの整備 多くの研究者を救い、バイオインフォ研究も捗るモデル
Sequencing Core
Research Team/UnitResearch Team/UnitResearch Team/Unit
Bioinformatics Evangelist
Bioinformatics Research Unit Preventive medicine and applied genomics unit
Bioinformatics Research Group, RIKEN ACCC
Research Center• ひとりのバイオインフォ研究者あたり多くて2,3件程度の共同研究!
• 理研では、解析の専門性にローカル性がある (CLSTは転写、IMSはゲノムなど)!
• センターでバイオインフォを支える人間を積極的にサポートする
エンジニアリングで解決できる問題を ソーシャルに解決したら負け
Providing bioinformatics analysis environmentVirtual machine with NGS Data analysis tools and pipelines
Bioinformatics Research Unit
User (inside/outside RIKEN)
Browser, tools, Pipelines Install and setup tools (BioDevOps) Development of tools
Browser & PipelinesSSH, HTTPS
Calc.Result
Browser & Pipeline
Consultation TutorialUser’s tools
Sequencing Facility
Cloud Computer
sequence data
Sample
Introduction of Bioinformatics research activity in RIKEN ACCC
Bioinformatics: 研究とエンジニアリング
• バイオインフォマティクス研究に集中したい • データ解析環境を構築することは手間がかかる
•計算機の調達や管理、保守の手間がかかる
• NGS解析はたくさんのツールの組み合わせ
• ツールのアップデートが速い • たくさんのバイオデータベースを使う
• 解析の再現性担保 • 論文のマテメソは記載が不足しており解析が再現できない
IT インフラ
アプリケーション開発・リリース
ビジネスアイディア マーケット
http://ja.wikipedia.org/wiki/DevOps. modified
DevOps = Development + OperationsITインフラとアプリケーション開発の一体化
ビジネスアイディアを素早くマーケットに出すための ITに関する思想とその技術
データ解析用PCクラスターのセットアップ
データ解析ツールやパイプラインシステムの開発
Bioinformatics Data analysis
BioDevOps
データ解析やソフト、データベースの品質管理
研究アイディア 実験データ 論文出版
BioDevOps = Bioinfomatics + Development + Operationsバイオインフォマティクス解析とITインフラとアプリケーション開発の一体化
データ解析の実施
研究アイディアを素早く論文として出すための バイオインフォに関する思想とその技術
• バイオインフォマティクス研究に集中したい • データ解析環境を構築することは手間がかかる
•計算機の調達や管理、保守の手間がかかる
• NGS解析はたくさんのツールの組み合わせ
• ツールのアップデートが速い • たくさんのバイオデータベースを使う
• 解析の再現性担保 • 論文のマテメソは記載が不足しており解析が再現できない
解析環境をコードとして管理し仮想計算機で利用する
BioDevOps = 2つの技術
Cloud computing
Infrastructure as Code
1. Cloud Computing 3つのCloud Computing
3つの仮想化技術
!
2. Infrastructure as Code ハードウェア・ソフトウェア管理をプログラムする chef, vagrant !
3. Bayes Linux: Bioinformatics Analysis Environment System BioDevOps.org RIKEN Cloud System
Providing bioinformatics analysis environmentVirtual machine with NGS Data analysis tools and pipelines
Bioinformatics Research UnitCloud Computer
User (inside/outside RIKEN)
BioDevOps Install and setup tools Development of tools
Browser & PipelinesSSH, HTTPS
Calc.Result
Browser & Pipeline
Consultation TutorialUser’s tools
• たくさんのコンピュータリソースがプールされている • このリソースから、ネットワーク、サーバー、ストレージ、アプリケーション、サービスを構築できる
• このプールから便利かつオンデマンドにアクセスし、リソース提供を受けられる
解析環境をコードとして管理し仮想計算機で利用する
Cloud computing
NIST Cloud Computing Reference Architectureより
• Saas (Software as a Service, さーす)
• アプリケーションを提供
• DropBox, Gmail, iCoudなど
• PaaS (Platform as a Service, ぱーす)
• アプリケーションを実行できるコンピュータリソースを提供
• Amazon Web Service, Google App Engine, Microsoft Azure, Heroku
• IaaS(Infrastructure as a Service, イアース/ アイアス)
• コンピュータシステムを構築できるリソースを提供
• Amazon EC2
解析環境をコードとして管理し仮想計算機で利用する
3つのCloud computing
CPU、メモリ、ストレージ、ネットワークとして振る舞うソフトウェア仮想計算機
OS X上でWindow 8が実行されている
Hypervisor OSやハードウェア上に仮想化するためのソフトウェアが動く。さらにその上でOSが動作する (VirtualBox, Xen, VMware)
!
Container OS上にプロセス空間やネットワーク、ユーザID空間を区切って、独立したOSのように動作する (dockerなど)
CPU、メモリ、ストレージ、ネットワークとして振る舞うソフトウェア3つの仮想計算機
http://thinkit.co.jp/sites/default/files/articles/545601.jpg
1. Cloud Computing 3つのCloud Computing
3つの仮想化技術
!
2. Infrastructure as Code ハードウェア・ソフトウェア管理をプログラムする chef, vagrant !
3. Bayes Linux: Bioinformatics Analysis Environment System BioDevOps.org RIKEN Cloud System
Chef: プログラムを管理するプログラム3つのツール: chef, knife, Vegrant
http://www.getchef.com/chef/
User
仮想計算機へアクセス
chef cookbookを 実行しプログラムを 自動セットアップ
3. chef cookbookを 配信するサーバー
1. chef cookbookを実装し コード共有レポジトリで管理
2. chef cookbookを 配信サーバーへ提供
0. vegrantでマシンを管理
Chef recipe and Integration TestExample: Installing NCBI BLAST by chef
debian, Ubuntuの場合は”ncbi-blast+”というパッケージをインストール
CentOSの場合はNCBIからRPMパッケージを取ってきてインストール
Chef recipe and Integration TestExample: Installing NCBI BLAST by chef
blastpを実行できたらテスト成功
deploy: ソフトウェア環境を利用可能なように配置するVagrant: どのようなクラウドコンピュータでも簡単に環境をインストールできる
2. VMイメージ を取得
3. deploy
ローカル
クラウド
ユーザ
仮想計算イメージレポジトリ
開発者
a. 仮想計算機 イメージ開発
1. VM構築を指示
b. VMイメージ登録
4. VMを利用 (SSH, HTTPなど)
VMが実行される計算機
1. Cloud Computing 3つのCloud Computing
3つの仮想化技術
!
2. Infrastructure as Code ハードウェア・ソフトウェア管理をプログラムする テストと継続的インテグレーション ソーシャルソースコードレボジトリ !3. Bayes Linux: Bioinformatics Analysis Environment System BioDevOps.org RIKEN Cloud System
Bayes Linux: Bioinformatics Analysis EnvironmentVirtual machine with NGS Data analysis tools and pipelines
Bioinformatics Analysis Environment as Codeバイオインフォ解析環境が完備されたLinuxを仮想マシンとして提供する
http://www.getchef.com/chef/
•解析環境セットアップ情報はすべてコード
•ソースコード管理システムでバージョン管理
•コードのテスト
• Zabbixによる計算リソースの監視
•データベースミラー
User
Zabbix
BioDevOps.orgバイオインフォ解析ツールのレシピをテスト付きで提供する
http://BioDevOps.org/
Bayes Linux on RIKEN Cloud SystemVirtual machine with NGS Data analysis tools and pipelines
Bioinformatics Research Unit
User (inside/outside RIKEN)
Browser, tools, Pipelines Install and setup tools (BioDevOps) Development of tools
Browser & PipelinesSSH, HTTPS
Calc.Result
Browser & Pipeline
Consultation TutorialUser’s tools
Sequencing Facility
Cloud Computer
sequence data
Sample
• Cloud system is located at Wako campus
• You can access your virtual machine (Ubuntu 14.04 LTS)
• with root privileges
• via SSH and HTTP
• from only Wako, Yokohama, Kobe and Tsukuba
• We provide
• over 125 tools on Galaxy, 900 R/Bioconductor Packages and 600 command line tools (DebianMed)
• one virtual machine per one research group
• 10 virtual machines at drawing logs
• 8 CPU cores (2GHz), 64 GB RAM and 3 TB strage/VM
• NFS for mouse/human reference genome/transcriptome
Spec. of virtual machineBioinformatics Analysis Environment for Your Laboratory Use
WFその1: FastqMcf > Bowtie2 >
eXpress
WFその2: FastqMcf > Sailfish
共通: 実体パスの取得
共通: カウントデータのマージテーブル作成 > edgeR > gene Symbol付加
1)RNA-seq~DEG解析WFを作成
世界情勢と類似のサービスBioDevOpsによる再現性のあるバイオインフォマティクス環境の構築
• illumina
• BaseSpace: クラウドでのデータ解析環境。アプリ実装や共有ができる
• CloudBioLinux
• X年続く老舗。CloudManなど自前のクラスタ構築ツールもある
• Knoppix for Bio
• Bioinformatics向けLiveCD/LiveDVD Linuxの先駆け。書籍化された。メン終了
• パッケージ集・管理ツール
• DebianMed
• LPM
問題点から考える将来BioDevOpsによる再現性のあるバイオインフォマティクス環境の構築
• 計算が遅い
• コンテナ仮想化が主流に
• コンテナ仮想の分散計算環境の発展
• 複数VMから構成される計算環境のオーケストレーションが難しい
• 分散計算環境を自動的に構築しテストする
• パイプラインシステムが未熟である
• 大量データを処理しやすいパイプラインシステム
• 解析パイプラインのセマンティクスと共有
• 対話型統計解析ツールとの統合
• ipython, RStudio など
1. Cloud Computing 3つのCloud Computing
3つの仮想化技術
!
2. Infrastructure as Code ハードウェア・ソフトウェア管理をプログラムする テストと継続的インテグレーション ソーシャルソースコードレボジトリ !3. Bayes Linux: Bioinformatics Analysis Environment System BioDevOps.org RIKEN Cloud System
BioDevOpsによる再現性のあるバイオインフォマティクス環境の構築Itoshi NIKAIDO, PhD <[email protected]> Unit Leader, Bioinformatics Research Unit RIKEN Advanced Center for Computer and Communication http://bit.accc.riken.jp/
• RIKEN ACCC
• BiT
• Manabu Ishida (DevOps)
• Mika Yoshimura, PhD (Galaxy & pipeline)
• Akihiro Matsushima (Infrastructure)
• Koki Tsuyuzaki, PhD (Pipeline for RNA-Seq)
• Preventive medicine and applied genomics unit
• Wako unit & RIKEN Cloud Team
• Fujitsu SSL
• Yamamoto Go
• RIKEN President's Discretionary Fund