본문 바로가기
Delvelopment/Kafka

[kafka Connect] 주기적으로 수행되는 무거운 쿼리 ALL_OBJECTS (table.poll.interval.ms)

by 제제킴 2020. 10. 12.
반응형

Kafka Connect 를 운영하던 중 1분에 몇번씩 아래와 같은 무거운 쿼리가 수행하는 것을 파악할 수 있었다.

 

SELECT NULL AS table_cat,
       o.owner AS table_schem,
       o.object_name AS table_name,
       o.object_type AS table_type,
       NULL AS remarks
  FROM all_objects o
  WHERE o.owner LIKE :1 ESCAPE '/'
    AND o.object_name LIKE :2 ESCAPE '/'
    AND o.object_type IN ('xxx', 'TABLE')
  ORDER BY table_type, table_schem, table_name
반응형

DB 자원의 큰 리소스를 차지하고 있었고. 해당 쿼리는 DB의 테이블 목록을 조회하는 쿼리였다.

 

해당 쿼리를 통해 Kafka Connect는 화이트리스트 및 블랙리스트 필터를 충족하고 조회해야하는 새 테이블이 있는지 확인한다.

 

Connect API 를 사용할때 "table.poll.interval.ms" 의 값을 셋팅해주면 되며, 기본값은 1분으로 되어있다.

 

즉, 1분마다 DB전체의 스키마를 조회하고 있었으니 자원을 얼마나 차지하고 있었을까...

 

아무튼 해당 셋팅의 시간을 늘려주면서 해결은 되었으나 어느정도의 시간으로 셋팅을 하는게 바람직한지는 정하진 못했다.

 

 

반응형

댓글