0

データウェアハウスに2つのテーブルがあり、いくつかのレベルで監査する必要があります。最初のテーブルの構造は次のとおりです。

CREATE TABLE [dbo].[EnctrAPR](
[EncounterNumber] [varchar](50) NOT NULL,
[MedRec] [varchar](50) NULL,
[AdmitDate ] [datetime] NULL,
[DischargeDate ] [datetime] NULL,
[Age ] [varchar](50) NULL,
[Disposition ] [varchar](50) NULL,
[DRG ] [varchar](50) NULL,
[APRDRG ] [varchar](50) NULL,
[APRDRGWeight] [varchar](50) NULL,
[SOI] [varchar](50) NULL,
[ROM] [varchar](50) NULL,
[Age18] [bit] NULL,
[Age18To64] [bit] NULL,
[Age65] [bit] NULL,
[BowelObstruction] [bit] NULL,
[AMI] [bit] NULL,
[CABG] [bit] NULL,
[Valve] [bit] NULL,
[PCI] [bit] NULL,
[Sepsis] [bit] NULL,
[GSP] [bit] NULL,
[HF] [bit] NULL,
[Stroke] [bit] NULL,
[Pneumonia] [bit] NULL,
[DKA] [bit] NULL,
[GIBleed] [bit] NULL,
[Pancreatitis] [bit] NULL,
[RF] [bit] NULL,
[PE] [bit] NULL,
[COPD] [bit] NULL,
      CONSTRAINT [PK_EnctrAPR] PRIMARY KEY CLUSTERED 
(
[EncounterNumber] ASC
)WITH (PAD_INDEX  = OFF, STATISTICS_NORECOMPUTE  = OFF, IGNORE_DUP_KEY = OFF, ALLOW_ROW_LOCKS  = ON,
ALLOW_PAGE_LOCKS  = ON) ON [PRIMARY]
) ON [PRIMARY]

データウェアハウス内の別のテーブルに対していくつかの監査を行う必要があります。それらは次のとおりです。DWHテーブルにない上記のテーブルのレコードを識別します。上記の表にないDWH表のレコードを特定します。上記の各ビットフィールドがTRUEであるが、DWHではFALSEであるレコードを文書化します。特定の日付範囲の全体的なレコード数を確認します。

SSISを使用してこれらの監査を実行できますか?または、ストアドプロシージャとSSISの組み合わせが最善の策でしょうか?このような監査を最適に自動化するための提案をいくつか教えてください。

4

1 に答える 1

1

SSISのルックアップ変換を使用してこれを実現できますが、このコンポーネントは少し遅いです。データベースが異なるサーバー上にある場合は、SSISを使用する傾向があります。それらが同じインスタンスにある場合、おそらくSSISなしのストアドプロシージャを使用します。

SSISアプローチを使用する場合は、OLEDBソースを使用してODHから行を読み取り、上記のテーブルに対するルックアップ変換を行ってから、結果を宛先に書き込みます。

この特定のタスクにSSISとSPを組み合わせてもメリットはありません。

于 2012-10-04T16:15:35.720 に答える