Azure Data Factory에서 LastModifiedDate를 사용하여 새 파일 및 변경된 파일 복사
적용 대상: Azure Data Factory Azure Synapse Analytics
팁
기업용 올인원 분석 솔루션인 Microsoft Fabric의 Data Factory를 사용해 보세요. Microsoft Fabric은 데이터 이동부터 데이터 과학, 실시간 분석, 비즈니스 인텔리전스 및 보고에 이르기까지 모든 것을 다룹니다. 무료로 새 평가판을 시작하는 방법을 알아봅니다!
이 문서에서는 LastModifiedDate를 사용해서 파일 기반 스토리지에서 대상 스토리지로 새 파일 및 변경된 파일만 복사할 수 있는 솔루션 템플릿에 대해 설명합니다.
이 솔루션 템플릿 정보
이 템플릿은 LastModifiedDate 특성을 기준으로 먼저 새 파일 및 변경된 파일만 선택하고, 선택한 파일을 데이터 원본 스토리지에서 데이터 대상 스토리지로 복사합니다.
해당 템플릿에는 하나의 작업을 포함합니다.
- Copy는 LastModifiedDate를 통해서 파일 스토리지에서 대상 스토리지로 새 파일 및 변경된 파일만 복사합니다.
해당 템플릿은 다음 두 개의 매개 변수를 정의합니다.
- FolderPath_Source는 원본 스토리지에서 파일을 읽을 수 있는 폴더 경로입니다. 기본값을 고유한 폴더 경로로 바꾸어야 합니다.
- Directory_Source는 원본 스토리지에서 파일을 읽을 수 있는 하위 폴더 경로입니다. 기본값을 사용자의 하위 폴더 경로로 바꾸어야 합니다.
- FolderPath_Destination은 파일을 복사하려고 하는 대상 스토리지의 폴더 경로입니다. 기본값을 고유한 폴더 경로로 바꾸어야 합니다.
- Directory_Destination는 파일을 복사하려고 하는 대상 스토리지의 하위 폴더 경로입니다. 기본값을 사용자의 하위 폴더 경로로 바꾸어야 합니다.
- LastModified_From은 해당 LastModifiedDate 특성이 날짜/시간 값보다 크거나 같은 파일을 선택하는 데 사용됩니다. 마지막으로 복사되지 않은 새 파일만 선택하기 위해 이 날짜/시간 값은 파이프라인이 마지막으로 트리거된 시간이 될 수 있습니다. 기본값인 ‘2019-02-01T00:00:00Z’를 UTC 표준 시간대의 예상 LastModifiedDate로 바꿀 수 있습니다.
- LastModified_To는 해당 날짜/시간 값 이전의 LastModifiedDate 특성을 가진 파일을 선택하는 데 사용됩니다. 이전 실행에서 복사되지 않은 새 파일만 선택하기 위해 이 날짜/시간 값은 현재 시간이 될 수 있습니다. 기본값인 ‘2019-02-01T00:00:00Z’를 UTC 표준 시간대의 예상 LastModifiedDate로 바꿀 수 있습니다.
이 솔루션 템플릿을 사용하는 방법
Azure Data Factory의 작성자 탭에서 템플릿 갤러리로 이동한 다음 단추, 파이프라인 및 마지막으로 템플릿 갤러리를 선택합니다+.
LastModifiedDate에서만 새 파일 복사 템플릿을 검색하고 선택한 다음 계속을 선택합니다.
대상 스토리지에 대한 새 연결을 만듭니다. 대상 스토리지는 파일을 복사할 위치입니다.
원본 스토리지 저장소에 대한 새 연결을 만듭니다. 원본 스토리지 저장소는 복사하려는 파일이 있는 곳입니다.
이 템플릿 사용을 선택합니다.
다음 예제와 같이 패널에서 사용할 수 있는 파이프라인이 표시됩니다.
디버그를 선택하고, 매개 변수의 값을 쓰고, 마침을 선택합니다. 다음 그림에서는 매개 변수를 다음과 같이 설정합니다.
- FolderPath_Source = sourcefolder
- Directory_Source = subfolder
- FolderPath_Destination = destinationfolder
- Directory_Destination = subfolder
- LastModified_From = 2019-02-01T00:00:00Z
- LastModified_To = 2019-03-01T00:00:00Z
이 예제에서는 시간 범위 내에서 마지막으로 수정된 파일(2019-02-01T00:00:00Z에서 2019-03-01T00:00:00Z)을 원본 경로 원본 폴더/하위 폴더에서 대상 경로 대상 폴더/하위 폴더로 복사함을 나타냅니다. 이러한 시간 또는 폴더를 사용자 고유의 매개 변수로 바꿀 수 있습니다.
결과를 검토합니다. 구성된 시간 범위 내에서 마지막으로 수정된 파일만 대상 저장소에 복사되는 것을 볼 수 있습니다.
이제 연속 창 트리거를 추가하여 해당 파이프라인을 자동화할 수 있습니다. 그러면 파이프라인이 항상 새 파일 및 변경된 파일을 LastModifiedDate을 통해서만 주기적으로 복사할 수 있습니다. 트리거 추가를 선택하고 새로 만들기/편집을 선택합니다.
트리거 추가 창에서 + 새로 만들기를 선택합니다.
트리거 유형에 대해 연속 창을 선택하고 15분마다 되풀이로 설정합니다(시간 간격 변경 가능). 활성화 상자에 예를 선택한 다음 확인을 누릅니다.
트리거 실행 매개 변수의 값을 다음과 같이 설정하고 마침을 선택합니다.
- FolderPath_Source = sourcefolder. 사용자의 원본 데이터 스토리지 폴더로 바꿀 수 있습니다.
- Directory_Source = subfolder. 사용자의 원본 데이터 스토리지 하위 폴더로 바꿀 수 있습니다.
- FolderPath_Destination = destinationfolder. 사용자의 대상 데이터 스토리지 폴더로 바꿀 수 있습니다.
- Directory_Destination = subfolder. 사용자의 대상 데이터 스토리지의 하위 폴더로 바꿀 수 있습니다.
- LastModified_From = @trigger().outputs.windowStartTime. 파이프라인이 마지막으로 트리거된 시간을 결정하는 트리거의 시스템 변수입니다.
- LastModified_To = @trigger().outputs.windowEndTime. 이번에는 파이프라인이 트리거되는 시간을 결정하는 트리거의 시스템 변수입니다.
모두 게시를 선택합니다.
데이터 원본 스토리지의 원본 폴더에 새 파일을 만듭니다. 이제 파이프라인이 자동으로 트리거되기를 기다리고 있으며 새 파일만 대상 저장소에 복사됩니다.
왼쪽 탐색 패널에서 모니터 탭을 선택하고 트리거 되풀이가 15분 간격으로 설정된 경우 약 15분 동안 기다립니다.
결과를 검토합니다. 파이프라인이 15분마다 자동으로 트리거되고 원본 저장소의 새 파일 또는 변경된 파일만 각 파이프라인 실행의 대상 저장소에 복사됩니다.