資 料 6 統 合 データベース 支 援 : バイオDBサーバー 構 築 演 習 森 下 真 一 中 谷 洋 一 郎 1
目 的 バイオDBを 構 築 できる 人 材 を 育 てる 膨 大 なソフト 外 注 費 (150~200 万 円 / 月 )を 回 避 DBの 保 守 拡 張 が 自 前 でできること やむをえず 外 注 する 場 合 も 正 確 な 仕 様 書 を 書 ける 力 と 納 入 されたソフトの 問 題 点 を 見 抜 く 力 を 養 う 必 要 スキルを1 年 間 のカリキュラムで 教 え 込 む 次 の1 年 で 独 創 的 サーバーを 構 築 2
計 画 DB 構 築 者 を 養 成 するために 以 下 の3つの 演 習 を 実 施 する 1バイオ DB サーバー 構 築 演 習 データベースサーバーのミラーサイトを 構 築 する OS, apache, MySQL 等 の 主 要 ソフトウエアのインストールおよびネットワークセキュリティに 習 熟 することが 目 標 である 参 加 者 には 各 自 にサーバー 構 築 用 ワークステー ションを 配 布 する 演 習 を 完 了 するまでには 受 講 者 の 能 力 と 受 講 可 能 時 間 に 応 じて 最 短 で3ヶ 月 最 長 で1 年 間 の 時 間 を 予 定 している 2プログラミング 演 習 Java および Perl プログラミングを 演 習 した 後 に アルゴリズムの 知 識 を 活 かした 配 列 処 理 やデータマイニングの 実 装 を 行 う 上 記 1バイオ DB サーバー 構 築 演 習 では 実 施 がむずかしいプログラミング 演 習 を 行 うこと で 独 自 にソフトウエア 構 築 ができる 能 力 を 身 につけることをめざす 演 習 総 時 間 は90 時 間 で 約 2ヶ 月 間 を 予 定 している 3 独 創 的 サーバー 構 築 演 習 大 規 模 計 算 のためのクラスター 利 用 技 術 を 習 得 させ 他 に 類 の 無 いバイ オDBサーバーを 設 計 実 装 公 開 することを 目 標 とする バイオDBサー バー 構 築 演 習 およびプログラミング 演 習 を 修 了 した 受 講 者 に 対 して 平 成 20 年 度 より 開 講 を 予 定 しており そのための 計 算 機 セットアップを 平 成 19 年 度 に 準 備 した 3
年 次 計 画 平 成 19 年 度 20 年 度 21 年 度 22 年 度 プログラミング 経 験 者 プログラミング 経 験 者 プログラミング 演 習 ( 夏 季 90 時 間 ) プログラミング 演 習 ( 夏 季 90 時 間 ) 註 )プログラミング 演 習 が 不 必 要 と 判 定 されたプログラミング 経 験 者 はバイオDBサーバー 構 築 演 習 に 進 むことができる バイオDB サーバー 構 築 演 習 ( 通 年 毎 週 演 習 ) バイオDB サーバー 構 築 演 習 通 年 毎 週 演 習 約 9 名 1ヶ 月 間 短 期 演 習 約 1 名 バイオDB サーバー 構 築 演 習 通 年 毎 週 演 習 約 3 名 1ヶ 月 間 短 期 演 習 約 2 名 註 ) 教 育 プログラムを 早 期 に 立 ち 上 げるため 2007 年 度 に 限 ってはプログラミング 演 習 とバイオDBサーバー 演 習 を 並 行 実 施 独 創 的 サーバー 構 築 演 習 通 年 の 課 題 5 名 独 創 的 サーバー 構 築 演 習 通 年 の 課 題 10 名 独 創 的 サーバー 構 築 演 習 通 年 の 課 題 5 名 第 1 期 生 (5 名 ) 第 2 期 生 (10 名 ) 第 3 期 生 (5 名 ) 演 習 用 WS15 台 ( 平 成 19 年 度 予 算 申 請 ) 註 ) 1 期 生 と2 期 生 が20 年 度 には 重 なること(21 年 度 は2,3 期 生 ) WSが15 台 であること 演 習 スタッフ1.5 名 による 徒 弟 制 度 であるため 各 年 15 名 の 受 け 入 れが 限 度 である 4
平 成 21 年 度 受 講 者 一 年 コース(4 月 ~3 月 ) 東 大 情 報 生 命 科 学 専 攻 から3 名 東 大 医 学 系 研 究 科 から1 名 5
DBサーバー 構 築 演 習 の 目 標 設 定 1: CentOS を 自 分 のマシンにインストールする 2: ネットワークと 接 続 する 3: セキュリティアップデートを 行 う 4: Web サーバーを 立 てる(ファイヤーウォールの 設 定 を 行 う) 5: CGIを 設 置 してみる 6: MySQL サーバーを 立 てる 7: 簡 単 なデータベースを 作 成 する 8: Ensembl core をインストールしミラーを 作 成 する 9: 複 数 種 の 実 データをダウンロードして 完 全 ミラーを 作 る 10: バックアップを 作 成 して 即 時 復 旧 できる 体 制 を 作 る 6
21 年 度 バイオDBサーバー 構 築 演 習 の 概 要 OS (Linux) のインストール ネットワーク ファイアーウォー ルの 設 定 Web サーバーの 設 置 設 定 (apache) RDBMSの 設 置 設 定 (MySQL) Perl モジュールの 設 置 設 定 Ensembl の 設 置 設 定 Perl, Javaプログラミング CGIからのデータベース 検 索 メンテナンス 全 般 障 害 対 応 ソフトウェアの Security fix やバージョンアップ 等 演 習 日 程 テーマ 4/16 イントロダクション CentOSのインストール 4/23 セキュリティと 定 期 アップデート SSHによる 外 部 からの 安 全 な 接 続 4/30 Webサーバーの 設 置 シェルスクリプト Pukiwikiの 設 置 5/07 Perl 演 習 5/14 CPANを 使 いこなす BioPerlのインストール 5/21 RDBMS Perlからデータベースを 扱 う 5/28 PerlによるCGIプログラミング 6/04 Java 演 習 :プログラムの 書 き 方 6/11 Java 演 習 :データ 構 造 とオブジェクト 6/25 Java 演 習 :GUIアプリケーションとデータの 入 出 力 7/02 Java 演 習 :データベースアプリケーション 7/09 CGIでデータベースを 検 索 する 7/16 Ensemblデータベースをミラーする1 7/30 Ensemblデータベースをミラーする2 9/03 Ensemblデータベースをミラーする3 9/17 Ensemblデータベースをミラーする4 10/01 Ensemblデータベースをミラーする5 10/15 サーバーのバックアップ1 10/15 BLATを 用 いたmRNAのゲノムへのマッピング 10/29 サーバーのバックアップ2 10/29 Ensemblデータの 解 析 BioMartを 使 ったデータ 取 得 11/12 サーバーのバックアップ3 11/26 サーバーのバックアップ4 11/26 OpenCVを 使 った 画 像 処 理 演 習 12/10 UTGB Toolkitのインストール 12/10 JFreeChartを 使 用 したグラフの 描 画 12/10 遺 伝 子 発 現 データベースを 使 い 倒 す 12/24 UTGB Toolkitを 使 ったゲノムブラウザプログラミング 12/24 遺 伝 子 発 現 データの 生 物 学 的 な 解 釈 7
OSのインストール 講 義 日 程 :4/16 システム ネットワーク ウェブ データベース 等 に 関 する 基 礎 的 な 用 語 の 解 説 各 自 のサーバーにLinuxをインストール CDイメージをダウンロードしCentOS 最 新 版 をイン ストールする 8
セキュリティと 自 動 更 新 設 定 鍵 認 証 方 式 によるログイン 講 義 日 程 :4/23 セキュリティーについて 脆 弱 性 とは? 脆 弱 性 の 例 Buffer overflow, SQL injection, Cross site scripting, Brute force attack, DNS spoofing, yum-cronによる 定 期 的 なセキュリティアップデートの 設 定 ネットワークの 設 定 SSHの 設 定 公 開 鍵 認 証 方 式 によるログイン パスワードを 入 力 しない 安 全 な 方 式 で 外 部 からssh 接 続 を 行 う 9
Web サーバーの 設 置 Pukiwikiの 設 置 講 義 日 程 :4/30 ウェブサーバーの 設 置 Apacheのインストール 設 定 ファイルの 編 集 Firewallの 設 定 Pukiwikiの 設 置 ウェブ 上 で 情 報 の 共 有 と 整 理 を 多 人 数 で 行 える Pukiwikiをダウンロードし サーバーにインストールす る Pukiwikiの 基 本 操 作 文 法 の 解 説 10
Perlプログラミング 演 習 講 義 日 程 :5/7 なぜPerlを 学 ぶのか? バイオインフォマティクスの 分 野 で 最 も 広 く 使 われ ているスクリプト 言 語 Ensembl のコードもPerlで 書 かれているためミラーサ イト 構 築 時 にPerlの 知 識 が 必 要 Perlのインストール 基 本 的 なPerl 文 法 の 解 説 File I/O, 正 規 表 現, サブルーチン, ソートなど ゲノム 配 列 データをダウンロードし Perlを 使 用 し て 簡 単 なデータ 処 理 を 行 う 11
ソフトウェア モジュールのインストール 講 義 日 程 : 5/14 他 の 研 究 者 によって 開 発 されたソフトウェア ライブラリー モジュールを 使 用 することで 解 析 プログラム 解 析 パイプラインをすばやく 簡 単 に 作 成 することができる CPANの 利 用 CPAN の 使 い 方 ライブラリ CPAN (Comprehensive Perl Archive Network) とは 何 か 最 初 の configuration モジュールのインストール 依 存 モジュールが 足 りない 場 合 は 自 分 のHOME 下 へのインストール インストール 済 みモジュールのチェック CPANからPerlモジュールをインストールする AppConfig, DBI, DBD::SQLite, File::HomeDir, YAML, Spreadsheet::ParseExcel, Spreadsheet::WriteExcel, Cwd, SVG, PostScript::Simple, HTML::Parser, XML::Parser, IO::Zlib, Term::ReadLine, Template, Digest::SHA::PurePerl, Bundle::BioPerl makeによるモジュールインストール 12
データベースの 設 置 Perlを 使 ったデータベース 検 索 講 義 日 程 :5/21 データベースの 設 置 MySQLのインストール MySQLの 基 本 的 なコマンドの 解 説 データベースの 検 索 PerlのDBIモジュールによるデータベースアク セス Perlプログラムからの 遺 伝 子 データの 検 索 BioPerlを 使 用 した 遺 伝 子 系 統 樹 解 析 13
PerlによるCGIプログラミング 講 義 日 程 :5/28, 7/9 Perlを 使 ってCGIプログラムを 作 成 HTTPの 解 説 Perlでアクセスカウンターを 作 成 GET 方 式 とPOST 方 式 によるユーザーからの 入 力 の 処 理 Cookieの 解 説 ウェブページからユーザー 入 力 を 受 け 取 りデータベースを 検 索 するCGIの 作 成 BioPerlを 使 って TreeFamデータベースの 系 統 樹 データを 検 索 CGI 作 成 用 のPerlモジュール HTML::Template, HTML::FillInformを 使 用 14
Java プログラミング 演 習 講 義 日 程 :6/4, 11, 25, 7/2 演 習 内 容 プログラムの 書 き 方 Javaの 仕 組 みと 文 法 Eclipse(Javaの 開 発 環 境 )の 使 い 方 データ 構 造 とオブジェクト 配 列 オブジェクト 指 向 プログラミング データ 構 造 GUIアプリケーションとデータの 入 出 力 文 字 列 オブジェクト クラス 入 出 力 GUIアプリケーションの 作 成 データベースアプリケーション リレーショナルデータベースとSQL, SQLite JDBCを 使 ってJavaから データベースを 扱 う 15
Ensemblミラーサイトの 構 築 サーバーのバックアップ 講 義 日 程 :7/16, 30, 9/3, 17, 10/1, 15, 29, 11/12, 26 Ensembl ミラーサイト 構 築 必 要 なモジュールのインストール データのダウンロードとインストール Ensemblウェブサイトの 設 定 起 動 TeraStationへのバックアップ データベースのバックアップ rsync コマンドによるバックアップ 16
UTGB toolkitによる ゲノムブラウザー 開 発 講 義 日 程 : 12/10, 24 UTGB toolkitを 用 いて 新 しいタイプのゲノム データをトラックに 表 示 する 技 術 を 習 得 するこ とが 目 標 UTGBの 紹 介 UTGB toolkitのインストール UTGB toolkitを 用 いてデータを 表 示 する 17
21 年 度 講 習 の 進 捗 ( 受 講 者 数 :4 名 ) 済 済 済 済 済 済 済 済 済 1. CentOS を 自 分 のマシンにインストールする 2. ネットワークと 接 続 する 3. セキュリティアップデートを 行 う 4. web サーバーを 立 てる(ファイヤーウォールの 設 定 を 行 う) 5. CGIを 設 置 してみる 6. MySQL サーバーを 立 てる 7. 簡 単 なデータベース 作 成 をする 8. Ensembl core をインストールしミラーを 作 成 する 9. 複 数 種 の 実 データをダウンロードして 完 全 ミラーを 作 る 10. バックアップを 作 成 して 即 時 復 旧 できる 体 制 を 作 る 18
独 創 的 サーバー 構 築 演 習 受 講 者 が 研 究 で 使 用 する 新 規 データをゲ ノムブラウザーに 表 示 する 発 現 量 データを 表 示 するトラックの 開 発 配 列 特 異 性 を 視 覚 化 するトラックの 開 発 RepeatScape として 公 開 Fosmid-end 解 析, 完 全 長 cdnaアセンブリー の 解 析 をブラウザーに 表 示 データ 解 析 論 文 作 成 に 活 用 されている 19
UTGB Medaka Online Mapping クラスターでアラインメントの 計 算 ウェブブラウザーでマッピング 結 果 を 表 示 20
昨 年 度 までのバイオDB 構 築 演 習 受 講 者 による 講 義 演 習 BLATを 用 いたmRNAのゲノムへのアラインメントと 出 力 結 果 の 処 理 Ensemblの 比 較 ゲノムデータを 使 った 解 析 とBioMart によるデータ 取 得 方 法 OpenCV( 画 像 処 理 ライブラリー )を 用 いた 画 像 解 析 遺 伝 子 データベースを 使 い 倒 す(BioGPS, NCBI Gene Expression Omnibus, Mouse Genome Informatics デー タベースを 使 った 発 現 解 析 ) 遺 伝 子 発 現 データの 生 物 学 的 な 解 釈 (DAVID, Reactomeデータベースを 使 った 発 現 解 析 ) 21
サーバー 使 用 者 氏 名 とネットワーク 図 es1.gi.k.u-tokyo.ac.jp 簑 島 (21 年 度 受 講 者 ) es2.gi.k.u-tokyo.ac.jp 李 (21 年 度 受 講 者 ) es3.gi.k.u-tokyo.ac.jp 林 (21 年 度 受 講 者 ) es4.gi.k.u-tokyo.ac.jp 福 田 (21 年 度 受 講 者 ) es5.gi.k.u-tokyo.ac.jp 募 集 中 es6.gi.k.u-tokyo.ac.jp 仲 里 猛 留 (20 年 度 受 講 者 ) es7.gi.k.u-tokyo.ac.jp 中 谷 洋 一 郎 ( 講 師 ) es8.gi.k.u-tokyo.ac.jp 劉 晅 晅 (20 年 度 受 講 者 ) es9.gi.k.u-tokyo.ac.jp 宗 永 雅 樹 (20 年 度 受 講 者 ) es10.gi.k.u-tokyo.ac.jp 村 中 真 人 (20 年 度 受 講 者 ) es11.gi.k.u-tokyo.ac.jp 呉 紅 艶 (20 年 度 受 講 者 ) es12.gi.k.u-tokyo.ac.jp 近 藤 修 平 (20 年 度 受 講 者 ) es13.gi.k.u-tokyo.ac.jp 白 井 和 英 (20 年 度 受 講 者 ) es14.gi.k.u-tokyo.ac.jp 中 谷 洋 一 郎 ( 講 師 ) scmd.gi.k.u-tokyo.ac.jp 中 谷 洋 一 郎 ( 講 師 ) 斉 藤 太 郎 ( 講 師 補 助 ) 22