データベース統合に関わる基盤技術開発 「TogoDB」 システム概説書

データベース統合に関わる基盤技術開発
「TogoDB」
システム概説書
平成 26 年 4 月 24 日 大学共同利用機関法人 情報・システム研究機構 ライフサイエンス統合データベースセンター
1. TogoDB 概説
1.1.
開発目的
生命科学では多種多様なデータが産生されているが、その多くは再利用の難しい論文の
サプリメントとして PDF ファイルや Excel ファイルとして公開されるにとどまるか、デー
タベースとして公開する手段をもたない研究者のもとに秘蔵されている。また、小規模な
データベースとして公開される場合も、データベースが本来備えるべき基本的な機能を全
て実装することが困難なため、利用方法やライセンスが分かりにくく十分に活用されてい
ないことが多い。
これらの状況を緩和しデータの再利用性を向上させるため、ライフサイエンス統合デー
タベースセンター(DBCLS)では表形式のデータをアップロードするだけで高機能なデータ
ベースを簡単に公開できる TogoDB システム[1]を開発した。既存のデータベースでは、そ
れぞれが同じような機能をスクラッチから開発しており、開発費・維持費がかかる上に互
換性がないといった問題点があったが、高機能で再利用性の高いシステムを提供する
TogoDB の利用により、標準化・低コスト化を実現し、ライフサイエンスの研究者がデータ
ベースのシステム開発も求められるという状況を解消できる。
1.2.
既存のデータベースに見られる問題点を解消
TogoDB では、既存のライフサイエンスのデータベースによく見られた下記のような問題
点やニーズの解決を念頭に置いて開発を行った。
•
データベースのウェブサイトを見てもキーワードがわからず検索できない
•
検索機能が貧弱で値の範囲指定や正規表現などが利用できずデータの絞り込みが困難
•
使い方が難しく多数の検索結果を閲覧するのに手間がかかる
•
データを一括で取得することができず再利用が難しい
•
プログラムから利用するための API がなく検索などの自動化が難しい
•
他のデータベースと連携されていないためデータ統合が難しい
•
メタデータがなく、研究対象分野・更新日・作者・ライセンスなどが不明
•
完成までは非公開で共同研究者とのデータベース開発を進めたい
•
カスタマイズが困難で高機能化やウェブサイトへの組み込みなど再利用が難しい
•
データベースの構築やサーバの維持に時間やコストがかかる
1.3.
データベース構築事例
TogoDB は、JST のバイオサイエンスデータベースセンター(NBDC)で生命科学系データ
ベースアーカイブ[2]では、各研究機関から寄託を受けたライフサイエンスデータベースに
メタデータを付して提供するサービスとして利用されている。
2. TogoDB の特徴
2.1.
基本的な機能
TogoDB は汎用的な Web データベース構築システムであり、利用者は表形式のファイル
を TogoDB システムにアップロードするだけで、データ一覧表示や検索機能を持った Web
データベース(Web アプリケーション)をインターネット上に公開することができる。入
力はカンマ区切りの CSV 形式またはタブ区切りの TSV 形式に対応しており、手元のファ
イルを指定するか、これらの形式でデータが取得できる URL を指定して TogoDB のサーバ
にアップロードする。
アップロードされたデータは自動的に解析され、カラム名やデータ型の確認(必要であ
れば修正)を行うだけですぐにデータベースの構築と公開を行うことができる。データベ
ースのカスタマイズや公開・非公開の指定、データの更新、共同開発者の指定などは随時
行うことができる。構築されたデータベースに対しては、Web ブラウザから以下の機能を
実行することができる。
Ÿ
データの一覧表示
Ÿ
データの詳細表示と高速閲覧
Ÿ
データのソート
Ÿ
データの検索
Ÿ
データの追加、編集、削除
Ÿ
ユーザ間でのデータ共有
Ÿ
データベースのメタデータ作成
Ÿ
REST API によるデータ検索
Ÿ
RDF 化で用いるオントロジーの管理
Ÿ
RDF, JSON, FASTA ファイルの生成
Ÿ
SPARQL 言語による RDF データの検索
検索前から DB の中身を分かりやすく表示
TogoDB では、検索前からデータの一覧が常に表示されており、それを任意のカラムで並
べ替えたり検索条件によって絞り込むという設計になっているため、データベースの中身
が分からず利用できないといった問題は生じない。
正規表現を含むカラム毎の高度な検索機能
また、一覧に表示されているデータの詳細表示を上下キーだけで次々と閲覧する機能を
内蔵しており、検索によって絞りこまれた数百件のデータをソートした順に閲覧する、と
いった利用も非常に効率よく行える。さらに、このデータを CSV 形式で一括してダウンロ
ードする機能も提供されており、解析などでの再利用も容易である。
絞り込んだエントリを矢印キーで次々と高速ブラウジング
2.2.
データベースの更新
一度作成したデータベースは、その内容の追加・修正・削除が可能で、この際に共同研
究者を追加して閲覧権限・編集権限を付与するといったユーザ間でのデータ共有も可能で
ある。
2.3.
リンク情報のカスタマイズ
生命科学のデータベースでは、表の中に他のデータベースの ID を含む場合も多いが、こ
れらの ID に対して、リンク先の URL の指定と ID 間のセパレータの指定を行うことがで
きる。これにより、もともと ID だけしか含まれていない表データに対しても、外部データ
ベースへリンクした表示を生成することができ、ユーザの利便性を向上できる。塩基配列
の GenBank, EMBL, DDBJ、アミノ酸配列の UniProt、タンパク質立体構造の PDB、文
献の PubMed、遺伝子オントロジーの GO、タンパク質モチーフの InterPro, Pfam、RNA
モチーフの Rfam、生物系統の Taxonomy など、よく使われる主要な外部データベースは
選択するだけでリンク先が指定できるようになっている。なお、ここで指定した外部デー
タベースへのリンクは、後述の「セマンティック・ウェブ対応」の項目にある RDF 生成の
際にも利用される。
2.4.
デザインのカスタマイズ
構築したデータベースは、HTML, CSS, JavaScript を任意に編集し柔軟にデザインをカ
スタマイズすることができる。HTML の管理画面ではバナーやフッターなどの埋め込みは
もちろんのこと、データベースのカラム名とその値が変数として利用可能であるため、デ
フォルトの表形式での表示に縛られることなく、任意のレイアウトでエントリを表示する
ことができる。
使用する CSS もデータベースごとに個別のものが指定できるため、TogoDB のヘッダを
非表示にする機能とあわせて、オリジナルなデータベースとして全く見た目の異なるデザ
インを適用することも容易に実現できる。さらに JavaScript を使用することで、データベ
ースに含まれる緯度経度の値から Google Map API による地図表示を行うなど、高度なカ
スタマイズを自由に行うことができる。
2.5.
外部サイトへの埋め込み
TogoDB - 外部サイトへの埋め込み
任意のウェブページに2行で埋め込み可能
<table id="togodb-dbname" style="display:none"></table>
<script type="text/javascript" src="http://togodb.org/togodb/flexigrid/dbname.js?width=700&height=400"></script>
構築したデータベースは、TogoDB のサイトから閲覧できるだけでなく、任意のウェブサ
イトに埋め込むことも可能である。このためには HTML を 2 行追記するだけでよく、デー
タベース名と埋め込みサイズを指定すれば、ページ内の HTML を追記した位置に自動的に
組み込まれる。これにより、独自ドメインで運用されている研究プロジェクトのウェブサ
イトなどにも TogoDB で作成したデータベースを内蔵することができる。この機能を、上
記のデザインのカスタマイズと合わせて利用することにより、統一感をもったウェブデー
タベースの運用が容易に実現できる。
2.6.
データベースのメタデータ
TogoDB - 標準化仕様に沿ったDBメタデータ
DBの概要を説明
W3C HCLS / BioDBCore / NBDC などと共同で
標準化を進めてきた DB メタデータを RDF 出力
DBのライセンスを指定
BioHackathon を通じて W3C HCLS, BioDBcore, NBDC, DBCLS などのコミュニティ
や機関と共同で標準化を進めているデータベースのメタデータを指定する管理画面を有し、
これにもとづいてデータベースの説明、著作権者、ライセンスなどの項目を適切に記載で
きるようになっている。TogoDB によるデータベースの公開・非公開は随時変更できるが、
公開する際にはこれらのメタデータを記載しておくことが望ましい。
なお、標準化仕様で求められている、データベースの URL やエントリ数、更新日、利用
可能なデータ形式などは自明であるため、ユーザが指定することなく TogoDB のシステム
が自動的に補完するようになっている。
2.7.
検索 REST API
TogoDB で構築したデータベースに対しては、プログラムからの利用を容易にするための
高機能な検索用 REST API が自動的に利用可能となる。キーワード検索では、該当するエ
ントリを取得するためのシンプルな API と、Open Search の仕様に準じて XML でデータ
を取得するための API が提供される。
また、複合検索では文字列検索に加え、正規表現、値の範囲指定、ブーリアン検索、日
時範囲指定などの検索が直感的な REST API で実現可能であり、これらを組み合わせた複
雑な検索条件も容易に表現することができる。これにより、絞り込んだ結果に対する URL
が発行できるため、ブックマークやウェブサイトからのリンク、研究者間でメールなどで
のやりとりといった応用も可能となっている。
TogoDB - さまざまな検索 API
• TogoDB - SPARQL検索 → SPARQL result (JSON/XML)
• http://togodb.org/sparql/dbname
• TogoDB - Open Search検索 → Atom XML
• http://togodb.org/search/dbname/query
• TogoDB - シンプル検索 → ページ
• http://togodb.org/db/dbname/query
• TogoDB - 複合検索 → ページ
•
•
•
•
•
•
2.8.
http://togodb.org/db/dbname?column="query " (string)
http://togodb.org/db/dbname?column=/regexp/ (regular expression)
http://togodb.org/db/dbname?column>value (numeric)
http://togodb.org/db/dbname?column=true (boolean)
http://togodb.org/db/dbname?column=YYYY-MM-DD-YYYY-MM-DD (date)
http://togodb.org/db/dbname?col1="query"&col2=/regexp/&col3>YYYY-MM-DD
セマンティック・ウェブ対応
TogoDB ではデータベースの統合を推進し再利用性を向上させるため、セマンティック・
ウェブによるデータ活用を実現している。構築したデータベースは自動的に RDF 形式に変
換されトリプルストア上に蓄積されるため、上記検索 API に加えて SPARQL 検索も可能
となっている。RDF データと SPARQL 検索の利用により、他のデータベースとのデータ
統合と精度の高いデータ検索を行うことができる。なお、SPARQL 検索の利用可否は、
「デ
ータベースの更新」の項にあるデータベースの公開・非公開と連動している。
表形式のデータは、サブジェクト(主語)として各行に対して ID を振り、カラムをプロパ
ティ(述語)、セルの値をオブジェクト(目的語)と見做すことで、RDF の「主語-述語-目的語」
に相当するトリプルを生成することができる。TogoDB の管理画面では、任意のオントロジ
ーを利用して、プロパティに使われる URI とオブジェクトのクラス概念 URI を指定するこ
とができる。独自のデータにおいては、既存のオントロジーでは必ずしも概念を表現しき
れないことが多いため、この際に使用するオントロジー自体を作成してアップロードした
り、管理画面上で自由に記述・編集するための機能も備えている。
TogoDB - オントロジー編集機能とRDF化の指定
オントロジーの記述・編集(アップロード可)
RDFにカラムの Property とデータの Class 指定
TogoDB では、表形式のデータからデータベースを構築すると同時に自動的に RDF が生
成されるが、管理画面での設定によりオントロジーを利用したより精度の高い RDF を随時
更新しながら容易に設計することができるため、Linked Open Data 構築のためのプラット
フォームとしても活用することができる。
特に、もともと TogoDB がウェブデータベースであることから、サブジェクトのリソー
ス URI に対してエントリの情報を表示するウェブページが最初から存在する状態になって
いることは、データだけから RDF を生成する場合と比べて有利な点である。また、「リン
ク情報のカスタマイズ」の項で述べたように、セルの値が外部リソースの ID である場合、
リンク機能によりリファレンス先の URI へと書き換えることも自動的に行われる。
2.9.
データセットのリリース機能
TogoDB で構築されたデータベースは、CSV 形式に加え、セマンティック・ウェブの RDF
(XML, Turtle)形式と、配列データを含む場合は FASTA 形式でのダウンロードが可能であ
る。デフォルトでは全項目がダウンロード用のファイルに含まれるが、管理画面から指定
したカラムの情報だけを含むサブセットのデータセットを作りリリースすることも可能と
なっている。
また、エントリの追加修正を行った場合、リンク情報などを変更した場合、RDF 化のた
めのオントロジー指定を変更した場合などには、リリース機能を利用することにより全フ
ァイルを更新することができる。この時、SPARQL エンドポイントの情報も自動的にアッ
プデートされる。
TogoDB - RDFの自動生成とSPARQL検索
RDF/XML, Turtle の自動生成
@prefix togodb: <http://togodb.org/ontology/antmossdb#> .
<http://togodb.org/entry/antmossdb/1>
togodb:number_registered "19761002/19761002-0001" ;
togodb:date_collected "1961-02-10Z" ;
togodb:latitude "54d 17m 0s S" ;
togodb:longitude "36d 31m 0s W" ;
togodb:taxonomy_class "[Musci]" ;
togodb:taxonomy_sub_class "Bryidae" ;
togodb:taxonomy_order "Grimmiales" ;
togodb:taxonomy_family "Grimmiaceae" ;
togodb:taxonomy_genus "Racomitrium" ;
togodb:specific_epithet "austro-georgicum Par." ;
togodb:variety "" ;
SPARQL endpoint の自動構築
3. リファレンス
1.
TogoDB: http://togodb.org/
2.
生命科学系データベースアーカイブ: http://dbarchive.biosciencedbc.jp/