大數據“復活”記
785
2025-03-31
摘要
數據倉庫,往往意味著海量的數據,超大的集群,就像一個超大的金剛。一旦數據倉庫搭建完成,集群遷移、集群規模擴展、集群架構調整需要花費很大的代價,對上層應用業務的影響周期也比較長。DWS提供了集群resize的功能。支持集群規模的scale out,也支持硬件規格的scale up,同時支持集群拓撲結構的重組。就如同使數倉這個金剛可以變形了。那讓我們一起來看看他是如何變形的吧!
技術定義
先簡單介紹數據倉庫幾個概念:
Scale Out(也就是Scale horizontally)橫向擴展,向外擴展:
Scale out代表分布式計算的能力,通過在原有系統上增加節點來擴展存儲能力和計算能力。對于數倉來說就是擴展集群規模。為了不出現木桶效應,要求新擴的機器硬件配置和老集群一致。
Scale Up(也就是Scale vertically)縱向擴展,向上擴展:
Scale up代表以主機或機箱式為主的擴展CPU或內存存儲的能力。通過在原有系統上提升硬件配置(如磁盤、內存、CPU、網卡等),來提升存儲能力和計算能力。對于數倉來說就是升級硬件配置,升級有些硬件配置可能需要升級操作系統。
DWS邏輯拓撲結構:
這個圖大家在之前的博文中應該見過,本次從resize的角度介紹下。
DWS的組件從功能角度可分為功能組件和數據組件。
數據組件:提供數據處理的組件,如DN節點,目前DWS均衡部署,每個機器上的DN數目一般相同。
功能組件:提供特定功能的組件,如GTM提供全局事務處理,CN處理業務接入,CM處理集群管理,WLM處理負載均衡。這些組件一般數量固定,在集群安裝時按照特定規則部署在集群的某些機器上。隨著集群規模的調整,初始的配置可能已經不是最優配置了。因此存在調整集群拓撲結構來調優的訴求。
Redshift的cluster resize解決方案如下,包括原地resize和快照恢復到異構集群方式resize。
技術原理
GaussDB(DWS)resize基于多nodegroup和數據重分布實現,同時提供了橫向擴展和縱向擴展的能力,resize期間老集群只支持只讀業務。
典型resize流程示意圖如下:
老集群同網絡內,新建一個獨立的集群,新集群的拓撲結構和硬件配置可以和老集群完全不同。
新老集群融合成一個大集群,并做老集群到新集群的數據重分布。數據重分布期間,新集群對外不可見,老集群對外提供業務。
數據重分布完成,新老集群分裂,此時新老集群的各自的數據是完全相同的,用戶可以運行業務,對比新老集群的性能。
集群resize的完整流程圖如下
集群resize的數據重分布邏輯
數據重分布的核心思想是把1個nodegroup的數據select insert into到1個新的nodegroup上。Scale-out擴容的數據重分布新的nodegroup是包含老的nodegroup的,而集群resize的新的nodegroup和老的nodegroup的DN是完全沒有交集的。如下:
具體功能
小規格的集群縱向擴展為大規格更少節點集群;
小規格的集群縱向擴展為大規格更多節點集群;
小規格的集群縱向擴展為大規格相同節點集群;
大規格的集群向下調整為小規格的集群。
技術應用
6.5.1版本交付的需求,主要給DWS使用,支撐DWS從小規格節點Scale-up為更大規格的節點。主要場景為XX客戶POC使用低配xlarge規格,切換生產時想使用大規格高配12xlarge集群。且通過不重裝集群、不導出/導入數據方式直接切換。
擴展場景:
新建集群的集群規模新增或者減少。
新建集群的硬件配置可以高配或者低配。
新建集群的功能組件的的配置(數量,位置)可以變更。
規格約束及演進方向
resize的耗時依賴于老集群的IO read(可能瓶頸),新集群的IO write和新老節點間的網絡IO。公式為:
max(老集群單raid數據量/IO read速率,? 新集群單raid數據量/IO write速率,? 總數據量/老節點數/發送速率, ?總數據量/新節點數/接收速率)
新集群單raid數據量 = 總數據量/新集群節點數/raid組數 ??--假設無明顯數據傾斜。
集群resize過程中集群存在業務秒級閃斷。
集群resize過程中提供只讀服務,后續版本提供在線能力。
結語
集群resize提供一鍵式集群的擴容和遷移的能力。來解決數倉使用過程中規格調整,規模擴展,拓撲變更的訴求。
想了解GuassDB(DWS)更多信息,歡迎微信搜索“GaussDB DWS”關注微信公眾號,和您分享最新最全的PB級數倉黑科技~
EI企業智能 Gauss AP 應用運維管理 AOM 數據倉庫服務 GaussDB(DWS)
版權聲明:本文內容由網絡用戶投稿,版權歸原作者所有,本站不擁有其著作權,亦不承擔相應法律責任。如果您發現本站中有涉嫌抄襲或描述失實的內容,請聯系我們jiasou666@gmail.com 處理,核實后本網站將在24小時內刪除侵權內容。
版權聲明:本文內容由網絡用戶投稿,版權歸原作者所有,本站不擁有其著作權,亦不承擔相應法律責任。如果您發現本站中有涉嫌抄襲或描述失實的內容,請聯系我們jiasou666@gmail.com 處理,核實后本網站將在24小時內刪除侵權內容。