Azure SQL Database の Web / Business は 2015年9月で提供終了。そろそろ移行の準備をはじめましょう。
Azure SQL Database のエディションについて
昨年からアナウンスしているとおり今年の9月をもってAzure SQL DatabaseのWeb および Business Editionの提供を終了します。
Web および Business エディションの終了に関する FAQ
9月以降もAzure SQL Databaseを利用するのであればBasic / Standard / Premiumに移行する必要があります。ちなみにWeb / Business と比較すると次のような違いがあります。
Web / Business はリソースを他のユーザーと共有するため性能が安定していませんでしたが Basic / Standard / Premiumでは性能を安定化させる仕組になっています。
またV12を選択した場合にはV11の制限事項が外れてSQL Serverとの互換性が非常に高くなります。なお、V12ではV11と比較してパフォーマンスも一部向上しています。
移行方法
SQL Database は(DBではなく)サーバー単位でバージョン(V11 or V12)を決定する必要があります。そのため事前にどちらのバージョンを利用するのか決めておく必要があります。基本的に Web / Business と V11の Basic / Standard / Premium は完全互換なので移行で問題になるケースは少ないと思います。また、V12においても高い互換性があるため問題になるケースは少ないと思いますが心配な方はSQL Server 2014 のドキュメントなどが参考になると思います。
SQL Server 2014 への移行とアップグレードの実践
インプレースアップグレード
旧ポータル、新ポータル、どちらを用いても簡単に移行することができます。
Web / Business
新しいポータルではV12 への移行も簡単に行えます。ただし、Web / Business は V12 でサポートしていないため別のエディションに変更する必要があります。(デフォルトはS0が選択されます)
ただし本番環境に適用する場合は事前に検証することをお勧めします。
サイドバイサイド アップグレード
サイドバイサイドでは一旦別のサーバーもしくDBにコピーを作成し、アップグレードして検証した後、接続文字列を変更するなりして本番環境に適用することになります。なおWeb / Business ではデータ復元がサポートされないため別の方法を用いる必要があります。BACPACやSSMSなどのツールを使う方法もありますが新しい管理ポータルにはコピー機能があるのでそれを利用するのが一番簡単だと思います。
パフォーマンスレベルの選択
パフォーマンスだけではなく価格面についても考え方が異なるので悩ましい課題です。
Plan and prepare to upgrade to SQL Database V12 によると、まずはS2レベルで試してみるのがいいかも・・・といった記述がありますが実際はそこまで単純ではありません。
正確なパフォーマンスレベルを決めるためには管理ポータルやDMVを使って本番環境を想定したテストを実施して頂く必要があります。
• sys.resource_stats
5 分間隔で集計された情報を 14 日間分保持
• sys.dm_db_resource_stats
15 秒間隔で集計された情報を 1 時間分保持
このあたりはSE雑記も参考にしてください。
sys.resource_statsをWeb/Businessで使用すると、S2を基準とした使用率を表示してくれるという情報をお話しされていてお~と思ったので試してみました。
sys.resource_stats を使用した Web/Business エディションの移行先検討
正直、現時点ではS2と比較するとWeb / Business の方が高い性能が出来ることが多いと思います。ただし、これらは他のユーザーの負荷によって性能が変わってしまう可能性があり、実際に高負荷で突然性能が悪化してトラブルが発生したことも多々あります。 Basic / Standard / Premium ではそのような問題が発生しないよう設計され、機能やSLAにおいてもメリットがあります。