2016-05-06 3 views
1

現在、ポイントツーポイントSQLクエリ(AからBへのプル)を介してデータを共有する2つのSQL Serverアプリケーションデータベースがあります。データベースBで実行されているこのSQLは、データベースA内の多数のテーブルからB内のテーブルにデータを定期的に抽出、変換、ロードするために使用されます。そのプロセスで多くのビジネスルールを効果的に実装しています。 残念なことに、このプロセスは非常に壊れやすく、頻繁に失敗し、監査が非常に少なく、SQLスクリプトを無限に調整する必要があります。私たちは、この2つのデータベース間のデータ統合を実装するための他の方法を探しています。SSISを使用して2つのデータベース間でデータを統合する

SSISを使用して、データベースAからデータベースBにデータを定期的に読み込む方法があります。すでにSSISを使用してデータベースAからデータウェアハウスにデータを抽出しています。ここのデータは、AとBの統合のために行うETLとほとんど同じです。

私の質問は、この状況でどのような良い練習ですか?データウェアハウスをBの統合ポイントとして再利用できますか(つまり、データウェアハウスからBにデータをプルする)、またはデータウェアハウスを企業の統合アーキテクチャの一部にするという悪い習慣ですか?

+0

レプリケーションがオプションであれば、それを使用することをお勧めします。さらに情報を投稿してください。ここでは、ビジネスルールまたはAからBへの同じデータを適用した後にデータのみを受け入れるかどうかわかりません。 – TheGameiswar

+0

ステージングテーブルデータウェアハウスとデータベースBの両方に関連する共通データを保持しているETLで実行します。次に、ステージング表から両方をロードします。 – RichardCL

+0

処理中のバッチの履歴とレコードの系列を記録することを検討する必要があります。 – RichardCL

答えて

1

多くのものと同様に、それはすべて依存します。統合元としてデータウェアハウスを使用することは、倉庫以外のデータベースを使用する場合と同様に有効です。それは正確さとリフレッシュ間隔です。 1つのデータソースを別のデータソースよりも先に使用する前に、自分自身に質問する必要のある質問:

  • 正確なデータが必要ですか?
  • 私のデータソースは頻繁に更新されますか?
  • source of truthのデータソースはどれですか?
  • 非常に古い履歴データにアクセスする必要がありますか?データウェアハウスを使用して
  • ...

は悪い習慣ではありません。

関連する問題