Question & Answer
Question
ocneck -pt の "Number of pages used" フィールドで、現在テーブルで使われているページ数を確認していますが、行を大量に削除したのに値が変わりません。 例: 1. customer テーブルに10,000 行のデータをロード後に oncheck -pt を実行します。 % oncheck -pt testdb:customer TBLspace Report for testdb:informix.customer Physical Address 1:63385 Creation date 06/28/2016 19:01:19 TBLspace Flags 801 Page Locking TBLspace use 4 bit bit-maps Maximum row size 134 Number of special columns 0 Number of keys 0 Number of extents 5 Current serial value 1 Current SERIAL8 value 1 Current BIGSERIAL value 1 Current REFID value 1 Pagesize (k) 2 First extent size 8 Next extent size 128 Number of pages allocated 768 Number of pages used 716 <--- Number of data pages 715 Number of rows 10000 Partition partnum 1049120 Partition lockid 1049120 2. 半分以上の行を削除します。 % dbaccess testdb - Database selected. > delete from customer where customer_num >=110; 6783 row(s) deleted. 3. 再度 onceck -pt を実行しても値に変化がありません。 % oncheck -pt testdb:customer TBLspace Report for testdb:informix.customer Physical Address 1:63385 Creation date 06/28/2016 19:01:19 TBLspace Flags 801 Page Locking TBLspace use 4 bit bit-maps Maximum row size 134 Number of special columns 0 Number of keys 0 Number of extents 5 Current serial value 1 Current SERIAL8 value 1 Current BIGSERIAL value 1 Current REFID value 1 Pagesize (k) 2 First extent size 8 Next extent size 128 Number of pages allocated 768 Number of pages used 716 <--- Number of data pages 358 Number of rows 3217 Partition partnum 1049120 Partition lockid 1049120
Answer
以下のマニュアルに記述があるように、行を削除してもこのフィールドに値は減りません。正確な値を取得するためには、 oncheck -pT を実行する必要があります。
http://www.ibm.com/support/knowledgecenter/ja/SSGU8G_11.50.0/com.ibm.adref.doc/ids_adr_0387.htm
Was this topic helpful?
Document Information
Modified date:
24 February 2020
UID
swg21986224