
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を作り上げてしまったのだ。
ところが、rdbを推している人たちも当然社内にはいた。ご想像のとおり、すったもんだがあった揚げ句に、JimはDECを辞めてしまった。
その後、独立したJimは奥さんのAnn Harrison、DECの同僚のDon DePalmaと3人でGroton Database Systemsを立ち上げ、途中で名前も変わってInterbaseのInterBaseという名前になったjrdを製品として育て上げてきた。けれども、その後買収されては買収され、を繰り返して最終的にBorlandに買われることになったのが1991年ごろのこと。
そのときに、Jimは自分で自分をクビにしてしまったので、実はBorlandの社員になったことは一度もなく、Annをはじめとした60人ほどの社員がBorlandに残ったんだ注4。
InterBaseがBorlandからオープンソース化されるのは、それから約10年を経た2000年7月のことになる。この辺の経緯はいろいろあって、僕が知っているのはすごく断片的な情報でしかないし、多分全体像なんてものは誰にも分からないのではないかと思う。でも、とにかくInterBaseはオープンソースになったわけだ注5。
- InterBase Roadmap:http://www.cvalde.net/ibRoadmap.htm
- 木村明治さんの日本語訳:http://www.geocities.jp/kimura804/rdb/cvalde/IbRoadmap_j.htm
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サイトのロードマップでも確認できる。今後の動向に注目してほしい。

![]() |
3/3 |
アーキテクチャと特性、歴史
ビルドするには|ビルドオプション|接続ツールisql|情報ソース
Eureka! Shadowingだ!!

Firebird 2.5(SuperClassic)はプロセス・スレッドモデルを統合した実装
![]() |
Yet another OSS DB:Firebird |
- Oracleライセンス「SE2」検証 CPUスレッド数制限はどんな仕組みで制御されるのか (2017/7/26)
データベース管理システムの運用でトラブルが発生したらどうするか。DBサポートスペシャリストが現場目線の解決Tipsをお届けします。今回は、Oracle SE2の「CPUスレッド数制限」がどんな仕組みで行われるのかを検証します - ドメイン参加後、SQL Serverが起動しなくなった (2017/7/24)
本連載では、「SQL Server」で発生するトラブルを「どんな方法で」「どのように」解決していくか、正しい対処のためのノウハウを紹介します。今回は、「ドメイン参加後にSQL Serverが起動しなくなった場合の対処方法」を解説します - さらに高度なSQL実行計画の取得」のために理解しておくべきこと (2017/7/21)
日本オラクルのデータベーススペシャリストが「DBAがすぐ実践できる即効テクニック」を紹介する本連載。今回は「より高度なSQL実行計画を取得するために、理解しておいてほしいこと」を解説します - データベースセキュリティが「各種ガイドライン」に記載され始めている事実 (2017/7/20)
本連載では、「データベースセキュリティに必要な対策」を学び、DBMSでの「具体的な実装方法」や「Tips」などを紹介していきます。今回は、「各種ガイドラインが示すコンプライアンス要件に、データベースのセキュリティはどのように記載されているのか」を解説します
![]() |
|
|
|
![]() |