Databricks: Blog
85

Sản phẩm

Databricks ra mắt Genie Code: Chuyển đổi mã nguồn độc quyền sang chuẩn ANSI SQL bằng AI

(giờ Việt Nam)

Tóm tắt AI

Databricks giới thiệu Genie Code, công cụ AI giúp tự động chuyển đổi các ngôn ngữ SQL độc quyền và mã nguồn cũ sang chuẩn ANSI SQL, hỗ trợ doanh nghiệp di chuyển kho dữ liệu nhanh chóng và giảm thiểu sai sót.

Bản dịch AI

Convert proprietary code to open ANSI SQL with Genie Code

Việc chuyển đổi từ một kho dữ liệu (data warehouse) cũ là một công việc phức tạp, đòi hỏi các đội ngũ phải phân tích mã nguồn có tuổi đời hàng thập kỷ, chuyển đổi các phương ngữ độc quyền, di chuyển các tập dữ liệu khổng lồ và đối soát sự khác biệt giữa các hệ thống. Databricks đang giúp việc di chuyển khối lượng công việc từ các kho dữ liệu cũ sang Lakehouse trở nên dễ dàng hơn đáng kể với Genie Code, tác nhân lập trình AI của Databricks.

Chúng tôi rất vui mừng được giới thiệu bộ chuyển đổi tác nhân (agentic converter) mới trong Genie Code. Bộ chuyển đổi mã nguồn dựa trên tác nhân này sẽ chuyển đổi các phương ngữ độc quyền sang ANSI SQL mở, bắt đầu với T-SQL, Snowflake, Redshift, Oracle, BigQuery và Teradata. Nó biến quá trình di chuyển kho dữ liệu từ một dự án mà đội ngũ của bạn phải trực tiếp vận hành và quản lý thành một quy trình mà bạn chỉ cần cấu hình, khởi chạy và giám sát.

Lập kế hoạch di chuyển tự động

Để thấy cách bộ chuyển đổi tác nhân hoạt động trong thực tế, chúng ta sẽ cùng thực hiện một bản chứng minh khái niệm (proof of concept) về việc chuyển đổi một tập hợp các thủ tục lưu trữ (stored procedures) T-SQL sang ANSI SQL.

Để bắt đầu quá trình di chuyển, chúng ta tạo một dự án di chuyển (migration project), một tính năng mới trong không gian làm việc Databricks. Các dự án di chuyển cung cấp cho các đội ngũ một trung tâm quản lý tập trung để quản lý các tệp nguồn, theo dõi tiến độ chuyển đổi và cộng tác trong suốt quá trình di chuyển. Chúng ta đặt tên dự án là Migration Project - POC, thiết lập phương ngữ nguồn là T-SQL, đích là ANSI SQL và chọn thư mục đích cho các tệp đã chuyển đổi. Sau khi tạo, chúng ta có thể đưa các tệp SQL nguồn (đã được tải lên không gian làm việc trước đó) vào dự án. Mỗi tệp sẽ hiển thị trong dự án cùng với loại tệp, số dòng mã và trạng thái di chuyển:

image6.gif

Genie Code phân tích và chấm điểm độ phức tạp của từng tệp, hiển thị đánh giá ở bảng điều khiển bên phải. Trong ví dụ của chúng ta, tệp mixed_5cats_sp_string_agg.sql có điểm độ phức tạp thấp vì nó chỉ chứa các tính năng SQL ánh xạ hoàn hảo sang ANSI SQL. Đối với một cuộc di chuyển quy mô lớn, các đội ngũ có thể sử dụng điểm độ phức tạp để ưu tiên xử lý các tệp đơn giản trước.

image3.gif

Genie Code cũng tạo ra sơ đồ phụ thuộc (lineage), ánh xạ mọi mối quan hệ giữa các đối tượng trong hệ thống cũ — bao gồm bảng, khung nhìn (views) và thủ tục lưu trữ. Biểu đồ phụ thuộc cho thấy sps_sp_update_from.sql và sps_sp_pivot.sql không có các phụ thuộc chung, nghĩa là chúng có thể được di chuyển độc lập một cách an toàn.

image4.gif

Trong một cuộc di chuyển toàn diện, độ phức tạp và sơ đồ phụ thuộc cung cấp cho các đội ngũ cái nhìn rõ ràng về những gì cần di chuyển, thứ tự di chuyển và những thành phần nào cần được di chuyển cùng nhau.

Chuyển đổi mã nguồn hoàn toàn tự động bằng tác nhân

Sau khi phân tích mã nguồn, chúng ta có thể bắt đầu chuyển đổi. Khi nhấn Run, Genie Code sẽ phân tích T-SQL của từng tập lệnh và khởi chạy hàng loạt các tác nhân phụ (subagents) để chuyển đổi các tệp song song. Mỗi tác nhân phụ sẽ lặp lại việc sửa lỗi, xác thực cả cú pháp và ý nghĩa ngữ nghĩa để đảm bảo mã nguồn sau chuyển đổi vẫn giữ nguyên logic nghiệp vụ ban đầu và được phân tích cú pháp thành công.

Sau khi hoàn tất, các tệp đã chuyển đổi sẽ được ghi vào thư mục đích và được mã hóa màu theo trạng thái. Trong bản chứng minh khái niệm của chúng ta, 6 trên 8 tệp đã được chuyển đổi thành công. Tuy nhiên, mixed_5cats_sp_string_agg.sql và mixed_6cats_sp_string_agg.sql cần được xem xét thêm. Khi nhìn vào bảng điều khiển bên phải, chúng ta có thể thấy danh sách các việc cần làm để sửa tập lệnh. Genie Code giải thích rằng các thủ tục lưu trữ được gắn cờ phải được định danh bằng tên ba phần trong Unity Catalog (catalog.schema.sp_string_agg).

image2.gif

Bằng cách nhấp vào tệp, chúng ta có thể mở trình chỉnh sửa SQL gốc để khám phá sự khác biệt song song. Chúng ta có thể thực hiện sửa lỗi thủ công trong trình chỉnh sửa hoặc hệ thống hóa quy tắc chuyển đổi bằng cách tạo một kỹ năng tùy chỉnh (custom skill) trong Genie Code. Khi đã sẵn sàng chạy di chuyển toàn bộ, Genie Code sẽ áp dụng quy tắc này (trong trường hợp này là đặt tên ba phần cho các thủ tục lưu trữ trong Unity Catalog) một cách tự động trên toàn bộ cơ sở mã. Các kỹ năng tùy chỉnh cũng hữu ích cho việc tùy chỉnh rộng hơn, chẳng hạn như tuân thủ một mẫu ETL đã được phê duyệt hoặc tuân theo các quy ước đặt tên nội bộ.

Đối với các đội ngũ muốn thực hiện di chuyển theo kiểu "lift-and-shift", Databricks cung cấp đầy đủ bộ tính năng SQL doanh nghiệp. Multi-Statement Transactions, Temp Tables và Stored Procedures — những tính năng thường được sử dụng trong các kho dữ liệu cũ — đều có sẵn trong Databricks, vì vậy không cần phải thiết kế lại logic của bạn để phù hợp với nền tảng mới.

Bắt đầu với Agentic Converter ngay hôm nay

Bộ chuyển đổi tác nhân là thế hệ tiếp theo của công cụ di chuyển kho dữ liệu, được xây dựng dựa trên sự thành công của Lakebridge ở quy mô lớn. Kể từ khi ra mắt tại Data and AI Summit 2025, công cụ chuyển đổi của Lakebridge đã giúp hơn một nghìn khách hàng áp dụng Databricks lakehouse:

Bước tiếp theo, chúng tôi đang mở rộng bộ chuyển đổi tác nhân để hỗ trợ các nguồn ETL cũ phổ biến và các phương ngữ đích mới. Chúng tôi cũng dự định đưa việc di chuyển và đối soát dữ liệu vào trải nghiệm dự án di chuyển, với tích hợp Lakeflow Connect gốc để di chuyển dữ liệu và các công cụ tự động nhằm xác thực rằng dữ liệu đã di chuyển khớp với nguồn trước khi chuyển đổi hệ thống (cutover).

Bạn đã sẵn sàng di chuyển? Hãy liên hệ với đội ngũ quản lý tài khoản Databricks của bạn để đánh giá hệ thống cũ và dùng thử bộ chuyển đổi mã nguồn tác nhân tại đây.

DatabricksSQLDi chuyển dữ liệuAICông cụ lập trình
Đọc bài gốc

Bài viết được AI dịch và tổng hợp tự động từ Databricks: Blog. Liên kết bài gốc ở phía trên. Dữ liệu đồng bộ qua API công khai được ghi nguồn tại AI HOT (canonical) ↗. AIHOT.vn luôn dẫn nguồn đầy đủ — nếu bạn thấy điểm cần chỉnh sửa, hãy gửi ý kiến tại trang phản hồi.