《AI時代的數據處理技術_陳文光.pdf》由會員分享,可在線閱讀,更多相關《AI時代的數據處理技術_陳文光.pdf(23頁珍藏版)》請在三個皮匠報告上搜索。
1、AI 時代的數據處理技術陳文光清華大學/螞蟻技術研究院大數據:數據量,數據生成的速度和多模態數據量(Volume)和數據生成速度(Velocity)圖片,文檔,圖,時序,交易物聯網、邊緣設備和用戶行為產生大量數據多模態數據(Variety)(in zettabytes)Volume of data/information created,captured,copied,and consumed worldwide from 2010 to 2025 Statista 2021 https:/ https:/ 5 GBGPT-22019年215億40 GBGPT-32020年51750億45 T
2、BGPT-3.5(ChatGPT)2022年11千億級百 TB 級?GPT-42023年3萬億級(估)未披露大模型需要大數據如何獲得更多數據?如何提升數據質量?如何高效處理海量數據?80%Data20%Model+=Better AI吳恩達(Andrew Ng.)吳恩達的“二八定律”:深度學習應當從 Model-centric 向 Data-centric 轉變向量數據庫是提升模型服務能力的核心技術搜索增強的內容生成:RAGVector databaseQuestion?PromptNearest neighborsAnswerUser大模型崛起引領大數據新趨勢在線離線一體化向量數據庫與關系數
3、據庫一體化數據處理與 AI 計算一體化趨勢一:在線離線一體化問 題在線模型(策略)表現與離線不一致AppsDatabase(MySQL)Queue(Kafka)RealTime ETL(Flink,SPARK)OLTP(Hbase,KV,ES)ETL(Flink,Spark+HUDI)DataLake(MPPDB,HDFS)OLAP(Presto,CK)Analysts實時鏈路離線鏈路Online Model Update(PyTorch,TF)Model Serving(PyTorch,TF)Batch Training/Test(PyTorch,TF)數據不一致 模型效果不一致2-in-1
4、 Architecture:TP&AP 一體化HTAP 引擎(TP+AP)SQL優化器并行執行存儲過程用于事務和分析工作負載的一份數據副本雙計算引擎原生多租戶架構Oracle 兼容性MySQL 兼容性與多租戶高度兼容,實現資源隔離兼容 MySQL 和 Oracle單機分布式一體化架構分布式存儲分布式事務分布式調度可以獨立部署,也可以分布式部署架構創新Zhifeng Yang,Quanqing Xu,Shanyan Gao,Chuanhui Yang,Guoping Wang,Yuzhong Zhao,Fanyu Kong,Hao Liu,Wanhong Wang,Jinliang Xiao.O
5、ceanBase Paetica:A Hybrid Shared-nothing/Shared-everything Database for Supporting Single Machine and Distributed Cluster.PVLDB,16(12):3728-3740,2023.OceanBase:分布式 HTAP 數據庫實時數據分析和決策對于企業來說非常重要:OceanBase 采用分布式架構,具有優異的 TP 性能,同時支持分析和批處理(AP)自動計劃不斷演變復雜查詢優化水平可擴展性(數百億條數據記錄)和低延遲(秒)線性化實時 OLAP 處理能力同時處理TP和AP查詢T
6、P&AP同一套引擎優化資源分配和流量控制的靈活策略,集群級別的并發控制混合負載Traditional processingHTAP processingStep 2 OLAP requestsOceanBaseclusterOLTP+OLAP requests Step 1 OLTP requestsTP&AP 同一套引擎HTAP+DBaaS:成本優化和簡化維護成本優化,維護方便HTAP 引擎OLTP workloadOLTP systemOLAP systemOLAP workload圖風控方案中的在線離線一體化:問題 分布式圖數據庫,支持自定義圖查詢語言 GQueryTuGraph DB
7、流圖計算系統,支持 GremlinTuGraph Dataflow在線近線數據不一致 模型效果不一致TuGraphDBMessage QueueTuGraphDataflowTuGraphDataflowDecision EngineStreamingWriteRule based ServingDataServingDecision MakingHistorical PlaybackApplication 以在線數據庫內容為準,同步到近線系統保證在線近線數據一致 避免不同語言語義的不一致性 很多細節,比如 Nodelimit在線近線系統使用同樣的查詢語言TuGraph DB:分布式圖數據庫,
8、支持國際標準圖查詢語言 ISO-GQLTuGraph Dataflow:流圖計算系統,支持國際標準圖查詢語言 ISO-GQLTuGraphDBMessage QueueTuGraphDataflowTuGraphDataflowDecision EngineStreamingWriteRule based ServingDataServingDecision MakingHistorical PlaybackApplication圖風控方案中的在線離線一體化:解決方案趨勢二:向量數據庫與關系數據庫一體化存儲引擎事務引擎SQL引擎向量索引向量搜索引擎向量存儲SQL查詢向量查詢OceanBase螞
9、蟻VSAG庫查詢處理器查詢請求應用場景一體化的優點OceanBase 以插件形式實現向量數據庫指將向量數據處理能力和關系型數據管理能力結合在一起的技術策略螞蟻 VSAG提供通用向量檢索和構建接口(與 Faiss 形式類似)-Add/Build:增量/批量 構建向量索引-KnnSearch/RangeSearch:向量檢索(返回行號和距離)-Serialize/Deserialize:向量索引 序列化/反序列化VSAG 是面向螞蟻的通用向量索引庫提供最佳實現的 HNSW生產可用的 DiskANN支持 INT8 類型向量檢索(非 SQ/PQ)PQ(進行中)包含目前主流的向量索引實現自適應指令集加速
10、(SIMD 指令集加速)索引分區Top1/TopK 召回優化向量間距離計算優化針對場景的優化VSAG 與 Faiss 的區別VSAGFAISS提供最佳實現的 HNSW提供生產可用的 DiskANN支持 INT8 類型向量檢索(非 SQ/PQ)提供 x86、ARM 平臺編譯和 SIMD 運行提供大量 low level 的算法,可自由組合(IVF、PQ、SQ、Refine)提供最佳實現的 GPU 支持提供 Binary 向量索引算法IVF 算法對于批量搜索有很大加速低門檻使用,無需算法專業知識,不需要算法選型,直接通過簡單接入,可以快速獲得向量檢索能力,擁有內存和磁盤兩個場景下極致解決方案的索引
11、庫向量檢索工具箱,可以深度定制向量檢索算法,對于特定的場景/workload 可以有更好的性能,需要用戶對于檢索算法/參數非常了解,有最好的 GPU 算法實現,面對高寫入/高 QPS 場景有巨大優勢在 OceanBase 中集成 VSAGOceanBase 提供模塊化機制引入 VSAG針對所有 OceanBase 節點進行檢索對所有節點結果進行合并與 OceanBase 中的本地二級索引類似Vector Search RequestExtensionsVSAG LibOceanBase NodeExtensionsVSAG LibOceanBase NodeExtensionsVSAG Lib
12、OceanBase NodeOceanBase ProxyOceanBase ProxyOceanBase Proxy檢索過程與分析型索引類似OceanBase 新增向量二級索引趨勢三:數據處理與 AI 計算一體化大數據流程AI 流程CCNet 流程Common Crawl 是一個海量的、非結構化的、多語言的網頁數據集,包含近 10 年的隨機網絡數據,PB級規模,可從 Amazon S3 上免費獲取。GPT-3 訓練數據的 60%來自 Common Crawl。CCNet 是 Facebook 發布的數據清洗流程,希望從 Common Crawl 中能夠提取出高質量的文本數據集。大模型訓練數據
13、處理Data+AI 典型場景刪冗以正則化后的文檔哈希值為鍵,保留首次出現的文檔分詞基于 SentencePiece 分詞器,支持48種語言質量評估使用 KenLM 庫中的一個文本質量模型評估perplexity過濾分桶根據用戶提供的語言白名單、黑名單過濾,根據質量分桶語言分類基于 fastText 的預訓練語言分類模型(126MB)解析從 WARC 中分離 HTML請求與響應頭、HTML 內容。Common Crawl 原始數據清洗后高質量文本數據AI 和大數據處理在硬件層面也有很大差別數據處理與 AI 融合問題GPU 或 AI 加速器處理器網絡主要編程語言編程框架通用 CPUCPUNVLin
14、k+IB/100Gbps+10Gbps 25Gbps-PythonJava/ScalaPythonPyTorch,Tensorflow,PaddlePaddleSQL,Spark,DataFramePandas,NumpySciPy,NotepadAI大數據處理小數據處理AI 計算在數據中心的比例將持續顯著增加,主要是 Python 生態分布式大數據處理主要是 Java 生態“小數據”處理主要是 Python 生態數據與 AI 獨立生態的問題SparkTF/PyTorchSpark預處理神經網絡后處理1.兩類軟硬件生態的開發、調試、部署和維護都更加復雜2.系統間數據傳輸開銷降低性能3.需要招聘
15、兩類程序員,或精通兩者的程序員 只支持 CPU,不支持 GPU 和異構加速器 重新開發深度學習模塊,不能復用 TF 中的功能 Spark 本身性能有缺陷問 題一種嘗試:BigDL*深度學習的 Java 化*Dai,J.J.,Wang,Y.,Qiu,X.,Ding,D.,Zhang,Y.,Wang,Y.,.&Wang,J.(2019,November).Bigdl:A distributed deep learning framework for big data.SoCC 2019另一種嘗試:Spark 的 Python 化Koalas EvolutionLaunched at Spark+A
16、l Summit 2019Now3 million PyPI downloadspermonth.PySpark 支持 Dataframe 和 SQL Koalas 是 Pandas 的 Spark 封裝,現在已經被合并進入 Spark3.2 PySpark 在 Spark 用戶中的使用已經接近一半 Python 由于無靜態類型,編譯優化方面有難度,在常見查詢中與 Java 性能有約 50%的落后融合數據處理和 AI 生態的愿景Python UDF InlinerPython ByteCodeNumba IRExpressionCatalyst 轉化為無 Python UDF 的 Logical Plan 進而交由 ChukonuSQL 執行 視情況增加數據類型、操作、優化規則等,以支持復雜的UDF開源諸葛弩待開發Python UDF InlinerPySparkCatalyst OptimizerCode Generator for Chukonu C+20 APIC+20APINative RDDExecution Engine for General MR app and MLLogicalPythonUDFPythonFunctionAI 將成為主要計算形式數據處理生態應該圍繞AI來建設加速器支持與彈性任務調度一次編寫,到處執行謝謝謝謝謝謝