web-dev-qa-db-ja.com

ミラーリングまたはレプリケーションを報告するための最良のソリューション?

こんにちは、SQL SERVER 2008R2 Data Center Editionを所有しています。レポートにはSSRSとベンダーアプリケーションを使用しています。レポートサーバーがあり、Liveサーバーから毎日バックアップと復元を行って、レポートでデータを利用できるようにしています。

このため、開発されたコードは、テストが完了するまで復元が完了するまで1日待たなければならないため、多くの問題に直面します。レポートサーバーで開発されたコードは上書きされます。サプライズサプライズレポートは、1日前のデータを示しており、何度も続けることができました。

私はミラーリングとレプリケーションの2つのオプションを利用できることを知っています。

ミラーリングは読み取り専用モードを許可し、レポートは正常に実行されますか?この読み取り専用モードは、私が見逃している他の影響を持っていますか?

レプリケーションすべてのテーブルに主キーがないため、グローバル一意識別子(GUID)を使用するマージレプリケーションのオプションのみが残され、SQLサーバーでこの列をすべてに追加できませんデータベースのテーブル。

報告目的で、SQL Serverデータベースのライブコピーを別のサーバーに置くための解決策を誰かに教えてもらえますか?

MY要件

  1. 私は数分前のデータで生活できます。
  2. 本番サーバーで行われた変更はすべて、レポートサーバー、つまりデータ、SQLサーバーオブジェクト(テーブル、ビュー、ストアプロシージャ、すべて)にコピーする必要があります。
  3. レポートサーバーで作成されたオブジェクトは、運用サーバー/データベースにコピーする必要はありません。

それは大きな助けになりますので、どんな解決策でもアドバイスしてください。よろしくお願いします。

3
M.Ali

ミラーリングされたセカンダリはクエリで利用できないため、ミラーリングを単独で使用するだけでは十分ではありません。 snapshots を作成して維持する必要がありますが、これは煩わしい作業です。

オプションは、特定の順序ではありません。

  • スナップショットによるミラーリング:効果的ですが、管理オーバーヘッドがあります。
  • バックアップと復元:差分やログではなく、完全バックアップから復元していますか?その場合、復元に費やす時間を削減できる可能性があります。
  • ログ配布:管理オーバーヘッド、ログバックアップが適用されている場合、データベースは使用できません
  • レプリケーション:管理の観点から見ると、完全なデータベースの同期を意図したものではありません。
  • トランザクションデータベースからのレポート-このオプションは、根拠のないパフォーマンスの懸念があるため、破棄されることがよくあります。これらの懸念は、リソースガバナ、スナップショット分離などを使用することである程度軽減することもできます。これは、十分に活用されていないオプションであるIMOです。
  • SSISまたは同様のツールを使用したETL。ただし、独自のスキーマ変更を行う必要があります。
  • 可用性グループ(2012にアップグレードできる場合(2008 R2を使用していると思います))。これは最近利用できる本当に良いオプションです。
  • Ideraは、仮想データベースと呼ばれるツールを作成して、バックアップファイルのマウントとクエリを可能にします。これは、場合によっては興味深いオプションです。

環境に関する多くの情報を知らずに明確な推奨を行うことは困難です。私はこれらの方法のほとんどをさまざまな程度の成功に使用してきました。ほとんどの場所では、レポートと分析のためのより堅牢なデータマート/データウェアハウスが構築されることに注意してください。そのため、おそらく1日でETLルートになることになります。

ああ、セカンダリサーバーのライセンスを取得していることを確認してください;)

12
Jon Boulineau

私は個人的にトランザクションレプリケーションの経験があります。私の場合、レポートサーバーでディストリビューターを構成し、レポートサーバーから制御されるパブリケーションをライブサーバーに作成しました。レポートサーバーからのサブスクリプションは完全に機能しました。

この構成では、オーバーヘッドとしてログリーダーのみ(ライブサーバー上)を使用して、ライブサーバーからデータを正常に複製できましたが、レポートサーバーの役割は、複製されたコマンドを受け取り、それらをサブスクライブしたデータベースに配布することでした。 )ライブサーバーとは独立しています。

全体として、このオプションは完璧です。

事前および事後構成を確実に行うためのポイント:

  1. ログファイルが別のハードドライブにあることを確認します。
  2. サブスクリプションデータベースのデータは絶対に変更しないでください。ロールを介して(レポートサーバー上で)すべてのユーザーアクセスをカプセル化し、ほとんど(または必要な)権限を持たないパブリックログインを使用しています。
  3. 最後に、これをドメインネットワーク上と非ドメインネットワーク上で構成しました。個人的には、ドメインネットワークオプションの方がはるかに簡単です。ただし、両方が可能です(スナップショットアーティクルと一括コピーファイルを使用してサブスクリプションを初期化します。最終的に、コマンドはディストリビューターに直接渡され、残りのマジックはレポートサーバーで発生します)。

データベースコピーの他のすべての領域での経験があります。最終的にはデータマートを利用することになるという点で、私は前の声明に同意します。あなたの会社がサードパーティのエージェントを通じてこれを設定していない限り。

しかし、私にとっては、レプリケーションのほうが簡単です(構成するのは難しいです)。

1
lpcoolee10