Yet another OSS DB:Firebird(1)

Firebirdのアーキテクチャと特性、歴史

Firebird日本ユーザー会
はやしつとむ
2008/10/16

Firebirdがやってきたところ・向かう先

 さて、Firebirdがどこからきてどこへ向かっているのかについて、お話しするのがこの項の目的なんだけれど、Firebird日本ユーザー会の木村明治さんや加藤大受さんがこの方面ではよく調べてまとめたものをすでに発表されているので、少し違った角度からお話ししたいと思う(これらの資料は注釈や前述の情報源から確認してほしい)。

 そもそも誰がFirebirdを作ったのか? という問いに対する答えはすごく明確で、前述のとおり、1984年ごろにDigital Equipment Corporation(DEC)注3に在籍していたJim Starkeyが書いたjrdというリレーショナルデータベースがその原型であることがはっきりしている。当時DECでは、rdbというそのものずばりの名前でリレーショナルデータベースの開発が進められていたのだが、Jimはこれが気に入らなかったようで、"Jim's Relational Database"を略したjrdを作り上げてしまったのだ。

注3)DEC(Digital Equipment Corporation:ディジタルイクイップメントコーポレーション)は、1957年にマサチューセッツ州メイナードに設立された、アメリカ合衆国を代表するコンピュータ企業だった。その後、コンパックに買収され、コンパックはヒューレッド・パッカードに買収された。jrdの対抗馬だったDEC rdbはOracleに売却され、Oracleの製品「Oracle rdb」としてサポートされている。

 ところが、rdbを推している人たちも当然社内にはいた。ご想像のとおり、すったもんだがあった揚げ句に、JimはDECを辞めてしまった。

 その後、独立したJimは奥さんのAnn Harrison、DECの同僚のDon DePalmaと3人でGroton Database Systemsを立ち上げ、途中で名前も変わってInterbaseのInterBaseという名前になったjrdを製品として育て上げてきた。けれども、その後買収されては買収され、を繰り返して最終的にBorlandに買われることになったのが1991年ごろのこと。

 そのときに、Jimは自分で自分をクビにしてしまったので、実はBorlandの社員になったことは一度もなく、Annをはじめとした60人ほどの社員がBorlandに残ったんだ注4

注4)この辺の事情は「How InterBase came to be −InterBaseはどのようにして生まれたか−」(Ann Harrison著)に詳しい。

 InterBaseがBorlandからオープンソース化されるのは、それから約10年を経た2000年7月のことになる。この辺の経緯はいろいろあって、僕が知っているのはすごく断片的な情報でしかないし、多分全体像なんてものは誰にも分からないのではないかと思う。でも、とにかくInterBaseはオープンソースになったわけだ注5

注5)時系列での経過は、FirebirdプロジェクトのClaudio Valderramaがまとめた「InterBase roadmap」に載っているので、一度見てみてほしい。

 InterBaseがオープンソースになったときに、BorlandはInterBaseのソースツリーをSourceForge.netで公開してくれたんだけど、そのままではビルドすらできない状態だった。それを、Helen BorrieとMark O'Donohueが中心になって、別のソースツリーとして立ち上げることになって、名前を何にしようかという話になったときに(名前を決めないとSourceForgeに登録できないからね)Annが提案してきたFirebirdという名前を採用することになった。だから、Firebirdの名付け親はAnnということになるんだろうね。

 Firebirdプロジェクトの最初の目標は、「Firebirdをビルドできるようにすること!」にあった。なぜかというと、もともとのInterBaseが、ビルドするにもInterBaseが必要という、「ニワトリが先か卵が先か」みたいなつくりになっていたので、それを見直すところから手を付けなくてはならなかったから。このあたりで結構難航したせいもあって、Firebird 1.0の正式なリリースは2002年3月12日まで待たなくてはならなかった。

 そのころ、「Yaffil」というFirebirdとは別のInterBaseクローンを開発していたロシアの連中もいて、彼らも大変いい仕事をしていたんだけれども、なにしろサイトがロシア語なのでワールドワイドでの知名度ではFirebirdには及ばずといった状況だった。それが紆余曲折はあったんだけど、YaffilとFirebirdはプロジェクトを統合し、難航していたFirebirdの大きな飛躍だったバージョン1.5の開発が加速することになった。そうしてFirebird 1.5がリリースされたのが、2004年1月21日のことだった。

 現在の最新バージョンは、Firebird 2.1.1が2008年7月16日にリリースされている。並行して開発が進んでいるFirebird 2.5のAlpha1がテスト中という状況。

Firebird 2.5(SuperClassic)は
プロセス・スレッドモデルを統合した実装に

 最後に、現在開発中のFirebird 2.5について少しだけ紹介しておこう。

 このリリースの最大の目的はSuperServer版(スレッドモデル)とClassicServer版(プロセスモデル)の統合にある。いまのところ、このリリースは「SuperClassic」という名前で呼ばれており、方向性としてはスレッドレベルのデータベースキャッシュによって性能改善を目指したものになっている。詳細は本家Webサイトのロードマップでも確認できる。今後の動向に注目してほしい。

● Firebirdのロードマップ
loadmap

次のページへ 3/3  

Index
Yet another OSS DB:Firebird(1)
アーキテクチャと特性、歴史
・Firebirdのインストールから起動まで
ビルドするには|ビルドオプション|接続ツールisql|情報ソース
・Firebirdと履歴型アーキテクチャ
Eureka! Shadowingだ!!
→ Page 3
・Firebirdがやってきたところ・向かう先
Firebird 2.5(SuperClassic)はプロセス・スレッドモデルを統合した実装

 

Yet another OSS DB:Firebird


Database Expert フォーラム 新着記事
@ITメールマガジン 新着情報やスタッフのコラムがメールで届きます(無料)

注目のテーマ

Database Expert 記事ランキング

本日月間