タグ

パフォーマンスとJDBCに関するtakami_hirokiのブックマーク (8)

  • 文キャッシュ

    22 文キャッシュ この章では、Oracle Java Database Connectivity(JDBC)拡張要素である文キャッシュの利点と使用方法について説明します。 この章では、次の項目について説明します。 文キャッシュについて 文キャッシュの使用方法 注意: Oracle9iリリース2(9.2)以上では、Oracle9iリリース1(9.0.1)でサポートされていたApplication Program Interface(API)にかわり、Oracle JDBCによって、新しい文キャッシュ・インタフェースと実装が提供されています。以前のAPIは廃止されています。 文キャッシュについて 文キャッシュにより、繰り返しコールされるループやメソッドなどで何度も使用する実行文がキャッシュされるため、パフォーマンスが向上します。JDBC 3.0では、文キャッシュ・インタフェースが定義されてい

    takami_hiroki
    takami_hiroki 2008/04/02
    文キャッシュにより、繰り返しコールされるループやメソッドなどで何度も使用する実行文がキャッシュされるため、パフォーマンスが向上します。JDBC 3.0では、文キャッシュ・インタフェースが定義されています。
  • PreparedStatement パフォーマンスチューニング - ばかの一つ覚え。

    週報 2024/04/28 川はただ流れている 4/20(土) 初期値依存性 さいきん土曜日は寝てばかり。平日で何か消耗しているらしい。やったことと言えば庭いじりと読書くらい。 ベランダの大改造をした。 サンドイッチ 一年前に引っ越してからこんな配置だったのだけど、さいきん鉢を増やしたら洗濯担当大臣の氏…

    PreparedStatement パフォーマンスチューニング - ばかの一つ覚え。
    takami_hiroki
    takami_hiroki 2008/04/02
    PreparedStatementをSQL発行の度にcloseしているような実装が既に存在しており、ロジックの変更はしたくないといった場合のやっつけパフォーマンス改善手段
  • パフォーマンスを意識した設計/実装テクニック

    オブジェクト生成のチューニング 頻繁なオブジェクトの生成および破棄もパフォーマンスの劣化を引き起こす原因になります。バッチ処理を使用すればデータベース・サーバとの通信の回数を削減できますが、挿入したデータをすぐに更新したいなどの業務的な要件によりバッチ処理を使用できない場合、PreparedStatementの生成と破棄の回数が多くなって、オブジェクトの生成と破棄の繰り返しによるコストが無視できないものになってしまいます。 そこでPreparedStatementをキャッシュすることで、オブジェクトの生成と破棄の回数を減らす工夫をします。 import java.util.*; import java.sql.*; public class CreatePrepareStatement { // PreparedStatementを格納するキャッシュ private HashMap pst

    パフォーマンスを意識した設計/実装テクニック
    takami_hiroki
    takami_hiroki 2008/04/02
    PreparedStatementをキャッシュする
  • パフォーマンスを意識した設計/実装テクニック

    ディスクI/Oの削減 ディスクI/Oの回数を減らす工夫として「キャッシング」という方法があります。これは一度データベースにアクセスしたデータをメモリ上に保存しておき、再度同じデータへの問い合わせがあった際には、データベースへのアクセスは行わずにメモリ上のキャッシュからデータを取得する方法です。 キャッシュはクライアントからDAO(Data Access Object)へのアクセスの際に、一度問い合わされた内容についてはデータベース・アクセスを行わずに、DAO内に保持されているキャッシュから対応するデータを返します。頻繁にアクセスされるマスターデータなどに使用すれば、パフォーマンスの向上に非常に大きな効果を発揮します。 商品コードをキーにして商品マスターテーブルより商品の情報を取得するという処理を例に取って見てみましょう。ここでは第5回「デザインパターンを利用したDBアクセスの実装」で紹介し

    パフォーマンスを意識した設計/実装テクニック
    takami_hiroki
    takami_hiroki 2008/04/01
    データベースの更新処理において、更新のコマンドを1件ずつ送信するよりも、一度に送信すれば、データベース・サーバとの通信量の削減できパフォーマンスが向上
  • バッチ処理でデータベースアクセスを効率化する

    「準備済みSQL命令でデータベースアクセスを効率化する」で紹介した「準備済みSQL命令」(PreparedStatement)は、「パラメータだけが異なる同一のSQL命令を繰り返し実行する場合」に便利ですが、まったく異なる複数のSQL命令を実行したいというケースでは、効果的なパフォーマンスを望むことはできません。 「ストアドプロシージャでデータベースアクセスを効率化する」で紹介した「ストアドプロシージャ」(CallableStatement)は、「複雑なSQL命令を実行する場合」には便利ですが、MySQLのようにストアドプロシージャをサポートしていない一部のデータベースサーバ(現在開発中のMySQL 5.0ではサポート予定)では利用することができません。また、開発者はデータベースサーバごとにストアドプロシージャの構文を学習する必要があるため、敷居の高さも否定できません。 では、もう1つの便

    バッチ処理でデータベースアクセスを効率化する
    takami_hiroki
    takami_hiroki 2008/04/01
    executeBatchでSQLを一括実行する
  • http://akimoto-jp.com/java/Database/jdbcTuning.html

  • JDBC接続を高速化する- PreparedStatementキャッシュの威力-

    JDBC接続を高速化する- PreparedStatementキャッシュの威力-:事例に学ぶWebシステム開発のワンポイント(11) 連載では、現場でのエンジニアの経験から得られた、アプリケーション・サーバをベースとしたWebシステム開発における注意点やヒントについて解説する。巷のドキュメントではなかなか得られない貴重なノウハウが散りばめられている。読者の問題解決や今後システムを開発する際の参考として大いに活用していただきたい。(編集局)

    JDBC接続を高速化する- PreparedStatementキャッシュの威力-
    takami_hiroki
    takami_hiroki 2008/03/31
    ループ処理の中でPrepareを宣言してはダメ!外で宣言しないと毎回DBにprepare要求してしまう。。。
  • OTN Japan - 404 Error

  • 1