Oracle データ圧縮③ [DBMS]
データ圧縮で検索性能はほぼ差がない様でしたので、今回は挿入を見てみます。
検索で使ったテーブル D010TAB と同じ構造のテーブル ZD010TAB を作って、そこに insert into select で D010TAB の内容を ZD010TAB へ挿入します。
insert into "SAPSR3"."ZD010TAB" select * from "SAPSR3"."D010TAB";
挿入されるテーブルは予め空にしてから圧縮タイプを変更して、圧縮タイプでどう変わるか見てみます。
truncate table "SAPSR3"."ZD010TAB";
ALTER TABLE "SAPSR3"."ZD010TAB" MOVE NOCOMPRESS;
コピー元のテーブル D010TAB は圧縮なしで実施します。
まずは圧縮なしです。
データが少なかったのか約0.6秒でした。
続いて基本圧縮です。
圧縮なしとほぼ変わらず約0.8秒でした。
引き続きOLTP表圧縮です。
これは圧縮の影響が出るのか約2.9秒でした。
何度かやり直してみましたが、ほぼ同じ様な傾向でした。
[単一挿入]
圧縮なし 約0.6秒
BASIC 約0.8秒
OLTP 約2.9秒
これだけではつまらないので、もう1つ同じテーブルを作って、2テーブル同時挿入をしてみました。
Z2D010TAB を作り、同じ様に挿入します。
まずは圧縮なしです。
2並列でも約0.7秒でした。
続いて基本圧縮です。
圧縮なしとほぼ変わらず約0.7秒でした。
引き続きOLTP表圧縮です。
やはり圧縮の影響が出るのか約3.6秒でした。
[2並列挿入]
圧縮なし 約0.7秒
BASIC 約0.7秒
OLTP 約3.6秒
基本圧縮は圧縮なしと比べて負荷がほとんど無い様ですが、OLTP表圧縮は圧縮のアルゴリズムが違うからでしょうが、挿入では少々負荷が高い様です。
こんにちは。
おじゃあお木 さんは難しい事をやって居るのですね。
PCをいじり初めて20年以上経ちますが、dBaseやオラクルと聞いただけで頭が痛くなります。(笑)
PC-DOS の頃、Lotus 123 とdBASE を使って予算書管理をしようと奮闘しましたが能力足らずで挫折した経験があり、それ以来アレルギーになってしまいました。(笑)
by musselwhite (2011-09-14 10:09)
musselwhite さんコメントありがとうございます。
分かり難くてすいません。
もう少し分かりやすく出来ればよいのですが…
特にOracleとかだと画面も無いので難しいです。
by aki-aoki (2011-09-14 22:50)