2.설치#
설치 전 작업#
Kafka 설치가 되어 있어야 한다.
소스 데이터베이스(Altibase) 설정#
소스 데이터베이스가 Altibase인 경우 아래의 설정을 반드시 수행해야 한다.
DDL SUPPLEMENTAL LOGGING 기능 활성화#
Altibase 소스 커넥터를 이용하기 위해서는 복제 대상 테이블에 DDL SUPPLEMENTAL LOGGING 기능을 활성화해야 한다. 이 기능은 테이블 단위로 설정할 수도 있고, DDL_SUPPELEMENTAL_LOG_ENABLE 프로퍼티를 통해 서버 전체에 일괄 적용할 수도 있다.
-
테이블 단위로 설정하는 방법
-
이중화 대상 테이블에 아래의 쿼리를 수행.
ALTER TABLE table_name ADD SUPPLEMENTAL LOG DATA ( ALL ) COLUMNS; -
서버에 일괄 적용
-
DDL_SUPPLEMENTAL_LOG_ENABLE 프로퍼티 값을 변경하면, 모든 DDL에 대한 SUPPLEMENTAL LOGGING이 기록된다.
ALTER SYSTEM SET DDL_SUPPLEMENTAL_LOG_ENABLE=1;
Caution
DDL SUPPLEMENTAL LOGGING 기능은 데이터 갱신시 이중화 전달을 위해 모든 로그를 기록하기 때문에 성능이 떨어질 수 있다.
싱크 데이터베이스(Altibase) 설정#
싱크 데이터베이스가 Altibase일 경우, Altibase 싱크 커넥터에서 insert.mode의 값을 upsert로 이용하기 위해서는 아래의 프로퍼티들의 변경이 필요하다.
-
altibase.properies 파일에서 아래의 프로퍼티의 값을 변경한 다음, 서버를 재시작한다.
- COERCE_HOST_VAR_IN_SELECT_LIST_TO_VARCHAR
-
0->32000
-
DEFAULT_DATE_FORMAT
- DD-MON-RRRR -> YYYY-MM-DD HH:MI:SS.SSSSSS
Note
COERCE_HOST_VAR_IN_SELECT_LIST_TO_VARCHAR, DEFAULT_DATE_FORMAT 프로퍼티 값을 변경한 경우, 변경 사항을 적용하려면 Altibase 서버를 재시작해야 한다.
Altibase 소스 커넥터 설치#
- altibase-source-connect-x.x.x.x.x.zip 형식으로 제공된 파일의 압축을 해제한다.
Note
소스 데이터베이스(Altibase)와 동일한 버전의 Altibase 소스 커넥터를 사용해야 한다.
-
압축 해제 후 디렉토리의 이름을 "altibase-source-connect"와 같이 적절한 이름으로 변경한다.
-
해당 디렉토리를 Kafka connector 설치 디렉토리로 이동시킨다. (예: /usr/share/confluent-hub-components/)
-
Kafka connect를 재시작한다.
Altibase 싱크 커넥터 설치#
- confluentinc-Kafka-connect-jdbc-Altibase-x.x.x.zip 형식으로 제공된 파일의 압축을 해제한다.
- 압축 해제 후 디렉토리의 이름을 confluentinc-Kafka-connect-jdbc-Altibase와 같이 적절한 이름으로 변경한다.
- 해당 디렉토리를 Kafka connector 설치 디렉토리로 이동시킨다. (예: /usr/share/confluent-hub-components/)
- Altibase JDBC 드라이버(Altibase.jar) 파일을 3에서 설치한 싱크 커넥터의 설치 디렉토리 하위 lib 디렉토리로 이동시킨다. (예: /usr/share/confluent-hub-components/confluentinc-Kafka-connect-jdbc-Altibase/lib/)
- Kafka connect를 재시작한다.