2016-07-04 2 views
0

분명히 텍스트 파일 출력 동시 쓰기, 주전자의 텍스트 파일 출력 단계는 동시성을 지원하지 않습니다 : 두 개의 서로 다른 텍스트 파일 출력 단계는 같은 파일에 작성하는 경우에는 잠금 장치가 없다 구현 된 결과 출력 파일에는 입력 소스의 필드가 혼합 된 결과 출력 행이 포함됩니다 (잘못된). 아무도 나에게이 동작에 대한 확인을 제공 할 수 있습니까? 책 Pentaho Kettle Solutions의 페이지 387에서주전자 (펜타 PDI) :

답변

0

:

병렬로 하나의 텍스트 파일에 쓰기 수 없습니다. 예제의 경우 "텍스트 파일 출력" 단계의 여러 단계 복사를 사용하여 동일한 출력 파일에 쓸 수 없습니다. 시도 할 경우, 결과는 블렌딩 된 파일이고 라인과 필드는 잘못된 위치에 있습니다. 이 문제는 고급 잠금 알고리즘 을 사용하는 경우에만 다시 적용되어 하나의 스레드에 대한 병렬 처리 수준을 다시 낮 춥니 다. 그러나 간단한 해결책은 복수 출력 파일에 파일을 쓰는 것입니다. .

+1

은 TextFileOutput 전에 스트림을 결합 할 수 있으며 행의 필드 수와 유형을 일치시켜야합니다. – simar

+0

물론. Text File Output이 자체적으로 어떤 종류의 잠금을 구현했는지 궁금합니다. 고맙습니다. – Claudio

0

여러 "텍스트 파일 출력"단계를 통해 같은 파일에 쓰는 경우 별도의 컨텍스트가있는 두 개의 별도 프로그램에서 파일에 액세스하는 것과 같습니다. 물론 이러한 경우에는 Pentaho가 처리하는 동시성이 없을 것입니다. "텍스트 파일 출력"내의 파일 쓰기 기능은 synchronized이지만 단일 컨텍스트에서 동시성을 처리합니다.

관련 문제