Document

OBIGrid
北陸先端科学技術大学院大学
知識科学研究科
佐藤賢二
増大し続ける生物データ
11月14日の nature insight 特集より
増加速度は指数関数的
ポストゲノム: 網羅的・組み合わせ論的な計算の時代
ホモロジー
旧)遺伝子1個 vs データベースの比較
新)生物同士の比較→全遺伝子の網羅的比較
発現
旧)特定の遺伝子が発現する/しない
新)特定の生物の全遺伝子セットに含まれる
個々の遺伝子が相互に作用しあう
数千の自乗~数千万の自乗個の
組み合わせに対する似たような
計算が頻繁に生じる
計算環境の変遷
HGC時代
JAISTに異動
最初はPC1個
中型マシンで
DBをミラー
強力なマシンと
豊富なDB(ゲ
ノムネット)
クラスタ
構築
問題
継続的な資源増強を強いられる
DBやソフトのメンテナンス作業(一部手動)が生じる
企業と共同研究する時には共通の作業ベースが必要で、
そのためにはこちらにログインしてもらうしかない
グリッドコンピュー
ティングに期待
Open Bioinformatics Grid(OBIGrid)
http://www.obigrid.org
参加組織等
CRL 住エレ
CTC
大阪産業大
同志社大
三菱総研
NTTData
統数研
富士通
NMR構造決定 徳島大
富士総研
和歌山大
インテック
好熱菌KB
BLAST
W&G
MDシミュレーション
XML
DB
GSC
琉球大
JAIST
日本新薬
VPN/Globus
OBIEnv
九工大
数理技研
三井情報
細胞シミュレーション 九大
Compaq
NIS
NEC
HNES
東工大
AIST
DDBJ HGC
ベストシステム
OBIGrid の目標
バイオインフォマティクスのためのグリッド構築
グリッドに接続するだけで、研究に必要な
・データベースへのアクセス
・シミュレータの利用
・実験データの配信
が可能になる
OBIGrid のネットワークインフラ
PCクラスター
XMLDB
PCクラスター
•VPN+FWによる隔離
•Globusによる認証
•Over Internet接続
データベース
検索プログラム
VPN-FW
VPN-FW
細胞シミュレー
ションプログラム
Site-A
Site-C
インターネット
Big Machine
Genome
DBミラー
Site-B
VPN-FW
配列解析
プログラム
VPN-FW
MDM
専用計算機
分子シミュレー
ションプログラム
Site-D
GTK2.0 の講習会(サマーキャンプ)
9月6日(金)、7日(土) 於 北陸先端科学技術大学院大学
(JAIST)知識科学研究科
内容 ・認証局設定
・Globusサーバーインストール
講師陣 (敬称略)
中島 康彦 (北陸NES)
梅田 浩之 (IBM)
小野 功
(徳島大)
今出 広明 (徳島大)
谷村 勇輔 (同志社大)
小西 史一 (GSC)
参加者 15サイト 25名
1月にはウィンターキャンプを実施
接続状況
25サイト 107ノード 188CPU
細胞シミュレーション環境(OBIYagns)
シグナル情報伝達
•高速/精密ソルバー
•未知パラメタ推定機能
EGF
receptor
Grb2 SOS
Shc Grb2 SOS
RAS
E
GF
PI3K
PKC
PLC
Solver
NF-kappaB
MAPKKKs
STAT3 STAT1
CyclinD1/cdk4/6
Rb E2F
Rb-p
Web
ポータル
MAPKKs
STAT1
STAT3
MAPKs
E2F
MAPKs
STAT1
E2F
数理
モデリング
STAT3 AP-1 Elk-1
細胞周期
G2期
DNA合成期(S期)
Wee1
CAK
P Cdc2
Cyclin B
Cyclin B
P Cdc2 P
Cdc2
Cdc2
Cyclin B
Cyclin B
Cdc25
Wee1
MPF
Cdc2 P
Cyclin B
Cdc2 P
0.6
0.1
0.4
Cyclin
MPF B
0.05
0.2
G1期
00
200
400
600
0
800 time
細胞分裂期(M期)
JAVA
API
Perl
API
分子シミュレーション環境(OBIMde)
Protein Explore Chip(200Gflops)
Tera ~ Peta flops in total
MDM Engine 64Gflops/4chips
# of residue: 189
Molecular wait: 21kD
Oncogene Variant
Gly12 →Val
5ns
1000h/64Gflops
Ras p21 G Molecular Dynamics Simulation
高度好熱菌知識共有環境(OBITco)
実験データ
ゲノム情報、構造情報、
機能情報を統合
「細胞丸ごと一匹シミュレー
ション」を目指す
実験解析データ
分子機能
関連付加情報
研究者による情報付加
プログラムによる自動解析
>S53477 PIR2 release 73.00
MAAIRDYKTALDLTKSLPRPDGLSVQELMDSKIRGGLAYNDFLILPGLVD
FASSEVSLQTKLTRNITLNIPLVSSPMDTVTESEMATFMALLDGIGFIHH
NCTPEDQADMVRRVKNYENGFINNPIVISPTTTVGEAKSMKEKYGFAGFP
VTADGKRNAKLVGAITSRDIQFVEDNSLLVQDVMTKNPVTGAQGITLSEG
NEILKKIKKGRLLVVDEKGNLVSMLSRTDLMKNQKYPLASKSANTKQLLW
GASIGTMDADKERLRLLVKAGLDVVILDSSQGNSIFQLNMIKWIKETFPD
LEIIAGNVVTKEQAANLIAAGADGLRIGMGTGSICITQKVMACGRPQGTA
VYNVCEFANQFGVPCMADGGVQKHWSYYYQSFGSWFFYCYDGWYVGRYYR ITR
立体構造
データベース
配列
データベース
相互作用情報
データベース
文献情報
データベース
分散XMLデータベース利用環境(OBISgd)
検索サーバー
XML
DB
XML
XML DB
DBs
検索用 検索用 検索用 検索用
index index index index
Web
ポータル
JAVA
API
•スケーラビリティ
•高速応答
•高信頼性
Perl
API
OBIEnv: ライトユーザ向けのバイオインフォマティクス環境
パブリックデータベースの更新と配布
・自動更新→自動配布→自動修復
・分散配置→分散検索
最低限の共通ソフトウェア整備(推奨環境)
・Unixの基本コマンド
・PerlやJavaなどの言語
・BLASTなどのアプリケーション
ユーザから見た使いやすさ
・マシンを意識しないアプリケーション実行
・特に指定しなくてもそれなりに最適な環境
でアプリケーションを実行
そのためには?
計算に必要なDBやアプリがどこにあ
るか?どのマシンが空いているか?
更新したいDBやソフトはどこにあるか?
どこから転送するのが良さそうか?
よそのマシンに簡単に
ジョブを投げられるか?
Globus Toolkit (GTK) の問題点
リモートのマシンに自分のアカウントが必要
→スケーラビリティが低い
遅い(秒単位のオーバーヘッド)
リソース情報の更新が遅い
デフォルトではハードやOSの情報しか検索できない
割り切った所
スーパーロングジョブは考えない(1週間とか)
正確なロードアベレージやメモリとディスクの消費量など、
くるくる変わる情報はモニターしない
リモートマシンにはユーザ個人の永続ファイルは不要
アカウントは代表アカウントで十分
Unix系以外は考えない
こだわった所
ジョブの自動分割とマシンの自動選択
ハードやソフト、DBなど、更新頻度が低いものは確実に
検索可能に
簡単な Config でDBやソフトを自動更新(プル型)
コピーしたものは全て他からも転送可能に
シンプルに、できるだけシンプルに(デフォルトの充実)
必要とあらば色んなことを指定可能に
OBIEnvの概略図
環境検索
サーバ
ジョブ受け付け
ジョブ投入
ノード
検索
ノード
集合
実行
結果
Globus
Tool Kit
ジョブディスパッチャ
(代表アカウントで動作)
自作プロ
グラムを
実行
ポータル
アプリ
OBIEnvを利用
できるユーザ
Globus Tool Kit
デーモン
環境情報
報告デーモン
環境を
スキャン
ローカル
認証
DB
ローカルユーザの
一部をユーザ登録
(グリッドへの接続
許可)
ジョブ実行用エリア
環境への
アクセス(利用)
SW
HW
グリッドへの接続を許されて
いないローカルユーザ
OBIEnvでジョブを実行
ジョブ(タスクリスト)
blast Q1 genbank
blast Q2 genbank
:
blast Q10 genbank
ジョブディスパッチャ
Q1,Q2
Q3,Q4
genbank
ノード
集合
Q5,Q6
genbank
Q7,Q8
Q9,Q10
genbank
genbank
genbank
GenBankと
BLASTを持
っている
ノードは?
環境情報
検索サーバ
各タスクは独立(互いに依存しない)
ユーザからジョブディスパッチャへの指示
必須条件として指定したい場合
例)BLAST2.0~および最新版のGenBank
例)Linux 2.4.X および Perl 5.6.X
例)PentiumIII 800MHz~
Preferenceとして指定したい場合
例)できるだけ分散して実行して欲しい
例)できるだけ同じ環境で実行して欲しい
例)できるだけ速そうなCPUで実行して欲しい
これらの指示に応じてジョブディスパッチャが
ノードの検索と選択を行う
環境情報検索サーバ
各ノードの環境情報を集積し、検索要求に
応える(PostgreSQLを使用)。
自分が持っ
ているDBの
新しいバー
ジョンが出て
いないか?
ハードウェア環境テーブル
ノード名、サイト名、CPU、メモリ、ディスク、…
ソフトウェア環境テーブル
ノード名、ソフト名、バージョン、…
データ環境テーブル
ノード名、データベース名、バージョン、…
BLASTとGenBankを両方持っている
ノードを教えて欲しい
環境が変わっ
たので情報を
更新したい
OBIEnv内のデータベース(イメージ図)
dataless
big machine
UniGene
TrEMBL
InterPro
PDB
cluster
PDB
small machine
medium
machine
InterPro
PDB
big machine
DBと推奨環境は自動転送(選択可能)
ミラー
ftp領域
加工 ftp領域
推奨環境
DB
DB
DB
ftp領域
DB
DB
DB
DB
ftp領域
推奨環境
推奨環境
DB
Perl
GNU
BLAST
...
推奨環境
DB
DB
DB
ftp領域
推奨環境
DB
配布元のサイトはグリッド内で1つとは
限らない(DBやソフトごとに分散可能)
DB
課題
スーパーロングジョブを投げられると、簡単に占有される
→抑制するしくみが必要→課金するしかないか?
ユーザプリファレンスに基づくマシン選択のアルゴリズムが
まだ弱い
GTKによる不安定性やオーバヘッドのさらなる削減
生物情報データベースの問題
テキスト+ファイルシステムでは限界がある(サイズと数)
→DBMSの活用
データサイズが極端に異なる(1エントリ:数KB~80MB)
WANの細さを考えると圧縮転送すべきだが、利用の観点から
は as is で配りたい→2重に持つか?
一次配布元における前処理(インデクシング等)が結構重い
更新頻度(リリースは数ヶ月に1回だが daily update もある)
おわりに
OBIEnv開発メンバー
佐藤(全体およびDB更新系)
辻(スキーマ設計および推奨環境構築)
中島(ディスパッチャおよびシステム管理)
小長谷、山本、Xavier(アドバイザー)
今後の予定
今年中はバグ出しと更新系の実装とドキュメント書き
新年にβ版リリース、βテスター募集
年度内に正式リリース