星環科技TDH8.0 使用必讀 :為什麼你需要存算解耦的多模型資料管理平臺

星環科技發表於2021-05-07

存算一體VS存算解耦

1983年甲骨文公司推出了第一代資料庫產品。同一年,IBM公司推出了第二代資料庫產品DB2。這些產品不侷限於大型機上使用,也可以部署在小型機甚至PC上。當時的伺服器硬體成本高昂,硬體算力、儲存、網路頻寬都十分有限。資料庫產品集中在關係型資料庫,集中處理高價值的資料。為了及時響應事務和查詢的需求,軟體效能最佳化時,需要極致的壓榨硬體效能。

由於網路頻寬的限制,多伺服器間的資訊交換十分受限。因此,資料庫軟體重點針對單伺服器的CPU、記憶體、磁碟等硬體在幾種典型的固定配置下,進行極致最佳化。軟體架構和演算法,是儲存與計算耦合在一起的,存算一體由此得名,其核心思想是透過存算一體達到效能上的極致最佳化。


再來介紹存算解耦。顧名思義,存算解耦將儲存和計算解耦合,使儲存和計算有各自相對的獨立性。隨著資訊科技的發展,伺服器的硬體成本逐漸下降,算力、儲存容量、網路頻寬不斷增大,伺服器間的資料交換效率不斷提高。



在軟體架構上,存算解耦使用分散式計算與分散式儲存,確保計算和儲存任務都能拆解成獨立的小任務。在硬體架構上, 存算解耦對計算和儲存單元配置的限制很少,可以根據使用者需要進行靈活的擴充套件,追求叢集總體的高價效比。




計算機硬體、資料規模、使用者需求的演變和存算解耦的主流化


回顧計算機硬體與網路的歷史,從二十世紀七八十年代到今天,硬體的發展速度有目共睹。幾十年間,CPU計算能力,記憶體儲存容量,永久儲存容量、網路頻寬都有了百萬倍的提高。這促使使用者透過叢集化部署,分散式的架構,集合多臺伺服器的計算和儲存能力來解決複雜問題。 單臺 伺服器很難解決的問題,就用多臺伺服器協同工作來解決,成為一種必然的趨勢。


隨著“大資料”概念被提出與實踐,現在的一個企業或機構,往往要處理幾十、幾百TB資料,PB級的資料也不罕見。



資料規模指數級增長的同時,資料的價值密度也有了分級分層的趨勢。不同價值密度的資料,選用方案不同。核心資料通常選用高成本、高效能、高可靠的方案。外圍的資料,往往選用低成本、效能與可靠性弱一些的高價效比的方案。

 

業務需求方面,早期由於硬體成本和硬體效能的限制,客戶希望優先解決高價值核心場景問題。以“交易”為代表的事務型的關係型資料庫首先取得成功。而到2010年前後,以Hadoop為代表的開源大資料極大的推動了新技術的發展。處理的資料涵蓋結構化、半結構化、非結構化資料。場景涵蓋交易型OLTP、分析型OLAP、資料倉儲、資料集市、實時計算、綜合搜尋、圖計算、圖分析等多種場景。業務需求越來越多樣化, 就要求方案能靈活的按需增減資料模型,按需分配計算和儲存資源。



小結

由於硬體成本的降低,網路頻寬的提高,資料量的指數級增長,資料按價值密度分層管理,以及業務場景的多樣化發展等一系列市場趨勢,使用者對大資料和資料庫平臺在靈活擴充套件縮減資源,靈活增減資料模型等方面提出了更高的要求。使用者從追求單一場景、單機資料庫的極致效能,向著總擁有成本更低、總體方案更靈活高效,叢集整體價效比更高的方向發展。

存算解耦方案相比與存算一體方案而言,雖然在單機效能方面稍弱一些,但是在硬體的通用性、硬體資源配置的靈活性、按需擴容縮容能力、資料儲存均勻性自動化管理等多個方面有明顯優勢。因此,我們認為存算解耦技術是大勢所趨,會成為技術的主流。




怎樣的存算解耦能夠滿足當今使用者的需求

使用過開源產品的觀眾或多或少有這樣的體會。明確的單一場景且資料量合適時,開源產品能滿足基本需求。但需要多產品協同支援複雜場景時,技術運維難度就大大增加。如果業務還因市場變化而時長變化,大資料平臺的整體調優就更加困難。


星環大資料平臺支援幾十G到PB級的大跨度資料量,且服務於多種客戶場景和業務需求,所以靈活性是我們存算解耦技術的核心目標。

第一,確保能進行靈活的垂直擴充套件。 使用者升級伺服器時,無論升級CPU、GPU等計算硬體,還是擴充套件記憶體、磁碟等儲存硬體,或是計算儲存同時升級擴充套件,都支援。

 

第二,確保能進行靈活的水平擴充套件。 業務場景的資料量往往因市場變動,出現增長和萎縮。高價效比方案要能按需進行水平擴容、縮容,且支援一個一個節點的擴充套件。此外,需支援異構作業系統、異構硬體伺服器協同工作。

 

第三,確保能靈活的增減資料模型,從而應對複雜多變的業務需求。 創新型業務通常需要靈活的選擇不同的欄位和條件,探索性的進行跨專案、跨部門資料關聯分析計算,再根據探索結果決定下一步的研究方向。由於創新業務無法事先預測,無法讓每個資料庫預留足量儲存和計算資源。彈性的按需獲取資源方式,更貼近業務複雜多變的使用者需求。 根據業務按需擴充套件資料模型,在統一的公共資源池中獲取存對應的儲存計算資源,在業務結束後將資源釋放回公共資源池中。


明確了三個基本目標後,向大家介紹星環TDH 8.0存算解耦的技術實現。



TDH8.0的存算解耦的技術實現

星環 TDH 8.0 是企業級一站式大資料綜合平臺。它提供了大資料儲存、大資料分析、實時計算、綜合搜尋、資料探勘等基礎能力。能處理結構化、半結構化、非結構化資料,能處理實時資料和批次資料。為企業建設資料湖、資料倉儲、資料中臺提供基礎的技術平臺支撐,為企業數字化轉型提供助力,讓客戶更便捷的進行數字化運營、數字化決策、數字營銷等創新業務。


星環TDH採用了分散式計算、分散式儲存技術。平臺創造性的採用了簡明的五層技術架構來實現存算解耦。這五層架構從下而上依次是資源排程層、儲存管理層、儲存引擎層、計算引擎層和計算介面層。每一層設計中都考慮了存算解耦的目標要求。




資源排程層 星環雲原生作業系統TCOS

資源排程層採用了統一的星環雲原生作業系統TCOS(Transwarp Cloud Operating System)。這款生產級的雲原生作業系統,基於容器技術Kubernetes構建。提供了排程服務、網路服務、儲存服務、負載管理等服務,滿足了大資料分散式儲存等有狀態工作負載在編排、彈性、隔離、異構計算等方面的多種需求。



在擴縮容方面, TCOS 強大的編排技術保障了平臺的計算引擎和儲存引擎都可以獨立的彈性擴縮容。

 

在排程方面,原生的 Kubernetes 排程器無法滿足我們平臺的應用需求。因此,關係型分析引擎Inceptor,我們使用了大資料負載排程策略;實時流計算Slipstream,我們使用了智慧負載排程策略;分散式檔案系統 TDFS,我們使用了儲存負載排程策略。

 

此外,TCOS隔離了因伺服器硬體架構、作業系統的異構帶給計算、儲存層的不必要麻煩。透過TCOS對硬體和作業系統的適配和最佳化,就可以讓儲存、計算程式碼工作在異構的伺服器上。目前的平臺支援X86、ARM、MIPS、Alipha等不同CPU架構的伺服器,也支援CentOS、統信UOS、銀河麒麟、中標麒麟等不同作業系統



儲存管理層 統一的分散式檔案系統和分散式資料管理系統

星環分散式檔案系統,Transwarp Distributed File System,TDFS與開源方案相比,使用RAFT協議解決高可用問題,不依賴Zookeeper等協調元件。同時,充分利用NVME儲存介質高效能,構建後設資料服務,解決HDFS Name Node後設資料規模瓶頸問題,保障叢集水平擴充套件能力向幾百、幾千節點規模演進。

星環分散式資料管理系統,Transwarp Distributed Data Management System,TDDMS分為Master和Tablet Server兩部分。Master採用3、5、7節點的RAFT Group保障高可用性,負責元資訊管理,讀寫分離管理。Tablet Server負責資料分片與均勻分佈管理,支援範圍分片,雜湊分片,支援分割與合併操作。與開源方案相比,提高了節點上限到幾百幾千。讀寫分離保障了資料分佈變動時,不影響叢集總體服務。在水平擴充套件時,自動化的分佈管理無需使用者資料重分佈操作,保障產品持續服務能力。



儲存引擎層 - 用8種儲存引擎,支援10種資料模型

目前不同的場景的高效能仍然需要使用不同的資料儲存結構保障,因此需要多種儲存引擎保障效能。

 

與多個資料庫簡單對接的方案不同,TDH平臺將分散式檔案管理和分散式資料管理等公共儲存服務進行了統一。一方面我們透過多種儲存引擎保障了高效能,另一方面我們透過統一的儲存管理,保障了擴充套件的靈活性。


對使用者而言,一開始的需求可能只做批次分析,後來業務變化可能增加全文搜尋,這時 使用者只需要操作同一個平臺,增加“搜尋”資料模型,擴充套件相應的計算、儲存資源,就能支援全文搜尋。 感受上一個產品擁有了多模型彈性擴充套件能力,十分便捷。資源也按需增減而不是長期預留,十分的經濟高效。



統一的分散式計算引擎Transwarp Nucleon

市場上許多方案針對不同場景使用不同計算引擎。星環TDH 8.0使用統一的計算引擎,各類演算法都遵從一致的計算框架:邏輯計劃、邏輯最佳化、物理計劃、物理最佳化、執行引擎。同時也使用了許多最佳化技術,包括:基於規則的最佳化、基於物化的最佳化、基於代價的最佳化、向量化執行引擎等。

統一的計算引擎讓產品根據資料模型自動選擇最優演算法、運算元,保障高效能。而不是由使用者人憑經驗進行最佳化。使用者使用更便捷,總體效能更有保障。此外,統一的計算引擎讓跨庫關聯分析十分便捷,不需要資料跨庫匯入匯出,也不用擔心資料模型切換影響計算結果,最大程度的保障了計算彈性。



統一的SQL編譯器 Transwarp Quark

計算介面層,星環開發了統一的SQL編譯器Transwarp Quark,確保星環平臺中的各個資料庫產品遵從一致的SQL規範。支援標準SQL語法;支援標準JDBC、ODBC連線;支援標準Oracle、IBM DB2、Teradata語法方言。客戶即使切換資料庫和業務場景,也不用擔憂開發介面、程式語言不相容的問題。統一的SQL讓開發的程式碼可移植性強,技術對接成本低,人員學習成本低,能更好的應對複雜多變的業務需求。


總結

TDH8.0 使用了簡明的5層架構,包括:資源排程層、儲存管理層、儲存引擎層、計算引擎、計算介面層。


在技術實現上,架構中每個層次的技術,都重點考慮了存算解耦的技術目標,允許計算和儲存獨立擴充套件,允許使用者靈活的進行水平擴充套件和垂直擴充套件。此外,還支援按需增減資料模型,使用統一SQL降低學習和遷移成本,直接進行跨模型關聯分析等。讓使用者應對各類業務變動時,更加輕鬆自如。


瞭解更多,請點選:





來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/69994106/viewspace-2771258/,如需轉載,請註明出處,否則將追究法律責任。

相關文章