Compressionの動作を見てきました。第1回では圧縮にかかる時間を各圧縮タイプで比較してみました。今回はSELECTにかかる時間を各圧縮タイプで比較してみたいと思います。以下のSQLを各圧縮タイプごとに実行し、イベント10046のSQLトレースからSQLの実行に関する統計情報を見てみます。queryの大きい順にソートしてみます。queryでは同様にelapsedでもソートしてみます。圧縮によるデータサイズがそのまま、I/O量に比例してますね。HIGHで圧縮されたデータは、I/O量が最も少ないにも関わらず、最も高速とは行きませんでした。これは、データの検索という物理I/Oに依存する処理とは別にデータを展開するというCPUに依存した処理が必要だからです。HIGHで圧縮されたデータは高圧縮であるメリットと同時にデータを展開する処理でオーバーヘッドが高いことを示していると思われます。環境に返す際にデータの展開処理を行うことが、既存のデータ処理に影響する場合があるかも知れません。以下、簡単なPL/SQLで検証してみます。loop;end;/上記のカラムの数でパフォーマンスが大きく異なります。queryでソートしてみます。elapsedでソートしてみます。elapsedI/O関連の統計情報にほとんど変化が見られないのに比べ、実行速度はカラム数と比例して長くなっています。これは、データの展開処理にて多くのCPUリソースが必要とされるためだと思われます。~と処理してしまうと、相当量の無駄が発生してしまうことが予想されます。適切なカラムを選択して処理することが大事になると思います。reserved.トップページ企業概要プライバシーポリシ。