導語
數據分析引擎是數字經濟時代的新動能,但很多數據分析引擎無法滿足實時處理大規(guī)模數據的性能要求。柏睿數據從“根技術”自主研發(fā)的全內存分布式數據庫RapidsDB,通過內存存儲、MPP并行計算、動態(tài)查詢優(yōu)化和即時編譯等查詢性能優(yōu)化技術,為企業(yè)提供全球領先的數據處理和分析能力,構建高性能、安全合規(guī)、自動化的數據洞察數字化平臺,靈活滿足企業(yè)多元交付場景的實時數據分析與海量數據高效管理需求。柏睿數據RapidsDB研發(fā)負責人丁若冰將詳解柏睿數據RapidsDB查詢性能優(yōu)化之道。
一、背景
作為國家重大發(fā)展戰(zhàn)略,數字經濟越是發(fā)展,數據的價值越為突出。如何充分挖掘數據價值成為核心任務之一,其中在數據處理這一“價值變現”的關鍵環(huán)節(jié),必然要解決如何處理超大規(guī)模量級的數據,以及如何將大規(guī)模數據進行實時高效分析和應用等問題,此時則需要強大的數據分析引擎來支撐??梢哉f,數據分析引擎將是數字經濟時代的新動能,并助力實體經濟高質量發(fā)展。
數字化轉型中的企業(yè)要成為優(yōu)秀的數字化組織,同樣需要具備實時高效、靈活易用、可擴展的數據分析基礎設施,從而充分發(fā)揮數據價值,形成業(yè)務數據化和數據業(yè)務化的驅動閉環(huán),更好地實現智能商業(yè)決策、生產經營優(yōu)化及產品和服務創(chuàng)新。但很多數據分析引擎因受限于低效的磁盤I/O、不合理的執(zhí)行計劃,單機的處理能力上限等因素,無法滿足企業(yè)實際業(yè)務場景中實時處理和分析大規(guī)模數據的性能要求。
為助力數字經濟高質量發(fā)展、加速企業(yè)數字化轉型,柏睿數據打造具有完全自主知識產權的全內存分布式數據庫RapidsDB,做到了極致的數據處理和分析性能。通過內存存儲、MPP并行計算、動態(tài)查詢優(yōu)化和即時編譯等查詢性能優(yōu)化技術,突破了數據庫諸多性能瓶頸,構建性能全球領先、安全合規(guī)、自動化的數據洞察數字化平臺,靈活滿足多元交付場景的實時數據分析與海量數據高效管理需求。
柏睿數據RapidsDB與常見數據分析引擎性能對比
如上圖,在某國有大型銀行招標測試的TPC-H SF100測試上,柏睿數據RapidsDB在各場景的性能測試中,整體性能較諸多常見數據分析引擎大幅領先。從總執(zhí)行時間上可看出,柏睿數據RapidsDB在100G的TPC-H數據集上查詢性能是常見查詢引擎的至少8倍。
二、技術原理與實踐
1、RapidsDB技術架構
RapidsDB是柏睿數據新一代數據智能產品體系中的核心算力引擎,基于全內存分布式架構,全面對標Spark計算引擎,幫助企業(yè)建立大規(guī)模實時數據高效處理與分析平臺。
RapidsDB技術架構由管理工具模塊、接口模塊、分布式計算與存儲集群模塊和數據聯邦模塊組成。
RapidsDB架構圖
•管理工具模塊提供管理支持。用戶可以使用RapidsDB的Manager工具,簡單便捷地完成RapidDB的安裝、部署、監(jiān)控和運維;同時可以使用RapidsShell工具,在命令行上對RapidDB進行操作和使用。
•接口模塊提供對外接入的入口。提供Java、Python等主流語言的驅動程序,用戶可以使用多種編程語言,通過標準的驅動API完成對數據庫的接入操作。
•分布式計算與存儲集群提供查詢計算和數據存儲。用戶的操作請求通過驅動傳遞到存儲與計算集群,存儲與計算集群完成對用戶請求的高性能的解析、優(yōu)化、執(zhí)行和響應。
•數據聯邦模塊提供聯邦查詢服務。聯邦模塊通過可插拔的連接器接入20+異構數據源,靈活實現跨數據源的查詢、分析、聚合等操作。
柏睿數據RapidsDB采取的查詢性能優(yōu)化手段具體如下。
2、內存存儲架構,提升I/O速度
RapidsDB采用內存存儲架構,能夠做到納秒級的讀寫性能,遠超微秒級磁盤讀寫性能幾十萬倍。RapidsDB存儲引擎Moxe的數據以堆外內存來存儲,一方面可以利用內存本身的高效讀寫性能,另一方面堆外內存無需垃圾回收,可以減少垃圾回收器的停頓時間,從而提升程序性能。
3、MPP引擎,橫向擴展計算性能
RapidsDB使用MPP架構(大規(guī)模并行處理架構),在計算時可以將一個查詢任務拆分成多個并行執(zhí)行的小任務,并分發(fā)給MPP集群中的多個節(jié)點來執(zhí)行,從而有效提升任務、算子執(zhí)行的并行度,提高RapidsDB的查詢性能。
4、動態(tài)查詢優(yōu)化技術,智能優(yōu)化查詢計劃
動態(tài)查詢優(yōu)化技術是柏睿數據獨立自主研發(fā)的技術,已獲美國授權專利。它使用一種叫做代價預估的機制,對于每一個執(zhí)行計劃、執(zhí)行子計劃、算子給出基數假設,通過在執(zhí)行中最終基數的反饋來動態(tài)地調整最初的基數,輔以機器學習的方法來提升基數估算的準確度。這些評估調整的基數用于幫助 RapidsDB確定操作符的執(zhí)行順序、確定查詢中JOIN的順序、指導RapidsDB拆分任務、預計算及緩存數據。
隨著RapidsDB運行的越久,對執(zhí)行計劃、執(zhí)行子計劃、算子的基數假設就會越精準,那么基于基數所做決策的效率就會越高。
5、即時編譯,特殊代碼生成提速查詢執(zhí)行
RapidsDB使用Lambda Flow與內存存儲引擎相結合,在查詢執(zhí)行階段通過即時編譯提高執(zhí)行效率。
RapidsDB的Lambda Flow利用即時編譯技術(JIT Compiler),在查詢時將頻繁執(zhí)行的方法進行特殊代碼生成,再編譯為機器代碼,提升執(zhí)行效率。例如,針對WHERE條件判斷、聚合運算等場景,RapidsDB計算引擎實時地將表達式的路徑編譯為具體代碼執(zhí)行,在原過程中產生的大量不必要的調用和分支跳轉則都會被優(yōu)化掉。
MOXE存儲層也做了相同的優(yōu)化。針對特定的表結構,MOXE定制了讀取和解析元組的代碼。如在解析元組的流程中,根據表結構動態(tài)生成的代碼,無需做數據類型的重復判斷,只需按照順序解析數據。另外,在獲取部分列時,實現直接根據對應偏移量提取數據,跳過不需要提取的列,從而降低計算及I/O開銷。隨著處理的數據量增加,節(jié)省的計算及I/O量是驚人的。
6、聯邦查詢,零數據遷移
RapidsDB通過可插拔的聯邦連接器來完成對20余種異構數據源的統(tǒng)一訪問支持。聯邦連接器內置Oracle、MySQL、PostgreSQL、Hive、Kafka等連接器,能夠直接完成對相應數據源的實時接入、查詢、分析功能,無需數據遷移,大大提高了數據處理和分析效能。
此外聯邦連接器還支持跨數據源的連接查詢,能夠透明融合企業(yè)跨部門數據源的數據查詢分析,突破數據共享瓶頸,實現多方數據安全高效流通。
三、應用實踐和收益
隨著企業(yè)上云數字化轉型進程的加速,中國移動某專業(yè)公司持續(xù)助力云計算產業(yè)發(fā)展和行業(yè)數字化轉型。與此同時,該公司的業(yè)務數據也迎來指數級增長,總存儲量高達百倍TB級別,同時業(yè)務場景也越來越復雜,由此對經營分析系統(tǒng)的數據庫查詢分析性能提出了更高要求。經過科學評估和測試,最終選擇柏睿數據RapidsDB來替代原有基于磁盤架構的數據庫MySQL。
柏睿數據RapidsDB集群部署
該公司在其經營分析系統(tǒng)上部署了一主兩從的三節(jié)點柏睿數據RapidsDB集群,基于RapidsDB無磁盤IO、高并發(fā)、高可擴展性、低延時以及高速存取等核心優(yōu)勢,滿足了數據查詢性能提升、數據架構精簡和數據融合等實際業(yè)務場景需求,實現TB級數據秒級響應,數據查詢分析效率整體提升約200倍,同時降低了數據庫開發(fā)、運維和更換建設成本,助力該公司切實高效地激活數據要素潛能,加速全方位云化轉型。
柏睿數據RapidsDB與原有數據庫的查詢性能對比
四、未來展望
在與新一代硬件、云計算技術、人工智能等技術的交匯融合下,數據庫技術架構正在持續(xù)迭代升級。同時根據Gartner技術報告分析,In-DBMS Analytics庫內分析技術將是數據庫技術主流發(fā)展趨勢;未來,從數據產生、集成、建模、執(zhí)行、管理均在同一平臺完成,甚至完全可將分析建模的工作轉移到庫中。
基于“數據智能”核心技術路徑,柏睿數據RapidsDB未來將朝著如下技術發(fā)展方向不斷演進,助力企業(yè)從智慧數據中創(chuàng)造業(yè)務新價值。
•庫內人工智能:RapidsDB已經可以使用UDF的方式支持庫內推理,未來將提供在數據庫內的建模、訓練、預測等功能,通過領先的人工智能技術為企業(yè)提供更加實時的數據處理、更深入的數據洞察和更精確的決策支持。
•索引優(yōu)化技術:通過建立大量查詢索引來為每個表提供技術支持,以實現每個查詢都能命中索引,以空間換時間的方式提高查詢性能。
•融合新型存儲硬件和新一代非易失性內存(NVM)技術:將SSD、NVMe驅動器等新型存儲硬件與NVM技術相結合,實現更大的存儲容量和更好的I/O性能,更好地處理大規(guī)模的數據集和更復雜的應用程序,并確保數據在系統(tǒng)故障或斷電等情況下不會丟失。
•多云靈活部署:目前RapidsDB已滿足在阿里云、華為云等公有云上部署,支持虛擬化、云原生的私有化部署,未來將更好地支持云原生、自動化部署和管理、彈性擴縮容等功能。
(免責聲明:本網站內容主要來自原創(chuàng)、合作伙伴供稿和第三方自媒體作者投稿,凡在本網站出現的信息,均僅供參考。本網站將盡力確保所提供信息的準確性及可靠性,但不保證有關資料的準確性及可靠性,讀者在使用前請進一步核實,并對任何自主決定的行為負責。本網站對有關資料所引致的錯誤、不確或遺漏,概不負任何法律責任。
任何單位或個人認為本網站中的網頁或鏈接內容可能涉嫌侵犯其知識產權或存在不實內容時,應及時向本網站提出書面權利通知或不實情況說明,并提供身份證明、權屬證明及詳細侵權或不實情況證明。本網站在收到上述法律文件后,將會依法盡快聯系相關文章源頭核實,溝通刪除相關內容或斷開相關鏈接。 )