當前位置: 華文世界 > 科技

DataPelago推出大數據、高級分析和人工智慧工作任務的通用引擎

2024-10-21科技

DataPelago推出了一種新的虛擬化層,該層允許使用者將人工智慧、數據分析和ETL工作任務轉移到他們想要的任何物理處理器上,而無需更改程式碼,從而為數據科學、數據分析、數據工程以及高效能計算領域帶來潛在的巨大效率和效能提升。

生成式人工智慧(GenAI)的出現引發了對高效能處理器的爭奪,這些處理器可以處理大型語言模型(LLM)的大量計算需求。與此同時,公司正在尋找方法,從現有的高級分析和大數據管道的計算支出中擠出更多的效率,同時處理結構化、半結構化和非結構化數據的永無止境的增長。

DataPelago透過構建他們所謂的通用數據處理引擎來響應這些市場訊號,該引擎改變了將數據密集型工作負載硬連線到底層計算基礎設施的模式,從而使使用者可以將大數據、高級分析、人工智慧和HPC(高效能計算)工作負載執行到任何可用的公共雲或本地系統以滿足其價格/效能要求。

DataPelago聯合創始人兼執行長Rajan Goyal表示:「就像Sun開發了Java虛擬機器(Java Virtual Machine)和VMware開發了虛擬機器管理程式(Hypervisor)一樣,我們正在構建一個在軟體而非硬體中執行的虛擬化層。」

DataPelago虛擬化層位於查詢引擎(如Spark、Trino、Flink和常規SQL)和由儲存及物理處理器(如CPU、GPU、TPU、FPGA等)組成的底層基礎設施之間。使用者和應用程式可以像往常一樣送出作業,DataPelago層將自動將作業路由並執行到適當的處理器,以滿足使用者設定的可用性或成本/效能特征。

在技術層面上,當使用者或應用程式執行任務(如數據管道任務或查詢)時,處理引擎(如Spark)將其轉換為計劃,然後DataPelago將呼叫開源層(如Apache Gluten),使用開放標準(如Substrait或Velox)將該計劃轉換為中間表示(IR)。計劃被發送到DataPelago平台的DataOS元件中的工作節點,而IR被轉換為在DataPelago平台的DataOS元件中執行的可執行數據流圖(DFG)。DataVM然後評估DFG的節點,並將它們動態對映到正確的處理元素。

Goyal說,擁有一種將正確的工作負載與正確的處理器相匹配的自動化方法,對於DataPelago的客戶來說將是一個福音,因為在許多情況下,他們並沒有從采用加速計算引擎時所期望的效能中受益。

「CPU、FPGA和GPU都有自己的最佳點,比如SQL工作負載或Python工作負載有各種各樣的運算子。並不是所有的’遊戲’都能在CPU、GPU或FPGA上高效執行。」「我們知道那些最佳點。因此,我們的軟體在執行時將操作符對映到右邊的處理元素。它可以將這個龐大的查詢或工作負載分解成數千個任務,其中一些將在CPU上執行,一些將在GPU上執行,一些將在FPGA上執行。這是在執行時到正確計算元素的創新自適應對映,這在其他框架中是缺失的。」

Goyal表示,DataPelago顯然無法超越應用程式在Nvidia GPU的CUDA、AMD GPU的ROCm或高效能CPU作業的LLVM中原生開發所能獲得的最大效能。但他說,該公司的產品可以更接近於從這些編程層獲得最大限度的應用程式效能,同時保護它們免受底層復雜性的影響,而不會將使用者及其應用程式束縛在這些中介軟體層上。

「GPU的峰值效能與應用程式的效能之間存在巨大差距。我們正在彌合這一差距。」「你會驚訝地發現,應用程式,甚至是今天在GPU上執行的Spark工作負載,得到的FLOPS還不到GPU峰值的10%。」

Goyal說,效能差距的一個原因是I/O頻寬。GPU有自己的本地記憶體,這意味著您必須將數據從主機記憶體移動到GPU記憶體才能利用它。Goyal說,在使用GPU時,人們通常不會將數據移動和I/O考慮到他們的效能預期中,但DataPelago可以消除這種擔憂。

Goyal說:「這個虛擬機器以我們融合運算子的方式處理它,我們執行數據流程圖。」「沒有數據移動,事物不會從一個領域轉移到另一個領域。我們以串流媒體的方式執行,不做儲存和轉發。因此,I/O大大減少,並且我們能夠將GPU的峰值效能保持在80%到90%。這就是美麗之處。「

該公司的目標是各種數據密集型工作負載,組織正試圖透過在加速計算引擎上執行來加速這些工作負載。這包括使用SQL、Spark、Trino和Presto進行臨分時析的SQL查詢,使用SQL或Python構建的ETL工作負載,以及使用Flink等框架的流數據工作負載。Goyal表示,由於DataPelago能夠加速檢索增強生成(RAG)、微調以及為向量資料庫建立向量嵌入,生成式人工智慧工作負載可以在LLM培訓階段和執行時受益。

客戶可以在本地或雲中執行DataPelago。Goyal說,當在雲湖庫(如AWS EMR或來自Google cloud的DataProc)旁邊執行時,該系統有能力完成之前100節點集群與10節點集群所完成的工作量。他說,雖然使用DataPelago的查詢本身執行速度提高了10倍,但考慮到授權和維護因素,最終結果是總擁有成本提高了2倍。

「但最重要的是,程式碼沒有任何變化,」他說。「你正在寫Airflow。你正在使用Jupyter,正在編寫Python或PySpark,Spark或Trino -無論你在執行什麽,它們都將繼續保持不變。」

該公司已經在一些最快的數據平台上對其軟體進行了測試。Goyal說,當與Databricks Photon (Goyal稱之為「黃金標準」)進行對比時,DataPelago的效能提升了3到4倍。

Goyal說,客戶沒有理由不能使用DataPelago虛擬化層來加速在HPC設定上執行的科學計算工作負載,包括人工智慧或模擬和建模工作負載。

他說道:「如果你擁有針對特定硬體編寫的自訂程式碼,你將最佳化擁有80G GPU記憶體、如此多SMs和如此多執行緒的A100GPU,那麽你便能夠針對其進行最佳化。「現在你正在編排你的底層程式碼和內核,這樣你就可以最大化你的FLOPS或每秒的操作次數。我們所做的是提供一個抽象層,現在事情在下面完成,我們可以隱藏它,所以它提供了可延伸性和套用相同的原理。

「這裏並沒有什麽魔力。只有三件事:計算、I/O和儲存部份,」他繼續說道。「只要你設計的系統的阻抗符合這三點,那麽你就不受I/O限制,不受計算限制,也不受儲存限制,那麽生活就很美好。」

Goyal說,DataPelago已經有付費客戶在使用它的軟體,其中一些正處於試驗階段,一些即將投入生產。該公司計劃在2025年第一季度正式全面推出其軟體。