成人免费xxxxx在线视频软件_久久精品久久久_亚洲国产精品久久久_天天色天天色_亚洲人成一区_欧美一级欧美三级在线观看

高可用大數據計算服務如何持續發布和演進

大數據
MaxCompute 是一種統一的大數據計算平臺, MaxCompute 向用戶提供了完善的數據導入方案以及多種經典的分布式計算模型,比如 SQL 、圖計算、流計算和機器學習等,能夠更快速的解決用戶海量數據計算問題,有效降低企業成本,并保障數據安全。

MaxCompute

MaxCompute

大數據計算服務 (MaxCompute) 是一種快速、完全托管的 PB/EB 級數據倉庫服務。具備萬臺服務器擴展能力和跨地域容災能力,是阿里巴巴內部核心大數據計算平臺,支撐每日***作業規模。

MaxCompute 是一種統一的大數據計算平臺, MaxCompute 向用戶提供了完善的數據導入方案以及多種經典的分布式計算模型,比如 SQL 、圖計算、流計算和機器學習等,能夠更快速的解決用戶海量數據計算問題,有效降低企業成本,并保障數據安全。 

 

 

 

MaxCompute 不只對阿里集團內部用戶開放,也向外部開放。天貓、淘寶、螞蟻金服等都在使用 MaxCompute , MaxCompute 是阿里集團內部最關鍵的大數據平臺,目前, MaxCompute 機器已經有五萬多臺,數據表是***以上,開發者有 8000 多個,性能上是 hadoop2 倍等,從數據上可以感受到 MaxCompute 是名副其實的海量大數據平臺,在業內能處理的數據量以及計算能力也是處于領先地位的。 

 

 

 

MaxCompute 底層是由阿里自主開發的盤古分布式存儲系統和伏羲分布式調度系統組成,在此基礎上,我們也開發了 MaxCompute 執行引擎, MaxCompute 是統一的大數據計算平臺,既能支持傳統經典的批處理,也支持流計算、圖計算、內存計算以及機器學習等,從這個角度來看,MaxCompute 與 spark 定位非常相似;在此之上, MaxCompute 支持靈活的語言,為了讓用戶能夠無縫接入 MaxCompute ,我們也支持開源系統好多的 API ,包括 spark API 和 Hive API 等。

批處理計算 

 

 

批處理計算 

目前,對于阿里巴巴甚至業界來說, SQL 類型的批處理是最經典最廣泛的應用了, SQL 批處理的流程如下:

用戶提交一條類似 SQL 的腳本到 MaxCompute 后, MaxCompute 會對 SQL 腳本進行編譯并優化,然后用 Runtime 運行。

大數據計算服務

MaxCompute 要做大數據計算的服務,并不像業界開源的 hadoop 、 spark 提供一套解決方案,我們需要提供一個 365 (天) x24 (小時)的高可靠,高可用的共享大數據計算服務。

那么,有什么好處呢?它可以:

– 使用門檻大大降低,用戶不用關心運維升級等

– 共享細粒度使用資源,從而做到低成本,高效率

大數據計算服務強調穩定性,與持續發展之間存在天然的矛盾。在一個穩定運行的大數據計算服務上改進和發布新功能就像“空中換車”,在高速飛行的飛機上替換引擎而同時要保持平穩飛行,其中的挑戰難度可想而知。

持續改進和發布中的挑戰

  • MaxCompute 每天都有***作業。如何能夠平穩安全,用戶無感知的發布新的功能?如何保證新版本的穩定性,沒有 bug ,沒有性能的回退?出現問題后如何能夠快速止損等等?
  • 面對外部用戶,在測試時如何保證數據安全可靠呢?

針對以上挑戰,我們提出在高可用服務下持續改進和發布了以下技術手段來克服:

– MaxCompute Playback 工具

– MaxCompute Flighting 工具

– MaxCompute 灰度上線,細粒度回滾

編譯器Playback工具

MaxCompute 目前主流的仍然是 SQL 類型應用,其中非常關鍵的模塊就是編譯優化器,我們需要快速提高我們編譯器、優化器的表達能力,以及性能優化水平。

那么,如何能夠保證升級過程中沒有大的 Regression ?

每天有 100 萬 + 個 job ,每天都在變化,如果人工分析的話,每個 script 僅需要 2 分鐘,需要91 人年,這是不現實的,所以,我們開發了編譯器 Playback 工具。

Playback 工具用來解決編譯器和優化器的測試驗證功能,利用大數據計算平臺的運算能力來自我驗證新的編譯優化器。

具體原理如下: 

 

 

 

基于 MaxCompute 強大而靈活的編譯擴展能力,編譯器基于 AST 的編譯器模型,使用了經典的 Visitor 模式。 SQL 腳本提交到系統后會將 SQL 腳本轉化成抽象語法樹,正常情況下的語法驗證和分析等實現了標準的 visitor , visitor 對應于 AST 的驗證等擴展性是非常好的,除了標準的 visitor 加入后,還可以加入一些有針對性的檢查驗證抽象語法樹的新 visitor ,將這些 visitor 加到語法樹上,就可以驗證新的編譯器和優化器生成出來的各種各樣的產出是否 OK ,以此來驗證新的編譯器和優化器的能力。

自我驗證 

 

 

 

整個驗證過程如下:

1. 當用戶提交一條 SQL 腳本發給 MaxCompute ,利用 MaxCompute 本身靈活數據處理語言來構造分析任務;

2. 利用 MaxCompute 本身超大規模計算能力來并行分析海量用戶任務,將一段時間用戶作業抽出;

3. 利用 MaxCompute 靈活的 UDF 支持且良好的隔離方案,在 UDF 中拉起待測的編譯器進行編譯,之后再進行詳細的結果分析。

整個過程都在 MaxCompute 完善的安全體系保護下,保障用戶的知識產權。

Playback 工具還有其它很豐富的作用,比如:

  • 進行新版本的驗證
  • 精確制導找到觸發新的優化規則的 query ,驗證其查詢優化是否符合預期
  • 在語義層面對于 query 進行整體數據分析

– 對相應的用戶發 warning 推動用戶下線過時的語法

– 對 query 整體進行分析來確定下一步開發的重點

– 評估新版本在查詢優化在執行計劃上的提高程度

Flighting 工具

除了編譯器和優化器外,另外有一個關鍵模塊就是執行器。那么,如何保證 MaxCompute 運行器是正確執行的?避免在快速迭代中的正確性問題,從而避免重大的事故?同時,如何保證數據的安全性呢?

傳統方式驗證運行器,最經典的是用測試集群來驗證,該方式驗證的缺點如下:

– 調度或者 scalability 等方面的改進往往需要建立一個相同規模的測試集群

  • 沒有相應的任務負載,無法構造對應場景
  • 數據安全問題,使得我們需要脫敏的方式從生產集群拖數據

– 容易人為疏忽,造成數據泄露風險

– 脫敏數據可能造成用戶程序 crash ,并且往往不能反映用戶運行場景

– 整個測試過程冗長,不能達到測試的目的 

 

 

 

所以我們引入了 flighting 工具來做測試和驗證,將 99% 機器資源使用線上版本運行生產作業,1% 機器資源用來為程序員上載的測試版本進行驗證。

資源隔離

那么,怎么保證測試驗證的作業不去影響線上生產的作業呢?這就需要我們完善資源隔離,具體包括:

  • CPU/Memory: 增強 cgroup ,任務優先級
  • Disk :統一的存儲管理,存儲的優先級
  • Network : Scalable Traffic Control
  • Quota 管理

所以我們能夠在保障線上核心業務需求情況下進行 flighting 的測試。

數據安全

從數據安全角度來說,我們的測試不需要人工干預進行數據脫敏; Flighting 的任務的結果不落盤,而是直接對接分析任務產生測試報告:

– 結果正確性: MD5 計算,浮點等不確定性類型的處理

– 執行性能的分析: straggler , data-skew , schedule quality

灰度上線 

 

 

 

SQL 的關鍵模塊如編譯優化和執行都可以得到有效測試和驗證,接下來就可以上線了,上線時也會有很大風險,因此,我們實行灰度上線。按照任務的重要性進行分級,支持細粒度發布,并且支持瞬時回滾,控制風險到最小。 

 

 

 

開發新功能后做回歸,回歸后發布,開始時往往有新功能后,就進行驗證,如果新功能是針對編譯器、優化器,就用 playback 驗證,針對 Runtime 就用 flighting 驗證,所有測試驗證結束后,就到灰度發布階段,直到所有任務***發布上線后,我們就認為這一次開發迭代是成功的,以此類推,不停的向前演進,既能保證服務可靠穩定運行的同時,將我們的性能提升,以滿足用戶的各種需求。 

責任編輯:龐桂玉 來源: 36大數據
相關推薦

2017-01-06 08:37:13

大數據高可用計算

2019-08-08 10:18:15

運維架構技術

2017-09-13 13:42:09

微服務緩存架構

2017-07-03 15:32:49

數據庫MySQL架構

2017-12-29 08:54:58

高可用數據庫架構

2021-09-17 07:51:24

Keepalived服務高可用

2019-02-26 09:39:46

數據庫高可用架構

2017-03-13 11:39:00

WOTWOTA高可用架構

2015-12-18 14:05:09

大數據政府行業云華為

2013-09-09 09:39:02

云數據庫京東云

2018-01-04 13:39:34

大數據云計算IT行業

2021-05-08 09:14:55

云計算大數據人工智能

2018-09-10 21:14:48

2018-06-19 17:32:32

電競數據平臺

2024-01-10 07:23:52

高可用策略實踐

2024-10-08 08:27:22

2012-07-03 16:46:39

實時監控萬國數據

2017-05-04 12:48:18

WOT網易NDC

2017-12-07 22:08:16

系統架構設計數據服務交易系統

2017-10-23 09:10:52

點贊
收藏

51CTO技術棧公眾號

主站蜘蛛池模板: 成年人在线视频 | 国产成人av在线播放 | 久久精品亚洲精品 | 亚州春色| 99久久精品免费看国产免费软件 | 亚洲一区欧美 | 欧美日韩国产在线观看 | 国产一区二区影院 | 999久久久免费精品国产 | 在线观看国产三级 | 久久国产精品亚洲 | 色综合一区二区 | 成人免费视频 | 国产影音先锋 | 国产成人精品一区二区三区在线 | 久久国产精品99久久久大便 | 性高朝久久久久久久3小时 av一区二区三区四区 | 性做久久久久久免费观看欧美 | 国产欧美一区二区三区久久手机版 | 99久久精品免费 | 欧日韩在线观看 | 成年男女免费视频网站 | 亚洲一区二区三区视频 | 久久999| 韩日精品一区 | 国产一级电影在线 | 久久91精品久久久久久9鸭 | 在线三级电影 | 久久精品成人一区 | 亚洲福利在线观看 | 成人精品系列 | 久久高清 | 欧美成人一区二区三区片免费 | 7777奇米影视 | 天堂一区| 最新一级毛片 | 国产成人免费视频网站高清观看视频 | 成人h动漫精品一区二区器材 | 97超在线视频 | 成人三级视频在线观看 | 日韩在线三级 |