본문 바로가기

Apache NiFi

NiFi 에서 postgresql 연동하기 ( + mysql 등등 )

NiFi 에서 RDBMS 와 연동하기 위한 CONTROLLER SERVICES 를 설정해보겠습니다.

설정은 Postgresql으로 설정해보겠습니다.

 

 

마우스 우클릭

 

NiFi 에서 마우스 우클릭을 하게 되면 위 사진과 같이 여러 목록이 생기게 됩니다.

여기서 Configure로 들어갑니다.

 

Configure

 

Configure 화면으로 들어와서 우측에 + 버튼을 누릅니다.

 

Add Controller Service

 

+ 버튼을 누르면 Add Controller Service가 나오게 됩니다. 여기서 DB 설정을 위해 DBCPConnectionPool 이라는 Service를 사용합니다.

 

 

Controller Service - DBCPConnectionPool

 

DBCPConnectionPool Service를 클릭합니다.

 

 

DBCPConnectionPool

 

Database Connection URL -> jdbc:postgresql://192.168.0.1(localhost):5432/dbname(db이름)?stringtype=unspecified (jdbc:postgresql://ip:포트번호/db이름?stringtype=unspecified)

 

Database Driver Class Name -> org.postgresql.Driver

 

Database Driver Location(s) -> postgresql-42.2.6.jar 가 있는 경로

 

Database User -> User 아이디

Password -> User 패스워드

 

DBCPConnectionPool 활용방안

 

ExecuteSQL

 

ExecuteSQL

 

위 사진과 같이 postgresql로 설정한 DBCPConnectionPool을 설정하고 select 쿼리를 이용하면 select 값을 NiFi로 반환할 수 있습니다.

 

Select 제외 ExecuteSQL 사용법.

SQL 쿼리 생성 Flow

 

위 입력과 같이 DELETE from table 명 where 조건 문을 생성한 후 ExecuteSQL을 사용하면 SELECT 이외에도 여러 쿼리문을 활용할 수 있습니다.

 

ExecuteSQL 실행

 

 

PutDatabaseRecord

 

PutDatabaseRecord

 

ExecuteSQL에서 Select 한 값을 PutDatabaseRecord를 사용하여 테이블에 다시 입력 가능합니다.

 

PutDatabaseRecord - Statement Type

PutDatabaseRecord에서 Statement Type를 통해 UPDATE, INSERT, UPSERT, DELETE 4가지 DML을 사용하여 원하는 작업을 실행할 수 있습니다.

'Apache NiFi' 카테고리의 다른 글

NiFi 에서 Hive 연동하기 ( PutHive3QL )  (0) 2021.09.08
NiFi 에서 Hive3 설정  (0) 2021.09.08
NiFi 설치방법 (1.12.1) 및 환경 설정  (0) 2021.09.08