▼いよいよデータベース管理システムの新バージョン「SQL Server 2005」が5年ぶりに登場する。マイクロソフトでは,開発ツールの新版「Visual Studio 2005」とともに最も重要な製品の1つとされる。
▼SQL Server 2005の新機能は,データベース管理者向け,データ分析と活用のユーザー向け,開発者向けと多岐にわたる。新機能の全体像を説明した後,高可用性を実現する機能としてデータベース・ミラーリングを詳しく説明する。
開発コード「Yukon(ユーコン)」で知られる「Microsoft SQL Server 2005」がいよいよ今年登場する。同製品は,Windows Serverをベースにするデータベース管理システム(DBMS)製品として確固たる地位を築いたSQL Server 2000の次期版である。メジャー・バージョンアップ製品として,非常に多くの意欲的な機能が追加・強化されている。
本連載では,SQL Server 2005の様々な新機能を,高可用性の実現やデータ分析,アプリケーション開発などユーザーの方々にとって関心の高い切り口で紹介していきたい。
5年ぶりの大幅なバージョンアップ
新バージョンでは5年ぶりの大幅な機能強化が図られる。Microsoft SQL Serverは,1994年にWindows環境専用のDBMSとして提供が開始された。最初のバージョンはSQL Server 4.2で,それ以降6.0,6.5,7.0と進化して,2000年に発売されたSQL Server 2000に至っている。特に,SQL Server 7.0は,現在Microsoft Researchに所属するトランザクションの大家Jim Gray氏をはじめとした業界屈指の技術者が集まって開発されたことで知られる。プログラム・コードがすべて書き換えられ,モダンなアーキテクチャとなり,それがSQL Server 2000,そしてその次期版のSQL Server 2005へと引き継がれている。
SQL Server 2005は,このように既に高い評価を受けているデータベース・エンジンを全面的にブラッシュアップして,信頼性,開発生産性,管理性,拡張性の最適なバランスをとり,高度にまとめ上げられた製品である。
信頼性の高いデータ処理に加え,データの統合・分析・レポーティングも実現している。データ分析機能としてはETL*(抽出,変換,ロード)機能がSQL Server 7.0から装備されている。また,レポーティング機能が,SQL Server 2000から標準で提供された。SQL Server 2005ではそれらがさらに強化される。
開発環境も大幅に強化される。SQL Server 2005は,開発ツールの新バージョンVisual Studio 2005と同時に発売される予定だ。.NET*をベースとしたこの開発ツールとの密接な統合により,開発効率の向上やアプリケーションとデータベースのシームレスな連携を実現する点にも注目してほしい。
64ビットWindowsにも全面的に対応する。SQL Server 2000では,既にIntelの「IPF(Itanium*プロセッサ・ファミリ)」にネイティブ対応する64ビット版が提供されている。また,近々提供されるSQL Server 2000 Service Pack 4にて,32ビット用SQL Server 2000がWindows Server 2003,x64 Editionという新しい64ビットWindows上で動作するようになる。x64 Editionは,Intel EM64TおよびAMD64*アーキテクチャのCPUを採用したマシン上で動作するWindowsである。その32ビット・モード(WOW64)での動作がSP4で保証される予定だ。
SQL Server 2005では,こうした64ビット対応をさらに広げる。具体的にはIPF用およびx64用のWindows Server 2003にネイティブで対応する製品をそれぞれ用意して,高いスケーラビリティを提供する計画である。
ミラーリングなどで可用性を向上
ここからは連載第1回の主題である高可用性に焦点を当てて説明しよう。
データベースの可用性はだれもが最も重要だと認識している項目である。一般的に高可用性のシステムを実現するには,(1)ハードウエア障害やソフトウエア障害に起因する計画外停止,(2)運用やメンテナンスの際にシステムを停止させる計画停止――の2つの時間を最小化することが大きなポイントとされている。それらの停止を最小化するための各種新機能をSQL Server 2005は提供する。
まず,計画外停止を最小化する機能として新たに「データベース・ミラーリング」が提供される。SQL Server 2000でも障害時の停止時間を短縮する機能としてフェイル・オーバー・クラスタリングがあった。これに加えてデータベースそのものの可用性,および迅速なフェイル・オーバーを実現するためにデータベース・ミラーリングが追加される。
障害による停止時間を最短化するためには,さらにオンライン復元機能,高速復旧オプション,データベース・スナップショットなども提供される。
また計画停止の時間を短縮するため,システムの稼働中に各種メンテナンスを行えるようにしている。具体的には,メモリーやCPUの割り当てなどの動的設定変更機能,インデックス再構築を行うオンライン・インデックス・オペレーション機能,テーブルの分割により瞬時にデータの追加・削除が行えるデータ・パーティション機能などがある。