Oracle® Fusion Middleware Oracle TopLink Java Persistence API (JPA)拡張機能リファレンス 12c (12.1.2) E48005-01 |
|
![]() 前 |
![]() 次 |
追加行が必要な場合に、eclipselink.jdbc.fetch-size
を使用して、データベースからフェッチする行数を指定します。
注意: このプロパティにはJDBCドライバのサポートが必要です。 |
値
表4-15は、この問合せヒントの有効値を説明しています。
表4-15 eclipselink.jdbc.fetch-sizeの有効値
Value | 説明 |
---|---|
|
(デフォルトは 0の場合、JDBCドライバのデフォルトが使用されます。 |
使用方法
多数のオブジェクトを返す問合せに対しては、問合せで使用される行フェッチ・サイズを構成すると、選択条件を満たすのに必要なデータベース・ヒット数が少なくて済み、パフォーマンスが向上します。
デフォルトで、ほとんどのJDBCドライバのフェッチ・サイズは10であるため、1000個のオブジェクトを読み取る場合、フェッチ・サイズを256に増やすと、問合せ結果のフェッチに要する時間が大幅に短縮される場合があります。最適なフェッチ・サイズが常に明白であるとはかぎりません。通常は、予想される総結果サイズの半分または4分の1がフェッチ・サイズとして最適です。
結果セットのサイズが不確かな場合に、誤ってフェッチ・サイズの設定を大きく、または小さくしすぎると、パフォーマンスが低下する可能性があります。
例
例4-32に、JPA問合せでこのヒントを使用する方法を示します。
例4-32 JPA問合せでのjdbc.fetch-sizeの使用
import org.eclipse.persistence.config.HintValues; import org.eclipse.persistence.config.QueryHints; query.setHint("eclipselink.JDBC_FETCH_SIZE", "100");
例4-33に、@QueryHint
注釈でこのヒントを使用する方法を示します。
例4-33 @QueryHint注釈でのjdbc.fetch-sizeの使用
import org.eclipse.persistence.config.HintValues; import org.eclipse.persistence.config.QueryHints; @QueryHint(name=QueryHints.JDBC_FETCH_SIZE, value="100");
関連項目
詳細は、次を参照してください。
『Oracle TopLinkソリューション・ガイド』の問合せに関する項およびパフォーマンスの拡張に関する項
『Oracle TopLinkの理解』のOracle TopLinkキャッシュに関する項