dba_tables.blocks、dba_tables.empty_blocks和dba_segments.blocks之間是什麼關係
今天朋友問我
dba_tables.blocks、dba_tables.empty_blocks和dba_segments.blocks之間是什麼關係
我的感覺:
dba_segments.blocks 我常常用來查詢高水位大小 (表真正使用的大小+碎片大小'使用後釋放大小')
具體的dba_tables不是常用,因為他還要手動的去分析下, (直接用分析表透過查詢就好)
http://www.itpub.net/thread-604366-1-1.html
2樓人講的我覺得挺對的:
dba_tables.BLOCKS Number of used data blocks in the table
dba_tables.EMPTY_BLOCKS Number of empty (never used) data blocks in the table
dba_segments.blocks Size, in Oracle blocks, of the segment
∴dba_segments.blocks =dba_tables.BLOCKS +dba_tables.EMPTY_BLOCKS
在此也做了實驗去證明:
我實踐的結果很正常就是dba_segments.blocks =dba_tables.BLOCKS +dba_tables.EMPTY_BLOCKS
實踐過程:
create table t1 as select * from user_objects;
檢視user_tables.blocks和empty_blocks
SQL> SELECT a.TABLE_NAME,
2 a.INITIAL_EXTENT,
3 a.MIN_EXTENTS,
4 a.BLOCKS,
5 a.EMPTY_BLOCKS
6 FROM USER_TABLES A
7 WHERE A.TABLE_NAME = 'T1';
TABLE_NAME INITIAL_EXTENT MIN_EXTENTS BLOCKS EMPTY_BLOCKS
------------------------------ -------------- ----------- ---------- ------------
T1 65536 1 --->沒有進行收集∴users_tables才不會顯示 就例如user_tables.num_rows和真是的行數不一是一個意思
SQL>
檢視user_segments.blocks
SQL> SELECT a.segment_name,
2 a.BLOCKS
3 FROM user_segments A
4 WHERE A.segment_name = 'T1'
5 ;
SEGMENT_NAME BLOCKS
--------------------------------------------------------------------------------- ----------
T1 8
分析下表
SQL> analyze table t1 compute statistics;
Table analyzed.
SQL> SELECT a.TABLE_NAME,
2 a.INITIAL_EXTENT,
3 a.MIN_EXTENTS,
4 a.BLOCKS,
5 a.EMPTY_BLOCKS
6 FROM USER_TABLES A
7 WHERE A.TABLE_NAME = 'T1';
TABLE_NAME INITIAL_EXTENT MIN_EXTENTS BLOCKS EMPTY_BLOCKS
------------------------------ -------------- ----------- ---------- ------------
T1 65536 1 4 4
SQL> SELECT a.segment_name,
2 a.BLOCKS
3 FROM user_segments A
4 WHERE A.segment_name = 'T1'
5 ;
SEGMENT_NAME BLOCKS
--------------------------------------------------------------------------------- ----------
T1 8
發現dba_segments.blocks =dba_tables.BLOCKS +dba_tables.EMPTY_BLOCKS
SQL> insert into t1 select * from t1;
90 rows created.
SQL> insert into t1 select * from t1;
180 rows created.
SQL> insert into t1 select * from t1;
360 rows created.
SQL> insert into t1 select * from t1;
720 rows created.
SQL> commit;
Commit complete.
SQL> SELECT a.TABLE_NAME,
2 a.INITIAL_EXTENT,
3 a.MIN_EXTENTS,
4 a.BLOCKS,
5 a.EMPTY_BLOCKS
6 FROM USER_TABLES A
7 WHERE A.TABLE_NAME = 'T1';
TABLE_NAME INITIAL_EXTENT MIN_EXTENTS BLOCKS EMPTY_BLOCKS
------------------------------ -------------- ----------- ---------- ------------
T1 65536 1 8 0
SQL> analyze table t1 compute statistics;
Table analyzed.
SQL> SELECT a.TABLE_NAME,
2 a.INITIAL_EXTENT,
3 a.MIN_EXTENTS,
4 a.BLOCKS,
5 a.EMPTY_BLOCKS
6 FROM USER_TABLES A
7 WHERE A.TABLE_NAME = 'T1';
TABLE_NAME INITIAL_EXTENT MIN_EXTENTS BLOCKS EMPTY_BLOCKS
------------------------------ -------------- ----------- ---------- ------------
T1 65536 1 23 1
SQL> SELECT a.segment_name,
2 a.BLOCKS
3 FROM user_segments A
4 WHERE A.segment_name = 'T1'
5 ;
SEGMENT_NAME BLOCKS
--------------------------------------------------------------------------------- ----------
T1 24
SQL> 24=23+1
您懂了麼
如果理解的有問題 請及時告知 都學習和改進下 謝謝
( 建議都看官網的資料 )英語不好才要看奧
來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/28602568/viewspace-759540/,如需轉載,請註明出處,否則將追究法律責任。
相關文章
- TPS和響應時間之間是什麼關係
- Kubernetes和Docker之間的關係是什麼?Docker
- SDK、API 和 app 之間的關係和聯絡是什麼?APIAPP
- 設計,架構,框架之間是什麼關係?架構框架
- 在Linux中,Unix和Linux之間的關係是什麼?Linux
- 特殊特性與FMEA之間的關係是什麼?
- 大資料與Hadoop之間是什麼關係?大資料Hadoop
- GNU是什麼?和Linux是什麼關係?Linux
- GitClub和GitHub是什麼關係Github
- Java 和 JavaScript 是什麼關係?JavaScript
- openssh和openssl是什麼關係
- Chronicles 和 IRIS 是什麼關係
- IRIS 和 Caché 是什麼關係
- 什麼是子域名?主域名和子域名之間有哪些關係和區別?
- 什麼是dp,dip,sp和px及他們之間的的關係?《二》
- Flex 是什麼? flex和flash是什麼關係?flex 解決什麼問題?flex和j2ee/.net是什麼關係?Flex
- 什麼是Yottachain和YTA幣,它們是什麼關係?AI
- 元宇宙是什麼,和遊戲有什麼關係元宇宙遊戲
- 什麼是Cython?和Python有什麼關係?Python
- 奈學:Java 和 JavaScript 是什麼關係?JavaScript
- DDD和Microservices的關係是什麼?ROS
- FAILGROUP和REDUNDANCY之間的關係關係!AI
- linux和ubuntu區別是什麼?有什麼關係?LinuxUbuntu
- Linux中apt是什麼?和Dpkg有什麼關係?LinuxAPT
- 程式設計師和產品經理之間是什麼關係?是如何相愛相殺的?程式設計師
- 光敏電阻與光強之間什麼關係?
- 搞不清FastCgi與PHP-fpm之間是個什麼樣的關係ASTPHP
- 人工智慧和Python是什麼關係?人工智慧Python
- HyperLedger Fabric和區塊鏈是什麼關係?區塊鏈
- pycharm和python區別(關係)是什麼PyCharmPython
- 雲端計算和Linux是什麼關係?Linux
- Google Play 和神奇女俠是什麼關係?Go
- Unicode 和 UTF-8 是什麼關係?Unicode
- Linux和大資料雲端計算之間有什麼關係?Linux大資料
- 面試官:什麼是 YAML?和 Spring Boot 有什麼關係?面試YAMLSpring Boot
- python與人工智慧之間有什麼關係?Python人工智慧
- 微博跟微軟是什麼關係?微軟
- 什麼是反對稱關係?