人工智能現在是量化研究等領域軟件開發的基石。在工作負載激增期間,量化對沖基金經常面臨資源浪費和計算資源不足等挑戰。
為了解決這些問題,基于云的彈性計算提供了一種有效的解決方案。它縮短了上市時間,靈活地分配資源,并促進了最新硬件技術的采用。
JuiceFS是一款云原生高性能分布式文件系統,可以為量化對沖基金增強人工智能訓練,并在云中實現彈性吞吐量。它提供了具有加速緩存的經濟高效的存儲解決方案,無縫集成了內部部署資產與云部署,并優化了計算資源。
本文將討論人工智能量化研究中的挑戰、彈性計算的好處、彈性環境中的存儲痛點,以及JuiceFS如何用創新技術解決這些問題。其目標是為開發基于云的機器學習平臺的企業提供見解,幫助他們解決關鍵數據吞吐量不足的挑戰。
一、量化對沖基金面臨的挑戰:固定的IT資源和波動的工作負載
量化研究使用數學模型分析市場數據,為投資決策提供信息。這是金融領域的一個重要領域,它應用了機器學習等人工智能技術。下圖顯示了量化公司的每日任務量,黃線表示波動。任務量在工作時間明顯增加,在正常辦公時間之后下降。
量化企業的任務量
大多數量化對沖基金依賴于數據中心的固定IT資源,包括:CPU、內存和存儲。然而,這種設置帶來了工作負載波動的挑戰:
•當數據中心提供固定的計算能力時,將會發生浪費資源和降低效率的情況,導致資源在低需求時期過剩,而研究人員在高峰時段會經歷排隊和延遲。研究人員和企業都在努力實現資源利用率和效率的最大化。
•在工作量激增期間計算資源不足:研究人員經常需要大量的計算資源進行大規模驗證或驗證研究論文。而在工作人員招聘或工作量高峰季節,資源不足成為難題。
•不靈活的擴展時間表:數據中心擴展過程通常需要大約三個月的時間,但硬件短缺可能會將這個時間表延長到六個月。供應鏈的長時間中斷給滿足業務需求帶來了挑戰。
彈性計算為這些挑戰提供了一個簡單而有效的解決方案。
二、彈性計算在量化對沖基金中的好處
近年來,基于云計算的解決方案在量化對沖基金中獲得了顯著的發展。通過在云平臺上建立他們的研究平臺(例如,在AWS云平臺上),這些公司從無縫部署和優化的資源利用中受益。
本節探討彈性計算在量化對沖基金中的優勢,重點是縮短上市時間,促進靈活的資源分配,并支持快速采用最新硬件技術。
1、最小化上市時間
基于云的研究平臺使量化對沖基金能夠快速部署他們的系統,消除了與硬件選擇和采購相關的延遲。這種簡化的流程加快了對計算資源的訪問,加快了研究和開發進程。
2、靈活的資源分配
彈性計算使量化對沖基金能夠根據需求動態分配計算資源。研究人員可以很容易地調整資源以滿足他們特定的計算需求,無論他們是需要大量的計算能力還是面臨低需求期。這種靈活性確保了最佳的資源利用率,消除了傳統數據中心中與固定計算能力相關的低效率。
3、成熟企業的混合云方法
擁有現有IDC設施的老牌量化對沖基金公司可以有效地利用混合云戰略。通過在平均或低需求時期利用其IDC資產作為固定計算能力,這些公司優化了資源配置。同時,他們可以通過利用云資源增加工作負載來擴展計算能力。這種混合方法最大限度地利用了現有資產,同時利用了云計算提供的可擴展性和成本優勢。
4、快速采用最新硬件
彈性計算使量化對沖基金能夠通過快速采用最新的硬件來保持領先地位。與傳統的硬件采購不同,傳統的硬件采購通常涉及三到五年的漫長折舊期,彈性計算允許快速集成尖端硬件設備。這種靈活性使對沖基金能夠利用最先進的技術和算法,增強其在市場上的競爭優勢。
二、彈性環境中的存儲痛點
在彈性環境中,與計算相比,存儲帶來了更復雜的挑戰。雖然計算任務很簡單,但在彈性計算過程中,存儲數據需要仔細考慮數據保留的問題。此外,在擴展計算資源時,存儲系統必須能夠處理不斷增長的需求,同時保證高可用性和可擴展性,以防止數據丟失或性能下降。
1、痛點1:平衡性能、成本和效率
企業在選擇存儲解決方案時,通常會考慮三個相互關聯的因素:性能、成本和效率。評估不同的選項對于找到最適合特定企業需求的解決方案至關重要。
存儲選擇的性能、成本和效率
在模型訓練階段,優先考慮高性能存儲解決方案。例如,內部部署環境可以使用全閃存陣列或高級硬件(例如,AWS FSx For Lustre)來實現卓越的吞吐量性能。
然而,這些高性能選項的成本較高,因此需要探索用于完整數據歸檔的低成本存儲解決方案。內部部署環境可以從高密度存儲解決方案中獲益,從而降低成本,而云計算環境可以利用Amazon S3等對象存儲服務。
為了在成本和性能之間取得平衡,企業通常會創建兩組異構存儲環境:
•低成本的全數據歸檔存儲系統
•用于模型訓練的高性能存儲系統
在這種多存儲環境中,管理數據遷移和數據生命周期變得更加復雜,特別是在處理多個區域或云計算環境時。因此,需要一種有效的解決方案來高效地管理存儲,同時保證速度和成本效益。
2、痛點2:緩慢的存儲系統擴展
由于以下原因,擴展存儲系統通常具有挑戰性:
•復雜的數據再平衡:可以通過增加更多的硬盤來擴展傳統的存儲系統的容量。然而,在分布式存儲系統中,擴展變得更加復雜。它涉及到數據再平衡,以有效地管理整個存儲系統中的所有數據。這個過程確保了數據在多個存儲設備之間的有效分配和利用。
•性能影響:存儲硬件在性能方面有固有的限制。當一部分硬件容量用于擴展期間的數據遷移時,可能會影響在線應用程序的性能。這種性能下降會影響應用程序有效地提供服務和滿足用戶期望的能力。
例如,考慮這樣一個場景:一個大型存儲集群減少到只有三臺計算機,每臺計算機配備兩塊硬盤,存儲多個數據副本。在分布式系統中,為了保證數據的安全,數據通常被復制多次。在這個場景中,圓形、三角形和菱形表示單獨的文件,每個形狀在分布式架構中有三個副本。
分布式存儲中的三個副本
當存儲容量不足時,需要增加新的計算機來擴展存儲空間。然而,這不僅僅是駐留在新的計算機上的新數據的問題,必須重新平衡現有數據,以確保有效的數據管理,使用特定的算法將數據從舊位置移動到新位置。此外,硬盤提供的容量是有限的,如果保留一部分用于數據遷移,則無法有效地為在線應用程序操作提供服務。
存儲擴展中的數據再平衡
存儲可擴展性帶來了挑戰,而且數據遷移的時機可能像股票市場的時機一樣難以預測。在不影響在線操作的情況下確保無縫數據遷移是一項復雜的任務,通常需要經驗豐富的專業人員進行人工干預。
除了增加容量之外,在集群中發生硬盤故障時,必須將數據傳輸到新的硬盤中,同時維護每個數據塊的三個副本。因此,即使不進行擴容,大規模存儲集群也需要每天進行數據遷移。
在如此具有挑戰性的存儲系統擴展條件下,存儲限制通常會阻礙新算法的實現和研究人員的靈感。
3、痛點3:盡管有可用容量,但性能不足
量化對沖基金通常需要擴展,因為吞吐量性能不足,而不是存儲容量不足。
硬盤具有性能限制。當現有硬盤達到其性能極限時,必須增加新的硬盤以滿足增加的性能要求。即使擁有足夠多的存儲容量,許多量化基金仍然需要擴展他們的系統以滿足新性能需求。
例如,考慮一個場景,其中需要讀取的數據存儲在圖中圓圈表示的范圍內。訪問這些數據所需的性能非常高。但是,圓圈對應的硬盤已經達到了性能極限。另一位研究人員現在需要讀取存儲在同一硬盤上的三角形,但這塊硬盤的性能也處于極限。因此,訪問三角形數據將明顯變慢。
性能不足導致存儲擴容,導致存儲空間閑置
為了提高性能,三角形中的數據需要遷移到新的硬盤上。這由上圖中未突出顯示的硬盤表示。
量化對沖基金行業之所以面臨這一挑戰是因為它依賴于來自市場的原始數據。雖然處理的原始數據量與硬盤容量相比很小,但它可以在多個研究人員之間共享。
即使在存儲容量充足的情況下,數據共享和同時訪問也會造成性能瓶頸。正是這一特點,促使量化基金尋求像JuiceFS這樣的解決方案,以克服其業績限制。
為在整體性能和成本之間實現更好的平衡,必須將存儲與可擴展性能相匹配,特別是在需要熱數據生成和極端計算彈性的場景中。
四、JuiceFS如何衡量性能并實現成本效益
當開發商在2017年開始開發JuiceFS時,其目標是為云計算環境設計一個專門的文件存儲系統,并且注意到市場上現有的文件存儲產品已經過時,有些甚至可以追溯到上世紀90年代,而這些產品仍被廣泛應用于量化對沖基金等行業。然而,考慮到基礎設施和資源環境的變化,而將JuiceFS的發展與當前環境的發展趨勢保持一致是至關重要的。
JuiceFS企業版的架構
JuiceFS架構由三個組件組成:
•元數據引擎
•數據存儲
•客戶
1、元數據引擎
文件系統是一種用于組織、管理和訪問文件和目錄的技術。在計算機上,文件系統允許通過文件和目錄與存儲在物理介質(如硬盤)上的數據進行交互。
例如,在Linux中,在將硬件設備格式化為文件系統之后,可以將其掛載到目錄中。這將創建一個包含目錄、文件夾和文件的目錄樹。
每個文件都可以具有指定的權限,并包含元數據,例如創建和修改時間戳。存儲技術服務商Juicedata公司開發了一個專門的元數據引擎來存儲這些信息。文件系統的性能在很大程度上依賴于該引擎的功能。
2、數據存儲
數據存儲用于存儲文件內容。在過去,管理存儲系統涉及數據分塊、存儲、副本管理和遷移等復雜任務。然而,在云計算環境中,這些復雜性已經被S3之類的服務解決了。因此,當決定在云中構建文件存儲系統時,使用S3并擴展其功能。在JuiceFS中,所有文件內容都存儲在用戶的S3桶中。
3、客戶端
JuiceFS客戶端提供了一個標準的POSIX接口,并支持像HDFS這樣的多個API,使開發人員能夠選擇最合適的接口。此外,還提供性能可擴展性特性,以滿足更高的性能要求。
為了克服S3在執行模型訓練或量化分析等任務時在性能和語義方面的限制,JuiceFS充當了一個中間解決方案。它將數據存儲在S3中,并提供POSIX和其他API來滿足不同的應用程序需求。通過內部優化,JuiceFS達到最佳性能。
4、緩存
JuiceFS結合了緩存來解決量化企業中熱數據的吞吐量限制。當用戶的GPU計算節點訪問數據時,它從S3獲取數據并將其存儲在JuiceFS緩存中。后續訪問由緩存提供,提供類似于全閃存文件存儲的性能。JuiceFS緩存是動態可擴展的,提供彈性和可擴展的吞吐量。
它可以與計算節點上的高性能存儲相結合,創建多級緩存,進一步提高性能。JuiceFS企業版緩存使用JuiceFS,數據可以經濟有效地存儲在S3中,同時提供一個加速的緩存層,可以動態擴展吞吐量性能。
為了解決NVMe存儲熱數據數量有限導致的數據熱點問題,采用了緩存分組的方法。用戶可以創建多個緩存組來存儲和管理熱數據,方便用戶根據需求進行配置。該方案有效解決了數據熱點問題。
JuiceFS企業版中的緩存分組
用戶可以定義自己的緩存組或將緩存組分配給每個團隊。這提高了熱數據性能,并實現了系統的近線性可擴展性。此外,在工作時間之后關閉這些緩存組有助于避免不必要的成本。
5、混合云部署
對于擁有內部部署資產的量化對沖基金,混合云部署選項允許將數據存儲在S3中,同時使用內部部署數據中心中的緩存組來加速計算。
JuiceFS混合云部署架構
JuiceFS支持在云計算和內部部署環境中的兩個JuiceFS實例之間透明地對用戶進行數據復制,而無需任何額外步驟。通過在高性能緩存層中自動存儲熱數據,JuiceFS確保了對熱數據的快速訪問,無論任務是在數據中心還是在云中執行。這種方法有效地解決了將現有的內部部署資產與靈活的云部署集成的挑戰。
六、結論
JuiceFS為人工智能量化研究提供了一個改變游戲規則的解決方案。通過優化資源利用、加快上市時間、促進無縫擴展和快速采用尖端技術,JuiceFS使企業能夠釋放其全部潛力,并在人工智能量化研究的動態環境中茁壯成長。