search
尋找貓咪~QQ 地點 桃園市桃園區 Taoyuan , Taoyuan

"加速業務創新 淺談TDH 5.0的關鍵技術"演講+PPT

內容提要:北京時間5月4日,在上海舉行的「2017前沿科技論壇暨星環用戶和合作夥伴大會」上,劉汪根作了主題為「加速業務創新 淺談TDH 5.0的關鍵技術」的演講。因會後收到不少嘉賓反饋:對演講內容非常非常感興趣,演講信息量很大,又無法同時參加多個會場,特在後期整理演講速記稿以最大程度上彌補這個遺憾。

以下是演講速記對應PPT:

TDH5.0的架構圖

從上往下來看,最上層包含了全新的數倉開發工具集Transwarp Studio,以及機器學習開發套件。Studio用於提升大數據開發的效率,它包含5大互動式開發工具,分別涵蓋SQL開發、ETL設計、工作流與調度、元數據管理以及OLAP Cube設計,可以承擔數據倉庫開發的主要任務。機器學習方面提供了互動式的開發工具Midas,通過拖拽的方式來生成數據挖掘模型;另外還整合了Zeppelin,可以給數據科學家提供很好的R、scala等開發介面和可視化功能,並可以做模型的團隊共享。

往下可以看到原來4個產品變成了6個,新增了大規模搜索引擎Search和深度學習平台Sophon。此外,Stream帶來了革命性的技術成果,並正式更名為Slipstream。

在底層,TOS已經正式成為底層的資源管理和調度平台。TOS內置Docker和Kubernetes服務,可以帶來更好地彈性計算、更細粒度的資源調度,同時對服務快速升級、擴容和縮容等有更好的響應能力。

最後看左右兩側,左側的Guardian在5.0裡面正式變為一個獨立的服務,包含一個獨立的互動式頁面來管理整個平台的安全和資源;右側仍然是Transwarp Manager提供部署、運維等服務,相比較之前的版本,現在Manager管理的對象是一個一個的docker容器。

TDH 5.0在大的技術層面的變革,包括:

基於Docker和k8s的基礎部署平台,帶來更好的彈性計算和資源管理;

②全面的數倉開發工具集合,讓大數據開發的效率提升,數據質量得到改善;

③SQL更全面的涵蓋了全文檢索、流處理等新型業務的開發;

④Inceptor在批處理方面的體性能比4.6系列提升30%,在互動式分析的性能和併發性提高數倍,仍然大幅度領先SparkMPP

⑤新的調度器提供了混合負載下的QoS的管理能力,適應更多的複雜場景應用;

⑥Slipstream引入了低延時的事件處理模型,結合微批處理的計算模型,加上高可用、CEP等技術,大幅度提高了流計算的可用性和適用業務範圍;

⑦Search通過SQL的引入和強勁的檢索、分析能力,給用戶構建大數據搜索引擎提供了一個簡單的選擇;

⑧新產品Sophon通過整合深度學習平台,讓大數據的管道和人工智慧的引擎能夠高效的連接起來;

⑨Discover推出了多個行業挖掘模型,可以有效的降低企業在數據挖掘方面的學習成本,讓新應用的構建更加簡單。

有了這些新的技術創新,TDH可以滿足更多領域內的數據開發工作:

基於Inceptor,開發人員可以很方便的構建新型數倉如邏輯數倉或實時數倉,或者構建高併發的數據集市提供互動式分析;

②使用Slipstream,無論是搭建IoT的實時監控還是複雜的在線風控等實時應用,開發的難度都大大降低;

③通過Search來構建大數據搜索引擎,可以很好的解決Pb級別的高速數據檢索需求;Inceptor Graphene能夠提供大規模的圖分析和社交分析能力;

④Sophon和Midas的組合,通過互動式的數據挖掘模型構建極大的降低了數據科學的入門門檻,大量的內置特徵工程模型也加速了大型模型的開發;

⑤大量的行業模型,可以更有效的幫助用戶來構建應用,如文本分析、用戶畫像、風險預測等。

很多客戶可能都有一個隱憂,我選擇一個平台,如何能夠避免被鎖定呢?另外底層技術的變化日新月異,應用的生命周期一般更長,如何避免底層技術的改動對系統的影響?還有個問題,如果要基於某個平台開發應用,很多時候需要充分了解架構細節,但是這個團隊培養成本過高,怎樣能夠以更低的成本來做應用開發?

那麼這個問題的答案就是:SQL。使用一個標準的語言來開發應用是不會過時的,也無需擔心底層的變化,如果有很好的SQL支持,應用是可以遷移到更好的技術平台上的。

3年前TDH 3.0的時候,首先支持了SQL 992003 OLAP擴展,而後在4.0的時候發布了PL/SQL,TDH4.3完成了對DB2 SQL PL的支持。去年8月份TDH 4.6支持了StreamSQLGraph SQL,比較好的將SQL推廣到流處理和圖分析。而TDH5.0將對TeradataOracleDB2的方言的支持,同時增加了全文檢索的SQL擴展和StreamSQLCEP擴展。

大家可能會問做大數據分析為什麼需要事務的保證呢?在我們接觸的大部分ETL場景裡面,都會涉及到一個表同時被多個數據源加工的情況,這個時候如果保證數據一致性,就必須引入事務;另外資料庫或者Io操作本身都有出錯的概率,在出錯情況下需要能夠回滾修改,這也是數據一致性的要求。另外如果沒有事務,開發人員就需要在業務邏輯中來hack相關的邏輯,往往這個事情就非常複雜,很多時候需要在業務邏輯上給出妥協。所以對比批處理業務,事務是非常有必要的。

Inceptor是從2015年開始支持事務,應該說是Hadoop業界首個提供完整的事務支持的產品,它提供Serializable Snapshot Isolation和數據強一致性,可以保證ConsistencyAvailability的要求。這張PPT下方的圖的技術方案的對比,可以看到在事務的ACID特性還是CRUD支持上,InceptorOracle是比較相近的,而HiveImpala都只是非常少的支持部分功能,完全不能適應生產的要求。

Holodesk是Inceptor內置的高速列式存儲,兼備列式存儲的高掃描吞吐和行式存儲的快速檢索能力。在我們的測試中,Holodesk可以在100毫秒內掃描1百萬行記錄,並且隨機查找一行的延時都在5ms以內。相比較ParquetHolodesk的存儲性能可以到達Parquet7倍以上,在高併發情況下領先更多。


我們開發了新的SLA scheduler,通過優先順序區分、不同的pool隔離等方式來實現專道專用,就像這幅圖裡的高速道路一樣。新的Furion SchedulerFAIR Scheduler提供更好地調度策略,可以更細粒度,並且對權重和用戶策略感知,從而提供更靈活的調度功能。因此,Inceptor可以比較好的處理各種混合負載情況下的應用部署,方便用戶進行業務規劃。

從5.0開始,流處理產品正式更名為Slipstream流計算的發展歷史經歷了多次轉變,最早的低延時的Storm到後面可用性更強的微批處理模式,Spark Streaming是它的代表,去年開始以Flink為代表的低延時和一般可用性的事件驅動模型又開始火熱起來。今年我們去參加Strata Hadoop World,一共看到了大概10種流處理引擎,一個顯著的特點是要麼聚集在低延時上,要麼聚焦在可用性上。

Slipstream可以說是在計算模式和可用性方面都做了巨大的變革。首先它提供了同時支持事件驅動和微批處理的混合模式的執行引擎,事件驅動模式下延時在5ms以內,而微批處理模式則有很高的吞吐率。在可用性方面,Slipstream一共有6項重要功能,包括複雜時間處理 CEP 引擎,全面的ANSI SQL支持,支持多種時間窗口並能容忍數據的亂序到達,能夠允許多流的聚合分析,同時允許流上數據可以和歷史數據關聯,此外Slipstream也支持在流上運行一些數據挖掘的模型。

Search也是5.0的一個新產品,提供大規模搜索的引擎,同時也可以提供海量數據上的統計分析能力。譬如說我需要在1PB的通話數據中按照某個條件或者組合條件來搜索某個人,這就是搜索;而我希望看到這個人在一段時間內的通話時長或者是跟誰打電話最多,這就是分析能力,因此Search能夠很好的處理以上的混合場景。SearchInceptor SQL engine配合使用,提供了標準的SQL介面,以及全文檢索的SQL擴展,兼容Oracle的擴展標準。在系統可用性方面,Search也做了大量的工作,讓系統更加可靠和穩定,並加速系統性能。在我們的一個測試中,使用10台機器構建的Search集群,對100TB的數據的模糊檢索可以做到幾百毫秒內完成。

HyperbaseNewSQL資料庫,能夠支持超高的併發業務,並提供了非常好的SQL開發介面,提高開發效率。同時Hyperbase內置了多種索引的支持和對非結構化數據的支持。

從存儲的角度來看,Hyperbase有很好的併發性和非結構化數據的支持,它非常適合一些高速的數據入庫的場景。

機器學習是當前大數據的業務創新的主要領域,TDH也配備了兩大產品,其中Discover是偏向給數據科學家使用的數據挖掘平台。提供了完善的R語言開發介面和環境,同時也支持PythonSpark編程,因此數據科學家可以比較靈活的實現特徵工程的提取演算法。同時Discover提供了多種行業的模板,給開發人員提供比較好的基礎支持。此外,Discover支持模型導出,因此可以在其他引擎如Slipstream中做預測分析。整合了Zeppelin,方便做數據可視化以及團隊共享與協助。


Sophon是另外一個機器學習產品,它和Discover不同的之處有三點: ①它包含互動式的開發IDE Midas,用戶可以通過拖拽運算元的方式來實現複雜的數據分析工作流程;②它內置了大量挖掘運算元,基本上涵蓋了常用的挖掘演算法; ③整合了深度學習的框架TensorFlowMxNet,用戶可以很方便的在圖形化平台上構建神經網路模型並靈活調參。


如果把數據的開發周期劃分為數據整合、數據治理、工作流調度、OLAP分析和應用開發者幾個階段,大數據開發工具集Transwarp Studio為每個階段都提供了有效的工具。

①Transporter是數據整合工具,它能夠在秒級別將數據從關係資料庫同步到TDH中,同時支持多種格式的文件數據,以及去重、聚合、關聯等在內的多種數據轉換操作;

②Governor是數據治理工具,目前它可以有效的管理TDH中的元數據,同時提供可視化的數據血緣分析和影響分析,梳理數據的流轉,提高數據的質量;

③Workflow是圖形化的工作流設計、調度工具,同時還提供豐富的分析功能,幫助找到工作流中的異常問題、性能回歸等問題;

④RubikOLAP Cube的設計工具,它能讓用戶很方便的根據業務特點來設計多維CubeInceptor可以利用這些Cube來加速SQL查詢的性能和併發度;

⑤WaterdropSQL開發的IDE,它能非常好的幫助開發人員提供SQL開發效率,譬如關鍵字高亮、語法檢查、格式化輔助等功能,用戶可以直接做SQL或存儲過程的編輯,執行SQL並預覽數據等。

TDH5.0中正式將Apache Hadoop的版本升級到2.7.2。透明加密、灰度升級、分級存儲以及Namenode Federation這些功能都可以使用了。另外一個重大變化就是5.0Guardian正式成為一個最基礎的安全與資源管理服務,它負責管理所有的TDH產品和組件的安全與許可權。Guardian支持了完整的基於RBAC規則的安全和許可權控制協議,內置了LDAPKerberos認證,服務本身支持高可用性,有獨立的頁面用於許可權和資源的配置、查看和搜索。 另外Guardian提供REST APIJava Client兩種模式,任何第三方應用都可以通過調用API來安全的接入TDH平台。

TDH 5.0的另外一個大的創新就是使用DockerKubernetes來部署和資源調度。容器技術實現了應用級別的一種隔離,它避免了傳統的以虛擬化主機方式做隔離帶來的性能損失問題。它性能更好,部署敏捷,足夠輕量,這些優點可以非常好的滿足TDH在性能和部署敏捷方面的要求。根據測試結果,同樣配置的基於DockerInceptor和基於物理硬體的Inceptor相比,性能損失幾乎可以忽略不計。



熱門推薦

本文由 yidianzixun 提供 原文連結

寵物協尋 相信 終究能找到回家的路
寫了7763篇文章,獲得2次喜歡
留言回覆
回覆
精彩推薦