2014-03-12 4 views
0

소스가 뷰이고 조인을하는 원본 한정자가있는 테이블이며 분류기, 수집기, 라우터 업데이트 전략 및 최종적으로 같은 테이블에 대한 삽입 및 업데이트를위한 2 개의 대상이있는 매핑이 있습니다. .변환이 너무 느립니다.

그러나 실행 중에는 모든 변환 작업에 너무 많은 시간이 소요됩니다. 내가 소스에서 직접 목표물에 연결한다면 그것은 빠르게 작동한다.

소스 한정자 내에서 정렬 작업을 시도했는데 소스 정렬 작업을 수행했을 때 속도가 너무 느려서 전혀 쓰지 않습니다.

누군가가 그 이유를 도울 수 있습니까?

답변

1

코드를 게시 할 수 있다면 누군가 분명히 병목 현상을 식별 할 수 있습니다. 그렇지 않으면, 변환 중 하나의 변환 또는 단일 행이 책임을 질 수 있습니다. 가장 좋은 답변은 모범 사례에 대한 일반적인 대답 일 것입니다. 아마 당신이 찾고있는 것이 아닙니다.

0

캐싱 문제가있는 것 같습니다. 로그에서 권장 캐시 크기에 대한 정보를 확인하고 반올림하고 세션에서 수동으로 분류기에 지정하십시오 (매핑 탭). 소스 -> 분류기 - 대상은 다음과 같은 방식으로 작동합니다 :

  1. 모든 소스 데이터를 읽어 들여, 일단 모든 데이터를 읽어
  2. 캐시
  3. 를 구축, 정렬 수행한다.
  4. 모든 데이터가 정렬되면 쓰기가 시작됩니다.

따라서 "느린 읽기"는 캐시 파일에 의해 지연되었음을 의미합니다. 전혀 쓰지 않는 것이 예상됩니다 - 정렬하기 전에 어떻게 글을 쓸 수 있습니까?

사이드 노트 :

  • 관계형 테이블에 쓰기 위해 정렬은 거의 의미가 있습니다.
  • 집계를 정렬하면 의미가 없습니다.
  • 위에서 언급 한 것처럼 코드가 유용합니다.
  • 몇 가지 모범 사례는 here에서 찾을 수 있습니다.
+0

글쎄,이 문제는 준비 테이블에 인덱스를 추가 할 때 일시적으로 해결되었습니다. 영구 솔루션을 해결해야합니다. 이것은 천만 개 이상의 데이터가있는 huger 테이블에서 발생합니다. – user3346563

0

세션 로그 통계에서 병 목을 식별 할 수 있습니다. 그런 다음 병목 현상을 제거하기 위해 PowerCenter 도움말에서 Performance Tuning Guide를 참조하십시오.