posts - 89,  comments - 98,  trackbacks - 0
          DB2提供了3個命令工具,重組和分析table中的數據:
          REORGCHK
          REORG
          RUNSTAT

          在(一)中收集了對象的統計信息,這里,可以用這些統計信息來診斷對象的物理存儲了。
          具體內容見:http://blog.csdn.net/dlinger/archive/2004/10/12/133178.aspx

          2.REORGCHK ,診斷對象的物理存儲

          >>-REORGCHK----+-------------------------------+----------------------------------+<<
          ???????????????????????? |? |-UPDATE--|????????????????????????|??? |???????????????? .-USER-------??.--|
          ?????????????????????????'--+-CURRENT-+---STATISTICS--'???? '-ON TABLE--+-SYSTEM-----+--'
          ????????????????????????????????????????????????????????????????????????????????????????????? +-ALL--------+
          ?????????????????????????????????????????????????????????????????????????????????????????????? '-table-name-'

          在UDB的V8版本中增加了on schema 的選項。

          UPDATE STATISTICS:先調用RUNSTATS來對table進行分析,
          ??????????????????????????????然后根據分析的統計信息診斷是否需要重組table
          CURRENT STATISTICS:使用現有的統計信息診斷是否需要重組table

          ON TABLE USER:? 當前USER的所有table
          ON TABLE SYSTEM:SYSTEM的所有table
          ON TABLE ALL:??? 當前db的所有table
          ON TABLE table-name:指定名稱的table

          我們分析SYSIBM.SYSTABLES,看看具體的執行結果:

          db2 => reorgchk update statistics on table SYSIBM.SYSTABLES

          執行 RUNSTATS ....

          表統計信息:

          F1: 100 * OVERFLOW / CARD < 5
          F2: 100 * (Effective Space Utilization of Data Pages) > 70
          F3: 100 * (Required Pages / Total Pages) > 80

          SCHEMA??? NAME????????????????? CARD??? OV??? NP??? FP ACTBLK??? TSIZE?? ?F1? F2? F3 REORG
          ----------------------------------------------------------------------------------------
          SYSIBM??? SYSTABLES????????????2988???? 0?? 290?? 290????? -???? 4774824?? 0? 100 100 ---
          ----------------------------------------------------------------------------------------

          索引統計信息:

          F4: CLUSTERRATIO 或正常化的 CLUSTERFACTOR > 80
          F5: 100 * (KEYS * (ISIZE + 9) + (CARD - KEYS) * 5) / ((NLEAF - NUM EMPTY LEAFS) * INDEXPAGESIZE) > 50
          F6: (100 - PCTFREE) * ((INDEXPAGESIZE - 96) / (ISIZE + 12)) ** (NLEVELS - 2) * (INDEXPAGESIZE - 96)
          ??? / (KEYS * (ISIZE + 9) + (CARD - KEYS) * 5) < 100
          F7: 100 * (NUMRIDS DELETED / (NUMRIDS DELETED + CARD)) < 20
          F8: 100 * (NUM EMPTY LEAFS / NLEAF) < 20

          SCHEMA?? NAME???????????????? CARD? LEAF ELEAF? LVLS ISIZE? NDEL?? KEYS? F4? F5? F6? F7? F8 REORG
          -------------------------------------------------------------------------------------------------
          表:SYSIBM.SYSTABLES
          SYSIBM?? IBM00??????????????? ?2988??? 55???? 0???????? 2???? 27?????? 42??? 2988?? 95? 47?? 3?? 1?? 0? -*---
          SYSIBM?? IBM137??????????????? 2988??? 18???? 0??????? 2???? 4???????? 52???? 2845? 98? 51?? 9?? 1?? 0? -----
          SYSIBM?? IBM21??????????????? ?2988???? 5????? 0??????? 2???? 3???????? ?26????? 3???? 99? 73? 24?? 0?? 0? -----
          SYSIBM?? IBM22??????????????? ?2988???? 5???? ?0??????? 2???? 3????????? 22????? 1????100? 72? 24?? 0?? 0? -----
          SYSIBM?? IBM23???????????????? 2988???? 5????? 0??????? 2???? 3?????????? 2????? ?1??? 100? 72? 24?? 0?? 0? -----
          SYSIBM?? IBM78???????????????? 2988???? 62???? 0?????? ?2??? 33???????? 17??? 2988? 95?? 49?? 2?? 0?? 0 -*---
          -------------------------------------------------------------------------------------------------

          CLUSTERRATIO 或正常化的 CLUSTERFACTOR(F4)將指示索引需要
          REORG,該索引與基本表不在相同的序列中。當在表中定義了多個索引時,一個或多個索引
          可能被標記為需要 REORG。指定 REORG 順序的最重要索引。

          使用 ORGANIZE BY 子句和相應的維索引定義的表的名稱有 '*'
          后綴。維索引的基數等價于表的“活動的塊數”統計信息。


          先來說明一下上面的信息:

          CARD:基表中的數據行數
          OV(OVERFLOW): 遷移行的數量
          NP(NPAGES):? 包含數據的page的數量
          FP(FPAGES): 該表總共分配的page數量
          TSIZE:table的實際數據的大小,以字節為單位。
          TABLEPAGESIZE:table所在表空間的page size
          F1: 處理溢出行。在溢出行超過總行數的5%時,該報告建議對table進行重組。
          F2:處理空間使用率。在TSIZE小于等于該表分配總空間的70%時,該報告建議對table進行重組。
          F3:處理空白頁。所謂空白頁,就是沒有數據的頁。當table中空白頁大于20%時,該報告建議對table進行重組。

          LEAF:index上葉節點的數量
          LVLS(LEVELS):index級數
          ISIZE:index的平均行長。
          KEYS:唯一取值的數量
          INDEXPAGESIZE:index所在表空間的page size
          PCTFREE:index page中預留空間(%)
          F4:聚簇因子
          F5:為index key預留的空間。這個值應小于50%,否則該報告建議對index進行重組
          F6:估算index頁的用量,應大于總數的90%,否則該報告建議對index進行重組
          F7:偽刪除RID的數量。應小于總數的20%,否則該報告建議對index進行重組
          F8: 偽空頁的數量。應小于總數的20%,否則該報告建議對index進行重組

          我們根據報告中REORG的值中有“*”來決定是否對table或index進行數據重組。當然,F1-F8的閥值只是建議值。

          第三部分,我們將介紹在DB2中如何對數據進行重組。


          posted on 2006-09-14 09:42 水煮三國 閱讀(1012) 評論(0)  編輯  收藏 所屬分類: Database
          <2025年5月>
          27282930123
          45678910
          11121314151617
          18192021222324
          25262728293031
          1234567

          常用鏈接

          留言簿(4)

          隨筆分類(85)

          隨筆檔案(89)

          文章分類(14)

          文章檔案(42)

          收藏夾(37)

          java

          oracle

          Sybase

          搜索

          •  

          積分與排名

          • 積分 - 211126
          • 排名 - 265

          最新評論

          閱讀排行榜

          評論排行榜

          主站蜘蛛池模板: 红桥区| 永康市| 丹棱县| 延津县| 龙胜| 临潭县| 灵丘县| 舒城县| 宜丰县| 固安县| 富源县| 鹤山市| 鄂伦春自治旗| 纳雍县| 南安市| 彩票| 太康县| 南开区| 合山市| 阜康市| 嘉鱼县| 特克斯县| 灌南县| 江津市| 黔南| 启东市| 临泉县| 湖南省| 蓝田县| 绥阳县| 离岛区| 大荔县| 潞西市| 永福县| 金川县| 玉环县| 昌平区| 巴塘县| 克东县| 富蕴县| 安仁县|