1?
什么是流處理?
流是從生產者到消費者的一系列無限事件。大量數據生成為金融交易、傳感器測量或 Web 服務器日志等事件流。流處理是對接收到的新數據事件的連續處理。
Streamz 等流處理庫有助于構建用于管理連續數據流的流程,允許應用程序在事件發生時對其作出響應。
流處理流程通常涉及多個操作,例如過濾、聚合、計數、分析、轉換、充實、分支、連接、流量控制、早期階段反饋、回壓和存儲。
2?
為何選擇流處理?
數據流的持續處理在許多應用程序中都非常有幫助,例如:
醫療健康:持續監控儀器數據
智慧城市:交通模式和擁塞管理
制造:優化和預測性維護
運輸:優化路線和燃料消耗
汽車:智能汽車
金融:股票上市時間序列
機器學習:實時預測
廣告:基于位置或動作的廣告
由于各企業高度依賴實時分析、推理、監控等功能,因此流處理市場正經歷指數級發展。現在,基于流構建的服務是日常業務的核心組成部分,結構化遙測事件和非結構化日志正以每年超過 5 倍的速度增長。在現代商業環境中,這種規模的大數據流愈加復雜并且難以有效地運行,因此,經濟高效的可靠流對其至關重要。
3?
GPU 加速流處理
NVIDIA RAPIDScuStreamz 是 GPU 加速流數據處理庫,旨在加速流處理吞吐量并降低總擁有成本 (TCO)。NVIDIA 的 cuStreamz 制作流程每年可節省數十萬美元。cuStreamz 使用 Python 編寫,基于 RAPIDS(用于數據科學庫的 GPU 加速器)而構建。通過添加 GPU 支持的 Flink 可以看出,端到端 GPU 加速正迅速成為行業標準,NVIDIA 很高興能成為此趨勢的一個組成部分。
cuStreamz 基于以下內容構建:
Streamz,一個能夠幫助構建管理連續數據流流程的開源 Python 庫;
Dask,一個能夠并行處理流工作負載的穩健可靠的調度程序;
RAPIDS,一種用于流計算的 GPU 加速庫套件。
cuStreamz 通過在后臺利用 RAPIDS cuDF 來加速 Streamz,從而使用 GPU 加速流數據計算。cuStreamz 還受益于 cuDF 的加速 JSON、Parquet 和 CSV 讀取器和寫入器。cuStreamz 團隊構建了一個加速 Kafka 數據源連接器,能夠非常快速地將 Kafka 的數據直接讀取到 cuDF 數據幀中,從而顯著提升端到端性能。然后,可以使用 Dask 在分布式模式下并行運行流流程,從而大規模提高性能。
在下圖中對 cuStreamz 架構進行了概括總結。cuStreamz 是連接 Python 流與 GPU 的橋梁,應用了檢查點和狀態管理等復雜可靠的流功能。cuStreamz 還提供了必要的基礎模塊來編寫流作業,這些作業在 GPU 上安全運行,并且性能更好,成本更低。
4?
GPU 加速的端到端數據科學
基于 NVIDIA CUDA-X AI構建的 RAPIDS 開源軟件庫,使您完全能夠在 GPU 上執行端到端數據科學和分析流程。此套件依靠 NVIDIA CUDA基元進行低級別計算優化,但通過用戶友好型 Python 接口能夠實現 GPU 并行化和高帶寬顯存速度。
借助 RAPIDS GPU DataFrame,數據可以通過一個類似 Pandas 的接口加載到 GPU 上,然后用于各種連接的機器學習和圖形分析算法,而無需離開 GPU。這種級別的互操作性是通過 Apache Arrow 這樣的庫實現的。允許加速數據準備、機器學習和深度學習等端到端流程。
RAPIDS cuML 的機器學習算法和數學基元遵循熟悉的類似于 scikit-learn 的 API。單塊 GPU 和大型數據中心部署均支持 XGBoost 等主流算法。針對大型數據集,相較于同等功效的 CPU,這些基于 GPU 的實施方案能夠以 10 到 50 倍的速度更快地完成任務。
RAPIDS 支持在許多熱門數據科學庫之間共享設備內存。這樣可將數據保留在 GPU 上,并省去了來回復制主機內存的高昂成本。
*與NVIDIA產品相關的圖片或視頻(完整或部分)的版權均歸NVIDIA Corporation所有。
審核編輯:劉清
-
傳感器
+關注
關注
2551文章
51134瀏覽量
753849 -
加速器
+關注
關注
2文章
799瀏覽量
37889 -
機器學習
+關注
關注
66文章
8420瀏覽量
132682 -
智能汽車
+關注
關注
30文章
2857瀏覽量
107297 -
GPU芯片
+關注
關注
1文章
303瀏覽量
5820
原文標題:麗臺科普丨什么是流處理?
文章出處:【微信號:Leadtek,微信公眾號:麗臺科技】歡迎添加關注!文章轉載請注明出處。
發布評論請先 登錄
相關推薦
評論