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