DataReaderのパフォーマンスの問題、奇妙な動作

ボイドメイン

.NetのOracleDataReaderでの大きなパフォーマンスの問題と同様の問題に直面しています私のストアドプロシージャは、2つのクエリですべてユニオンを使用しています(それぞれがいくつかの結合を使用しています)。全体として、SPは10秒で約20Kレコードを返します。それは大丈夫に見えます。

しかし、dataReader.Read()がこれらのデータをフェッチするのに約4分かかるという、アプリケーション側の問題に直面しています。以下は私が現在使用しているコードです:

        List<int> ordinalIndexes = new List<int>();

        foreach (string headerName in headerColumnMapping.Keys)
            ordinalIndexes.Add(dataReader.GetOrdinal(headerColumnMapping[headerName].ToString()));

        while (dataReader.Read())
        {
            foreach (var ordinalIndex in ordinalIndexes)
                csvString.AppendFormat("\"{0}\"{1}", dataReader[ordinalIndex].ToString().Trim(), separator);
        }

dataReader.Read()には、静かに簡単に(1ミリ秒未満で)処理されるチャンクが多数あることを確認しました。ただし、10〜35秒かかるものは他にもたくさんあります(1回の読み取りの場合)。

私は試した:

  1. SPの最適化。このSPをさらに最適化できるかどうかわかりませんか?
  2. MARSの実装を試みました(本当に奇妙なDataReaderのパフォーマンスの問題で示唆されているように)。しかし、それは私にはうまくいきませんでした。

これに関する提案は非常に高く評価されています。

ボイドメイン

私の問題は、ストアドプロシージャを最適化することで解決しました。(SPのクエリに基づいて)いくつかのインデックスを追加したところ、全体的なパフォーマンスが大幅に向上しました。

アプリケーションレベルの変更に関するご意見をお寄せいただき、ありがとうございます。私の場合、DBのパフォーマンスが本当の原因でしたが。

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

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

編集
0

コメントを追加

0

関連記事

分類Dev

奇妙なKinecticjsのパフォーマンスの問題

分類Dev

奇妙なJavaScript / Node.jsのパフォーマンスの問題

分類Dev

.NET辞書挿入の奇妙なパフォーマンス動作

分類Dev

C ++キャッシュパフォーマンスの奇妙な動作

分類Dev

春の起動時のパフォーマンスの問題

分類Dev

奇妙なパフォーマンス動作

分類Dev

SQL:奇妙なクエリパフォーマンス動作

分類Dev

9.6アップグレード後のpostgresqlINクエリでの奇妙なパフォーマンスの問題

分類Dev

c#、c ++、およびjavaのパフォーマンスの比較(c#の奇妙な動作)

分類Dev

c#、c ++、およびjavaのパフォーマンスの比較(c#の奇妙な動作)

分類Dev

パフォーマンスの問題

分類Dev

選択可能なRecyclerViewのパフォーマンスの問題

分類Dev

yaml-cppの主なパフォーマンスの問題

分類Dev

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

分類Dev

予期しないパフォーマンスの問題

分類Dev

パンテオンの奇妙なフォントの動作

分類Dev

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

分類Dev

DjangoAdminの重大なパフォーマンスの問題-外部キーラベル

分類Dev

Springの@Autowiredは大きなパフォーマンスの問題ですか?

分類Dev

Coldfusion10で再現可能なCFQUERYPARAMのパフォーマンスの問題

分類Dev

SQLServerクエリの断続的なパフォーマンスの問題

分類Dev

単純なクエリでのパフォーマンスの問題

分類Dev

matplotlibの凡例のパフォーマンスの問題

分類Dev

PageStorageKeyでのFlutterListViewのパフォーマンスの問題

分類Dev

VirtualBoxでのLinuxMintのパフォーマンスの問題

分類Dev

Burrows-PythonのWheelerのパフォーマンスの問題

分類Dev

Djangoの多対多のパフォーマンスの問題

分類Dev

SQLでのUNION句のパフォーマンスの問題

分類Dev

Where andContainsでのLINQtoEntitiesのパフォーマンスの問題

Related 関連記事

  1. 1

    奇妙なKinecticjsのパフォーマンスの問題

  2. 2

    奇妙なJavaScript / Node.jsのパフォーマンスの問題

  3. 3

    .NET辞書挿入の奇妙なパフォーマンス動作

  4. 4

    C ++キャッシュパフォーマンスの奇妙な動作

  5. 5

    春の起動時のパフォーマンスの問題

  6. 6

    奇妙なパフォーマンス動作

  7. 7

    SQL:奇妙なクエリパフォーマンス動作

  8. 8

    9.6アップグレード後のpostgresqlINクエリでの奇妙なパフォーマンスの問題

  9. 9

    c#、c ++、およびjavaのパフォーマンスの比較(c#の奇妙な動作)

  10. 10

    c#、c ++、およびjavaのパフォーマンスの比較(c#の奇妙な動作)

  11. 11

    パフォーマンスの問題

  12. 12

    選択可能なRecyclerViewのパフォーマンスの問題

  13. 13

    yaml-cppの主なパフォーマンスの問題

  14. 14

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

  15. 15

    予期しないパフォーマンスの問題

  16. 16

    パンテオンの奇妙なフォントの動作

  17. 17

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

  18. 18

    DjangoAdminの重大なパフォーマンスの問題-外部キーラベル

  19. 19

    Springの@Autowiredは大きなパフォーマンスの問題ですか?

  20. 20

    Coldfusion10で再現可能なCFQUERYPARAMのパフォーマンスの問題

  21. 21

    SQLServerクエリの断続的なパフォーマンスの問題

  22. 22

    単純なクエリでのパフォーマンスの問題

  23. 23

    matplotlibの凡例のパフォーマンスの問題

  24. 24

    PageStorageKeyでのFlutterListViewのパフォーマンスの問題

  25. 25

    VirtualBoxでのLinuxMintのパフォーマンスの問題

  26. 26

    Burrows-PythonのWheelerのパフォーマンスの問題

  27. 27

    Djangoの多対多のパフォーマンスの問題

  28. 28

    SQLでのUNION句のパフォーマンスの問題

  29. 29

    Where andContainsでのLINQtoEntitiesのパフォーマンスの問題

ホットタグ

アーカイブ