Mengonversi SQL dengan pengonversi kode agenik

Penting

Fitur ini ada di Beta. Untuk menggunakannya, admin ruang kerja harus mengaktifkan fitur agentic code converter dari halaman Previews. Lihat Kelola Pratinjau Azure Databricks.

Konverter kode agen menggunakan Genie Code untuk mengonversi SQL yang sudah ada dari dialek seperti T-SQL, Snowflake, Redshift, Oracle, BigQuery, dan Teradata menjadi kode yang berjalan di Azure Databricks. Anda mengatur pekerjaan Anda dalam proyek migrasi dan memilih kerangka kerja target untuk output: SQL untuk menghasilkan kueri SQL Databricks, atau Notebooks untuk menghasilkan notebook Databricks yang menggunakan API DataFrame. Konverter menganalisis setiap skrip sumber, memvalidasi output yang dikonversi, dan memperbaiki kesalahan secara iteratif sebelum menulis hasilnya ke folder workspace.

Pengonversi kode agenik adalah bagian dari alat Databricks untuk memigrasikan beban kerja dari gudang data dan alat ETL yang ada ke Azure Databricks. Ini mengonversi SQL sumber Anda saat Anda mengatur dan melacak pekerjaan dalam proyek migrasi.

Cara kerjanya

Anda memulai konversi dengan membuat proyek migrasi di ruang kerja Anda. Proyek melacak status setiap file dan memberi Anda satu tempat untuk mengelola migrasi.

Diagram alur kerja konversi: file sumber ditambahkan ke proyek migrasi, subagen Kode Genie mengonversinya, dan ANSI SQL yang divalidasi ditulis ke folder ruang kerja.

Saat Anda menjalankan konversi, Genie Code memanggil keterampilan migrasi dan menyebarkan subagen yang mengonversi file secara bersamaan. Setiap subagen menganalisis dialek sumber, menghasilkan kode yang setara untuk kerangka kerja target proyek (Databricks SQL atau notebook Databricks), memvalidasi hasilnya, dan mencoba ulang bagian yang gagal. File yang dikonversi ditulis langsung ke folder ruang kerja yang Anda tentukan untuk proyek.

Anda juga dapat mengonversi satu file atau folder tanpa proyek dengan menggunakan /migrate perintah dalam percakapan Kode Genie.

Requirements

  • Ruang kerja yang diaktifkan untuk konverter kode agentic Beta. Admin ruang kerja mengaktifkan fitur dari halaman Pratinjau. Lihat Kelola Pratinjau Azure Databricks.
  • File SQL Anda yang ada harus dapat diakses di ruang kerja Anda, baik diunggah sebagai file ruang kerja atau dibuka di editor.
  • Ruang kerja Anda harus memenuhi persyaratan Kode Genie. Lihat Kode Genie.

Sumber dan batasan yang didukung

Pengonversi mendukung dialek sumber berikut:

  • T-SQL
  • Snowflake SQL
  • Redshift SQL
  • Oracle
  • BigQuery
  • Teradata

Saat Anda membuat proyek migrasi, pilih salah satu kerangka kerja target berikut:

  • SQL: Kueri SQL Databricks yang sesuai dengan ANSI.
  • Notebook: Notebook Databricks yang menggunakan API DataFrame, dengan spark.sql logika yang lebih jelas di SQL.

Batas berikut berlaku untuk setiap konversi:

  • Batch dapat berisi maksimal 300 file.
  • Skrip dapat berisi maksimum 1.000 baris.
  • Skrip Teradata BTEQ belum didukung.

Mengonversi kode SQL yang ada

Langkah-langkah berikut menjelaskan cara mengonversi SQL yang ada dalam proyek migrasi.

Langkah 1: Unggah file sumber

Unggah file SQL Anda yang ada (.sql) menggunakan browser file ruang kerja, atau gunakan Databricks CLI untuk mengunggah direktori skrip secara massal.

Langkah 2: Membuat proyek migrasi

Buat proyek migrasi dari ruang kerja Anda:

  1. Klik Ikon Baru>proyek migrasi.
  2. Masukkan Nama untuk proyek.
  3. Gunakan pemilih drop-down untuk memilih dialek Sumber dan kerangka kerja Target. Untuk kerangka kerja Target, pilih SQL untuk menghasilkan kueri Databricks SQL, atau Notebooks untuk menghasilkan notebook Databricks.
  4. Masukkan jalur file ke folder Tujuan target. Klik Telusuri untuk memilih tujuan dari daftar folder ruang kerja yang tersedia.
  5. (Opsional) Masukkan jalur ke file Silsilah yang menjelaskan silsilah proyek. Klik Telusuri untuk memilih file dari daftar file di ruang kerja Anda.
  6. Klik Buat.

Dialog proyek migrasi baru memperlihatkan nama proyek, dialek sumber, kerangka kerja target, dan bidang folder tujuan.

Langkah 3: Menambahkan file ke proyek Anda

Dalam proyek baru:

  1. Klik Tambahkan file>+ Tambahkan file.
  2. Pilih folder sumber atau file dari ruang kerja Anda.

Proyek ini mencantumkan setiap file dengan jenis file, jumlah baris, dan status konversinya.

Kanvas proyek migrasi memperlihatkan file sumber yang ditambahkan dengan jenis file, jumlah baris, dan status konversinya.

Langkah 4: Meninjau kompleksitas kode dan silsilah data (opsional)

Jika Anda telah menjalankan Lakebridge Analyzer, unggah output JSON-nya ke proyek untuk meninjau kompleksitas dan silsilah kode. Klik file sumber untuk membuka penilaian kompleksitas, dan klik Silsilah data untuk membuka grafik dependensi yang memperlihatkan file dan tabel yang saling bergantung yang harus Anda migrasikan bersama-sama. Untuk petunjuk tentang menjalankan Analyzer, lihat panduan Lakebridge Analyzer.

Langkah 5: Jalankan konversi

Pilih file yang akan dikonversi dan klik Jalankan. Genie Code membuka percakapan, memanggil keterampilan migrasi, dan menyebarkan subagen untuk mengonversi file secara bersamaan. Setiap file yang dikonversi muncul sebagai file tertaut dalam proyek. Pengonversi menandai setiap file dengan status:

  • Hijau: Berhasil dikonversi
  • Kuning: Perlu ditinjau
  • Merah: Konversi gagal
  • Abu-abu: Sedang berlangsung

Langkah 6: Meninjau hasil konversi

Untuk proyek SQL, klik file hasil konversi untuk membuka tampilan perbandingan berdampingan di editor SQL, dengan kode sumber ditampilkan di samping Databricks SQL yang diusulkan. Terima semua perubahan yang disarankan, atau tinjau dan terima pengeditan individual. Untuk proyek Notebooks , klik file yang telah dikonversi untuk membuka notebook Databricks yang dihasilkan. Untuk skrip yang gagal dikonversi, edit kode di editor atau minta Genie Code untuk memvalidasi ulang atau mencoba kembali bagian tertentu. Setelah Anda puas, jalankan SQL atau notebook yang telah dikonversi untuk memastikan bahwa berjalan di Azure Databricks.

Membuat keterampilan kustom (opsional)

Keterampilan kustom memungkinkan Anda mengodekan aturan bisnis yang diterapkan Genie Code secara otomatis selama setiap konversi. Gunakan ini untuk menangani tipe data proprietari, menerapkan pola target yang diinginkan, atau merekam koreksi yang berulang kali Anda lakukan. Keterampilan migrasi adalah keterampilan Kode Genie, sehingga Anda dapat membuat dan mengelolanya dengan cara yang sama seperti keterampilan lainnya. Untuk detail selengkapnya, lihat Memperluas Kode Genie dengan keterampilan agen.

Anda dapat membuat keterampilan dari pengaturan Kode Genie atau dari percakapan Kode Genie. Gunakan jalur pengaturan untuk keterampilan kompleks yang mencakup instruksi terperinci, contoh, atau file pendukung. Gunakan alur chat untuk skill cepat dengan satu aturan.

Pengaturan Kode Genie

Buat keterampilan sebagai file sehingga Anda dapat menulis instruksi terperinci dan membuat versinya di folder Git:

  1. Di panel Genie Code, klik ikon roda gigi.Pengaturan, lalu klik ikon panah masuk.Buka folder skill.

  2. Buat folder untuk keterampilan Anda di bawah jalur keterampilan ruang kerja, Workspace/.assistant/skills/. Contohnya, Workspace/.assistant/skills/sql-migration/.

  3. Dalam folder skill, buat berkas SKILL.md dengan frontmatter yang diperlukan dan aturan konversi Anda. Contohnya:

    ---
    name: sql-migration
    description: Conversion rules to apply when migrating legacy SQL to ANSI SQL.
    ---
    
    Always convert the custom type MYDATE to TIMESTAMP_NTZ.
    

Genie Code mendeteksi keterampilan tersebut saat Anda berikutnya menjalankan konversi.

Obrolan Kode Genie

Jelaskan aturan konversi yang ingin Anda kodekan, lalu minta Kode Genie untuk menyimpannya:

Tip

Always convert our custom type MYDATE to TIMESTAMP_NTZ. Save this as a custom migration skill.

Genie Code membuat dan mendaftarkan skill tersebut serta menerapkannya pada konversi berikutnya di workspace.

Untuk melihat keterampilan aktif:

Tip

Show me my migration skills

Untuk menghapus keterampilan:

Tip

Delete the migration skill for [description]

Skill ruang kerja disimpan pada tingkat ruang kerja dan dibagikan kepada semua pengguna di ruang kerja.

Tips untuk pengujian

Sebagai bagian dari perulangan ageniknya, konverter menganalisis setiap skrip sumber, memvalidasi bahwa output yang dikonversi secara sintetis valid dan secara semantik setara dengan sumber, dan secara berulang memperbaiki bagian yang gagal sebelum menulis hasilnya. Tips berikut membantu Anda meninjau dan mendapatkan keyakinan pada output:

  • Konversi batch: Konversi sejumlah kecil, dua hingga lima berkas, dalam satu sesi untuk memverifikasi bahwa konversi beberapa berkas berfungsi dari awal hingga akhir.
  • Validasi sintaks: Setelah konversi, jalankan output di editor atau notebook Databricks SQL untuk mengonfirmasi bahwa ia berjalan tanpa kesalahan.
  • Kasus Edge: Sertakan skrip dengan konstruksi khusus dialek, seperti fungsi jendela T-SQL, Snowflake QUALIFY, atau Redshift LISTAGG, untuk melihat bagaimana pengonversi menangani pola non-sepele.
  • Kebenaran semantik: Jalankan kueri asli dan yang dikonversi terhadap data pengujian yang setara dan bandingkan hasilnya. Konfirmasikan bahwa output secara semantik benar, tidak hanya valid secara sintetis.

Sumber daya tambahan