GetFTP 프로세서
GetFTP 프로세서
Openflow의 GetFTP 프로세서는 FTP 서버에서 파일을 가져와 FlowFile을 만드는 프로세서예요. 원격 파일을 수집(ingest)하는 데 쓰여요.
출처: Snowflake 문서
본문
번들 (Bundle)
org.apache.nifi | nifi-standard-nar
설명 (Description)
FTP 서버에서 파일을 가져와 FlowFile을 만들어요.
태그 (Tags)
FTP, fetch, files, get, ingest, input, remote, retrieve, source
입력 요구 사항 (Input Requirement)
금지 (FORBIDDEN)
민감 동적 속성 지원 (Supports Sensitive Dynamic Properties)
아니요 (false)
속성 (Properties)
| 속성 | 설명 |
|---|---|
| Connection Mode | FTP 연결 모드예요. |
| Connection Timeout | 연결을 만드는 동안 타임아웃되기 전에 기다리는 시간이에요. |
| Data Timeout | 로컬과 원격 시스템 간에 파일을 전송할 때 시스템 간 데이터가 전송되지 않고 경과해도 되는 시간을 지정해요. |
| Delete Original | 성공적으로 전송된 후 파일을 원격 시스템에서 삭제할지 여부를 결정해요. |
| File Filter Regex | 파일 이름을 필터링하기 위한 Java 정규 표현식을 제공해요. 필터를 제공하면 이름이 그 정규 표현식과 일치하는 파일만 가져와요. |
| Follow Symbolic Links | true면 심볼릭 파일과 중첩된 심볼릭 하위 디렉터리까지 가져와요. 그렇지 않으면 심볼릭 파일을 읽지 않고 심볼릭 링크 하위 디렉터리를 탐색하지 않아요. |
| Hostname | 원격 시스템의 정규화된 호스트 이름 또는 IP 주소예요. |
| Ignore Dotted Files | true면 이름이 점(".")으로 시작하는 파일은 무시돼요. |
| Internal Buffer Size | 버퍼링된 데이터 스트림의 내부 버퍼 크기를 설정해요. |
| Max Selects | 단일 연결에서 가져올 최대 파일 수예요. |
| Password | 사용자 계정의 비밀번호예요. |
| Path Filter Regex | Search Recursively가 true일 때 경로가 주어진 정규 표현식과 일치하는 하위 디렉터리만 검색돼요. |
| Polling Interval | 새 파일 목록을 가져오는 사이에 기다릴 시간을 결정해요. |
| Port | 원격 시스템이 파일 전송을 위해 수신하는 포트예요. |
| Remote Path | 파일을 가져오거나 보낼 원격 시스템의 경로예요. |
| Remote Poll Batch Size | 파일 목록을 만들 때 원격 시스템의 주어진 디렉터리에서 찾을 파일 경로 수를 지정해요. 일반적으로 이 값을 수정할 필요는 없지만, 파일이 매우 많은 원격 시스템을 폴링할 때는 이 값이 중요할 수 있어요. 너무 높게 설정하면 성능이 매우 나빠지고, 너무 낮게 설정하면 플로우가 평소보다 느려질 수 있어요. |
| Search Recursively | true면 임의로 중첩된 하위 디렉터리에서 파일을 가져와요. 그렇지 않으면 하위 디렉터리를 탐색하지 않아요. |
| Transfer Mode | FTP 전송 모드예요. |
| Use Natural Ordering | true면 파일이 자연스럽게 나열된 순서대로 가져와져요. 그렇지 않으면 파일이 가져와지는 순서가 정의되지 않아요. |
| Username | 사용자 이름이에요. |
| ftp-use-utf8 | 클라이언트가 파일과 파일 이름을 처리할 때 UTF-8 인코딩을 사용하도록 지시해요. true로 설정하면 서버도 UTF-8 인코딩을 지원해야 해요. |
| proxy-configuration-service | 네트워크 요청을 프록시할 Proxy Configuration 컨트롤러 서비스를 지정해요. |
관계 (Relationships)
| 이름 | 설명 |
|---|---|
| success | 수신된 모든 FlowFile이 success로 보내져요. |
쓰기 속성 (Writes attributes)
| 이름 | 설명 |
|---|---|
| filename | filename이 원격 서버의 파일 이름으로 설정돼요. |
| path | path가 원격 서버에서 파일 디렉터리의 경로로 설정돼요. 예를 들어 <Remote Path> 속성이 /tmp로 설정되면 /tmp에서 가져온 파일은 path 속성이 /tmp로 설정돼요. <Search Recursively> 속성이 true이고 /tmp/abc/1/2/3에서 파일을 가져오면 path 속성이 /tmp/abc/1/2/3으로 설정돼요. |
| file.lastModifiedTime | 원본 파일이 마지막으로 수정된 날짜와 시간이에요. |
| file.lastAccessTime | 파일이 마지막으로 접근된 날짜와 시간이에요. 일부 파일 시스템에서는 동작하지 않을 수 있어요. |
| file.owner | 원본 파일의 숫자 소유자 ID예요. |
| file.group | 원본 파일의 숫자 그룹 ID예요. |
| file.permissions | 원본 파일의 읽기/쓰기/실행 권한이에요. |
| absolute.path | 파일이 가져와진 전체/절대 경로예요. 현재 'path' 속성도 채워지지만 상대 경로일 수 있어요. |