MySQL HeatWave獲取生成式AI和JavaScript等強大新功能
除了獲取Generative AI和JavaScript的支持外,甲骨文的MySQL HeatWave“另一個數據庫”還獲取了數據湖倉庫、機器學習、AutoPilot、分析、OLTP和多云等一系列強大的新功能。
譯自 MySQL HeatWave Gets Generative AI and JavaScript, Slew of New Features 。
隨著甲骨文CloudWorld大會本周在拉斯維加斯召開,甲骨文的MySQL團隊宣布MySQL HeatWave平臺獲得了一系列強大的增強功能,這不僅增強了其核心功能,還增加了生成式AI的支持,改進了對采用數據湖倉庫方式進行分析數據管理、自治運維和數據庫內機器學習的支持,并提升了核心編程性能和OLTP方面的效果。
開發者福音
MySQL團隊首先從分析方面入手介紹新功能,而將面向開發者的功能留到最后。對我們The New Stack的讀者來說,我認為他們把最大的亮點藏到了最后,所以我要先從MySQL團隊最后才提到的開發者福音開始:即為開發者提供了JavaScript和JSON支持。
基礎MySQL平臺對JSON的支持可以將JSON數據物化到表中的二進制列、文本列或虛擬列中。它還允許將JSON payload作為參數傳遞給存儲過程和函數。MySQL支持在客戶端使用兼容MongoDB API的XDevAPI,并且MySQL shell可以使用多種編程語言來操作JSON數據的輸入和輸出。現在JSON數據可以導入到HeatWave中,以二進制格式存儲,進行分區和壓縮,并可以橫向擴展到多個節點。MySQL團隊表示,簡單的過濾器查詢可以提速20倍,聚合查詢可提速22倍,大型連接查詢可提速144倍。
除了支持JSON格式,現在HeatWave的存儲過程也可以使用JavaScript語言進行編碼,此前只支持SQL。SQL是聲明式的基于集合的語言,這使其難以執行更具命令性的任務。JavaScript存儲過程和函數消除了這種限制,調用和使用方式與基于SQL的完全相同,無論是在查詢、視圖、數據操作語言命令還是數據定義語言命令中。
這兩種語言之間的數據類型轉換是隱式實現的。JavaScript代碼在GraalVM虛擬機中執行,提供了安全的沙箱計算和內存使用,并阻止直接網絡和文件系統訪問。
數據湖倉庫功能加強
接下來看看HeatWave的數據湖倉庫功能,它有多個方面的加強。首先,HeatWave開始支持Apache Avro數據文件格式,以增強對CSV和Apache Parquet格式的兼容性。該功能支持多種壓縮算法,在不同算法之間性能一致。Avro支持還包括利用HeatWave的“Autopilot”自動駕駛功能進行模式推斷、數據加載操作的集群容量估計以及時間估計。
公告的關鍵是,HeatWave現在支持了一種針對行式數據進行了優化的數據格式。與未優化的基于文本的CSV和列式的Parquet格式相比,可以看出甲骨文的MySQL團隊不僅重視分析工作負載,也關注OLTP工作負載,這是HeatWave的原始賣點。同時,分析方面還可以從支持Parquet標準之上的開源表格式Delta、Iceberg和Hudi中受益。
接下來,HeatWave增加了在亞馬遜網絡服務云上運行的支持。這意味著客戶在亞馬遜S3對象存儲中已經存在的任何格式的數據現在都可以在HeatWave中處理。即使HeatWave本身運行在甲骨文自己的AWS賬戶中,但仍可以連接到客戶賬戶中的數據。簡單地在CREATE TABLE命令中提供ENGINE = LAKEHOUSE子句,就可以將S3數據添加到HeatWave,該命令本身可以通過Autopilot自動生成,利用之前討論的模式推理。
AutoML增強,支持生成式AI
在AI領域,HeatWave的AutoML(自動機器學習)可以利用這種S3數據訪問(包括新的Avro支持)在HeatWave內構建機器學習模型,并在HeatWave數據上訓練。HeatWave AutoML還支持推薦模型,而不僅僅是其他AutoML平臺通常支持的分類、回歸、聚類/異常檢測和時間序列預測模型。
在競爭方面,甲骨文聲稱HeatWave的訓練速度比亞馬遜Redshift快25倍,這意味著作為AWS的數據倉庫,HeatWave優于亞馬遜自己的Redshift。與Snowflake的SnowPark ML相比,后者僅提供一個scikit-learn的橋接,沒有內置的AutoML。
MySQL AutoML中還支持生成AI,有兩種形式:支持大語言模型(LLM)和內置向量存儲。在LLM方面,HeatWave可以使用BERT和Tfidf從數據庫文本列內容生成嵌入,并與標量數據列的數值表示一起提交給AutoML。從所有這些輸入生成優化的模型。
對象存儲中的文檔也可以轉換為向量嵌入,存儲和索引到HeatWave向量存儲中。結合使用,這些功能可以對生成式AI查詢給出更具上下文的答案,因為向量存儲中的數據可以用來增強發送到LLM的提示。
Autopilot自動駕駛增強
接下來看看HeatWave的Autopilot自動駕駛功能,它使用AI實現自動化操作或高級功能的輔助。團隊為Autopilot添加了索引、自動卸載、自動壓縮和自適應查詢執行的支持。根據MySQL團隊的說法,后者可以在查詢執行開始后,根據遇到的數據分布動態調整數據結構和系統資源,第一次運行可以將性能提高10%到25%。
Autopilot索引是一種基于機器學習的服務,它可以為OLTP工作負載推薦輔助索引,包括建議新索引和識別無用的重復索引應該刪除的建議。Autopilot索引會考慮查詢和DML操作,如UPDATE、INSERT和DELETE。該服務還可以預測存儲需求和性能,并解釋其建議的原因。
自動加載和卸載根據訪問頻率將數據在常規MySQL數據庫和HeatWave集群之間移動,幫助開發人員避免手動執行這些操作。自動列壓縮會為每個列選擇匹配的壓縮算法,在內存使用和性能之間找到最佳平衡。公司稱內存節省可達6-25%,性能提升可達6-10%。在內存和性能之間進行算法優化,而不是讓開發人員在兩者間作選擇,這證明了其價值。
更多
其他功能還包括批量數據加載、分區、分析函數、SET操作,以及在多云(AWS、Azure和Oracle Cloud)上的運行支持。這些功能加強了MySQL HeatWave的持續發展勢頭,甲骨文稱在數字營銷、游戲、醫療保健和金融科技領域已經看到了這種勢頭。這充分展示了甲骨文將MySQL視為產品組合中的戰略資產。甲骨文數據庫自己是否主宰一切?也許吧。但擁有數十年生態系統和大社區的MySQL,以其模塊化、可插拔的引擎體系結構,已經在云、分析、機器學習和現在的生成式AI中煥發出新的生機。