<dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><s id="yhprb"><strike id="yhprb"></strike></s></dfn><small id="yhprb"></small><dfn id="yhprb"></dfn><small id="yhprb"><delect id="yhprb"></delect></small><small id="yhprb"></small><small id="yhprb"></small> <delect id="yhprb"><strike id="yhprb"></strike></delect><dfn id="yhprb"></dfn><dfn id="yhprb"></dfn><s id="yhprb"><noframes id="yhprb"><small id="yhprb"><dfn id="yhprb"></dfn></small><dfn id="yhprb"><delect id="yhprb"></delect></dfn><small id="yhprb"></small><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn> <small id="yhprb"></small><delect id="yhprb"><strike id="yhprb"></strike></delect><dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"><s id="yhprb"><strike id="yhprb"></strike></s></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn>

新聞中心

EEPW首頁(yè) > 嵌入式系統 > 設計應用 > 大型商用服務(wù)器的三大系統架構

大型商用服務(wù)器的三大系統架構

作者: 時(shí)間:2010-04-02 來(lái)源:網(wǎng)絡(luò ) 收藏

從系統架構來(lái)看,目前的商用大體可以分為三類(lèi),即對稱(chēng)多處理器結構(SMP:Symmetric Multi-Processor),非一致存儲訪(fǎng)問(wèn)結構(NUMA:Non-Uniform Memory Access),以及海量結構(MPP:Massive Parallel Processing)。它們的特征分別描述如下:

本文引用地址:http://dyxdggzs.com/article/257986.htm

SMP(Symmetric Multi-Processor)

  所謂對稱(chēng)多處理器結構,是指中多個(gè)CPU對稱(chēng)工作,無(wú)主次或從屬關(guān)系。各CPU共享相同的物理內存,每個(gè) CPU訪(fǎng)問(wèn)內存中的任何地址所需時(shí)間是相同的,因此SMP也被稱(chēng)為一致存儲器訪(fǎng)問(wèn)結構(UMA:Uniform Memory Access)。對SMP進(jìn)行擴展的方式包括增加內存、使用更快的CPU、增加CPU、擴充I/O(槽口數與總線(xiàn)數)以及添加更多的外部設備(通常是磁盤(pán)存儲)。

  SMP服務(wù)器的主要特征是共享,系統中所有資源(CPU、內存、I/O等)都是共享的。也正是由于這種特征,導致了SMP服務(wù)器的主要問(wèn)題,那就是它的擴展能力非常有限。對于SMP服務(wù)器而言,每一個(gè)共享的環(huán)節都可能造成SMP服務(wù)器擴展時(shí)的瓶頸,而最受限制的則是內存。由于每個(gè)CPU必須通過(guò)相同的內存總線(xiàn)訪(fǎng)問(wèn)相同的內存資源,因此隨著(zhù)CPU數量的增加,內存訪(fǎng)問(wèn)沖突將迅速增加,最終會(huì )造成CPU資源的浪費,使 CPU性能的有效性大大降低。實(shí)驗證明,SMP服務(wù)器CPU利用率最好的情況是2至4個(gè)CPU。

圖1.SMP服務(wù)器CPU利用率狀態(tài)


NUMA(Non-Uniform Memory Access)

  由于SMP在擴展能力上的限制,人們開(kāi)始探究如何進(jìn)行有效地擴展從而構建大型系統的技術(shù),NUMA就是這種努力下的結果之一。利用NUMA技術(shù),可以把幾十個(gè)CPU(甚至上百個(gè)CPU)組合在一個(gè)服務(wù)器內。其CPU模塊結構如圖2所示:

圖2.NUMA服務(wù)器CPU模塊結構

  NUMA服務(wù)器的基本特征是具有多個(gè)CPU模塊,每個(gè)CPU模塊由多個(gè)CPU(如4個(gè))組成,并且具有獨立的本地內存、I/O槽口等。由于其節點(diǎn)之間可以通過(guò)互聯(lián)模塊(如稱(chēng)為Crossbar Switch)進(jìn)行連接和信息交互,因此每個(gè)CPU可以訪(fǎng)問(wèn)整個(gè)系統的內存(這是NUMA系統與MPP系統的重要差別)。顯然,訪(fǎng)問(wèn)本地內存的速度將遠遠高于訪(fǎng)問(wèn)遠地內存(系統內其它節點(diǎn)的內存)的速度,這也是非一致存儲訪(fǎng)問(wèn)NUMA的由來(lái)。由于這個(gè)特點(diǎn),為了更好地發(fā)揮系統性能,開(kāi)發(fā)應用程序時(shí)需要盡量減少不同CPU模塊之間的信息交互。

  利用NUMA技術(shù),可以較好地解決原來(lái)SMP系統的擴展問(wèn)題,在一個(gè)物理服務(wù)器內可以支持上百個(gè)CPU。比較典型的NUMA服務(wù)器的例子包括HP的Superdome、SUN15K、IBMp690等。

  但NUMA技術(shù)同樣有一定缺陷,由于訪(fǎng)問(wèn)遠地內存的延時(shí)遠遠超過(guò)本地內存,因此當CPU數量增加時(shí),系統性能無(wú)法線(xiàn)性增加。如HP公司發(fā)布Superdome服務(wù)器時(shí),曾公布了它與HP其它UNIX服務(wù)器的相對性能值,結果發(fā)現,64路CPU的Superdome ()的相對性能值是20,而8路N4000(共享的SMP結構)的相對性能值是6.3。從這個(gè)結果可以看到,8倍數量的CPU換來(lái)的只是3倍性能的提升。

圖3.MPP服務(wù)器架構圖

MPP(Massive Parallel Processing)

  和NUMA不同,MPP提供了另外一種進(jìn)行系統擴展的方式,它由多個(gè)SMP服務(wù)器通過(guò)一定的節點(diǎn)互聯(lián)網(wǎng)絡(luò )進(jìn)行連接,協(xié)同工作,完成相同的任務(wù),從用戶(hù)的角度來(lái)看是一個(gè)服務(wù)器系統。其基本特征是由多個(gè)SMP服務(wù)器(每個(gè)SMP服務(wù)器稱(chēng)節點(diǎn))通過(guò)節點(diǎn)互聯(lián)網(wǎng)絡(luò )連接而成,每個(gè)節點(diǎn)只訪(fǎng)問(wèn)自己的本地資源(內存、存儲等),是一種完全無(wú)共享(Share Nothing)結構,因而擴展能力最好,理論上其擴展無(wú)限制,目前的技術(shù)可實(shí)現512個(gè)節點(diǎn)互聯(lián),數千個(gè)CPU。目前業(yè)界對節點(diǎn)互聯(lián)網(wǎng)絡(luò )暫無(wú)標準,如 NCR的Bynet,IBM的SPSwitch,它們都采用了不同的內部實(shí)現機制。但節點(diǎn)互聯(lián)網(wǎng)僅供MPP服務(wù)器內部使用,對用戶(hù)而言是透明的。

  在MPP系統中,每個(gè)SMP節點(diǎn)也可以運行自己的操作系統、數據庫等。但和NUMA不同的是,它不存在異地內存訪(fǎng)問(wèn)的問(wèn)題。換言之,每個(gè)節點(diǎn)內的CPU不能訪(fǎng)問(wèn)另一個(gè)節點(diǎn)的內存。節點(diǎn)之間的信息交互是通過(guò)節點(diǎn)互聯(lián)網(wǎng)絡(luò )實(shí)現的,這個(gè)過(guò)程一般稱(chēng)為數據重分配(Data Redistribution)。

  但是MPP服務(wù)器需要一種復雜的機制來(lái)調度和平衡各個(gè)節點(diǎn)的負載和過(guò)程。目前一些基于MPP技術(shù)的服務(wù)器往往通過(guò)系統級軟件(如數據庫)來(lái)屏蔽這種復雜性。舉例來(lái)說(shuō),NCR的Teradata就是基于MPP技術(shù)的一個(gè)關(guān)系數據庫軟件,基于此數據庫來(lái)開(kāi)發(fā)應用時(shí),不管后臺服務(wù)器由多少個(gè)節點(diǎn)組成,開(kāi)發(fā)人員所面對的都是同一個(gè)數據庫系統,而不需要考慮如何調度其中某幾個(gè)節點(diǎn)的負載。

  NUMA與MPP的區別

  從架構來(lái)看,NUMA與MPP具有許多相似之處:它們都由多個(gè)節點(diǎn)組成,每個(gè)節點(diǎn)都具有自己的CPU、內存、I/O,節點(diǎn)之間都可以通過(guò)節點(diǎn)互聯(lián)機制進(jìn)行信息交互。那么它們的區別在哪里?通過(guò)分析下面NUMA和MPP服務(wù)器的內部架構和工作原理不難發(fā)現其差異所在。

  首先是節點(diǎn)互聯(lián)機制不同,NUMA的節點(diǎn)互聯(lián)機制是在同一個(gè)物理服務(wù)器內部實(shí)現的,當某個(gè)CPU需要進(jìn)行遠地內存訪(fǎng)問(wèn)時(shí),它必須等待,這也是NUMA服務(wù)器無(wú)法實(shí)現CPU增加時(shí)性能線(xiàn)性擴展的主要原因。而MPP的節點(diǎn)互聯(lián)機制是在不同的SMP服務(wù)器外部通過(guò)I/O 實(shí)現的,每個(gè)節點(diǎn)只訪(fǎng)問(wèn)本地內存和存儲,節點(diǎn)之間的信息交互與節點(diǎn)本身的處理是并行進(jìn)行的。因此MPP在增加節點(diǎn)時(shí)性能基本上可以實(shí)現線(xiàn)性擴展。

  其次是內存訪(fǎng)問(wèn)機制不同。在NUMA服務(wù)器內部,任何一個(gè)CPU可以訪(fǎng)問(wèn)整個(gè)系統的內存,但遠地訪(fǎng)問(wèn)的性能遠遠低于本地內存訪(fǎng)問(wèn),因此在開(kāi)發(fā)應用程序時(shí)應該盡量避免遠地內存訪(fǎng)問(wèn)。在MPP服務(wù)器中,每個(gè)節點(diǎn)只訪(fǎng)問(wèn)本地內存,不存在遠地內存訪(fǎng)問(wèn)的問(wèn)題。

  數據倉庫的選擇

  哪種服務(wù)器更加適應數據倉庫環(huán)境?這需要從數據倉庫環(huán)境本身的負載特征入手。眾所周知,典型的數據倉庫環(huán)境具有大量復雜的數據處理和綜合分析,要求系統具有很高的I/O處理能力,并且存儲系統需要提供足夠的I/O帶寬與之匹配。而一個(gè)典型的OLTP系統則以聯(lián)機事務(wù)處理為主,每個(gè)交易所涉及的數據不多,要求系統具有很高的事務(wù)處理能力,能夠在單位時(shí)間里處理盡量多的交易。顯然這兩種應用環(huán)境的負載特征完全不同。

  從NUMA架構來(lái)看,它可以在一個(gè)物理服務(wù)器內集成許多CPU,使系統具有較高的事務(wù)處理能力,由于遠地內存訪(fǎng)問(wèn)時(shí)延遠長(cháng)于本地內存訪(fǎng)問(wèn),因此需要盡量減少不同CPU模塊之間的數據交互。顯然,NUMA架構更適用于OLTP事務(wù)處理環(huán)境,當用于數據倉庫環(huán)境時(shí),由于大量復雜的數據處理必然導致大量的數據交互,將使CPU的利用率大大降低。

  相對而言,MPP服務(wù)器架構的能力更優(yōu)越,更適合于復雜的數據綜合分析與處理環(huán)境。當然,它需要借助于支持MPP技術(shù)的關(guān)系數據庫系統來(lái)屏蔽節點(diǎn)之間負載平衡與調度的復雜性。另外,這種并行處理能力也與節點(diǎn)互聯(lián)網(wǎng)絡(luò )有很大的關(guān)系。顯然,適應于數據倉庫環(huán)境的MPP服務(wù)器,其節點(diǎn)互聯(lián)網(wǎng)絡(luò )的I/O性能應該非常突出,才能充分發(fā)揮整個(gè)系統的性能。



評論


相關(guān)推薦

技術(shù)專(zhuān)區

關(guān)閉
国产精品自在自线亚洲|国产精品无圣光一区二区|国产日产欧洲无码视频|久久久一本精品99久久K精品66|欧美人与动牲交片免费播放
<dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><s id="yhprb"><strike id="yhprb"></strike></s></dfn><small id="yhprb"></small><dfn id="yhprb"></dfn><small id="yhprb"><delect id="yhprb"></delect></small><small id="yhprb"></small><small id="yhprb"></small> <delect id="yhprb"><strike id="yhprb"></strike></delect><dfn id="yhprb"></dfn><dfn id="yhprb"></dfn><s id="yhprb"><noframes id="yhprb"><small id="yhprb"><dfn id="yhprb"></dfn></small><dfn id="yhprb"><delect id="yhprb"></delect></dfn><small id="yhprb"></small><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn> <small id="yhprb"></small><delect id="yhprb"><strike id="yhprb"></strike></delect><dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"><s id="yhprb"><strike id="yhprb"></strike></s></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn>