Luke初識Scale Out 和Scale Up
定義
Scale up/down:ability to change resource granularity, e.g. increase memory, CPU or storage size dynamically.
Scale Up(也就是Scale vertically)縱向擴展,向上擴展;指企業后端大型服務器以增加處理器等運算資源進行升級以獲得對應用性能的要求。
Scale in/out: ability to add new resource instances (e.g. new VM) to a cluster of resources.
Scale Out(也就是Scale horizontally)橫向擴展,向外擴展;就是指企業可以根據需求增加不同的服務器應用,依靠多部服務器協同運算,借負載平衡及容錯等功能來提高運算能力及可靠度。
無論是Scale Out,Scale Up,實際上就是一種架構的概念,這些概念用在存儲上可以,用在數據庫上,網絡上一樣可以。
Scale Up/Scale horizontally (縱向擴展)
Scale Up(縱向擴展) 主要是利用現有的系統(存儲/服務器/網絡),通過不斷增加容量來滿足數據增長的需求。以存儲擴展為例,
縱向擴展架構不必增加基礎設施設備 ——比如擴展網絡連接能力 ——就可以完成容量的升級。然而,在容量增長的同時,仍然需要增加物理空間、電力消耗和散熱能力。它不會通過控制器擴容的方式來響應主機端額外的處理請求。這也意味著用戶不必為了額外的控制功能而增加開銷。因此縱向擴展架構的擴容成本不會線性增長,只需要增加存儲介質設備;
Scale-out/Scale horizontally(橫向擴展)
Scale-out橫向擴展架構的升級通常是以節點為單位,容量和性能會同步增長。與那些控制器固定配置的存儲系統不同,它會擴展更多的功能性部件(通常是控制器或控制卡)。但Scale-out架構的存儲系統在擴展之后,從用戶的視角看起來仍然是一個單一的系統,這一點與我們將多個相互獨立的存儲系統簡單的疊加在一個機柜中是完全不同的。
有幾種方法可以實現scale-out,即橫向擴展,包括集群存儲系統和網格存儲。這兩類產品的定義同樣容易混淆,但無論是哪種類型的系統,能夠以一個單一系統的形式被訪問和使用是scale-out解決方案的基本前提。
下圖展示了scale-out存儲方案的架構。在圖中,系統只能通過增加具有完整功能的節點進行擴展,但一個scale-out系統可以有很多節點,而且節點之間的內部物理互聯距離也可以很遠。
上圖的例子中,scale-out系統在擴展控制功能和容量的同時仍然保持一個單一的訪問界面。而這背后,是存儲和控制器以及集群或網格中節點之間的互聯。因此,這種擴展也可能需要增加額外的基礎設施來實現,比如說存儲交換機。
Scale-out + Scale Up
Scale-up和scale-out并非不能融合在一起,很多存儲系統就可以同時實現縱向擴展和橫向擴展。下面的示意圖就展示了這種方案。
cale out VS Scale up
? 造價。Scale-up架構只有容量升級的成本,不會增加控制器或基礎設施的開銷。如果我們主要衡量每GB存儲的單位價格,scale-up的擴展方式無疑更便宜一些。
? 容量。兩種解決方案都可以滿足容量需求,但scale-up架構也許會有些限制,主要取決于單個系統最大支持多少個磁盤數量和多大的容量。
? 性能。Scale-out架構在性能上具有擴展潛力,在多個存儲控制器下,IOPS處理能力和吞吐帶寬都可以聚合。雖然節點之間的通信會引發延遲,但那是部署時的細節問題。
? 管理。Scale-up架構本身就是以單一系統的方式來進行管理的。而Scale-out架構通常有聚合管理的能力,但每個廠商提供的產品可能會有所不同。
? 復雜性。Scale-up架構的存儲相對簡單,而scale-out架構的系統會更復雜一些,畢竟每個節點都需要管理。
? 可用性。多個節點可以提供更好的可用性,假使有一個部件故障或失效,系統也不至于整體宕機。這一點與具體的實施方案也有關系。
? 在選擇scale-up還是scale-out的時候,我們要考慮大量的因素。而結果往往取決于哪個廠商有比其他人更好的整體方案、實施能力和技術優勢。但我們最好從了解最基本的信息起步,了解這兩種技術及其之間的差別。
轉載請注明出處:華為云博客 https://portal.hwclouds.com/blogs
網絡
版權聲明:本文內容由網絡用戶投稿,版權歸原作者所有,本站不擁有其著作權,亦不承擔相應法律責任。如果您發現本站中有涉嫌抄襲或描述失實的內容,請聯系我們jiasou666@gmail.com 處理,核實后本網站將在24小時內刪除侵權內容。