白鱔經驗談,解DBA疑難之惑

2021-09-23 17:39:33 字數 2228 閱讀 4335

在10月27日子衿技術團隊首席架構師白鱔(徐戟)老師帶來的分享中,dba+各城市群的群友們都受益匪淺,紛紛點讚,同時也圍繞其分享的主題以及作為dba的職業規劃困惑,向白鱔老師提出了不少問題。以下精選出一部分,由白鱔老師根據資深從業經驗親自解答。

q1:您it基礎架構方面是怎麼去專攻的呢?作為一名資料庫的從業人員,如果往架構師方向發展,需要積累哪些能力?

白鱔:it架構需要廣泛接觸,這個和平台有關。如果你所處的平台接觸外面的機會少,那是很難有快速發展的。先要廣,一專多能。一專是前提,才有多能,廣而不精也不行。資料庫精其實是乙個十分好的點,因為資料庫和it基礎架構的各個方面都有關聯。

q2:您認為dba最後的出路在**?

白鱔:如果做技術的話,dba往往會往架構師方面發展,因為dba和it基礎架構的各個方面關係都十分緊密;當然也有一些dba最後去做it技術管理了,比如牛新莊現在是民生it部的老大,這也是dba的好榜樣。其實在《dba的思想天空》裡也**過這個問題,有幾個出路:1、在某個技術方向上做精,有一定的特色,也就是人無我有,人有我精;2、爭取往it管理崗位轉型;3、往架構師方面轉型;4、往業務專家方面轉型;5、轉向全能型選手。我這行幹了20多年了,從軟體開發到dba、到oracle優化、到系統優化,再到it架構師。

q3:測試環境的搭建都要考慮什麼?畢竟測試和生產硬體配置不一致,而且如果資料量很大的話,也不可能都在測試環境還原一下吧?

白鱔:這個和測試的內容有關,1:1的測試環境當然是最好的,不過往往在優化工作中很難做到。如果有1:1的環境,spa做分析,可以得到最佳的模擬效果。但是在條件不具備的情況下,能夠匯入資料,進行一些模擬似的**測試。比如這個專案中,在測試環境中測試季度分割槽和月度分割槽的效能差異。

q4:資料庫的效能可以看一些awr的值來計算,那麼單論儲存來說,怎麼看儲存的效能?看什麼引數?值越大儲存效能越好嗎?在您分享的案例中所說的一些儲存相關的引數值比如磁碟io的響應時間都是怎麼計算出來的呢?系統上是從sar、iostat這樣的命令計算的嗎?能否從oracle資料庫層面和從os層面、儲存監控層面舉例說明一下怎麼看磁碟io效能?

白鱔:awr裡面有隨機讀寫,順序讀寫的相應時間,有log file parallel write的指標,這些都是很重要的io效能指標。在io相關小節,也有io的負載情況,這些都是十分有價值的。在os層面,通過sar –d,iostat,glance等命令可以觀察os層面的io情況。

q5:想知道sar那個監控命令怎麼寫的?或者說有什麼磁碟效能的監控方式?db的磁碟效能響應多快才算正常?

白鱔:sar -d,iostat 這些命令都可以用來分析io效能,各個作業系統會略有不同。如果沒有效能問題,傳統儲存的隨機讀寫響應時間在4毫秒左右。當然如果cache夠大,資料夠集中,可能這個指標是1-2毫秒,甚至更低。

q6:優化的步驟裡,為什麼儲存cache的調整要放到最後調整,中間隔了些時間,而不是一氣呵成?

白鱔:風險控制,當時也是因為儲存工程師沒在現場,調整怕出問題沒有高手能解決。每個客戶的停機視窗都是有要求的,這個客戶只有週末才能實施。

q7:多少盤跟cache跟最大io能力這個怎麼換算?

白鱔:最簡單的折算方法,比如乙個15000 rpm的sas盤,iops是150-200,100塊盤是15000,cache命中率是70%,那麼iops是多少,大家都算得出吧?【cache就直接讀儲存cache意思15000只是30%,那iops最大可以到50000咯?】是的。【50000就是這個儲存的極限。請教當前系統的iops用什麼看最為準確?】大體就是這樣估算。從oracle層面和從os層面、儲存監控層面看到的iops可能會有差異,os層面的精確度更高一些。但是我們經常是集中式儲存,儲存監控看到的是乙個整體的情況,看不出某個系統的情況(部分高階也可以看),所以很多情況下,通過os來看。nmon也是不錯的工具,包括glance,osw。

q8:小弟最近研究oracle公有雲、私有雲較多,感覺建設和管理資料庫雲、中介軟體雲必然會成為dba未來工作職責的一部分。也就是說,dba的工作職能在雲時代的驅動下,將會發生巨大的改變,請問這個白總怎麼看?

白鱔:在雲時代下,光靠人力是不行的,要加大自動化運維手段的建設。青雲在廣州的資料中心,沒有專職的運維人員,幾百台伺服器的規模,靠的是自動化運維工具。乙個人管幾百台機器現在很常見,網上有不少青雲機械人的資料,看看會有些啟發的,這個不簡單是一些監控工具的問題,而是運維自動化社群。自動化運維今後的需求會越來越大,apm工具大家也關注一下。

Oracle認證DBA經驗談 更改資料檔案的可用性

oracle資料庫中的資料檔案有乙個特性,即可以設定是否離線。如果將資料檔案設定為離線,資料庫就無法讀取這個資料檔案。只有在檔案聯機,時資料庫才能夠讀取其中的內容。為此有時候改變這個資料檔案的狀態也是資料庫維護過程中的乙個必要手段。一 為什麼要更改其可用性?1 處於更改資料檔名或者位置的需要。在資料...

java wait 和sleep 方法之經驗談

sleep 是執行緒類 thread 的方法,導致此執行緒暫停執行指定時間,給執行機會給其他執行緒,但是監控狀態依然保持,到時後會自動恢復。呼叫sleep 不會釋放物件鎖。wait 是object 類的方法,對此物件呼叫wait 方法導致本執行緒放棄物件鎖,進入等待此物件的等待鎖定池,只有針對此物件...

Trac 經驗談之(1)雜談篇

trac 經驗談之 1 雜談篇 trac 經驗談之 2 雜談篇補遺 trac 經驗談之 3 工作流篇 trac 經驗談之 4 報表篇 trac 經驗談之 5 外掛程式篇 trac 經驗談之 6 完 外掛程式篇補遺 賴勇浩 trac是乙個基於web的,輕量級的專案管理工具,它使用python語言編寫,...