スケーラブルな共有データベースの可用性の最大化
2 つのレポート ボリュームのセットを交互に使用することをお勧めします。これにより、2 つの更新サイクルをオーバーラップさせることで、レポート データの可用性が最大限に高まります。1 つのレポート ボリュームのセットがレポート サーバーにマウントされている間に、別のボリュームのセット上に最新版のレポート データベースを構築します。新しいレポート データベースの構築フェーズまたは更新フェーズが完了したら、2 つのボリュームのセットのアタッチ フェーズとデタッチ フェーズをオーバーラップさせます。
古いレポート データベースのデタッチ フェーズと新しいレポート データベースのアタッチ フェーズをオーバーラップさせるには、各レポート サーバーで次の手順を実行します。
新しいデータベースのアタッチ フェーズを開始するため、レポート サーバーに代替ボリュームのセットをマウントします。
古いデータベースのデタッチ フェーズ全体を実行します。デタッチ フェーズによって、スケーラブルな共有データベースがそのレポート サーバー上で使用できなくなり、対応するレポート ボリュームのマウントが解除されます。
新しいバージョンのアタッチ フェーズを実行するため、データベースをサーバー インスタンスにアタッチします。これにより、データベースがスケーラブルな共有データベースとして使用可能になります。
オーバーラップしたアタッチ フェーズとデタッチ フェーズを一度に 1 台のサーバーで実行する方法と、次のステップに進む前にすべてのサーバー上でそれぞれの手順を実行する方法があります。どちらの方法が最適かは各自のビジネス要件によって変わります。
レポート データベースが、クライアントに同一の結果を返すようにする場合、新しいコピーをサーバー インスタンスにアタッチする前に、すべてのサーバー インスタンスから古いコピーをデタッチすることにより、更新を同期する必要があります。この場合、すべてのサーバーの新しいデータベースのアタッチ フェーズを開始し、次にすべてのサーバーでデタッチ フェーズを完了します。最後に、各レポート サーバーにできるだけ早くデータベースをアタッチします。詳細については、「スケーラブルな共有データベースの同期更新の実行」を参照してください。
サーバー インスタンスごとにクライアントに返される結果が異なってもかまわない場合は、一度に 1 台のレポート サーバーでアタッチ フェーズとデタッチ フェーズを重複させることで、レポート データベースのローリング アップデートを行うことができます。詳細については、「スケーラブルな共有データベースのローリング アップデートの実行」を参照してください。