원시 파일 가져오기 API (V2)
FileImport는 외부 시스템의 원시 파일을 Foundry 데이터셋으로 가져오는 배치 동기화 구성입니다. 파일을 읽는 Connection, 출력 데이터셋과 브랜치, 수집 모드 및 파일 필터를 지정합니다.
생성부터 실행까지
| 작업 | API |
|---|---|
| 새 구성 만들기 | Create File Import |
| 접근 가능한 구성 목록 | List File Imports |
| 특정 구성 조회 | Get File Import |
| 모드, 표시 이름, 하위 폴더와 필터 교체 | Replace File Import |
| Foundry 빌드로 비동기 실행 | Execute File Import |
| 가져오기 구성 삭제 | Delete File Import |
생성과 교체 및 삭제에는 api:connectivity-file-import-write, 조회에는 api:connectivity-file-import-read, 실행에는 api:connectivity-file-import-execute를 사용합니다. 실행 권한 범위를 생성 권한과 같은 것으로 처리하지 않습니다.
생성 요청의 출력 datasetRid와 branchName은 나중에 바꿀 수 없습니다. 대부분의 플랫폼 인스턴스에서 브랜치 기본값은 master입니다. 대상이 확정된 데이터셋과 실제 브랜치를 사용합니다. subfolder를 생략하면 원천의 루트 폴더를 가져옵니다.
수집 모드와 필터
API 생성 입력에는 importMode를 명시합니다.
| 모드 | 데이터셋에 반영하는 방식 |
|---|---|
SNAPSHOT | 이번 실행에서 가져온 파일만으로 새 데이터셋 상태를 구성 |
APPEND | 이전 실행의 데이터에 새 파일 추가 |
UPDATE | 파일 이름을 기준으로 이전 실행의 파일을 교체 |
파일 필터는 원천에서 어떤 파일을 선택할지를 정하고, 모드는 선택한 파일을 출력에 어떻게 반영할지를 정합니다. 9가지 필터를 지정한 순서대로 적용합니다. 경로 조건은 하위 폴더를 지정했더라도 소스 루트 기준의 상대 경로를 사용합니다.
changedSinceLastUploadFilter는 과거 수집 이력을 사용하며 SNAPSHOT 모드가 이 이력을 초기화하지 않습니다. 전체 스냅샷, 새 파일 누적, 변경 파일 반영은 파일 배치 동기화 모드의 조건을 함께 확인하여 선택합니다.
customFilter는 조회할 수 있지만 API의 생성 및 갱신 요청에는 사용할 수 없습니다. 기존 사용자 지정 필터를 보존해야 한다면 지원 여부를 확인하지 않고 필터를 제거하여 대체 요청을 만들지 않습니다.
실행 결과와 삭제
Execute File Import는 비동기 빌드의 BuildRid 문자열을 반환합니다. 실행 완료 여부와 실패 원인은 빌드의 상태를 확인해야 합니다. 같은 실행을 다시 요청하기 전에도 이전 빌드의 상태와 출력 데이터셋 반영 결과를 확인합니다.
FileImport를 삭제해도 출력 데이터셋은 남습니다. 삭제한 가져오기가 더 이상 해당 데이터셋을 갱신하지 않게 됩니다. 데이터셋을 삭제하는 작업과 구분합니다.