このトピックでは、読み取り専用のApsaraDB RDS for SQL Serverインスタンスの概要を説明します。 データベースシステムが少数の書き込みリクエストを受信し、多数の読み取りリクエストを受信した場合、単一のプライマリRDSインスタンスが読み取りリクエストに圧倒され、ワークロードが中断される可能性があります。 プライマリRDSインスタンスからの読み取り要求をオフロードするには、1つ以上の読み取り専用RDSインスタンスを作成します。 読み取り専用RDSインスタンスは、データベースシステムの読み取り機能とアプリケーションのスループットを向上させるのに役立ちます。 プライマリRDSインスタンスが特定の要件を満たしている場合、データベースシステムは、プライマリRDSインスタンスに属する読み取り専用RDSインスタンスの高速初期化をサポートします。 これにより、読み取り専用RDSインスタンスの作成時間が数分に短縮され、作成がプライマリRDSインスタンスのI/Oパフォーマンスに影響を与えないようになります。
概要
ApsaraDB RDS for SQL Serverは、ネイティブSQL ServerのAlways Onアーキテクチャを使用します。 ApsaraDB RDS for SQL Serverでは、プライマリRDSインスタンスをレプリケートして読み取り専用RDSインスタンスを生成するために物理レプリケーションが実装されます。 読み取り専用RDSインスタンスのデータは、プライマリRDSインスタンスのデータと同じです。 プライマリRDSインスタンスのデータが更新されると、更新は読み取り専用RDSインスタンスに自動的に同期されます。
プライマリRDSインスタンスがSQL Server EE (Always On) を実行している場合にのみ、プライマリRDSインスタンスの読み取り専用RDSインスタンスを作成できます。
各読み取り専用RDSインスタンスは、単一ノードアーキテクチャに基づいて実行されます。 このアーキテクチャでは、読み取り専用RDSインスタンスのスタンバイとしてセカンダリ読み取り専用RDSインスタンスは提供されません。
次の図は、プライマリRDSインスタンスとその読み取り専用RDSインスタンスのトポロジを示しています。
シナリオ
プライマリRDSインスタンスが過負荷の場合、読み取り専用RDSインスタンスを作成して、プライマリRDSインスタンスからの読み取りリクエストをオフロードできます。
バックアップまたはメンテナンスの理由でプライマリRDSインスタンスが一時的に使用できない場合、読み取りリクエストは読み取り専用RDSインスタンスに転送され、一部のワークロードをサポートします。
読み取り専用RDSインスタンスを使用して、レポート分析などのシナリオで大量のデータをクエリおよび分析できます。 これはプライマリRDSインスタンスには影響しません。
緊急ディザスタリカバリシナリオでは、読み取り専用RDSインスタンスをプライマリRDSインスタンスのバックアップとして使用できます。 ただし、プライマリRDSインスタンスのワークロードを読み取り専用RDSインスタンスに直接切り替えないでください。
課金ルール
サブスクリプション課金方法または従量課金方法に基づいて作成した読み取り専用RDSインスタンスに対して課金されます。 詳細は、「料金」をご参照ください。
プライマリRDSインスタンスの課金方法がサーバーレスの場合、読み取り専用RDSインスタンスを作成することはできません。
その他の特長
課金方法: 読み取り専用RDSインスタンスは、従量課金とサブスクリプションの両方の課金方法をサポートしています。 従量課金方法は柔軟で、RDSインスタンスが不要になったときに読み取り専用RDSインスタンスをリリースできます。 サブスクリプション課金方法は、長期的なコミットメントに対して費用対効果が高くなります。
リージョンとゾーン: 読み取り専用RDSインスタンスは、プライマリRDSインスタンスと同じリージョンにありますが、異なるゾーンに存在できます。
インスタンス仕様: 読み取り専用RDSインスタンスの仕様は、プライマリRDSインスタンスの仕様とは異なる場合があります。 読み取り専用RDSインスタンスの仕様はいつでも変更できます。 プライマリRDSインスタンスのインスタンスタイプの仕様以上の仕様のインスタンスタイプを指定することを推奨します。 読み取り専用RDSインスタンスの仕様がプライマリRDSインスタンスの仕様よりも低い場合、読み取り専用RDSインスタンスに高レイテンシや高負荷などの問題が発生する可能性があります。
ネットワークタイプ: 読み取り専用RDSインスタンスのネットワークタイプは、プライマリRDSインスタンスのネットワークタイプとは異なる場合があります。 詳細については、「ネットワークタイプの変更」をご参照ください。
アカウントとデータベースの管理: 読み取り専用RDSインスタンスのアカウントとデータベースは、プライマリRDSインスタンスから同期されます。 読み取り専用RDSインスタンスのデータベースまたはアカウントを管理する必要はありません。
IPアドレスホワイトリストの管理: 読み取り専用RDSインスタンスを作成すると、プライマリRDSインスタンスのIPアドレスホワイトリストが読み取り専用RDSインスタンスにレプリケートされます。 ただし、読み取り専用RDSインスタンスのIPアドレスホワイトリストは、プライマリRDSインスタンスのIPアドレスホワイトリストとは独立しています。 読み取り専用RDSインスタンスのIPアドレスホワイトリストを変更する場合は、「IPアドレスホワイトリストの設定」の手順に従います。
モニタリングとアラート: 読み取り専用RDSインスタンスはモニタリングとアラートをサポートします。 ディスク使用率、IOPS、接続数、CPU使用率、ネットワークトラフィックなど、20近くのメトリックを監視できます。
読み取り専用RDSインスタンスの数: プライマリRDSインスタンスに対して最大7つの読み取り専用RDSインスタンスを作成できます。
読み取り専用RDSインスタンスの高速初期化: プライマリRDSインスタンスが特定の要件を満たしている場合、データベースシステムは、プライマリRDSインスタンスに属する読み取り専用RDSインスタンスの高速初期化をサポートします。 これにより、読み取り専用RDSインスタンスの作成時間が数分に短縮されます。 詳細については、「付録: 読み取り専用RDSインスタンスの高速初期化の概要」をご参照ください。
制限事項
インスタンスバックアップ: 読み取り専用RDSインスタンスのバックアップポリシーを設定したり、手動でバックアップを作成したりすることはできません。 これらは、プライマリRDSインスタンスで設定および作成されます。 バックアップファイルまたは任意の時点から一時的なRDSインスタンスを作成することはできません。 バックアップセットを使用してRDSインスタンスを上書きすることはできません。 読み取り専用RDSインスタンスの作成後、バックアップセットを使用してプライマリRDSインスタンスを上書きし、データを復元することはできません。
データ移行: 読み取り専用RDSインスタンスにデータを移行することはできません。
データベース管理: 読み取り専用RDSインスタンスでデータベースを作成または削除することはできません。
アカウント管理: アカウントの作成や削除、アカウントへの権限付与、読み取り専用RDSインスタンスのアカウントのパスワードの変更はできません。
付録: 読み取り専用RDSインスタンスの高速初期化の概要
プライマリRDSインスタンスがSQL Server EE (Always On) を実行している場合、データベースシステムは、プライマリRDSインスタンスに属する読み取り専用RDSインスタンスの高速初期化をサポートします。 高速初期化機能により、読み取り専用RDSインスタンスの作成に必要な時間を数時間または数日から数十分に短縮できます。 高速初期化機能を使用すると、データベースシステムのリソース割り当て効率が向上し、企業は効率的にサービスをデプロイおよびスケーリングできます。
前提条件
高速初期化機能を使用する場合、プライマリRDSインスタンスは次の要件を満たす必要があります。
プライマリRDSインスタンスは、SQL Server 2017 EE (Always On) 、SQL Server 2019 EE (Always On) 、またはSQL Server 2022 EE (Always On) を実行します。
RDSクラスターは、拡張SSD (ESSD) または一般的なESSDを使用します。
プライマリRDSインスタンスのデータベース数が20未満です。
プライマリRDSインスタンスのデータベースの合計サイズが200 GBを超えています。
使用上の注意
読み取り専用RDSインスタンスを作成する前に、プライマリRDSインスタンスに進行中のバックアップタスクがある場合は、バックアップが完了するまで待つ必要があります。 これにより、読み取り専用RDSインスタンスの初期化に必要な期間が延長されます。 詳細については、「ApsaraDB RDS for SQL Server インスタンスのバックアップ」をご参照ください。
読み取り専用RDSインスタンスを作成する前に、読み取り専用RDSインスタンスとそのプライマリRDSインスタンスが同じリージョンにあることを確認してください。
メリット
クイックスケールアウト: プライマリRDSインスタンスに保存されているデータが16テラバイト以下の場合、プライマリRDSインスタンスに保存されているデータのサイズに関係なく、プライマリRDSインスタンスの読み取り専用RDSインスタンスを数分以内に作成できます。 これにより、読み取り専用RDSインスタンスの作成時間が数時間または数日から数分に短縮されます。
プライマリRDSインスタンスへの干渉が少ない: 読み取り専用RDSインスタンスの高速初期化は、プライマリRDSインスタンスのI/Oパフォーマンスに影響を与えません。 これにより、プライマリRDSインスタンスの安定したパフォーマンスが保証されます。
費用対効果: 高速初期化を使用して、いつでも読み取り専用RDSインスタンスを作成できます。 作成した読み取り専用RDSインスタンスは、使用後いつでもリリースできます。 これにより、読み取り専用RDSインスタンスを長期間保持するコストを削減できます。
シナリオ
データ分析の高速化: 読み取り専用RDSインスタンスの高速初期化を使用して、データ分析やレポート生成などのオンライン分析処理 (OLAP) ワークロードを読み取り専用RDSインスタンスに移行します。 これにより、プライマリRDSインスタンスのパフォーマンスに影響がなくなります。
分離されたテスト環境: 読み取り専用RDSインスタンスをさまざまなテストフェーズで効率的にデプロイし、本番環境のパフォーマンスに影響を与えることなく機能をテストします。
管理可能なトラフィックスパイク: ピーク時に読み取り専用RDSインスタンスを効率的に作成し、プライマリRDSインスタンスからの読み取り要求をオフロードします。 これにより、プライマリRDSインスタンスの負荷が軽減されます。
最適化されたデータエクスポート: 読み取り専用RDSインスタンスでデータエクスポートタスクを実行し、プライマリRDSインスタンスでのデータエクスポートによる追加の負荷を回避します。
便利なデータ共有: データベース情報を外部パートナーまたは内部部門と共有します。 この場合、読み取り専用RDSインスタンスを効率的に作成して、安全なデータ共有を実現できます。
参考資料
読み取り専用RDSインスタンスを作成します。 詳細については、「読み取り専用ApsaraDB RDS For SQL Serverインスタンスの作成」をご参照ください。
詳細は、「よくある質問」をご参照ください。