ResultSetExtractor内のgetIntに関するパフォーマンスの問題

マーティンs:

ResultSetExtractor内でgetIntを呼び出すと、パフォーマンスの問題が発生します。GetIntは20000回呼び出されます。1回の呼び出しのコストは0.15ミリ秒で、全体のコストは24秒ですが、プロファイラー内で実行されています。SQLステートメントの実行には約8秒かかります(主キーを介したアクセス)。mysqlドライバーバージョン5.1.13、mysqlサーバー5.1.44、およびspring-jdbc-3.1.1を使用しています。パフォーマンスを改善するアイデアはありますか?

    mut.getMutEffect()[0]=(rs.getInt("leffect_a") != 0);
    mut.getMutEffect()[1]=(rs.getInt("leffect_c") != 0);
    ...
    mut.getMutEffect()[19]=(rs.getInt("leffect_y") != 0);
    mut.getMutReliability()[0]=rs.getInt("lreliability_a");
    ...
    mut.getMutReliability()[19]=rs.getInt("lreliability_y");

私のスキームはこのようになります

CREATE TABLE mutation (
 ...
 leffect_a BIT NOT NULL,
 lreliability_a TINYINT UNSIGNED NOT NULL,
 ...
 leffect_y BIT NOT NULL,
 lreliability_y TINYINT UNSIGNED NOT NULL,
 ...
) ENGINE=MyISAM;

編集:getInt内で、高価なように見えるメソッドgetIntWithOverflowCheckが呼び出されます。このチェックをオフにすることは可能ですか?

samlewis:

ここにいくつかの提案があります:

  • フェッチサイズをかなり大きな数に設定します:Statement.setFetchSize()これにより、結果セットの処理中のデータベースサーバーへのラウンドトリップが減少します。

  • プロファイリングにより、selectステートメントが最適であることを確認する

  • 一般的なテーブルの最適化、たとえば正しいデータ型を使用していますか?leffect_aをブール値に変更できるようです

  • SELECTステートメントで不要な列を返していないことを確認してください。

  • PreparedStatementを使用する

  • スクロール可能で更新可能な結果セットを回避する(どちらもデフォルトではありません)

この記事はインターネットから収集されたものであり、転載の際にはソースを示してください。

侵害の場合は、連絡してください[email protected]

編集
0

コメントを追加

0

関連記事

分類Dev

パフォーマンスカウンターの読み取りに関する問題(配列の問題)

分類Dev

Z3 forJavaに関するパフォーマンスの問題

分類Dev

VerticaへのSASのデータロードに関するパフォーマンスの問題

分類Dev

SpriteKitプラットフォーマーゲームのパフォーマンスの問題に関する問題

分類Dev

SonataAdminエンティティのリストに関するパフォーマンスの問題

分類Dev

ノードjsの複数の接続に関するパフォーマンスの問題?

分類Dev

関数を使用するときにeXSLTのパフォーマンスの問題を改善する方法

分類Dev

WPFは、大量のデータに関するパフォーマンスの問題を制御します

分類Dev

入力タイプの色とvモデルに関するVueのパフォーマンスの問題

分類Dev

入力タイプの色とvモデルに関するVueのパフォーマンスの問題

分類Dev

Tensorflow、OpenAI Gym、Keras-基本的な強化学習の例に関するrlのパフォーマンスの問題

分類Dev

他の関数またはループ内にラムダを構築するときにパフォーマンスの問題はありますか?

分類Dev

スプライトキットに関するiOS9の主なパフォーマンスの問題

分類Dev

EntityFrameworkに含めることに関するパフォーマンスの問題

分類Dev

AzureWebサイトのパフォーマンスの問題に関するSpringBoot jar

分類Dev

ClojureHashMapのルックアップに関するパフォーマンスの問題

分類Dev

$ lookupパイプラインステージの使用に関する問題:パフォーマンスの問題と使用法

分類Dev

PostgreSQLでは、citextのパフォーマンスに関する奇妙な問題はありますか?

分類Dev

DAOパフォーマンスの問題にアクセスする

分類Dev

ループ内のjQueryパフォーマンスの問題

分類Dev

Javaフィルターのパフォーマンスに関する質問

分類Dev

ネイティブパフォーマンスの問題に対応する

分類Dev

DATEADD関数のパフォーマンスの問題

分類Dev

パフォーマンスの問題

分類Dev

DOM内の要素が多すぎる場合のAngularng-classのパフォーマンスの問題

分類Dev

ループパフォーマンスに関するJavaの質問

分類Dev

スクロールバースタイルのオーバーライドに関するAngularVirtualスクロールのパフォーマンスの問題

分類Dev

ループパフォーマンスの問題に対するパンダのリサンプリング

分類Dev

AWSECS-単一インスタンスのパフォーマンスの問題に関する複数のコンテナ

Related 関連記事

  1. 1

    パフォーマンスカウンターの読み取りに関する問題(配列の問題)

  2. 2

    Z3 forJavaに関するパフォーマンスの問題

  3. 3

    VerticaへのSASのデータロードに関するパフォーマンスの問題

  4. 4

    SpriteKitプラットフォーマーゲームのパフォーマンスの問題に関する問題

  5. 5

    SonataAdminエンティティのリストに関するパフォーマンスの問題

  6. 6

    ノードjsの複数の接続に関するパフォーマンスの問題?

  7. 7

    関数を使用するときにeXSLTのパフォーマンスの問題を改善する方法

  8. 8

    WPFは、大量のデータに関するパフォーマンスの問題を制御します

  9. 9

    入力タイプの色とvモデルに関するVueのパフォーマンスの問題

  10. 10

    入力タイプの色とvモデルに関するVueのパフォーマンスの問題

  11. 11

    Tensorflow、OpenAI Gym、Keras-基本的な強化学習の例に関するrlのパフォーマンスの問題

  12. 12

    他の関数またはループ内にラムダを構築するときにパフォーマンスの問題はありますか?

  13. 13

    スプライトキットに関するiOS9の主なパフォーマンスの問題

  14. 14

    EntityFrameworkに含めることに関するパフォーマンスの問題

  15. 15

    AzureWebサイトのパフォーマンスの問題に関するSpringBoot jar

  16. 16

    ClojureHashMapのルックアップに関するパフォーマンスの問題

  17. 17

    $ lookupパイプラインステージの使用に関する問題:パフォーマンスの問題と使用法

  18. 18

    PostgreSQLでは、citextのパフォーマンスに関する奇妙な問題はありますか?

  19. 19

    DAOパフォーマンスの問題にアクセスする

  20. 20

    ループ内のjQueryパフォーマンスの問題

  21. 21

    Javaフィルターのパフォーマンスに関する質問

  22. 22

    ネイティブパフォーマンスの問題に対応する

  23. 23

    DATEADD関数のパフォーマンスの問題

  24. 24

    パフォーマンスの問題

  25. 25

    DOM内の要素が多すぎる場合のAngularng-classのパフォーマンスの問題

  26. 26

    ループパフォーマンスに関するJavaの質問

  27. 27

    スクロールバースタイルのオーバーライドに関するAngularVirtualスクロールのパフォーマンスの問題

  28. 28

    ループパフォーマンスの問題に対するパンダのリサンプリング

  29. 29

    AWSECS-単一インスタンスのパフォーマンスの問題に関する複数のコンテナ

ホットタグ

アーカイブ