註冊 | 登入 | RSS Feeds
ZDNet | Taiwan.CNET.com |

廣告:
打破資料管理迷思:資料在精不在多

友善列印 | 轉寄朋友 | 加入HEMiDEMi網路書籤 | 加入funP | 加入Google書籤 | 加入Yahoo!奇摩分享書籤 | 1則回應
    
李信宏 2008/05/29 05:00:00 考量相關因素產生關聯

問題剛發生時,往往不易察覺,但是經過一連串的連鎖反應,各種不同的徵兆會逐漸浮現出來。理論上無論從哪一個面相鑽研下去,最後一定都會指到問題的核心,不過前提是,在過濾分析過程中,都不可忽視其它相關因素,這樣才能確保在解決問題的過程當中,不會偏失方向。若是把整個過程中所做的資料分析記錄下來,再交叉比對,其實您會發現,不管從那個面相切進去看問題,每個因素都互有關連,互為佐證。

舉例來說,若是資料庫系統效能受到影響、乃是肇因於某個SQL指令所使用的查詢條件複雜(若是Table裡的資料有建立索引,代表查詢有可能會使用 Index Scan,因此會用到CPU的運算資源),而且回傳的資料筆數相當多(這代表記憶體用量會升高。若是分配的記憶體不夠,那會將一部分資料移到虛擬記憶體,也就是會發生Page Swap,也就代表Disk I/O也會升高),這時候從表面上看來,能觀察到的現象可能有:

1.CPU使用率增高。
2.Disk I/O頻繁。
3.Memory用量大增。

若是從CPU使用率方面著手調查,您應該會看到是資料庫系統的行程佔用了不少CPU資源。接下來您要查出,是那些資料庫連線最為忙碌,而判斷的依據,就是 CPU、Disk I/O以及Memory用量。再從用量最高的連線著手調查,看是在執行什麼工作,也就是在執行什麼SQL指令,如此一步步地追查下去。同樣地,若是從 Memory方面著手,可以先分析實體記憶體以及虛擬記憶體的使用比例。若是資料容量己經超出實體記憶體許多,代表Page Swapping是無可避免的現象,此時可以找出那些行程的Disk I/O最為忙碌。若確定行程是屬於資料庫系統時,您就可利用之前所提的步驟往下繼續分析。

由以上例子可知,若能在解決問題的過程當中,考慮到可能的相關因素、並加以推導,就會發現哪些資料對您來說是有用的。只消幾個步驟,就可以去蕪存菁、事半功倍。若能把這些解決問題的步驟記錄下來,包括註明那些是該收集的資料,那您還可以逐漸發展出自己的專家系統。

作者現任庫柏資訊研發經理,美國休士頓大學(University of Houston)資工系畢業。有產品開發、系統整合、專案管理、技術顧問以及技術客服經驗。專精於系統管理。閒暇時醉心於摩托車運動,現擁有中華民國賽車協會新手執照。
| 第1頁 | 第2頁 |
加入我的圖書館 訂閱關鍵字
加入網路書籤> 加入HEMiDEMi網路書籤 | 加入funP | 加入Google書籤 | 加入Yahoo!奇摩分享書籤 |
友善列印 | 轉寄朋友


  • 1.不想再從業IT的人 於 2008/06/03 12:08 回應
    你講的是個大方向,以我的了解(我是個DBA),一般資料庫的調校分為四個層次
    1.硬體(作業系統)
    2.db instance
    3.db object
    4.db sql tuning
    我的日常工作,就是產出每日的效能報表來做判斷
    在作業系統層,你當然需要看memory, cpu的使用狀況
    在db instance 層,每個資料庫都有自己的數據分析方法
    在db object 層,通常的sql 語法大概都是analyze table, index等,然後去找出各物件目錢在
    storage的狀況,表格資料是否分散,index是否歪斜或者leaf node太深,都需要做重整的考量
    至於sql tune就是看執行計畫,因為sql 是一種宣告式的語言,你要處理資料,只需要告訴
    資料庫系統,你要處理那些欄位,那些表格,需不需要排序或做運算,其它的事情,資料庫系統會幫
    你做掉,因此你不知道資料庫系統會不會使用所謂的"最佳執行路徑"來幫你處理,比方說,
    從台北到高雄,你可以搭巴士,坐飛機,乘火車,你願意的話,也可以自己開車或騎車,假如你找一個朋友幫你決定使用那種工具,你只跟他講說,我要到高雄,他幫你挑的工具,不見得是你覺得最喜歡的(最具效益),你要資料庫系統幫你處理資料,也是同樣的情況

    我調過作業系統,instance, object,也調過sql 語法
    作業系統層最明顯的例子在於記憶體不夠,這個狀況下,整個系統會hang住,你連登入都不行,
    碰到這種狀況,如果該調整的都已經調了,就直接跟上面講說"加硬體就對了",不過通常主管都
    像白癡一樣,跟他講了又不聽,老是以為自己經驗要多強,都是狗屎,重要的是提出數據來他也看
    不懂,要怎麼跟他溝通?....哈!!!只有發生幾次狀況,被逼了..只好照著做....才能夠證明出你是
    對的..............................哈........
    有問題的話,大家就一同聊聊吧 !!


留下你的意見
會員 * 帳號:
* 密碼:
  1. 欄位可選填,若全不填,則顯示為「匿名」。
  2. 不支援html語法
非會員 姓名:
E-Mail:
Blog:
  重新載入驗證碼
* 驗證碼: 記住我




廣告

名家專欄

更多名家專欄
HP和Intel領導業界,提供卓著的效能及可用度
  + 效能卓越的刀鋒 
  + 按事業的優先目標,快速提供適切的資源 
  + 降低能源和冷卻成本 
廣告


Sponsored

活動快訊