
近年以來,在數字化、智慧化趨勢下,資料需求快速發展,資料庫市場熱度持續走高。最近,由百度捐贈的開源實時資料庫 Doris 從 Apache 軟體基金會孵化器畢業,正式成為 Apache 的頂級項目,成為近期資料庫行業的重要事件。同時,這也是中國開源開發者所主導的新興資料倉儲及資料分析類開源項目的重大成功。

從鳳巢、百度統計到開源社區,Doris 的資料分析十四年
Doris 是由百度自研並捐贈至 Apache 軟體基金會的開源 MPP 資料庫,它的前身是百度 PALO(PALO 來源於 2012 年當時定位的核心場景——OLAP線上分析處理的字母倒序)。Doris 定位為高性能分析型資料庫,於 2008 年誕生,彼時的中國網際網路中,百度的營銷推廣系統鳳巢已經是規模和知名度非常大的企業級業務系統,背後,則由 Doris 支撐,並大幅提升了百度鳳巢業務的資料分析時效性。
2009 年,Doris 開始支持百度內部其他報表系統,包括支撐百度另一個王牌的網站分析產品——百度統計。2012年 Doris 成長為百度首個公司級 OLAP 分析平臺,並在之後幾年對各項核心技術進行升級,大幅提升各項技術指標。可以說,從創立到現在,Doris 跟隨了百度業務和資料分析發展的十四年,在百度內部支撐了 140 多個業務線的運行。
這樣的經歷本已足夠豐富,值得言說,但對 Doris 來說,以上的種種改進變化只是 Doris 發展之路的開端。2017 年百度宣佈 PALO 正式對外開源;2018 年將 PALO 的核心引擎捐贈給 Apache 軟體基金會,並命名為 Apache Doris,這標誌著百度 PALO 團隊開始全力推進 Doris 社區發展;2020 年以來,在百度 PALO 團隊與社區夥伴的共同努力下,Apache Doris 社區走上發展快車道,經過一年的發展,Doris 各項核心能力大幅增強,在開源社區和行業影響力也進一步提升,除了 GitHub star 數快速增長,Doris 社區還成為中國信通院 2021 年 「OSCAR 尖峰開源項目及社區」,獲得「首批可信開源社區共同體(TWOS)」 正式成員認證。到了 2022 年,隨著 1.0 大版本的正式發佈,Doris 日趨完善和成熟,百度正式發起商標捐贈,成功推動 Apache Doris 完成畢業,成為 Apache 軟體基金會頂級項目。

全場景實時性、高成熟度,Doris 打磨實時資料硬實力
開源的資料庫產品層出不窮,而 Apache Doris 之所以能夠脫穎而出,這與其十分獨到的差異化優勢緊密相關。第一點,在全場景實時方面,Doris 誕生至今的 14 年裡,它已在百度內外經歷了大量的複雜場景測試與工作,除了內部 140 多個業務線在使用,在外部有超過 500 多家企業使用。Doris 能夠完整支持數倉各類資料模型和查詢場景,並提供全場景實時、高性能的支持,例如,歷史資料、增量資料、單表查詢、流式寫入、批量匯入等等。
與之相比,市面上的一些其他實時數倉中,如 MOLAP 類數倉主要針對歷史資料,提供相對固化的多維建模,靈活性較差;另外,MOLAP 預建模也會出現資料爆炸的問題;此外,MOLAP 對增量資料的支持能力並不理想。而 Doris 則可以支持各種場景,並均能提供很好的性能。另外,一些在特定場景性能較高的實時數倉引擎,因受自身架構限制,對多表查詢支持較差,併發能力也存在顯著的短板。相比之下,Doris 在數倉的各個主要場景都能提供很好的支持,並能提供優秀的性能表現。
第二點,在易用性和成熟度方面,數倉本身是一個十分複雜的系統,系統的部署、運維、使用門檻都比較高,而經過多年打磨和大規模應用的 Doris 已經是成熟度較高的產品,具有優秀的易用性和可操作性。例如 Doris 對 SQL 具有完善的支持,並且高度兼容 MySQL 協議,最大程度降低了資料倉儲的使用門檻。
在部署中,以往資料倉儲通常需要依賴 Hadoop 等外部元件,維護部署成本較高,Doris 則擁有極簡的核心模組,且對外沒有任何依賴。同時 Doris 具有完善的 MPP 架構,內建強大的分散式集群能力,並提供易用的自運維支持。例如,Doris 可以支持自動化線上擴縮容,資料可在後臺實現自動均衡,全程不需要使用者手動參與,顯著降低了資料庫擴縮容操作的難度和風險。
擁有了這些全面的功能、易用性和性能表現,Doris 在 2018 年被捐贈給 Apache 之後,便快速吸引了大量中國頂級網際網路企業使用和參與貢獻。中國網際網路業務的資料體量和高併發需求,可能在世界上都是獨特的,Doris 能夠適應全場景的業務需求,無論是聚合、明細、單表、多表等網際網路大廠中各種資料分析的場景,Doris 都能較好支持,使用非常方便。
另外,在性能、功能豐富度和易用性上,網際網路公司的技術團隊使用 Doris 集群更加方便地實現動態擴縮容,當節點出現故障時,資料可以進行自動遷移,完全不依賴外部系統,也不會影響上層的業務系統,讓集群運維變得非常簡單。同時 Doris 提供了高併發與高時效的線上查詢體驗,幫助網際網路企業的技術團隊以極低的建設成本,滿足了業務側報表、大屏或即席查詢等需求。
Doris 作為一個複雜的系統,社區未來將持續打磨其核心能力,保持核心技術指標的領先。例如,百度將持續打磨和最佳化現有的查詢層、執行層和儲存層等核心元件,將其最佳化得更加完善、更加穩定、性能更強;實現完全的面向列的向量化執行引擎,全面淘汰行存;實現全新的 CBO 最佳化器以及更加精細和豐富的統計資訊,將 Doris 的性能和易用性進一步推向極致;強化 Doris 的 Profiling、Trouble Shooting、細粒度的資源監測和管控等能力等;推進研發冷熱分離、多表物化視圖、複雜類型、更新等社區呼聲最高的新特性。

堅定開源開放,讓 Doris 走得更遠
開源開放,一直是開發者展現硬核技術實力的方式,也是優秀技術人所追求的最純粹的目標。中國的開發者,早已從開源的使用者,逐步開始成為開源的貢獻者與核心項目的主導者。從 Apache Doris 社區的發展,我們看到了百度與 Doris 社區對開源精神的堅持,以及開放的技術心態。如今,Apache Doris 成功完成了畢業,成為 Apache 頂級項目,畢業是新的開始,也意味著新的責任和使命。作為 Apache Doris 的「孃家人」,百度在開源積累了多年的經驗,並且成功推出了飛槳、阿波羅、ECharts、BFE、BRPC、XuperChain 等一批知名開源項目。對於 Doris 未來的發展,百度將會一如既往全力投入開源社區,並將在 PALO 的商業化實踐中獲得的技術經驗持續與社區分享。
Apache Doris 的發展,離不開 Apache 軟體基金會的專業指導,以及美團、小米、京東、騰訊、位元組等大量社區夥伴的全力參與。未來,隨著項目的發展壯大,將會有更多的使用者和企業參與到社區的使用和貢獻中來。面對這樣全新的形勢,百度 PALO 團隊將以 Apache Way 為指引,與社區的夥伴們一道,建立和維護公平、開放、協作的行為規範,努力構建一個生機勃勃的開源社區。

Apache Doris 畢業會,Apache 軟體基金會項目導師、社區核心開發者悉數到場
PALO Cloud 是百度 PALO 團隊以 Apache Doris 為核心引擎打造的一款企業級雲原生實時數倉,歷經多年的大規模商業化打磨,PALO 具有完善的企業級特性和領先的雲原生能力,包括存算分離、多倉共享儲存、異構計算、容災備份等大量專有能力。同時,基於獨到的在離線融合、湖倉一體能力,PALO Cloud 將幫助使用者大幅簡化傳統的大資料基礎架構,減少資源和維護成本,真正構建以資料為中心的新一代全場景統一湖倉。未來,PALO Cloud 將提供全面的跨雲和混合雲能力支持,包括多雲部署、跨雲容災、跨雲冷熱分離、跨雲彈性等,幫助企業進入資料分析的「多雲原生」時代。
中國是百度開源的起點和根基,未來,百度也將繼續走向全球。從捐贈之初,PALO 團隊的目標就是將 Doris 建設成為全球一流的開源資料倉儲項目,百度的官網、文件、討論組等從最開始就是按照全球化的標準建設和運營。近年來,隨著項目的逐步成熟,Doris 也開始吸引一些海外企業與技術團隊的加入和使用。目前,百度正著手將 Apache Doris 和 PALO Cloud 推向全球,憑藉優秀的產品力,相信 Doris 和 PALO 未來一定能夠被更多海外的使用者所接受和認可。祝福 Doris,祝福 PALO,繼續成長,用技術,改變世界!