米Microsoftが先日,「SQL Server Compact Edition」を完成させた。これは,モバイル・ユーザーや,「たまにしかデータベースを利用しないユーザー」をターゲットとした組込型のSQL Serverである。
シェイクスピアの言葉に,「バラは他のどんな名前であろうと,その香りの素晴らしさに変わりはない」というのがある。それならSQL Server Compact Editionはどんな名前であろうと,紛れもないデータベース製品であり,Microsoftが「たまにしかデータベースに接続しない」ようなユーザーも含めて,あらゆるデータベース・マーケットを攻略しようとしている姿勢の表れだと言える。
Microsoftが携帯機器向けに初めてリリースしたデータベース・エンジンは「SQL Server 2000 Windows CE Edition(SQL Server CE)」だった。やがて「SQL Server 2005」をベースにした「SQL Server Mobile Edition」が,それに取って代わった。そしてMicrosoftは昨年,SQL Server Mobile Editionの名称とブランドが「SQL Server 2005 Everywhere Edition」に変更になると発表した。筆者の私見では。SQL Server Everywhereはとてもかっこいい名前に思えたが,結局SQL Server Everywhereは実際の製品として日の目を見ることはなかった。その代わりにMicrosoftは,2006年11月に「SQL Server Everywhere EditionがSQL Server Compact Editionに改称される」と発表した。念のために言っておくが,SQL Server CEではない。SQL Server CEという名称に固執したのでは,Microsoftで製品名を決めている人々にとって,少しも面白くないからだ。
SQL Server Compact Editionは,SQL Serverエディション群の上位に位置する同系製品と名称を共有してはいるものの,SQL Server EnterpriseやDeveloper,Standard,Workgroup,Expressといったエディションとは異なるコードベースであることに,注意する必要がある。この新エディションは,ハイエンド・バージョンのSQL Serverと連携するのと同じプログラミング・インターフェース(ADO.NETなど)と連携に機能するように,設計されている。だがSQL Server Compact Editionは,多くの重要な点において,本質的に異なる製品である。
表面的な部分では,SQL Server ExpressとSQL Server Compact Editionは,どちらもモバイル・ユーザーの役に立つだろう。そして議論の余地はあるだろうが,どちらの製品でも,アプリケーションの構築と展開ができる。だがSQL Server Compact Editionは,ストアド・プロシージャをサポートしておらず,T-SQL言語の小さいサブセットを実装するだけである。さらにCompact Editionベースのアプリケーションを,そのアプリケーションに大幅な変更を加えずに,高度なバージョンのSQL Serverにスケールアップすることを非常に困難にする,他の相違点も存在する。
これとは対照的に,SQL Server Expressの機能には多数の制約があるものの,Express Editionは本質的に,ハイエンドのSQL Serverエディションで使われているコアエンジンと同じ構造を持っている。従って,無料バージョンのSQL Serverでアプリケーションを展開しようと思ったときに,SQL Server Expressは有効なソリューションになる。さらにSQL Server Expressは,必要に応じて,企業クラスのデータベースにスケールアップできる。スケールアップの際に必要なアプリケーションへの変更は,わずかである。
だからといって,SQL Server Compact Editionでは途方もなく重要な市場の要求に答えることができない,と言っているわけではない。MicrosoftはSQL Server Compact Editionを,PDAやスマートフォン,RFIDが必要なデバイス,恒久的なデータを保存する必要があるがハイエンドのSQL Serverをインストールしたり実行したりはできないすべての小型アプライアンス向けの,メンテナンス完全不要の組み込み型データベースである。
期待できる分野は「RFID」
読者の皆さんは,無線ICタグ(RFID)のことをご存知だろうか。RFIDは,様々な小売りや在庫管理の業界で広く使われるようになった小さなチップのことだ。このテクノロジは,米国の新しいパスポートでも使用されている。RFIDは非常に多くの業界で使われるようになってきているのだ。そしてRFIDは,キャプチャや保存,トラッキングが必要な多くのデータを生み出す,巨大な成長分野の象徴的存在だ。
SQL Server ExpressはRFIDアプリケーションとしては若干大きすぎるが,SQL Server Compact EditionにとってRFIDはうまみのある場所だ。そして,Microsoftは最近,フロントエンドのSQL Server Compact EditionとバックエンドのSQL Server Enterprise Editionを組み合わせると,どれだけ素晴らしいことが可能になるのかデモし始めている。
SQL Server Compact Editionは,MicrosoftのWebサイトでダウンロードできる(日本語版のダウンロードはこちら)。このWebサイトには,貴重な資料もいくつか掲載されており,SQL Server Compact EditionとSQL Server Expressを比較した完成度の高い資料も含まれている。この資料は,自分の問題解決に最適なテクノロジを選ぶときに役に立つ。