JDBC 중개자 성능 고려사항 및 제한사항
다음 팁을 사용하면 JDBC 데이터 중개자 서비스가 애플리케이션 제공 환경의 요구사항에 맞는지 판별하는 데 도움이 됩니다.
![[IBM i]](../images/iseries.gif)
iSeries용 DB2 UDB에 액세스하는 데 SDO를 사용하기 위한 드라이버 요구사항
SDO JDBC 중개자는 JDBC 2.0에서 ResultSetMetaData 인터페이스를 활용하기 때문에, 해당 스펙을 완전히 준수하는 JDBC 제공자를 사용해야 합니다. Java™ JDBC 드라이버용 IBM® 개발자 킷 (iSeries Native 드라이버용 DB2® UDB) 및 Java JDBC용 IBM Toolbox 모두는 iSeries용 DB2 UDB에 대한 JDBC 액세스를 위한 이 기준을 충족합니다. 성능 상의 이유로, 이 드라이버에는 중개자가 필요로 하는 모든 정보를 리턴하는 기본 설정이 없습니다. 각 드라이버에 해당되는 데이터 소스나 JDBC 제공자의 연결 특성을 각 드라이버로 설정해야 전체 ResultSetMetaData 데이터 세트를 리턴합니다.사용자 드라이버 구현이 데이터베이스 연결을 획득하는 방법에 따라 사용하는 특성이 다릅니다.
- 드라이버가 DriverManager 클래스를 통해 연결되는 경우, JDBC 제공자 URL 특성 확장 메타데이터를 true로 설정합니다. extended metadata=true. 이 시나리오에서, Java용 IBM 개발자 킷 및 Java JDBC 드라이버용 IBM Toolbox 모두는 JDBC 제공자 오브젝트에서 동일한 설정을 필요로 합니다.
- 애플리케이션이 데이터 소스를 통해 연결을 얻는 경우, 사용하는 드라이버에 따라 데이터 소스에서 다른 사용자 정의 특성을 설정합니다.
- Java JDBC 드라이버용 IBM Toolbox의 경우, 사용자 정의 특성 extendedMetaData를 true로 설정하십시오.
- Java JDBC 드라이버용 IBM 개발자 킷의 경우, 사용자 정의 특성 returnExtendedMetaData를 true로 설정합니다.
기타 데이터베이스 제한사항
- 버전 12.5.1 이전 Sybase는 “from” 절에서 인라인 조회를 지원하지 않으므로 필터가 있는 다중 테이블 DataGraph를 지원하지 않습니다. SDO(Service Data Object)를 WebSphere® Application Server에서 사용하려면, Sybase 버전 12.5.1을 사용합니다.
- Informix® Dynamic Server는 sub-selects를 지원하지 않으며 다중 테이블 그래프에 필요합니다. Informix Extended Parallel Server를 사용하십시오.
- Oracle 8i는 ANSI 결합 구문을 지원하지 않습니다. 다중 테이블 케이스의 중개자는 Oracle 10g 이상을 필요로 합니다.
일반 성능 권장사항
- 사용자 대상 프로젝트가 이 기술에 잘 맞는지 평가합니다. 일반적으로 읽기-집중이고 연결이 끊긴 데이터를 필요로 하는 프로젝트가 좋은 후보가 됩니다.
- 메타데이터의 테이블 수를 제한합니다. 하나 또는 둘이 좋습니다. 그래프에 여러 분기가 있으면 필터에 대한 관계가 모호해지기 때문입니다.
- 가능한 자주 사용자 애플리케이션 내 초과 메모리 크기를 이용하지 않도록 작은 데이터 세트로 작업합니다. 메타데이터 오브젝트에서 필터를 지정하거나 페이징을 사용하여 SDO에 리턴된 데이터 크기를 제한할 수 있습니다.
- 웹 애플리케이션의 경우, DataGraph가 너무 크지 않고 나중에 사용될 예정이면 사용자 세션에 저장합니다.