Categories
程式開發

最新性能測試:Kafka、Pulsar 和Pravega 哪個最強?


1簡介

流式系統持續地從一系列數據源注入並處理數據。這些系統建立在只追加(Append-Only)數據結構之上,實現高效的讀寫訪問,目標在於達到較低的端到端延遲。隨著5G/IoT邊緣計算的客戶端數量的不斷增長,持續不斷產生數據的容量一直在以指數級爆炸性增加[1][2]。這種增長給流式系統帶來了很大壓力,不僅要求這些系統能夠以低延遲處理所有客戶端生成的工作負載,還要能夠以高吞吐量容納大容量(PB/EB級別)數據。

真實的東西(梵文“迅速”)是一套我們從頭構建的開源流式存儲系統,能夠持續從數據源注入數據並滿足此類流式工作負載的苛刻要求。它通過分層存儲為每一個Stream(對流式數據的抽象,類比Kafka topic)提供存儲無界數據的能力,同時達到彈性耐力一致性。 Pravega的讀寫路徑都被精心設計,以滿足事件流生產和消費的低延遲和高吞吐。此外,Pravega還提供諸如長期保留(Retention)和擴展等特性。本文會對Pravega進行性能評估,重點關注讀寫性能。

為了對比不同的設計選擇,我們還額外展示了來自其它系統的性能結果:阿帕奇·卡夫卡阿帕奇·普薩(Apache Pulsar)。 Pulsar和Kafka最初都被作為優秀的消息系統而為人熟知,但它們最近都做出了很大努力向存儲系統方向發展,這兩個系統最近都新增了分層存儲的特性。然而,它們的設計選擇具有根本性的不同,並導致了不同的行為以及性能特點。我們將會在本文探索這些不同點。

原文鏈接:【https://www.infoq.cn/article/fp1TLWAUROkOXxq15qGf】。未經作者許可,禁止轉載。