2011-08-28 3 views
2

가져 오기 프로세스의 속도를 높이기위한 팁은 무엇입니까? db의 조인이 많이 있습니다.SSIS로 수백만 개의 레코드 가져 오기

또한 SSIS 작업이 완료되면 코드로 다음 기능을 처리하거나 전자 메일 알림 SSIS를 사용하는 가장 좋은 방법은 무엇입니까?

답변

4

다음은 텍스트 파일에서 SQL Server 데이터베이스로 3 분 안에 1 백만 행을로드하는 예제입니다. 샘플 패키지는 SSIS 208 R2를 사용하여 생성되었으며 Xeon 단일 코어 CPU 2.5GHz 및 3.00GB RAM에서 실행되었습니다.

Import records on SSIS after lookup 대상 요소가 될 것입니다 행 많은 수의 수입의 주요 병목

. 대상 구성 요소가 더 빨리 행을 삽입 할 수 있으면 이전 소스 또는 변환 구성 요소가 행을 더 빨리 처리 할 수 ​​있습니다. 정렬 변환은 파이프 라인을 보내기 전에 정렬 할 모든 데이터를 보류하기 때문에 다른 경우가 될 정렬 변환과 같은 구성 요소가있는 경우에도 마찬가지입니다.

이메일 보내기는 수행하려는 작업에 따라 다릅니다.

  • 간단한 성공 또는 실패가 필요한 경우 메일 보내기 작업 만 사용하면됩니다. 다른 옵션은 정기적으로 패키지를 실행하도록 예약 할 수있는 SQL 작업에 대한 경고 알림을 활성화 할 수 있다는 것입니다.

  • 이메일에 추가 할 정보가 더 필요한 경우 스크립트 본문을 사용하여 메시지 본문을 공식화해야 할 수 있습니다. 메시지 본문을 만든 후에는 스크립트 작업 내에서 메일을 보내거나 메일 보내기 작업을 사용할 수 있습니다.

@Nikhil S와 함께 제공되는 예제가 귀하의 패키지를 미세 조정하는 데 도움이되기를 바랍니다.

2

This SimpleTalk article

수평으로 데이터에가 되 N 데이터로 전송 분할 흐름 데이터 흐름 작업 최적화하는 방법에 대해 설명합니다. 여기서 N은 ssis가 설치된 서버에서 사용할 수있는 CPU 코어 수입니다. ssis buffer size 속성으로 재생하면 데이터 종류에 맞는 최적의 설정이됩니다.

+0

각 데이터를 가져올 때 평균적으로 얼마나 오래 가져올 것이라고 생각하십니까? 아마도 30 열과 같습니다. –

+0

잘 1에 달려 있습니다. 대상 테이블은 힙입니다. 2. 데이터 흐름 작업을 설정하는 방법. etc. etc –

+0

약 2 개의 조인이있는 약 2 개의 테이블로가는 30 개의 열 .. 그들은 단순하다/그 다음에는 내부 루핑이 없다. –

관련 문제