Firebird
Firebird(ファイアバード)は、InterBaseから派生したオープンソースのリレーショナルデータベース管理システム。オープンソースで開発されており、Mozilla Public Licenseを元にしたInterBase Public License(商用・非商用問わず利用できるが、オリジナル〈ここではFirebirdを指す〉のソースコードを改変したプログラムを利用する場合は、その変更箇所のコードを公開しなくてはならない)によってライセンスされている。
特徴
テンプレート:複数の問題 PostgreSQLのMVCC(多版同時実行制御)と同様のMGA(マルチ・ジェネレーション・アーキテクチャー)による高度なトランザクション管理機能を有する。ストアドプロシージャや、トリガー、UDF(ユーザー定義関数)等の商用データベースに通常備わっている機能を網羅している。ただしオブジェクトの命名則が厳しい、プライマリキーのAUTO INCREMENTが用意されていないなど、やや旧式な仕様もある。なおPHPなどアプリケーションからの接続には、InterBase対応の関数・ライブラリを流用できる。
2007年6月に開催された「オープンソースカンファレンス2007.DB」で行われた公開ベンチマークテストでは高評価を得てテンプレート:要出典、PostgreSQL、MySQLに続く第3のオープンソースリレーショナルデータベース管理システムとしてテンプレート:誰範囲2が、解説書籍の出版が少ない、レンタルサーバではサポートされていないなど日本国内での認知度はまだまだ低い。
特筆すべき機能として、有償ではあるが米IBフェニックス社の「IBPレプリケータ」を導入し、GUI上から設定することにより、IPネットワークで接続された複数のFirebird同士で同期処理を行なうことが可能となる。これはトリガーの機能を応用したもので、更新された箇所を同期処理用のテーブルに蓄積し、蓄積内容を設定された別のFirebirdに対し定期的に送信すると言うものである。この他にも、Firebirdのレプリケーションソフトは多数存在する。
また、RDBMS側からクライアントへのコールバックを実現する、イベントアラータはFirebirdの初期開発者であるJim Starkeyの発案によるものである。
インストール
Windows版には専用のインストーラが用意されている。Linux版もダウンロードパッケージに含まれる「install.sh」を実行すれば自動的に「/opt」以下にインストールされる。ただしisqlコマンドを使う場合、実行環境(Fedoraなど)によっては同名の全く別のプログラムが起動してしまうので、「isql2」など重複しない別名のシンボリックリンクを作成しておく必要がある。
歴史
2000年6月25日、Borland 社から InterBase 6.0 のソースコードが公開され[1][2]、それから1週間のうちにSourceForge に Firebird プロジェクトが登録された[3][4]。
2002年3月11日、Firebird 1.0 が Linux, Windows, Mac OS X 向けにリリースされた[5]。それから2ヵ月後には、Solaris, FreeBSD 4, HP-UX へも移植された[6]。
Mozilla Foundationの新ブラウザが登場した際、一時期 "Mozilla Firebird" の名称を使用したため多少の混乱があったが、2004年2月10日にmozilla.orgがブラウザの名称をMozilla Firefoxに変更したことで決着した。[1]
2004年2月23日、Firebird 1.5 がリリースされた[7]。 ポーティングのため2000年よりソースコードをC言語からC++へ変更する開発が行われてきたが、このリリースは初めて C++ コードベースを使った安定版である。 クエリ最適化の改良、SQL92準拠の式、SQL:1999 準拠の SAVEPOINT、明示的なロックが追加された[8]。
2006年11月12日、Firebird 2.0 がリリースされた[9]。 64ビットアーキテクチャのサポート、FROM句での入れ子テーブル、ロック時のタイムアウトでの式の利用が追加された[10]。 さらに、バージョン 2.1 にて、データベーストリガ、再帰クエリ、SQL:2003準拠の MERGE 文が追加された[11]。
2010年10月4日、Firebird 2.5 がリリースされた[12]。 これまでスレッドモデルで実装された Super Server と、プロセスモデルで実装された Classic Server の二つのサーバーモデルを並行して開発してきたが、バージョン 2.5 では新たに Super Classic と称するサーバーモデルが追加される。Super Classic 版では、Super Server版のボトルネックとなっていた統合型キャッシュを見直し、スレッド毎にキャッシュバッファを実装することで、これまで弱点とされてきたSMPへの対応を強化し、スケーラビリティが向上する予定である。 その他に、正規表現や外部データベースへの接続が追加された。[13]
管理ツール
受賞
- 2009. SourceForge Community Choice Award: Best Project for enterprise. Finalist on Best Project and Best Project for Government.
- 2007. SourceForge Community Choice Award: Best Project for enterprise, Best user support.
外部リンク
- Firebirdプロジェクトホーム
- Firebird日本ユーザー会
- FirebirdSQL Foundation
- 有志によるFirebird SQLリファレンス テンプレート:リンク切れ
- FIREBIRD WIKI