在現代商業環境中,數據分析已然成為企業獲取成功的關鍵所在。長期以來,百度廣告數據團隊始終面臨著極為復雜的數據分析挑戰,其需要為逾千名用戶提供在線廣告業務分析服務,而這些用戶涵蓋策略工程師、產品經理、數據分析師、運營團隊以及銷售人員等。過去他們不得不編寫繁雜的查詢語句,由此耗費掉大量的時間與精力。百度廣告業務的重要性和復雜性,致使相關的業務數據每月會有超過 200 個迭代更新,用戶唯有掌握豐富的業務領域知識方可成功實施數據分析。
直面這些挑戰,百度廣告數據團隊開發了一個全新平臺“DATAPILOT”,促使數據分析朝著更為簡單且高效的方向發展。百度憑借與 NVIDIA RAPIDS for Apache Spark 團隊的緊密協作,優化大模型以及 NVIDIA GPU 加速計算技術,為數據分析賦予了全新的表現形態。
DATAPILOT 平臺——
自然語言與 SQL 高效執行的完美融合
DATAPILOT 的核心優勢體現于其卓越的自然語言交互能力以及底層 SQL 的高效快速執行能力。此前的數據分析平臺極為復雜,涵蓋了超過十萬個各異的字段以及三千余個繁雜的表格,其中部分字段存在于十幾個表格之中,并且有著不同的字段名稱和近似的業務含義,這致使銷售、產品經理以及研發人員于該平臺進行數據分析時面臨極大困難。
場景一:需要統計過去一周的信息流廣告消費數據。在以往的數據分析平臺中,有超過五張表包含與信息流業務消費相關的數據,包括流量、廣告、轉化等不同業務層級,以及 CPC、CPM、OCPC 等不同業務形態。此外,還涉及消費金額和現金金額的差異。為了完成從“需求理解”到“表格篩選”、“口徑梳理”、“SQL 編寫”以及“獲取結果”的全流程,用戶需要具備非常強的業務領域知識和專業的 SQL 能力。
場景二:需要分析昨天搜索廣告收入為什么下跌。在實際經驗中,廣告收入下跌可能受自然流量、行業政策、客戶行為、系統異常等多方面因素影響。分析人員首先不僅需要了解搜索廣告的業務知識,而且需要掌握收入分析的專家經驗,同時往往需要基于多個表格,編寫不同的 SQL 統計不同維度的指標數據,最終基于一定的歸因邏輯才能得出對應的潛在結論。
而 DATAPILOT 平臺將復雜的 SQL 編寫過程成功轉化為自然語言交互,用戶僅需以自然語言與平臺展開對話,仿若與舊友閑談一般,平臺能夠迅速領會用戶意圖并即刻做出回應。過去用戶或許需要等候數分鐘乃至數小時方可看到結果,而如今新平臺可在短短幾秒內完成整個流程,顯著提升了速度,且讓交互過程如聊天般流暢自然。此外,平臺還提供自動洞察功能,借助先進的大型語言模型來應對復雜的業務場景分析難題。用戶僅需簡單點擊一次即可獲取格式化的智能分析結果以及詳盡的數據報告。
為能更優地理解 DATAPILOT 平臺的優勢,下述為一個實際的用戶案例。某一用戶想獲知昨天收入下降的原因,借助 DATAPILOT 平臺,用戶僅需鍵入問題,平臺即可自動生成所需的 SQL 查詢,并于數秒內返回結果。此過程涵蓋三個步驟:表選擇、SQL 生成以及數據洞察。首先,平臺會依據用戶的輸入選取相關的表,而后生成相應的 SQL 查詢,最后提供數據洞察報告。這一過程不但快速高效,還極大地簡化了用戶的操作。
經由這一創新解決方案,百度廣告數據團隊大幅提高了數據分析的效率與準確性。用戶不再需要精通繁雜的查詢語法,僅通過自然語言輸入問題,即可迅速獲取所需的分析結果。這種創新不但極大地優化了用戶體驗,還顯著提升了工作效率。在整個過程中,從自然語言到 SQL 生成以及 SQL 的執行操作極為關鍵。百度匯集了大量私域知識,在百度的文心大模型上進行預訓練與微調,使得模型具備了出色的用戶意圖理解、表格理解以及 SQL 生成能力。
在具備了卓越的 SQL 生成能力和數據智能洞察能力之后,為了匹配自然語言表達、對話式的交互體驗,SQL 的執行速度成為了制約平臺表現的瓶頸。自然語言對話式交互成為未來,后端計算效率也必須跟上對話節奏。過去,百度廣告數據團隊一直專注于軟件層面的優化,但現在軟件優化已達到瓶頸,需要全新的軟硬件協同加速能力來突破 SQL 執行效率的限制。
百度的探索:Spark-RAPIDS+GPU
軟硬件結合突破速度瓶頸
NVIDIA RAPIDS 是由一系列開源軟件庫和 API 組成,用于完全在 GPU 上執行數據科學流程,從而可將訓練時間從幾天縮短到幾分鐘。通過隱藏 GPU 的工作復雜性,甚至隱藏數據中心架構內的后臺通信協議,RAPIDS 提供了完成數據科學的簡單方法,同時 RAPIDS 的運行位置不受限制,在云端或本地均可,因此可以在任何位置大規模運行,大大縮短任務的執行時間。RAPIDS 可以使用 NVIDIA GPU 加速所有主要的 Apache Spark 3 平臺,無需更改代碼。RAPIDS 由用于生產部署的NVIDIA AI Enterprise軟件套件提供支持。軟件及電信行業領導者通過 RAPIDS 加速他們的 Spark 業務,平均加速提升 40%,成本降低 60% 以上。
百度對多種技術方案進行了嘗試以提升速度,如 Spark CPU 優化,然而該方案性能天花板較低,難以突破 CPU 架構的物理限制;ClickHouse 這類方案無法處理完整且復雜的 SQL 連接,純硬件的 AEP 加固態硬盤優化僅局限于 I/O 層面,因此采用 Spark-rapids 與 GPU 這種軟硬件結合的方式成為當前的最優選擇。
百度廣告數據團隊構建起了一個涵蓋 CPU 和 GPU 的異構計算環境,充分發揮 GPU 的加速計算能力,精心設計了 SQL 識別與調度機制,通過對 SQL 進行分析以判定其是否能夠被加速,并將可加速的 SQL 分配至 GPU 執行,在NVIDIA RAPIDS Accelerator for Apache Spark和 NVIDIA 加速計算的軟硬件結合方案的有力支持下,底層確保了速度的提升以及資源的平衡利用:
該主導架構包括交互層、調度層和計算基礎設施層,交互層直接為用戶服務,實現文本到 SQL 轉換;調度層負責將 SQL 任務分發到不同的硬件引擎;計算和基礎設施層負責實際的計算工作,確保數據處理的高效和準確。
NVIDIA 助力百度廣告數據團隊:
創新方案提升數據分析效能
通過與 NVIDIA 工程師的緊密協作和助力,百度廣告數據團隊此前在實際業務中遭遇的諸多問題均獲得了有效的解決辦法。譬如,針對 20% 的數據滿足了 80% 的數據需求這一情況,提出了數據冷熱分層存儲的解決方案,依據不同場景間的數據特征,選取適宜 GPU 批次的數據分布以獲取最佳的吞吐量,借助 Parquet sub-rowgroup reading 解決高壓縮比掃描數據所產生的 OOM 問題,并優化 GPU 的 parquet 解碼以處理部分 IO 性能瓶頸,這些為百度提升 SQL 的速度執行優化給予了極大的助力,最終助力百度廣告數據團隊顯著提高了業務計算效率。
NVIDIA RAPIDS融合了 RAPIDS cuDF 庫的強大數據處理能力和 Apache Spark 分布式計算框架的規模化優勢。RAPIDS 配備了基于 UCX 的內置加速數據混洗功能,該功能可針對 GPU 間的通信和 RDMA 進行優化配置。此外,RAPIDS 為 Spark 提供了經過優化的 Shuffle 實現,通過 UCX 技術優化 GPU 數據傳輸,確保數據盡可能保留在 GPU 上,并直接實現 GPU 到 GPU 的數據傳輸,有效繞過了 CPU 的瓶頸。
在過去的數月中,憑借 NVIDIA RAPIDS for Apache 團隊的技術支持,百度廣告數據團隊在數據分析的效率方面取得了顯著進展:
首先,整體上在用戶即席查詢數據分析場景,實現了 35% 的業務覆蓋,并達到了平均 2 倍+的加速比,并且在部分場景加速比達到 5 倍,SQL 執行效率和用戶體驗得到明顯改善;其次,在收入分析等復雜業務場景,數據分析效率從天級別降低到分鐘級別;同時由于 SQL 執行效率的提升,用戶進行策略調研和 A/B 實驗效果分析的節奏也大幅加快。
伴隨技術的進一步發展與應用的深入,未來百度廣告數據團隊還計劃在軟硬件的定制部署上開展更多的創新,包含探尋 GPU、CPU、MEM 和 SSD 之間的最佳配置,以最大化發揮軟硬協同、深度優化之后的資源利用效率,達成全局 50% 的 IT 成本降低目標。百度計劃繼續與 NVIDIA 合作,進一步提升其在數據分析方面的能力。
NVIDIA 的技術支持使得百度能夠在復雜的數據環境中更有效地應對挑戰,提高了數據處理的速度與準確性,同時也提升了用戶體驗。通過這些創新解決方案,百度廣告數據團隊不但可以提升實際業務價值,也推動了整個數據分析行業的技術進步。
-
NVIDIA
+關注
關注
14文章
4935瀏覽量
102806 -
百度
+關注
關注
9文章
2255瀏覽量
90252 -
數據分析
+關注
關注
2文章
1427瀏覽量
34011
原文標題:百度利用 DATAPILOT 及 NVIDIA RAPIDS Accelerator 實現數據分析變革
文章出處:【微信號:NVIDIA-Enterprise,微信公眾號:NVIDIA英偉達企業解決方案】歡迎添加關注!文章轉載請注明出處。
發布評論請先 登錄
相關推薦
評論