人気ブログランキング | 話題のタグを見る

データベース・アーキテクチャ を考える

さぁ、帰ろう...と思ったら雨。
バイク通勤なので、ちょっと雨宿り時間ができてしまった。
(なんとか8時までには投票所へ行かなければ....)

ということで、そんな時間を使いながら、SuperOPAC開発日記を前に進めてみたい。
まずは、[データベース構造]を考る。データベースを考える基本として

・テーブル (ex.同一フォーマットの目録カード)
・フィールド (ex.目録カードの各項目)
・リレーション (ex.特定のフィールド(キー項目)を元にふたつのテーブルとつなぐこと)

を考えるところなのだが、それ以前に考えなければならない基本的なデータベース・アーキテクチャはすでに出来上がっているのです。前の投稿の【参考資料】にもリンクを張っておいた『OpenINDEX: 多種類情報資源相互参照システム』として作ったデータベース構造がそれで、SuperOPACを構築するにあたり、そのデータベースアーキテクチャを使いたいと考えている。

まずは、このOpenINDEXアーキテクチャをかいつまんで解説すると...
基本的な考え方としては、

1) それぞれ固有の構造を持つ複数のデーターベースを、効率よく一元管理する。
2) 複数の固有データベースを串刺しで検索できる
3) 同じ種類はもちろんのこと、種類の違うデータベース同士を、相互に関連づけられる。
4) 後から違う種類のデータベースを受け入れることができる
と、まぁ、こんな構造です。
特に4)は、図書館の目録カードにある[→○○○も見よ]をデータベースの種類を超えて関連づけられるものなのです。

効率を考えなければ、ひとつのデータベースに、考えられるすべてのフィールドを用意する...ってこともアリかもしれませんが、それはあまりにも無謀というもの。無駄なフィールドが増えたり、必要なフィ−ルドだけを抜き出すことも、かなりの労力がかかります。
それに、後々のメンテナンスも大変な作業になる...ということで、たどり着いたのが、このOpenINDEXアーキテクチャなのです。
(って、ここに至るまでに、どれだけの試行錯誤をしたことやら〜...)
------------
※OpenINDEXは、丸山高弘が考案したデータベース・アーキテクチャです。
by maruyama_takahiro | 2005-09-11 18:16 | SuperOPAC開発日記
<< デジカメが...欲しい。 SuperOPAC 開発宣言。 >>