아파치 나이파이

아파치 나이파이(Apache NiFi, 나이아가라파일즈/NiagaraFiles의 준말)는 소프트웨어 시스템 간 데이터 흐름을 자동화하도록 설계된 아파치 소프트웨어 재단의 소프트웨어 프로젝트이다. 과거에 NSA에 의해 개발되었고 2014년 기술 전송 프로그램의 일부로서 오픈 소스화된 나이아가라파일즈(NiagaraFiles) 소프트웨어에 기반을 둔다.

이 소프트웨어의 설계는 흐름 기반 프로그래밍 모델에 기반을 두며 클러스터, TLS 암호화를 사용하는 보안, 확장성(사용자는 자신만의 소프트웨어를 작성하여 기능을 확장할 수 있음), 동작을 시각적으로 보고 수정하는데 사용할 수 있는 포털과 같은 개선된 사용성 기능을 포함하는 여러 기능들을 제공한다.

소프트웨어 개발 및 상업적인 지원은 현재 나이파이의 원 개발사 Onyara를 인수한 Hortonworks에 의해 제공되고 있다.

소프트웨어 구성 요소 

나이파이는 호스팅 대상 서버의 자바 가상 머신 안에서 실행되는 자바 프로그램이다. 나이파이의 주된 구성 요소는 다음과 같다:

 웹 서버(Web Server) - 발생되는 이벤트를 모니터링하고 소프트웨어를 시각적으로 제어하기 위해 사용되는 HTTP 기반 구성 요소
 플로 컨트롤러(Flow Controller) - 나이파이 동작의 뇌 역할을 담당한다. 나이파이 확장 기능의 실행을 통제하고 이를 위한 자원 할당을 스케줄링한다.
 확장 기능(Extensions) - 나이파이가 다양한 종류의 시스템과 통신할 수 있게 하는 다양한 플러그인
 플로파일 저장소(FlowFile repository) - 나이파이가 현재 실행 중인 플로파일(FlowFile)의 상태를 추적하고 정비하기 위해 사용.
 콘텐츠 저장소(Content repository) - 여기에서 전송 대상의 데이터가 관리된다
 프로버넌스 저장소(Provenance repository) -  여기에서 시스템을 경유하는 데이터의 프로버넌스와 관련한 데이터가 관리된다.

상용 소프트웨어와의 연동 
 2017년 2월, HPE의 "SecureData for Hadoop and IoT" 소프트웨어는 나이파이를 연동한 산업 최초의 상용 제품이 되었다.

같이 보기 
 아파치 소프트웨어 재단 프로젝트 목록

각주

외부 링크 
 
 NiFi on Hortonworks.com

미국 국가안보국
아파치 소프트웨어 재단 프로젝트
자바 플랫폼 소프트웨어