본문으로 건너뛰기

설정

DB to DB인터페이스 등록은 인터페이스 관리 > 배치인터페이스에서 등록한다. 인터페이스ID, 인터페이스명은 인터페이스를 식별할 수 있는 값으로 설정한다.

각 구성항목에 대한 설명은 다음과 같다.

구성항목

☑ 기본정보

  • 인터페이스방식 : DB to DB
  • 에러정책 : 에러시 종료(Stop), 에러를 무시하고 이후 진행(Skip)에 대한 정책
  • 전후처리프로그램ID : 배치 수행전후에 실행할 커스터마이징 프로그램

☑ 스케줄정보

실행할 스케줄 정보. 해당 스케줄 정보는 노드관리 > 스케줄인스턴스관계정보에 등록되어야 실제로 실행된다.

☑ From To

  • 소스에이전트그룹사용여부 : 소스에이전트그룹을 사용할 것인지 선택한다. 사용이라면 에이전트그룹ID, 사용안함이라면 데이터소스ID를 설정한다. 가용 에이전트를 로드밸런싱하기 위해 사용한다. (현재 라운드로빈만 지원)
  • 소스데이타소스 : SELECT문을 실행할 데이터소스
  • 타겟에이전트그룹사용여부 : 타겟에이전트그룹을 사용할 것인지 선택한다. 사용이라면 에이전트그룹ID, 사용안함이라면 데이터소스ID를 설정한다. 가용 에이전트를 로드밸런싱하기 위해 사용한다. (현재 라운드로빈만 지원)
  • 타겟데이타소스 : INSERT / UPDATE / DELETE문을 실행하기위하여 접속할 수 있는 정보가 등록된 데이타소스를 선택한다.

☑ 처리기준정보

  • 처리SQL유형 : 처리구분컬럼으로 구분하여 SQL를 수행할 것인지 원장 데이터를 처리할 것인지를 구분한다.
  • 처리일시컬럼명 : SQL수행 후에 처리 결과를 저장할 때 SQL를 처리한 시간을 저장할 컬럼명을 입력한다.
  • 처리ID컬럼명 : SQL수행 시 엔진에서 생성한 GUID를 저장할 컬럼
  • UUID컬럼명 : Source테이블의 Row를 식별 가능한 컬럼
  • 처리상태컬럼명 : SQL 실행 후 실행한 처리결과가 Y/E로 기록된다.
  • 처리구분컬럼명 : Target테이블의 SQL을 구분할 컬럼으로, C/U/D값에 따라 SQL이 실행된다.
  • 커밋건수 : Select의 Fetch건수 및 커밋단위이다. 예를 들어 100을 등록하면, 100건 단위로 데이터를 Fetch하여 To SQL을 처리한 후 커밋한다.
  • 대상데이터삭제여부 : Target 테이블의 데이터 전체를 삭제 후에 SQL를 수행할 것인지 여부

☑ SQL Query

  • From SQL : Source DB의 데이터를 가져오기 위한 Select SQL을 등록한다.
  • To SQL : 전달된 데이터를 처리구분에 맞게 처리할 Insert/Update/Delete SQL을 등록한다.
    정보

    UPSERT 방식은, Update SQL이 선행되고, 수정된 건수가 0일 시, Insert SQL을 수행한다.

주의

From SQL의 결과를 To SQL로 데이터를 전달하기 위해 From SQL의 결과 컬럼명과 To SQL의 bind 변수명이 같아야 한다. DB to DB SQL 작성 예제

정보

DBMS별로 컬럼의 대소문자를 각기 다르게 인식함에 유의한다. 예를 들어 Oracle은 반드시 대문자를 사용해야 하는 반면, Postgres는 소문자를 사용해야 한다.

APtoBatch사용 시 동적 파라미터 적용방법
1. selectParam을 사용할 요청전문레이아웃 등록
2. 요청전문레이아웃에 selectParam으로 1번의 레이아웃 등록
3. 배치인터페이스의 Select SQL에 사용할 파라미터 반영

파라미터는 콜론(:)을 기준으로 왼쪽은 요청값, 오른쪽은 기본값을 의미한다. 위의 예시에서는 요청전문에 sysdate가 있다면 해당 값이, 없다면 PASSWORD=(SELECT TO_CHAR(SYSDATE, 'YYYYMMDD') FROM DUAL)로 반영되게 된다.