當前位置:
首頁 > 最新 > Apache頂級項目孵化的故事-CarbonData成長史

Apache頂級項目孵化的故事-CarbonData成長史

背景介紹

在人工智慧、大數據領域,如何統一數據存儲以應對企業各種業務需求,是企業轉型面對最大的挑戰之一。業界IT巨頭如 Google、FaceBook 圍繞自己業務,都建立了統一數據存儲的龐大數據中心,但是本土大廠華為幹了這麼一件事,為廣大企業做了一款大數據統一存儲的標準數據格式-CarbonData,並開源了,還孵化為著名開源社區 Apache 的頂級項目。

Apache CarbonData 最近喜訊頻傳,今年一月份被 Apache 軟體基金會主席在月度報告上,從100多個項目委員會 (PMC)里,點名讚揚了 Apache CarbonData PMC 工作報告的詳實完善。二月八日,更發布了里程碑式版本1.3,重大功能包含了如:支持與 Spark 2.2.1 集成;支持預聚合,靈活高性能多維分析,無需預先數據建模;針對時間序列數據內置時間維的預聚合,支持自動上卷等多項突破。

最近百度 EChart 開源項目進入阿帕奇孵化器,Apache CarbonData 副總裁陳亮在 Apache 孵化器郵件列表裡投了贊成票。這是眾人拾柴火焰高,先進拉拔提攜後進的精神。我們為此特別將他在2017中國開源年會的精彩演講《 Apache 項目成長故事》與大家分享。

COSCon"17 的會議上,有幸見證了 CarbonData 項目負責人,Apache PMC,陳亮先生,他分享了整個故事——完整的故事(項目解決了什麼問題、為什麼開源、為什麼選擇 Apache、Apache way、孵化歷程),以下內容是根據演講速記整理。

?

正文

哪裡有什麼天生如此,不過是天天堅持罷了,CarbonData 之所以有今天,和我以及我的團隊的奮鬥精神是分不開的。比如今天,早上四點鐘我起床,從深圳趕到上海,不僅要和大家分享 CarbonData 的故事,也要說明勝利往往來之不易。上海的天氣相對深圳還是比較冷的,希望大家今天來這裡聽我這個演講能夠有所收穫,讓我覺得不虛此行。我今天會重點講這幾個方面。

華為是一個 ICT 解決方案提供商,業務幾乎涵蓋了方方面面,如電信、企業、消費者等領域。業務多,也就意味著數據量很大。當時我們團隊做大數據,其實開始做 BI 和報表,就是把數據呈現出來,結果數據量大了沒辦法,傳統資料庫和數據倉庫搞不定,必須要用大數據技術 HDFS、HBase、Spark 等。華為一直是為電信、金融、IT企業等用戶提供大數據平台解決方案,從眾多客戶場景中我們不斷提煉數據特徵,總結出了一些典型的對大數據分析統一數據存儲的訴求,逐步形成了 CarbonData 這個架構,在這個背景下我們開始了 CarbonData 這個項目。

在啟動 CarbonData 項目前,我們首先分析了下,當前大數據開源領域有沒有一個項目或者技術能夠滿足華為業務這種統一數據存儲的訴求。首先,我們分析了 NoSQL 數據 HBase、Cassandra 等,他們在 key/value 點查和並發性做得很好,但是不支持複雜業務的多維查詢,其次我們分析了 MPP 類的資料庫,這類項目支持的集群數量有限,不能滿足統一數據存儲的訴求。最後我們把 CUBE 技術,搜索類技術,SQL on Hadoop 技術都分析了一遍,發現都不能滿足統一數據存儲的要求。

在 CarbonData 項目里,我們充分借鑒了上面項目的優點,重點引入了多維索引、字典編碼等技術,讓數據更智能,與 Hadoop、Spark 生態無縫集成。

CarbonData 名字由來的故事:大家知道碳元素(Carbon)組成的產品從尼龍和汽油、香水和塑料,一直到鞋油、滴滴涕和炸藥等,滿足多種應用場景的數據,Carbon+Data,這就是我們項目名字的由來。

為什麼開源:因為在大數據和 IT 領域,只有開源開放,才能最終讓更多的客戶和合作夥伴的數據連接在一起,產生更大商業價值。開源是為了構建 E2E 生態,CarbonData 是數據存儲層技術,要發揮價值,需要與計算層、查詢層有效集成在一起,形成完成真正的生態發揮價值。

開源準備:我們當時把業界最牛的兩個基金會,一個是 Apache,一個是 Linux,詳詳細細分析的一下。這裡版面有限,只羅列了重要的信息。Apache 是非盈利的機構,採用捐贈方式,沒有僱員員,只有幾個支撐人員負責最基礎的保障,其他的 Apache 人員都是自願者形式參與,在 Apache 裡面沒有任何公司的影子,全是個人的。而在 Linux 完全不一樣,它的運作完全是商業行為。

Apache 基金會孵化準備:我大概花了一個月時間把 Apache 基金會的 Apache Way 全部研究透了,看完之後,我把孵化項目的幾個關鍵路徑列出來了,做過 Apache 項目的人都知道,基本上就是這個套路。

準備期,選擇合適的導師很重要,以及拜訪業界大牛,獲得他們的支持很關鍵。

孵化期,出版本時,mailing list 討論時會碰到很多挑戰,建議多研究下其他成功孵化項目,他們是怎麼做的。這裡有個經驗,不要怕他們指出你的錯誤,積極和他們討論,你本來就是孵化項目,需要他們的指導,最後在他們指導下你一步步成長了,這些孵化器里的 IPMC 是看在眼裡的,對最後畢業投票是非常有幫助的。當時 CarbonData 孵化器第9個月提出畢業討論時,孵化器項目的 VP John 第一個就贊成,表示 CarbonData 項目已經達到了畢業的條件了。

最後,花點時間,介紹下 Apache Way 里最精髓的部分:社區化。我相信大家參加過 Apache 項目的,經常聽到過這句話,就是 community over code,從 Apache Way 的角度,他們認為一個多樣化,活躍的社區是最重要的,參與的人多了,有那麼多眼睛盯著你,你的項目質量自然會好。當前 CarbonData 項目有來自30多家公司110多個直接代碼貢獻者,可以說在短短1年多時間裡,項目活躍度能達到這種程度的,在 Apache 社區都算非常優秀的。

另外想講一下這個,社區有個好處,在 Apache 開源社區沒有老大,都是互相尊重的,誰都可以提出不同意見,這樣可以吸引更多人參與進來。

最後講下 CarbonData 項目:Apache CarbonData 是一種新的高性能數據存儲格式,針對當前大數據領域分析場景需求各異而導致的存儲冗餘問題,CarbonData 提供了一種新的融合數據存儲方案,以一份數據同時支持多種業務場景需求,通過多維索引、字典編碼、列存等特性提升了 IO 掃描和計算性能,實現百億數據級秒級響應。

歡迎大家加入 Apache CarbonData 社區大家庭

首先,請加入我們的 mailing list,及時關注社區動態,發送郵件到:

其次,歡迎參與項目貢獻:

https://github.com/apache/carbondata(請記得給fork和點star)

https://issues.apache.org/jira/browse/CARBONDATA

更多信息,請參考 carbondata 官網:

我今天就講到這裡。謝謝!


喜歡這篇文章嗎?立刻分享出去讓更多人知道吧!

本站內容充實豐富,博大精深,小編精選每日熱門資訊,隨時更新,點擊「搶先收到最新資訊」瀏覽吧!


請您繼續閱讀更多來自 開源社 的精彩文章:

TAG:開源社 |