2016-09-08 3 views
0

ssis에서 Table1에 데이터를 삽입하고 있습니다. 데이터가 min (5 ~ 10k 레코드) 당 매우 느리게로드됩니다. 옵션을 삽입해도 대상 작업에 빠른로드 옵션이 선택되어 삽입되지 않았습니다.SQL 데이터 삽입 속도가 느림

다른 서버 (표 2)와 동일한 서버에서 데이터로드가 매우 빠르게 발생하며 이는 Table1과 비교하여 더 많은 데이터와 인덱스를 가지고 있습니다.

왜 Table1 데이터 삽입 속도가 느립니까?

도와주세요.

+0

테이블 정의, 인덱스, 트리거 등? – jarlh

답변

0

로딩 패키지가 느려지는 이유는 다양 할 수 있습니다. 일반적으로 메모리, 대상, 색인, 로깅 등과 관련이 있습니다. 동등한 쿼리의 성능을 사용해 보셨습니까? 더 나은 경우 data flow task 대신 Execute SQL Task을 사용할 수 있습니다.

패키지에는 OLE DB Command 변환 또는 fuzzy lookup 또는 fuzzy grouping과 같은 완전 차단 변환이 있습니까? OLE DB 명령 변환은 행 단위로 이루어 지므로 모든 완전 차단 변환은 많은 오버 헤드를 유발합니다.

OLE DB 대상을 사용하고 있으므로 MICS (최대 삽입 커밋 크기) 및 RPB (일괄 처리 행)를 적절하게 변경할 수 있습니다. 대상 테이블에 클러스터 된 인덱스가있는 경우 큰 일괄 처리이므로 메모리에 부정적인 영향을 미칩니다.

+0

답장을 보내 주셔서 감사합니다. oledb 소스 및 oledb 대상을 사용하고 있는데 옵션 마이크 (1000000) 및 RPB (100000)가 있습니다. 원본과 대상 사이에 중복을 피하기 위해 조회를 사용하고 있습니다. 총 5 개의 인덱스 (클러스터되지 않음)가 테이블에 적용됩니다. 인덱스를 비활성화하고로드했습니다. 삽입이 매우 빠르게 발생했습니다. 하나의 색인이 활성화 된 경우에도 데이터 삽입이 매우 느리게 진행됩니다. 인덱스를 확인해야하는 것이 있습니까? –