In-DB 최적화에 대한 세부사항
In-DB 최적화는 가능하면 데이터베이스에서 처리할 IBM® Campaign 서버로의 ID 복사를 방지합니다. 이 옵션은 플로우차트 성과를 향상시킬 수 있습니다.
In-DB 최적화는 다음을 판별합니다.
*
데이터베이스 서버 또는 로컬 IBM® Campaign 서버에서 작업 수행 여부 및
*
In-DB 최적화가 설정된 경우:
*
*
In-DB 최적화는 CPU 이용에 영향을 줍니다.
*
*
In-DB 최적화가 해제된 경우 IBM® Campaign 서버에서 더 많은 CPU가 이용됩니다.
전체적으로 In-DB 최적화를 적용하고 개별 플로우차트에 대한 글로벌 설정을 대체할 수 있습니다. 최선의 방법은 글로벌 구성 특성(useInDbOptimization)을 해제하고 플로우차트 레벨(고급 설정 > 관리자 > 플로우차트 실행 동안 In-DB 최적화 사용)에서 옵션을 설정하는 것입니다.
*
In-DB 최적화의 제한사항
*
*
필요한 로직에 따라 일부 함수는 In-DB 프로세싱이 켜진 경우에도 IBM® Campaign 서버에서 수행됩니다. 몇 가지 예는 다음과 같습니다.
*
예를 들어, 선택 프로세스에서 다양한 데이터 소스를 쿼리하는 경우 IBM® Campaign은 애플리케이션 서버에서 해당 케이스의 ID 목록을 자동으로 저장합니다.
*
예를 들어, 파생 필드를 계산하기 위해 IBM® Campaign은 파생 필드 수식을 평가하여 계산의 일부를 SQL로 수행할 수 있는지 여부를 확인합니다. 단순 SQL문을 사용할 수 있는 경우 계산이 In-DB로 수행됩니다. 그렇지 않은 경우, 계산을 처리하고 플로우차트 내에서 프로세스에서 프로세스로 결과를 지속하도록 IBM® Campaign 서버에서 임시 테이블이 작성됩니다.
매크로의 원시 SQL 처리
원시 SQL문으로 구성되는 사용자 정의 매크로는 다음 가이드라인 내에서 In-DB로 처리할 수 있습니다.
*
모든 원시 SQL 사용자 정의 매크로는 select로 시작하고 텍스트의 나머지 부분에서 from을 딱 하나 포함해야 합니다.
*
<TempTable> 구문에 대한 삽입만 지원하는 데이터베이스의 경우, 최소 하나의 기본 테이블을 원시 SQL 사용자 정의 매크로와 동일한 대상 레벨의 동일한 데이터 소스로 맵핑해야 합니다. 원시 SQL 사용자 정의 매크로에 의해 선택된 필드가 임시 테이블의 필드로 너무 큰 경우 런티임 오류가 발생합니다.
*
입력 셀이 있는 선택 프로세스에서 원시 SQL 쿼리를 사용하는 경우, <TempTable> 토큰을 사용하여 대상 ID의 올바른 목록을 얻어야 합니다. 또한 <OutputTempTable> 토큰을 사용하면 원래 IBM® Campaign 서버의 데이터베이스에서 대상 ID 검색을 방지할 수 있습니다.
*