애플리케이션 레벨에서 DB2 데이터 소스 정의 확장

DB2® Universal JDBC 드라이버 또는 DB2 Using IBM® JCC 드라이버를 사용하는 경우, 보다 넓은 레벨의 애플리케이션 유연성을 추가하도록 데이터 소스 정의(DB2 데이터 소스에 대한 비코어 또는 사용자 정의 특성으로 구성됨)를 확장하십시오. 이 기능을 이기종 풀링이라고도 합니다. 이 기능을 사용하여 데이터 소스 특성의 코어 세트로 애플리케이션 서버에서 DB2 데이터 소스를 구성하고, 애플리케이션별로 적용할 사용자 정의 특성 또는 비코어 특성(예: currentSchema 또는 clientApplicationInformation)을 정의하도록 개별 애플리케이션에 위임할 수 있습니다. 이러한 확장된 정의를 사용하여 데이터 소스에 대해 이미 정의된 비코어 또는 사용자 정의 특성을 대체할 수도 있습니다. 또한 이 기능은 동일한 데이터 소스에 연결하는 자원 간에 한 개의 연결 풀을 채택하므로 애플리케이션 서버에서 사용하는 실제 연결 수를 줄일 있습니다.

시작하기 전에

사용자는 DB2 데이터 소스를 사용해야 하며, 데이터 소스는 다음 JDBC 제공자 중 하나로 애플리케이션 서버에 구성되어 있어야 합니다.
  • DB2 Universal JDBC 드라이버(버전n 4.3.81 이상)
  • DB2 Using IBM JCC 드라이버(버전 3.53.65 이상)

이 태스크 정보

비코어 특성을 여러 자원 참조와 연관시킨 다음 이러한 자원 참조를 사용하여 데이터 소스에 대한 비코어 특성을 확장하거나 대체하도록 애플리케이션을 구성하십시오. 비코어 또는 사용자 정의 특성을 새로 정의하거나, 데이터 소스에 대해 이미 정의된 비코어 특성을 대체할 수도 있습니다.
또한 애플리케이션이 각기 고유한 데이터 소스 특성 세트를 보유하고 있더라도 애플리케이션 서버에서 동일한 연결 풀을 공유할 수 있습니다. 애플리케이션 서버에 정의된 데이터 소스가 한 개뿐이므로 연결 풀도 한 개입니다. 그러나 개별 애플리케이션에는 정의된 데이터 소스가 여러 개 있는 것으로 나타납니다. 이로 인해 얻을 수 있는 이점은 다음과 같습니다.
  • 애플리케이션 서버의 메모리 사용량이 줄어듭니다. 데이터 소스 정의는 한 개의 연결 풀에 대응됩니다. 따라서 해당 연결 풀에 대응되는 데이터 소스 정의에 비해 메모리에는 더 적은 수의 오브젝트가 있습니다.
  • 데이터 소스에 대한 열린 연결 수가 감소하므로 데이터 소스의 메모리 사용량이 줄어듭니다. 애플리케이션 서버는 여러 데이터 소스에 대응되는 연결 풀을 한 개만 제공하여 유휴 연결 수를 줄이므로, 보다 효율적으로 연결을 사용할 수 있습니다.
  • 애플리케이션이 연결 가져오기/사용/닫기 패턴을 사용할 경우 특정 DB2 시나리오에서 2단계 커미트(XA) 트랜잭션이 발생하지 않도록 합니다. 애플리케이션 서버가 동일한 트랜잭션 내에서 서로 다른 비코어 특성을 사용하더라도, 동일한 코어 특성 세트를 사용하는 서로 다른 자원 참조 간에 연결을 공유할 수 있습니다. 연결 공유로 인해 애플리케이션 서버에서 실제 연결을 한 개만 사용하는 경우, 이 동작으로 2단계 커미트 처리를 방지할 수 있습니다.

프로시저

  1. 이미 설치된 애플리케이션에 대한 데이터 소스 정의를 업데이트하십시오.
    1. 애플리케이션에 대한 자원 참조를 관리하는 패널로 이동하십시오.
      • CMP(Container-Managed Persistence)를 사용하지 않는 애플리케이션의 경우, 애플리케이션 > WebSphere 엔터프라이즈 애플리케이션 > application_name > 자원 참조를 클릭하십시오.
      • CMP(Container-Managed Persistence)를 사용하는 애플리케이션의 경우, 애플리케이션 > WebSphere 엔터프라이즈 애플리케이션 > application_name > .x 엔티티 Bean을 포함하는 모듈에 기본 데이터 소스 맵핑 제공을 클릭하십시오. 개별 CMP Bean에 대한 확장 특성은 추가할 수 없습니다.
      • 동일한 데이터 소스에서 두 개의 자원 참조 파일을 구성할 수 있습니다. 그러면 Application Server의 기능을 활용하는 데 사용할 수 있는 두 개의 서로 다른 스키마 이름(z/OS®의 currentSQLId 또는 사용자 정의 특성의 currentSchema 이름)을 포함하도록 데이터 소스에서 사용자 정의 특성을 확장할 수 있습니다. 자세한 정보는 동일한 데이터 소스에 두 개의 자원 참조 파일 구성 주제를 참조하십시오.
        참고: IBM Optim™ PureQuery 런타임에서 XA 데이터 소스에 구성하려는 경우, 데이터 소스에 새 사용자 정의 특성을 property_name = downgradeHoldCursorsUnderXa 및 boolean value = true로 정의해야 합니다.
    2. 확장 데이터 소스 특성에 대한 패널로 이동하십시오. 테이블에서 자원을 선택한 후, 테이블 열 위에 있는 패널에서 확장 특성...을 클릭하십시오. 데이터 소스가 확장 데이터 소스 특성을 지원하지 않는 경우, 이 변경사항을 적용하려고 하면 오류가 표시됩니다.
    3. 대상 자원에 지정된 하나 이상의 확장 데이터 소스 사용자 정의 특성을 추가하십시오. 새로 작성을 클릭한 다음 필수 필드를 채우십시오. 데이터 소스를 확장할 각 특성을 대상으로 이 단계를 반복하십시오. 완료되면 확인을 클릭하여 이전 화면으로 돌아가십시오. 다음 데이터 소스 특성은 이 데이터 소스를 사용하는 모든 애플리케이션에서 동일해야 하므로 수정할 수 없습니다.
      • accountingInterval
      • dataSourceName
      • databaseName
      • kerberosServerPrincipal
      • loginTimeout
      • logWriter
      • 비밀번호
      • pkList
      • planName
      • portNumber
      • readOnly
      • securityMechanism
      • serverName
      • user
    4. 옵션: ibm-ejb-jar-ext.xml에서 두 개의 자원 참조와 분리 레벨을 구성하십시오.
  2. 설치 과정에서 애플리케이션의 데이터 소스 정의를 작성하십시오.
    1. 애플리케이션의 자원 참조를 맵핑할 패널로 이동하십시오. 설치 단계 자원 참조를 자원에 맵핑을 선택한 후, 이미 설치된 애플리케이션의 데이터 소스 정의를 업데이트하는 방법이 기술된 1단계의 단계 b와 c를 수행하십시오.
  3. 옵션: 2단계 커미트 트랜잭션이 발생하지 않도록 하려면 연결 가져오기/사용/닫기 패턴을 사용하십시오. 가져오기/사용/닫기 패턴은 애플리케이션이 데이터 소스나 연결 팩토리에서 연결을 가져와서 단일 메소드 내에서 현재 작업을 완료하되 해당 작업이 완료될 때까지 다른 메소드를 호출하지 않는 패턴입니다.
    1. 애플리케이션이 연결 가져오기/사용/닫기 패턴을 사용하는지 확인하십시오.
    2. 애플리케이션 서버가 연결 가져오기/사용/닫기 패턴이 애플리케이션에 사용되는지 확인할 수 있도록 설정하십시오. 그러면 공유로 인해 실제 연결이 한 개만 사용되는 경우, 2단계 커미트 처리를 방지할 수 있습니다.
      1. 자원 > JDBC > 데이터 소스 > data_source > WebSphere Application Server 데이터 소스 특성을 클릭하십시오.
      2. 이기종 풀링으로 연결 가져오기/사용/닫기 패턴 최적화를 선택하십시오. 이 옵션을 선택했는데 애플리케이션에서 연결 가져오기/사용/닫기 패턴을 사용하지 않는 경우, 오류 메시지가 표시됩니다.
  4. 옵션: 이기종 풀링은 기본적으로 사용 가능합니다. 그러나 특정 경우, 데이터 소스에 대한 이기종 풀링을 사용하지 않도록 설정하는 것이 좋습니다. 이 풀링 지원을 비활성화하도록 데이터 소스 사용자 정의 특성을 정의하면 됩니다. 이 데이터 소스 사용자 정의 특성은 enableHeterogeneousPooling입니다. enableHeterogeneousPooling이 데이터 소스에 대해 정의되어 있지 않거나 데이터 소스에 대해 이 특성이 존재하지만 값이 true인 경우, 이기종 풀링이 사용 가능합니다. enableHeterogeneousPooling이 데이터 소스에 대해 지정되어 있고 값이 false인 경우, 이기종 풀링을 사용할 수 없습니다. 데이터 소스에 대해 enableHeterogeneousPooling을 정의하고 이기종 풀링을 사용할 수 없도록 설정하려면 다음 단계를 수행하십시오.
    1. 자원 > JDBC 제공자 > JDBC_provider를 클릭하십시오.
    2. 추가 특성 아래에서 데이터 소스를 클릭하십시오.
    3. 데이터 소스의 이름을 클릭하십시오.
    4. enableHeterogeneousPooling 사용자 정의 특성을 작성하십시오.
      1. 새로 작성을 클릭하십시오.
      2. 이름 필드에 enableHeterogeneousPooling을 입력하십시오.
      3. 값 필드에 false를 입력하여 이기종 풀링을 사용할 수 없도록 지정하십시오.
    5. 적용저장을 차례로 클릭하십시오.

주제 유형을 표시하는 아이콘 태스크 주제



시간소인 아이콘 마지막 업데이트 날짜: last_date
http://www14.software.ibm.com/webapp/wsbroker/redirect?version=cord&product=was-nd-mp&topic=tdat_heteropool
파일 이름:tdat_heteropool.html