share-Nothing原理
Share nothing理論在數(shù)據(jù)庫設計和優(yōu)化中的實踐應用
首先介紹share nothing概念。最早接觸它是在 DataBaseManagentSystem一書的并行數(shù)據(jù)庫章節(jié)中。
并行數(shù)據(jù)庫要求盡可能的去并行執(zhí)行數(shù)據(jù)庫操作,從而提高性能。在并行計算體系結構實現(xiàn)中有很多可選的體系結構。包括:
share-memory:多個cpu共享同一片內存,cpu之間通過內部通訊機制(interconnection network)進行通訊;
share-disk? : 每一個cpu使用自己的私有內存區(qū)域,通過內部通訊機制直接訪問所有磁盤系統(tǒng)。
Share-nothing: 每一個cpu都有私有內存區(qū)域和私有磁盤空間,而且2個cpu不能訪問相同磁盤空間,cpu之間的通訊通過網絡連接。3種體系結構如下圖:
Share disk???????????????????????? share nothing????????????????????????? share memory?
shared memory 體系結構的cpu之間通過主存進行通訊,具有很高的效率;但當更多的cpu被添加到主機上時,內存競爭contetion就成為瓶頸,cpu越多,瓶頸越厲害。Shared disk也存在同樣問題,因為磁盤系統(tǒng)由 Interconnection Network 連接在一起。
Shared memory和shared disk的基本問題是interference:當添加更多的cpu,系統(tǒng)反而減慢,因為增加了對內存訪問(memroy access)和網絡帶寬(network bandwidth)的競爭。這樣shared nothing體系得到了廣泛的推廣。
Shared nothing體系是數(shù)據(jù)庫穩(wěn)定增長,當隨著事務數(shù)量不斷增加,增加額外的cpu和主存就可以保證每個事務處理時間不變。
總的來說,shared nothing降低了競爭資源的等待時間,從而提高了性能。反過來,如果一個數(shù)據(jù)庫應用系統(tǒng)要獲得良好的可擴展的性能,它從設計和優(yōu)化上就要考慮shared nothing體系結構。Share nothing means few contention.它在oracle數(shù)據(jù)庫設計和優(yōu)化上有很多相同之處。
Share nothing 對數(shù)據(jù)庫應用主要體現(xiàn)在多用戶并行訪問系統(tǒng)時候,優(yōu)化數(shù)據(jù)庫操作的response time上。如果數(shù)據(jù)庫操作能夠順利獲得所需要的資源,不發(fā)生等待事件,自然可以減少response time. 同時也體現(xiàn)在操作盡量少占用資源上,避免浪費時間在無用功上。
如Sequence的實現(xiàn)方式。如果使用Oracle?Sequence ,oracle可以緩存sequence,這樣最小的降低多個Session獲得唯一序列的競爭。如果設計為實體化表存儲sequence value方式,每次獲得sequence value都需要鎖住紀錄,這樣產生了嚴重資源競爭,導致hot block.同時增加了Response time.
如存儲過程的使用,也體現(xiàn)著share nothing原理。將多個sql 封裝在存儲過程中,避免了不必要的SQL*Net message from/to client, SQL*Net data from/to client 等等待事件。這體現(xiàn)了設計良好的應用使用最少的資源完成工作。
如在優(yōu)化sql/表結構設計上,share nothing意味著降低查詢的執(zhí)行成本—— I/O和cpu usage.這主要體現(xiàn)在降低consistent gets上。
在物理設計上,share nothing體現(xiàn)在避免磁盤熱點塊,協(xié)調進程對磁盤的競爭,平衡磁盤利用率上。
Oracle自身設計上很多都體現(xiàn)了Share Nothing特性;在設計可擴展的數(shù)據(jù)庫應用的時候也要注意到這點。
文件轉載來自http://oracle.chinaitlab.com/optimize/39626.html
轉載于:https://www.cnblogs.com/opina/archive/2013/01/22/2870982.html
創(chuàng)作挑戰(zhàn)賽新人創(chuàng)作獎勵來咯,堅持創(chuàng)作打卡瓜分現(xiàn)金大獎總結
以上是生活随笔為你收集整理的share-Nothing原理的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 怎样批量重命名照片,可是去掉那个烦人的括
- 下一篇: 存储器大厂江波龙挂牌上市:正式登陆A股创