データベースの利用および構築に関するBibliography |
Perlの連想配列を,データベース管理ライブラリ(libdb,libgdbmなど)を用い て,データベースファイルに格納する方法や,そのデータベースファイルにアクセ スする方法が,簡潔に述べられている.
スクリプト例では,NCSA HTTPDのアクセスログを読んで,データベースに情報を 収集し,サイトの統計情報をHTMLで表示するプログラムを載せている.ただし, 非常に単純なもので,実用的とは言えない.
リレーショナルデータベースが扱えるデータ型には限界がある.複雑なデー タの関係や,複合的なデータも,全てSQLがサポートする原始的な型に置き換え てやらなければいけない.複雑なデータオブジェクトの関係や,あらゆるデータ 型に対応できるように,主にCADやCAMの分野で発展してきたオブジェクトデータ ベースが,より使いやすくなり,一般向にも使用できるようなAPIが幾つか出て いる.
オブジェクトデータベースモデルのうち,ベンダーが提供しているPersistant base classを継承してオブジェクト操作を記述するモデルと,Pointer swizzling techniqueを用いる2種類のモデルがあるが,この記事では,後者のモ デルを実装したThe University of Texas at Austinの The Texas Persistent Storeについて紹介している.非常に単純 なコード例が記載されているが,確かに使い勝手は良さそうである.SQLのような 外部の言語を使用するのではなく,C++を用いてデータベースの記述をするの だが,SQLと同様細かいデータベース操作を記述する必要がない.それに加え, 単純なコード例からは分からないが,複雑なデータ型とデータ間の関係も扱える という.処理速度も,キャッシングの技術をうまく利用しており,リレーショナ ル型よりも高速らしい.
この記事の筆者が作った,より複雑なデータベースの例が, http://www.qds.com/people/gmeinke(現在はないらしい,只今探索中)に, デザインを説明したファイルとソー スコードの両方がおいてあるので,ぜひ一読をすすめる. The Texas Persistent Storeに関するリソースは,OOPSリサーチグループのホームページ http://www.cs.utexas.edu/users/oopsからたどれる.または, anonymous ftpでもソースと資料 書類を得ることができる.