2012-04-18 5 views
0

나는 내 소스에서 매일 60 만 개의 행을 얻고 있으며 SQL Server 대상에 덤프해야합니다. 증분로드입니다.ssis의 증분로드를위한 가장 좋은 방법

이제 대상 테이블 크기가 날마다 증가 할 것이므로 점진적로드에 대한 최선의 방법이 될 것입니다.이

  • 병합
  • SCD

  • 나에게 잘 수행 할 최선의 방법을 제안 해주십시오 참여

    1. 조회 작업 : 내 마음에 몇 가지 옵션이 증분로드.

    답변

    1

    삽입하기 만하면 실제로 문제가되지 않습니다. 만약 존재한다면, 다른 것들을 업데이트 할 필요가 있다면, 600.000 행을 쿼리하고 존재하는 데이터 소스에서 룩업 태스크와 함께 존재하는지 확인하는 oleDbSource를 생성 할 것을 제안합니다. 기존의 데이터 소스가 거대하거나 커지는 경향이 있으므로 캐싱 모드를 구성하는 방법에주의하십시오. 당신이 찾고있는 ID로 정렬 된 메모리 제한이있는 부분 캐시로 갈 것입니다 (이 detais는 캐싱이 작동하는 방식에 따라 매우 중요합니다)

    2

    병합 조인은 모든 레코드를 미리 정렬해야하므로 큰 성능 문제이며이를 위해 사용하면 안됩니다.

    우리는 매일 수백만 개의 레코드 파일을 처리하고 일반적으로 스테이징 테이블에 저장하고 데이터 변경 추적 테이블의 데이터와 비교하여 데이터가 다른 제품과 다른지 확인한 다음로드 만 수행합니다. 새로운 것 또는 다른 것. 우리는 프로덕션 데이터베이스 외부에서 비교 작업을 수행하기 때문에 프로덕션과 비교하여 수백만 개의 레코드를 확인해야하므로 거의 효과가 없습니다. 실제로 필요로하는 247 만 처리합니다. 사실 가장 바쁜 서버의 경우이 모든 처리는 뚜렷한 마지막 단계를 제외하고는 별도의 서버에서 수행됩니다.

    +0

    그래서이 상황에서 어떤 작업을 사용 하시겠습니까? – Zerotoinfinity