BT

最新技術を追い求めるデベロッパのための情報コミュニティ

寄稿

Topics

地域を選ぶ

InfoQ ホームページ ニュース AWSはDaaSに対しネイティブSQL Serverバックアップを追加した

AWSはDaaSに対しネイティブSQL Serverバックアップを追加した

原文(投稿日:2016/08/08)へのリンク

AWSは、Relational Database Service (RDS)のアップデートを発表した。 今回のアップデートにより、ユーザはネイティブのSQL Serverバックアップとリストアを利用可能になる。 AWSは、本機能によりMicrosoft Azureの市場を取り込もうとしている。 本機能を使えば、データベース移行とディザスタ・リカバリを単純化できる。

今までは、RDS(SQL Serverに加え、MySQL、PostgreSQL、そしてOracleデータベースエンジンをサポートしている)には、ストレージボリュームか、インスタンスのバックアップしか提供されていなかった。 これらAWS特有のスナップショットは、サーバ上の全データベースをバックアップする。 これにより、RDSはpoint-in-timeリカバリを実現している。 RDS上のSQL Serverのネイティブバックアップサポートに関するブログにて、AmazonのJeff Barr氏は、本機能がSQL ServerのDBAにとって、RDSをより興味深いものにする、と述べている。

SQL Serverのネイティブバックアップでは、全てのデータベースオブジェクトが対象になります。 テーブル、インデックス、ストアドプロシージャ、そしてトリガもです。 これらのバックアップは、オンプレミスやクラウド上で稼働している別々のSQL Serverインスタンス間でのデータベース移行に利用できます。 データ取り込み、ディザスタ・リカバリ等にも使用できます。 ネイティブバックアップはまた、オンプレミスのSQL Serverインスタンスからのデータやスキーマのインポートプロセスを単純化する効果ももっています。 SQL ServerのDBAにとっては、理解や利用が簡単になります。

ネイティブバックアップの作業には、3つの事項が必要である。 バックアップファイルを格納するためのAmazon S3バケット、S3バケットにアクセスするためのAWS “ロール”、そして、RDSインスタンス設定内の“SQLSERVER_BACKUP_RESTORE”への参照(SQL Serverにおいてはオプショングループと呼ばれている)である。 Amazon S3とのカップリングは、ユーザにとっては、耐久性を持ったオフボックス(off-box)のストレージオプションとなる。 AWSにとっては、オンプレミス・データベースとの連携手段となる。

これらのバックアップは、オンプレミスのSQL Serverコピーにリストアできますし、別のRDS上のSQL Serverインスタンスにもリストアできます。 さらに、あなたのオンプレミス・データベースのバックアップをS3にコピーし、RDSのSQL Serverインスタンスでリストアすることもできます。

RDS上のSQL Serverは、フル・データベース・バックアップを提供する。 これは増分バックアップではない。 そして、これらバックアップはAWS Key Management Serviceとの統合により暗号化できる。

ネイティブ・バックアップは、SQL Serverでの標準的な.bakファイルを使用する。 AWSはこれに関し、.bakファイルは“強力な最適化がされており”、“データベースのバックアップとリストアに対する最速の手段である”と述べている。 彼らは、ネイティブ・バックアップとリストアの利用例をいくつか紹介している。

  • AmazonRDSのデータベース移行を容易にする。
  • AmazonRDS SQL Server DBインスタンス間でのデータベースの移動を容易にする。
  • データのインポート、エクスポートを容易にする。
  • スキーマ、ストアドプロシージャ、トリガ、その他データベース・コードの移行を容易にする。
  • ストレージ・タイプやストレージ容量の変更を容易にする。
  • DBインスタンス全体ではなく、各々のデータベース単位でバックアップ、リストアする。
  • テスト、トレーニング、デモンストレーションのため、データベースのコピーを作成する。
  • Amazon S3を介して、バックアップ・ファイルを保存し、転送する。Amazon RDSへの転送、あるいはAmazon RDSからの転送に利用できる。これは、ディザスタ・リカバリのための追加の保護レイヤをユーザに与えることになる。

ネイティブ・バックアップとリストアを利用できないDBAのために、AWSは文書を用意している。 これは、SQL Serverデータのインポートとエクスポートを、クラウド向けに行う手引書である。

この新たな機能に興奮している人の一人が、Brent Ozar氏である。 彼は、有名なSQL Serverエキスパートであり、Brent Ozar Unlimited(SQL Serverの最適化に特化した専門コンサルティング会社)の創設者である。HOLY COW. Amazon RDS SQL Server Just Changed Everythingと題されたブログ記事の中で、Ozar氏は今回のことを、“本当に、本当に、本当に 凄い事だ。”と述べている。

今まで、Azure SQL DBとAmazon RDS SQL Serverが抱えているただ一つの大問題は、バックアップ・ファイルにアクセスできないということでした。 もしデータを持ち出したくなったら、あなたはインポート/エクスポート・ウィザード、BCP、あるいは同期アプリケーションを駆使して、何とかするしかなかったのです。

MicrosoftのAzure SQL Databaseは、まだこの機能を提供していない。 Ozer氏は、AmazonによるSQL Serverでのこの前進が、Microsoftを動かしてくれることを期待している。 彼のブログ記事内で、Ozar氏は、ネイティブ・バックアップとリストアの特別な使用例を紹介している。

“私はオンプレミス環境のユーザです。クラウドをDRとして使いたいと思っています。”  普通にフル・バックアップを取ってください。ただし、 Cloudberry Drive のようなツールを使い、Amazon S3と自動的に同期するようにしましょう。 もし障害が発生したら(あるいはもっと慎重に、障害が発生するはるか前にテストをし、この手順を文書化しておきたいと思ったら)、Amazon RDS SQL Serverインスタンスをスピンアップして、バックアップからリストアしてください。 あなたは即座に、自分の作業に戻れます(私は、Webやアプリケーションサーバのセットアップについては省いて話しています。ですがそれば、開発者、オペレータ、システム管理者の問題ですよね?)。

“私は大きなデータベースを管理しています。クラウドを試してみたいのですが、すぐにアップロードできるような規模ではありません。”  今のデータベースのバックアップを取ったうえで、;USBハードドライブをAmazonに送りましょう。 彼らがS3にコピーしてくれます。 その後、あなたがRDSインスタンスをスピンアップすれば良いでしょう。 もっとたくさんのデータがありますか? であれば、Amazon Snowballを確認してください。

“私はクラウドを使っています。クロス・プロバイダDRにしたいです。”  プライマリSQL ServerはAmazon RDS上で動かします。 Amazon S3へのレギュラー・バックアップをスケジューリングしてください。 そうしたら、クロス・プロバイダ・ファイルの同期ツールを使うか、ご自分のサービスをロールして、バックアップ・ファイルをAmazon S3からAzure、またはGoogle Driveにプッシュします。 Amazonにて障害が発生したら(あるいは単に、Amazonをやめて、クラウド・プロバイダに変えたくなったら)、バックアップをどこか別の場所でリストアすれば良いのです。 もしあなたが、ローカル・デバイスやレポーティング・サーバをリフレッシュしたくなったとしても、同様の手順が使えます。

“私はクラウドを使っています。しかし、Platform-as-a-Serviceの規模を超えてしまいそうです。”  PaaSは管理を劇的に簡単にしてくれます。 しかし、Amazonも、Azureも、利用できるデータベース・サイズに限界を設けています。 Amazon RDSやAzure SQL DBに置いたデータベースは、基本的にデータベース・サイズの限界に対してゆっくりと増えていくものと賭けましょう。 もしあなたの賭けが間違っていたら・・・これはすごいことです。 なぜなら、あなたのデータが急に増えたということは、儲かっているということだからです。 そうしたら、あなたは簡単にIaaS(クラウド内でSQL Serverを自己管理する)に移行できるでしょう。 そちらの方が、データ・エクスポートに悩まされるより良いですよ。

このRDSの機能に対して追加料金は発生しない。 AmazonS3ストレージを使用する上での通常の料金はもちろん発生する。 AWSは、RDSにてサポートされるどのSQL Serverエディションに対しても、この機能を利用できるようにしている。 また単一アベイラビリティ・ゾーンでも、マルチ・アベイラビリティ・ゾーン配置オプションでも動作する。 制限事項にある通り、AWSは1TBを超えるデータベースのバックアップを許可していない。 また4TBを超えるデータベースのリストアも許可していない。 ユーザは、バックアップを作成したインスタンスへのリストアもできない。 バックアップ・データは、新規データベース・インスタンスに対してのみリストアできる。

 
 

Rate this Article

Relevance
Style
 
 

この記事に星をつける

おすすめ度
スタイル

BT