[NiFi] GetFile & PutFile

kayoung·2024년 6월 28일

NiFi

목록 보기
2/3

이번에는 간단하게 파일을 가져와 다른곳에 저장하는 것을 해보겠다.

일단 실습을 하기 위해 indata, outdata 디렉터리를 만들고 사용할 txt 파일을 만든다.
나는 도커에서 nifi를 실행하기 때문에 컨테이너에 들어가서 디렉터리와 txt 파일을 만들도록 하겠다.

사용할 데이터는 indata.txt로 하였고, vi를 이용해 파일을 만들었다.
물론, vi를 사용하지 않고 txt 파일을 로컬에서 만든 다음 컨테이너에 업로드 해도 된다.

그리고 디렉터리에 모든 권한을 부여했다.
(권한을 부여 안했더니 실행이 안되서..)

이제 nifi 페이지에 가서 GetFile, PutFile Processor를 추가한다.

각 Processor를 우클릭한 뒤, Configure에 들어가서 properties를 설정해준다.

GetFile은 InputDirectory에 이관할 데이터가 들어있는 디렉터리 경로를 지정하면되고,

PutFile은 OutputDirectory에 데이터를 저장할 경로를 지정하면 된다.

그 다음, GetFile에서 PutFile로 드래그해서 연결을 한다.

PutFile에 아직 경고 표시가 있는데, 데이터 저장을 성공/실패 한 뒤 실행하는 동작이 없어서 그렇다.

여기서는 데이터 저장 성공/실패 한뒤 그냥 끝내도록 PutFile을 드래그 해서 자신과 연결시킨다.
이때, failure, success 둘다 체크한다.

플로우가 완성된 모습이다.

이제 플로우를 전체 선택하고 실행을 한다.

실행하고 나서 디렉터리를 각각 보면, indata에 있던 데이터가 outdata로 이관이 되었고, indata에는 데이터가 삭제된 것을 볼 수 있다.

0개의 댓글