April 2015
Intermediate to advanced
448 pages
6h 47m
Japanese
この章では、データベースを扱うJavaアプリケーションのパフォーマンスについて考察します。データベースへのアクセスによって、Javaとは関係のないパフォーマンス上の問題が発生するかもしれません。例えば入出力がボトルネックになっているデータベースや、インデックスがないためにSQLクエリがテーブル全体のスキャンを引き起こしたといった場合には、Javaの側でどんなにコードを改良したりチューニングを施したりしても問題は解決しません。データベースを扱うなら、他の資料も読んでデータベースのチューニングやプログラミングについて学ぶべきです。
もちろん、データベースを利用するアプリケーションのパフォーマンスにとってJVMやJava関連のテクノロジーは無関係だというわけではありません。よいパフォーマンスのためには、データベースと呼び出し元のアプリケーションがともに正しくチューニングされ、コードも正しく記述されている必要があります。
この章で利用するサンプルのデータベースには、128銘柄の1年分の株価が格納されています。1年間のうち市場が開いていたのは261日でした。
各銘柄の株価はSTOCKPRICEというテーブルに格納されます。このテーブルの主キーはストックシンボルと日付であり、行数は33,408(128×261)です。
また、それぞれの銘柄には5つの付加的な値が日ごとに追加されています。この情報はSTOCKOPTIONPRICEテーブルに保持されます。主キーはストックシンボルと日付そして値の種別を表す整数値です。行数は167,040(128×261×5)です。
この章では、JPA(Java Persistence ...