(Brian Moran)

 オープン・ソースのデータベース(DB)導入を検討する価値はあるのだろうか? もう少し詳しい質問をすれば,コストが重要視される場合に「SQL Server」の代わりに,「MySQL」や「Ingres」などのオープン・ソースのデータベースを選ぶ価値はあるか?――ということだ。今回は,この命題について考えたいと思う。

Expressなら価格面で無償DBに対抗可能
 この議論のためのシステム環境を次のように設定しよう。あなたは,新しいアプリケーションの導入を計画しているとする。普段,あなたはMicrosoft製品を使っていて(それしか使わないわけではない),SQL Serverもデータベース・プラットフォームの候補に挙がっている。だが,価格が大きな要素で,導入コストを最も重要視しているとする。もちろん,これは正しい前提ではないが,議論をシンプルにしておきたいのだ。もし,導入時のライセンス費用が一番の懸念事項なら,MySQLやIngres,ほかの無償のオープン・ソース・データベースが魅力的に映るはずである。このとき,Microsoft製品は検討に値するだろうか? すぐ返ってくる答えは「多分,検討に値する」だ。

 「Microsoft SQL Server Desktop Engine(MSDE)」は,無償のデータベースという選択肢に入る。しかし,利用条件にはいくつかの制約がある。

 第1に,MSDEは完全には無償でない。例えば,MicrosoftのAccessなど,MSDEが付属する製品のライセンスを1つ買うと,MSDEのコアの部分を無償で再配布する権利が得られる。この後,アプリケーションをビルドして,無数のユーザーに無償で配布できるわけだ。どうやってMSDEを入手して配布するかということをさらに知るには,MicrosoftのWebサイトで「MSDE 2000 再頒布権の登録」を参照してもらいたい(該当記事)。

 第2に,クエリー・ガバナー機能がないため,MSDEをハイエンドのデータベースのニーズに合わせたスケーリングができない(訳注:クエリー・ガバナーは,時間のかかるクエリーを制限する機能)。しかし,ハイエンドのデータベースのことを考えないのなら,完全にフリーなオープン・ソースのデータベースとほとんど同じである。

制限が緩和されたSQL 2005の無償版
 さて,「SQL Server 2005」が出荷され「SQL Server 2005 Express Edition」が入手できるようになる数カ月後の選択肢について考えてみよう。SQL Server 2005 Express Editionは,MSDEの新版で,SQL Server 2005ファミリの一製品である。既に存在するオープン・ソース製品と,まだ製品として入手できないMicrosoft製品を比べるのは不公平だが,ご容赦願いたい。SQL Server 2005 Express Editionは,付帯条項の少ない無償製品になる(関連記事)。

 唯一の制限は,OSが2CPU以上のマルチプロセッサをサポートしていても,SQL Serverでは物理的に1つのプロセッサしか使えないことだ。ただし,ハイパースレッディング対応CPUには対応しているので,このプロセッサが提供する複数の論理プロセッサは利用できる。データベースの最大サイズは4Gバイトで,SQL Serverのメモリー用のバッファ・プールは1Gバイトに制限されている。

 理論的により高いスケーラビリティを提供するオープン・ソースのデータベースはあるのだろうか? 答えは「Yes」だ。しかし,無償のSQL Server 2005 Express Edition以上の処理能力を必要とするアプリケーションを稼働させるときには,多分無償ではシステムを作れないだろう。そのデータベースをどう処理するかを検討するときに,あなたはベンダーと組むことになり,インテグレーション費用を支払うことになるからだ。SQL Server 2005 Express Editionは,小規模な部門で使う大量のデータベース・アプリケーションには正真正銘のフリーの選択肢になるだろう。

無償DBシステムの検討時はMS製品も候補に
 フリーのオープン・ソースのデータベースでは事態を解決できて,MSDEやSQL Server 2005 Express Editionでは解決できないようなベンチマーク・テストを準備することはできる。しかし,私はフリーでオープン・ソースのデータベースから利益を得られるほとんどのユーザーは,同様にMSDEやSQL Server 2005 Express Editionからも利益を得られると思う。

 つまり,何人かの人がオープン・ソースのデータベースを求めるのは,彼らが無償版のMicrosoft製品を始めから有力な候補と考えていないからだ,と私は感じている。もちろん,それがあらゆるケースでベストなソリューションだ,といっているのではない。オープン・ソースのデータベースが,とてもあなたの力になるケースはある。しかし,顧客が自分たちにはフリーのソリューションが必要であり,この分野ではMicrosoftが何もよい製品を持っていないと思い込んでいる場合がある。これは,非常に残念なことである。