1. Kiểm tra dung lượng của từng partition trước khi compress:
select segment_name,partition_name,bytes/1024/1024 "MB"
from dba_Segments where segment_type = 'TABLE PARTITION'
and owner like 'user1'
--and lower(SEGMENT_name) like 'segment_name1%'
and bytes/1024/1024 >2
2. Kiểm tra tốc độ truy xuất dữ liệu partition DATA20100708.
SQL> select count(*) from table1 partition(DATA20100708);
COUNT ()
1910651
Elapsed: 00:08:54.05
3. Thực hiện nén cho partition DATA20100708
SQL> ALTER TABLE table1 move PARTITION DATA2O1007O8 COMPRESS;
Table altered.
Elapsed: 00:08:24.67
4. Kiểm tra dung lượng dữ liệu sau khi nén:
328 MB -> 112 MB, giảm 3 lần
5. Kiểm tra tốc độ quét dữ liệu sau khi nén:
Từ 8 phút 54 -> 1 phút 08 giây ~ 8 lần
SQL> se1ect count() from table1 partition(DATA20100708);
COUNT(4)
1910651
Elapsed: 00:01:08.93
6. Rebuild lại index sau khi nén
alter index table1_I1 rebuild partition DATA20100708 nologging;
7. Tổng dữ liệu trước khi nén:
select sum(MB) from
(
select segment_name, tablespace_name,segment_type, sum(bytes)/1024/1024 "MB"
from dba_Segments where --segment_type = 'TABLE PARTITION'
--and
owner like 'user1'
group by segment_name, tablespace_name,segment_type
order by MB desc
);
3006935.75 MB ~ 3TB
8. Tổng dữ liệu sau khi nén: 1TB
Giam it nhất 3 lan
#GIẢI PHÁP: NÉN DỮ LIỆU LÀM GIẢM DUNG LƯỢNG VÀ TĂNG TỐC ĐỘ TRUY XUẤT DỮ LIỆU trong Oracle Database, OracleTutorial
#OracleDBA
#OracleDatabaseAdministration
#học oracle database
#oca
#ocp
#oce
#ocm