使用 Genie Code 將專有代碼轉換為開放 ANSI SQL
Databricks 推出 Genie Code 的智能代理轉換器(Beta 版),將專有 SQL 方言(如 T-SQL、Snowflake 等)轉換為開放的 ANSI SQL。通過並行代理迭代轉換、驗證語法和語義,簡化數據倉庫遷移。支持遷移項目管理、複雜度評分和血緣分析,並提供自定義技能自動應用轉換規則。
Databricks 宣佈推出 Genie Code 的智能代理轉換器(Beta 版),旨在將專有 SQL 方言轉換為開放的 ANSI SQL,從而大幅簡化從傳統數據倉庫向 Lakehouse 的遷移過程。該轉換器目前支持 T-SQL、Snowflake、Redshift、Oracle、BigQuery 和 Teradata 等主流方言,並將遷移項目從需要團隊全程管理的複雜任務轉變為可配置、啓動和監控的自動化流程。
智能代理轉換器的工作流程包括自動遷移規劃和全代理代碼轉換。用户首先在 Databricks 工作區中創建遷移項目,上傳源 SQL 文件。Genie Code 會分析每個文件的複雜度並生成評分,幫助團隊優先處理簡單文件。同時,它會自動構建血緣關係圖,映射表、視圖和存儲過程之間的依賴關係,從而確定哪些對象需要一起遷移。例如,在概念驗證中,一個名為 mixed_5cats_sp_string_agg.sql 的文件因僅包含能直接映射到 ANSI SQL 的特性而被評為低複雜度,而其他文件則可能需要更多關注。
在實際轉換階段,Genie Code 會為每個腳本啓動多個子代理並行工作,迭代修復錯誤並驗證語法和語義正確性,確保轉換後的代碼保留原始業務邏輯並能成功解析。轉換完成後,文件按狀態顏色編碼,未通過的文件會顯示待辦事項列表。用户可以在原生 SQL 編輯器中查看並排差異,手動修復或通過創建自定義技能自動應用轉換規則。例如,可以為存儲過程統一添加 Unity Catalog 的三部分名稱。自定義技能還適用於更廣泛的定製,例如符合批准的 ETL 模式或遵循內部命名約定。
對於希望直接遷移的團隊,Databricks 提供了完整的企業級 SQL 功能,包括多語句事務、臨時表和存儲過程,這些在傳統數據倉庫中常用,且無需重新設計業務邏輯即可直接使用。該轉換器基於 Lakebridge 的成功經驗,自 2025 年數據與 AI 峯會上推出以來,已有超過一千家客户通過 Lakebridge 的轉換工具遷移到 Databricks。一位客户表示:“Lakebridge 使我們的遷移更加可預測和高效,它將我們的遺留存儲過程轉換為 Spark 聲明式管道,減少了許多手動工作。”
未來,代理轉換器將擴展支持更多傳統 ETL 源和新的目標方言,並計劃通過原生 Lakeflow Connect 集成數據遷移,以及提供自動驗證工具確保遷移後的數據與源數據一致。團隊可以聯繫 Databricks 賬户團隊評估遺留環境並嘗試代理轉換器。