打開一篇篇 IT 技術文章,你總能夠看到“大規模”、“海量請求”這些字眼。如今,這些功能強大的互聯網應用,都運行在大規模數據中心上,然而,對於大規模數據中心,你又了解多少呢?實際上,除了閱讀一些科技文章之外,你很難得到更多關於數據中心的信息。數據中心每個機器的運行情況如何?這些機器上運行着什么樣的應用?這些應用有有什么特點?對於這些問題,除了少數資深從業者之外,普通學生和企業的研究者很難了解其中細節。
1 什么是Alibaba Cluster Data?
2015 年,我們嘗試在阿里巴巴的數據中心,將延遲不敏感的批量離線計算任務和延遲敏感的在線服務部署到同一批機器上運行,讓在線服務用不完的資源充分被離線使用以提高機器的整體利用率。經過 3 年多的試驗論證、架構調整和資源隔離優化,目前這個方案已經走向大規模生產。我們通過混部技術將集群平均資源利用率從 10% 大幅度提高到 45%。另外,通過各種優化手段,可以讓更多任務運行在數據中心,將“雙11”平均每萬筆交易成本下降了 17%,等等。
那么,實施了一系列優化手段之后的計算機集群究竟是什么樣子?混部的情況究竟如何?除了文字性的介紹,直接發布數據能夠更加拉近我們與學術研究、業界同行之間的距離。為了讓有興趣的學生以及相關研究人員,可以從數據上更加深入地理解大規模數據中心,我們特別發布了這份數據集。數據集中記錄了某個生產集群中服務器以及運行任務的詳細情況。在數據集中,你可以詳細了解到我們是如何通過混部把資源利用率提高到 45%;我們每天到底運行了多少任務;以及業務的資源需求有什么特點,等等。如何使用這份數據集,完全取決於你的需要。
2 你用這個數據可以做什么?
剛剛發布的 Alibaba Cluster Data V2018 包含 6 個文件,壓縮后大小近 50GB(壓縮前 270+GB),里面包含了 4000 台服務器、相應的在線應用容器和離線計算任務長達 8 天的運行情況,具體信息你可以在 GitHub 中找到。
通過這份數據,你可以:
- 了解當代先進數據中心的服務器以及任務運行特點;
- 試驗你的調度、運籌等各種任務管理和集群優化方面的各種算法並撰寫論文;
- 利用這份數據學習如何進行數據分析,揭示更多我們自己都未曾發現的規律。
只看上面這幾點,沒有接觸過類似數據的朋友,可能對於這份數據的用處還是沒有概念,下面我舉幾個簡單的例子:
- 電商業務在白天和晚上面臨的壓力不同,我們如何在業務存在波峰波谷的情況下提高整體資源利用率?
- 你知道我們最長的 DAG 有多少依賴嗎?
- 一個典型的容器存在時間是多久?
- 一個計算型任務的典型存在時間是多少?一個 Task 的多個 Instance 理論上彼此很相似,但是它們運行的時間都一樣嗎?
實際上,學者們甚至可以用這些數據作出更加精彩地分析。
2017年,我們曾開放的第一波數據(Alibaba Cluster Data V2017),已經產生了多篇優秀的學術成果。以下是學者們在論文中引用數據(Alibaba Cluster Data V2017)的例子,其中不乏被 OSDI 這樣頂級學術會議收錄的優秀文章。我們期待,未來你也能與我們共同分享你用這份數據產生的成果!
"LegoOS: A Disseminated, Distributed OS for Hardware Resource Disaggregation, Yizhou Shan, Yutong Huang, Yilun Chen, and Yiying Zhang, Purdue University. OSDI'18" (Best paper award!)
"Imbalance in the Cloud: an Analysis on Alibaba Cluster Trace, Chengzhi Lu et al. BIGDATA 2017"
"CharacterizingCo-located Datacenter Workloads: An Alibaba Case Study, Yue Cheng, Zheng Chai,Ali Anwar. APSys2018"
"The Elasticity and Plasticity in Semi-Containerized Co-locating Cloud Workload: aView from Alibaba Trace, Qixiao Liu and Zhibin Yu. SoCC2018"
3 Cluster Data V2018的不同
新版本 V2018 與 V2017 存在兩個最大的區別:
DAG 信息加入
我們加入了離線任務的 DAG 任務信息,據了解,這是目前來自實際生產環境最大的 DAG 數據。
什么是 DAG?
離線計算任務,例如 Map Reduce、Hadoop、Spark、Flink 中常用的任務,都是以有向無環圖(Directed Acyclic Graph,DAG)的形式進行編排的,其中涉及到任務之間的並行、依賴等方面。下面是一個 DAG 的例子。
規模更大
上一版數據包含了約 1300 台機器在約 24 小時的內容數據,而新版 Cluster Data V2018 中包括了 4000 台機器 8 天的數據。
原文鏈接
本文為雲棲社區原創內容,未經允許不得轉載。