ある SaaS プロバイダーが、顧客ごとに独立した Azure SQL Database を 50 個運用している。各データベースのピーク時間帯がバラバラで、リソース使用率は全体的に低い。個別データベースごとのコンピューティングコストを削減したい場合、最も適切な構成はどれか。
- A. 各データベースをサーバーレス層に移行して、使用量ベースの課金に切り替える
- B. 各データベースの DTU 層を個別に最低レベルまで下げて、固定コストを抑える
- C. 全データベースをひとつの大きな単一データベースに統合し、スキーマで顧客を分離する
- D. エラスティックプールを作成し、全 50 データベースをプールに追加して eDTU または vCores を共有させる
解答と解説を見る
正解: D
エラスティックプールは、複数の Azure SQL Database が共有のコンピューティングリソース(eDTU または vCores)プールを利用する仕組みである。各データベースのピーク時間がバラバラな場合、全データベースが同時にピークを迎えることは少ないため、プール全体のリソースを効率的に共有でき、個別にリソースを確保するより大幅にコストを削減できる。全統合は顧客データの分離が失われリスクが高い。サーバーレス移行は単一データベースの可変負荷に有効だが、50 データベースの同時管理と比較してエラスティックプールの方がこのシナリオに適している。DTU 最低レベルへの個別削減は性能問題を引き起こす可能性があり、ピーク時に対応できない場合がある。