PLAINセンターニュース第153号
Page 1

ウェブデータベースを作ろう−その2−


 ウェブデータベースは一般にデータベースへのアクセスをネットワークから行うためのものです。インターネットは無数のウェブデータベースで満ちており、本稿は、その作り方の話の第2回です。ウェブデータベースのうち身近なものとして

  • 日記を書くための BLOG
  • メモをまとめるための WIKI

などが挙げられます。プレインセンターが開発している宇宙科学データベース DARTS も、このようなウェブデータベースの一つです。公開、あるいは、やり取りしたいデータがあれば、それが日記にせよ、メモにせよ、あるいは人工衛星からのデータにせよ、楽にウェブデータベースを作成し、あるいは、便利に使いたいものです。昨今、BLOG や WIKI など定型のウェブデータベースを構築するソフトウェアが多数存在します。そこで、これらお仕着せのインタフェースで満足できるのなら、すぐにでも使い始めることができます。しかし、これらも、便利にするために変更をしようとすると、苦労をすることになります。ソフトにあらかじめ用意されているカスタマイズ項目の設定で済むのか、ソフトウェアそのものを改造が必要となってしまうのか、理解に時間がかかるのです。まして、DARTS のような特定目的のウェブデータベースをゼロから作るのは大変なことです。ウェブデータベースは、サーバとクライアントソフト (ブラウザなど) が非同期 (= ばらばら) に動作する、ソフトウェアとして比較的高度なものなのです。そこで、昨年度からプレインセンターでは、できるだけ簡単にウェブデータベースを作成し、改良できるように、作成するウェブデータベースシステムの設計に一定のルールを設けることとしました。決められたルールに従ってプログラムを設計することはゼロから考えるより、ずっと楽なことです。

 図1に「すざく」、「あかり」、Solar-B 衛星の DARTS システムの内部構成を示します。この構成はウェブデータベースシステムとして典型的なもの一つです。しかし、ウェブデータベースであれば、必ずこのようにプログラムを組まなければいけないわけではありません。それぞれの衛星の DARTS は、別のプログラムで、独立に動くものですが、図1のレベルで眺めるとどれも同じつくりになっています。以下では、このシステムを構成する要素の役割や DARTS がどのように利用しているかについて順にお話します。


図1 Web・データベースシステムの構造

データ

 データベースシステムの中心は収蔵されている「データ」です。データはファイルに記録されたり、あるいはリレーショナルデータベース (RDB) といったソフトに記録されたりします。ウェブから利用するデータベースの作成においても、収蔵するデータの構成を決めることがその出発点です。特に、宇宙科学データベース DARTS のように、データを取得後、長期間にわたり様々な角度から活用するためのアーカイブでは、データの設計をデータベースシステムの設計とは独立させておくことが重要です。技術は進歩し、システムには寿命がある一方で、収蔵されているデータそのものは息が長い。30年先の将来、DARTS のウェブインタフェースがどのように進化しているかは未知ですが、現在すでに収納されているデータの構造は変わっていないはずです。

処理

 「処理」はデータとユーザとのインタフェースのかなめとなる部分です。検索のロジックを組んだり、データを見易く加工したりするためのものです。我々が作成するウェブデータベースでは、この「処理」の部分と次にのべるウェブインタフェースの部分を厳密に作りわけています。DARTS は収蔵されているデータをそのまま研究者に見せて利用してもらうことが基本です。そこで組まれる「処理」も従来は比較的簡素なものでした。「処理」はウェブとは切り離された通常のプログラムです。DARTS においても、今後は、必要に応じて、もう少し複雑な処理まで組み込むことになるでしょう。

ウェブインタフェース

 「ウェブインタフェース」は、ブラウザからの操作に応答するインタフェースを担います。インターネットというと、まず、ウェブとそれをアクセスするためのブラウザを思い浮かべる人が多いのではないでしょうか?DARTS も、宇宙科学研究所の衛星のデータをウェブ経由で、世界の研究者に提供するシステムとして出発しました。ウェブブラウザを用いると、利用者にデータベースの説明や利用法を自然な形で知らせ、操作を促すことができます。一方で、何種類の画面を用意し、各々に何を表示するかなどは、データベースシステムを提供する側が設計し、実装しなければなりません。その手間を考慮すると、ウェブインタフェースは 100 人の利用者のうち、80 人が使うような定型的なパターンを作りこむのに適しています。

ウェブサービス

「Web Service」は、外部のプログラムとのインタフェースを担います。例えば、DARTS のような科学データの解析では、人手を介したブラウザアクセスでは満足できず、多量なデータを一律的に検索・処理し、結果を導き出したくなることが多々発生します。このような場合、それぞれの利用者がプログラムを作成したプログラムからデータベースを直接アクセスできると便利です。近年、計算機から別の計算機の処理を呼び出す技術として、ウェブサービスと呼ばれる技術が浸透してきています。あかり衛星の DARTS では、このウェブサービスの技術を用い、ユーザの端末のコマンドラインから DARTS にアクセスするツールを準備しています。また、それぞれの天文台が用意するウェブサービスの規格を標準化し、いろいろな天文台のデータを扱う際の敷居を、一段低くしようとするのが、現在進行中の仮想天文台構想 (Virtual Observatory) です。複雑な処理は、ウェブサービスを利用する側の計算機に組むことがでます。そこで、提供すべき一つ一つのサービスは単純なもので構いません。ウェブインタフェースは定食メニューを提供するためのもの、ウェブサービスは一品料理を提供するためのものという使い分けことができます。

 これで準備ができました。次の稿からは、それぞれの構成要素についてお話します。

 △▲このページの先頭へ



この号の目次へ

宇宙研計算機,ネットワークに関するお知らせ


(508kb/2pages)

Next Issue
Previous Issue
Backnumber
Author Index
Mail to PLAINnewsPLAINnews HOME