SQL Server 2008 R2 と SSAS および SSIS を使用しています。
OLTP データベースから毎日いっぱいになるステージ データベースを作成します。
そして、データクレンジングと統合データ(ETL)の後、ほとんどの場合、データをに転送しDataWarehouse
ます。
今私がする必要があるのは、OLTP データベースで追跡を変更する方法です。
解決策について知っていますTrigger
(OLTPデータベースのすべてのテーブルでトリガーを起動し、トリガー内の挿入および削除されたテーブルから挿入/削除/更新されたデータをログに記録できます)
しかし、私の OLTP データベースは非常に大きく (約 80,000,000 レコード)、トリガーを作成するとビジネスが遅くなります。
このサイトから次のようなクエリを見つけました:
SELECT
*
FROM
sys.fn_dblog(NULL,NULL)
ファイルからのすべてのレコードを表示しLDF
ます。
そして、LDFファイルを読み取ってから、ApexSQLのようなコマンド(挿入/更新/削除)コマンドを抽出できるサードパーティのソフトウェアをいくつか見つけました
このサイトで 1 つの質問を見つけました SQL Server 2008 でトランザクション ログを表示する方法
最後に、あるサードパーティが LDF ファイルからこのコマンドを抽出できる場合、なぜそれを抽出できないのでしょうか?!?
一方、ステージデータベースを変更するには、OLTP データベースで Alter Table や Alter Field などの DDL コマンドを見つける必要があります。
そして、LDFファイルから削除された行を元に戻すことができるこのリンクを見つけました。