SQL Azure の概要

Windows Azure Platform

Microsoft SQL Azure データベースは、SQL Server テクノロジに基づいて構築された、クラウド ベースのリレーショナル データベース サービスです。このサービスは、マイクロソフトのデータ センター内に置かれた、マイクロソフトが所有し、ホストし、保守するハードウェア上で実行されます。このトピックでは、SQL Azure の概要と、SQL Server との相違点について説明します。

類似点と相違点

SQL Azure は、オンプレミス版の SQL Server と同様に、Transact SQL ベースのデータベース アクセスに使用される表形式データ ストリーム (TDS) インターフェイスを公開しています。したがって、データベース アプリケーションは、SQL Server と同様に SQL Azure を使用できます。ただし、SQL Azure はサービスなので、管理方法は少し異なります。

SQL Azure の管理は、オンプレミス版の SQL Server とは異なり、物理的な管理から論理的な管理だけを取り出しています。データベース、ログイン、ユーザー、およびロールの管理はこれまでどおりユーザーが行いますが、ハード ドライブ、サーバー、ストレージなどの物理ハードウェアはマイクロソフトが管理します。このような方法を採ることで、SQL Azure は、エンタープライズ クラスの可用性、スケーラビリティ、セキュリティ、および自己回復機能を持つ大規模なマルチテナント データベース サービスを提供できるようになります。

マイクロソフトが物理的な管理をすべて行うため、SQL Azure とオンプレミス版の SQL Server の間には、管理、プロビジョニング、Transact-SQL サポート、プログラミング モデル、および機能に若干の違いがあります。詳細については、「Transact-SQL サポート (SQL Azure データベース)」および「SQL Server のツールとユーティリティのサポート (SQL Azure データベース)」を参照してください。

論理的な管理と物理的な管理

データベースの物理リソースの管理には SQL Azure が積極的にかかわりますが、SQL Azure ベースのデータベース アプリケーションの管理にはデータベース管理者 (DBA) がきわめて重要な役割を果たします。SQL Azure を使用する場合は、DBA がスキーマの作成、統計情報の管理、インデックスの調整、クエリの最適化、およびセキュリティ (ログイン、ユーザー、ロールなど) を管理します。SQL Azure のセキュリティ管理の詳細については、「SQL Azure におけるデータベースとログインの管理」を参照してください。

SQL Azure のデータベース管理と SQL Server との違いが一番大きいのは、物理的な管理面です。SQL Azure は、可用性を高めるために、すべてのデータを自動的にレプリケートします。また、負荷分散を管理すると共に、サーバーの障害時には透過的なフェールオーバーも管理します。

このレベルの物理的な管理を行う目的で、ユーザーが SQL Azure の物理リソースを制御することはできません。たとえば、データベースやインデックスが置かれる物理的なハード ドライブまたはファイル グループを指定することはできません。コンピューターのファイル システムにはアクセスできず、すべてのデータが自動的にレプリケートされるため、SQL Server のバックアップ コマンドや復元コマンドを SQL Azure に適用することはできません。

注意

SQL Azure Service Update 4 以降では、ユーザーのデータベースを SQL Azure の別のデータベースにコピーすることによってバックアップできます。詳細については、「SQL Azure でのデータベースのコピー」を参照してください。

バックアップ コマンドや復元コマンドは使用できませんが、SQL Server Integration Services と SQLCMD ユーティリティとを使用して、データを一括コピーすることは可能です。SQL Azure で SQLCMD を使用する方法の詳細については、「方法: SQLCMD を使用して SQL Azure に接続する」を参照してください。

 

プロビジョニング

オンプレミス SQL Server 展開を準備する場合、必要なハードウェアとソフトウェアの準備および構成は、DBA 部門または IT 部門の役割になります。SQL Azure を使用する場合、これらの作業は SQL Azure プロビジョニング プロセスによって実行されます。

Windows Azure Platform アカウントを作成すると、SQL Azure データベースのプロビジョニングを開始できます。このアカウントを使用して、Windows Azure、Windows Azure AppFabric、SQL Azure などのすべてのサービスにアクセスしたり、サブスクリプションをセットアップして管理したりすることができます。

各 SQL Azure サブスクリプションは、マイクロソフトのデータ センターにある SQL Azure サーバーの 1 つに結び付けられます。SQL Azure サーバーは、データベースのグループを定義する、抽象化された要素です。負荷分散と高可用性を提供するために、1 つの SQL Azure サーバーに関連付けられるデータベースをマイクロソフトのデータ センターにある複数の物理コンピューターに配置することもできます。

プロビジョニングの詳細については、「SQL Azure プロビジョニング モデル」を参照してください。

Transact-SQL サポート

SQL Server の Transact-SQL ステートメントの多くには、ファイル グループまたは物理ファイル パスを指定するためのパラメーターがあります。この種のパラメーターは物理的な構成に依存するため、SQL Azure ではサポートされません。そのようなコマンドは、部分的にサポートされた状態と見なされます。Transact-SQL のサポートの詳細については、「Transact-SQL サポート (SQL Azure データベース)」を参照してください。

機能と型

SQL Azure では、SQL Server で使用される機能とデータ型の一部がサポートされていません。Analysis Services、レプリケーション、Reporting Services、および Service Broker は、現在のところ、Windows Azure Platform 上のサービスとしては提供されていません。

物理的な管理は SQL Azure が行うため、Resource Governor、ファイル グループ参照、一部の物理サーバー DDL ステートメントなど、物理リソースを直接操作するステートメントやオプションはブロックされます。サーバー オプションや SQL トレース フラグを設定したり、SQL Server Profiler または Database Tuning Advisor ユーティリティを使用することもできません。

SQL Azure は、多くの SQL Server 2008 データ型をサポートしますが、SQL Server 2008 で使用されなくなったデータ型はサポートされません。SQL Azure のデータ型サポートの詳細については、「データ型 (SQL Azure データベース)」を参照してください。SQL Server 2008 で使用されなくなった型の詳細については、「SQL Server 2008 R2 データベース エンジンの非推奨機能」を参照してください。

参照

概念

SQL Azure のデータ アクセス

SQL Azure アーキテクチャ

SQL Azure プロビジョニング モデル

SQL Azure におけるデータベースとログインの管理

ページのトップへ