Kontrol sumber (pratinjau)

Berlaku untuk:✅ Gudang di Microsoft Fabric

Artikel ini menjelaskan cara kerja integrasi Git dan alur penyebaran untuk gudang di Microsoft Fabric. Pelajari cara menyiapkan koneksi ke repositori Anda, mengelola gudang Anda, dan menyebarkannya di berbagai lingkungan. Kontrol sumber untuk Fabric Warehouse saat ini adalah fitur pratinjau.

Anda dapat menggunakan integrasi Git dan pipeline Penyebaran untuk skenario yang berbeda:

  • Gunakan proyek database Git dan SQL untuk mengelola perubahan bertahap, kolaborasi tim, dan riwayat penerapan dalam objek database individual.
  • Gunakan alur penyebaran untuk mempromosikan perubahan kode ke lingkungan pra-produksi dan produksi yang berbeda.

Integrasi Git

Integrasi Git di Microsoft Fabric memungkinkan pengembang untuk mengintegrasikan proses pengembangan, alat, dan praktik terbaik mereka langsung ke platform Fabric. Hal ini memungkinkan pengembang yang mengembangkan di Fabric untuk:

  • Mencadangkan dan melakukan pengendalian versi pekerjaan mereka
  • Kembali ke tahap sebelumnya sesuai kebutuhan
  • Berkolaborasi dengan orang lain atau bekerja sendiri dengan menggunakan cabang Git
  • Menerapkan kemampuan alat kontrol sumber yang familier untuk mengelola item Fabric

Untuk informasi selengkapnya tentang proses integrasi Git, lihat:

Menyiapkan koneksi ke kontrol sumber

Dari halaman Pengaturan ruang kerja, Anda dapat dengan mudah menyiapkan koneksi ke repositori Anda untuk menerapkan dan menyinkronkan perubahan.

  1. Untuk menyiapkan koneksi, lihat Mulai menggunakan integrasi Git. Ikuti petunjuk untuk Menghubungkan ke repositori Git di Azure DevOps atau GitHub sebagai penyedia Git.
  2. Setelah tersambung, item Anda, termasuk gudang, muncul di panel Kontrol sumber. Screenshot dari portal Fabric gudang di pengaturan kontrol sumber.
  3. Setelah Anda berhasil menghubungkan instans gudang ke repositori Git, Anda akan melihat struktur folder gudang di repositori. Sekarang Anda dapat menjalankan operasi di masa mendatang, seperti membuat pull request.

Proyek database untuk gudang di Git

Gambar berikut adalah contoh struktur file dari setiap item gudang dalam repositori:

Screenshot dari portal Fabric skema gudang contoh.

Saat Anda menerapkan item gudang ke repositori Git, gudang dikonversi ke format kode sumber, sebagai proyek database SQL. Proyek SQL adalah representasi lokal objek SQL yang terdiri dari skema untuk database tunggal, seperti tabel, prosedur tersimpan, atau fungsi. Struktur folder objek database diatur oleh Skema/Tipe Objek. Setiap objek di gudang diwakili dengan file .sql yang berisi definisi bahasa definisi data (DDL). Data tabel gudang dan fitur keamanan SQL tidak disertakan dalam proyek database SQL.

Kueri bersama juga diterapkan pada repositori dan mewarisi nama tempat kueri disimpan.

Alur penyebaran

Anda juga dapat menggunakan alur penyebaran untuk menyebarkan kode gudang Anda di berbagai lingkungan, seperti pengembangan, pengujian, dan produksi. Alur penyebaran tidak mengekspos proyek database.

Untuk menyelesaikan penyebaran gudang Anda, gunakan langkah-langkah berikut dengan memanfaatkan alur penyebaran.

  1. Buat alur penyebaran baru atau buka alur penyebaran yang ada. Untuk informasi selengkapnya, lihat Mulai menggunakan alur penyebaran.
  2. Tetapkan ruang kerja ke tahap yang berbeda sesuai dengan tujuan penyebaran Anda.
  3. Pilih, lihat, dan bandingkan item, termasuk gudang, di antara berbagai tahap, seperti yang ditunjukkan dalam contoh berikut. Screenshot dari portal Fabric dari proses Pengembangan, Pengujian, dan Produksi.
  4. Pilih Sebarkan untuk menyebarkan gudang Anda di seluruh tahap Pengembangan, Pengujian, dan Produksi .

Untuk informasi selengkapnya tentang proses alur penyebaran Fabric, lihat Pengenalan alur penyebaran.

Batasan dalam kontrol sumber

  • Anda harus mengekspor atau memigrasikan fitur keamanan SQL dengan menggunakan pendekatan berbasis skrip. Pertimbangkan untuk menggunakan skrip pasca-penyebaran dalam proyek database SQL. Anda dapat mengonfigurasi skrip ini dengan membuka proyek dengan ekstensi SQL Database Projects tersedia di Visual Studio Code.

Batasan dalam integrasi Git

  • Saat ini, jika Anda menggunakan ALTER TABLE untuk menambahkan batasan atau kolom dalam proyek database, proses penyebaran akan menghilangkan dan membuat ulang tabel, yang menyebabkan kehilangan data. Untuk mempertahankan definisi dan data tabel, pertimbangkan solusi berikut:
    • Buat salinan baru tabel di gudang dengan menggunakan CREATE TABLE dan INSERT, CREATE TABLE AS SELECT, atau Kloning tabel.
    • Ubah definisi tabel baru dengan batasan atau kolom baru, seperti yang diinginkan, dengan menggunakan ALTER TABLE.
    • Hapus tabel lama.
    • Ganti nama tabel baru menjadi nama tabel lama dengan menggunakan sp_rename.
    • Ubah definisi tabel lama dalam proyek database SQL dengan cara yang sama persis . Proyek database SQL gudang dalam kontrol sumber dan gudang langsung sekarang harus cocok.
  • Saat ini, jangan membuat Dataflow Gen2 dengan tujuan output ke gudang. Item baru bernama DataflowsStagingWarehouse muncul di repositori dan memblokir penerapan dan pembaruan dari Git.
  • Fabric integrasi Git tidak mendukung item titik akhir analitik SQL.
  • Dependensi lintas item, pengurutan item, dan kesenjangan sinkronisasi antara titik akhir analitik SQL dan gudang berdampak pada alur kerja "bercabang ke ruang kerja baru atau yang sudah ada" dan "beralih ke cabang yang berbeda" selama pengembangan dan integrasi berkelanjutan.

Batasan untuk alur penyebaran

  • Saat ini, jika Anda menggunakan ALTER TABLE untuk menambahkan batasan atau kolom dalam proyek database, proses penyebaran akan menghilangkan dan membuat ulang tabel, yang menyebabkan kehilangan data.
  • Saat ini, jangan membuat Dataflow Gen2 dengan tujuan output ke gudang. Item baru bernama DataflowsStagingWarehouse muncul di alur penyebaran dan memblokir penyebaran.
  • Alur Penyebaran Fabric tidak mendukung item endpoint analitik SQL.
  • Dependensi lintas item, pengurutan item, dan kesenjangan sinkronisasi antara titik akhir analitik SQL dan gudang memengaruhi alur kerja Pipeline Penyebaran Fabric.

Skenario yang tidak didukung

Alur kerja CI/CD berikut ini tidak didukung secara resmi ketika gudang di ruang kerja yang berbeda memiliki kolasasi yang berbeda. Meskipun operasi ini mungkin berhasil tanpa kesalahan, operasi ini dapat mengakibatkan kesalahan metadata.

Dalam semua skenario ini, jika terjadi ketidakcocokan kolase, gunakan skrip Python scripts/dw-collation-error-update-tmsl/pbi_interactive.py di kotak alat Fabric GitHub untuk memperbarui kolase himpunan data (TMSL) agar sesuai dengan kolase gudang.

Skenario Deskripsi Risiko
Jalur penerapan Mempromosikan konten gudang melalui tahap alur (misalnya, Dev → Test → Prod) tidak didukung jika gudang target dibuat dengan kolasi yang berbeda dari sumber. Penyebaran mungkin berhasil, tetapi pengurutan himpunan data tidak diperbarui agar sesuai dengan pengurutan gudang target.
Mencabangkan ke ruang kerja baru atau yang sudah ada Menggunakan integrasi Git untuk membuat cabang dari ruang kerja yang ada ke ruang kerja baru atau yang sudah ada, di mana gudang data memiliki pengurutan yang berbeda, tidak didukung. Konten gudang disinkronkan, tetapi metadata kolase tidak direkonsiliasi.
Mengalihkan cabang pada ruang kerja Beralih ke cabang yang terkait dengan gudang kolase yang berbeda di ruang kerja yang terhubung dengan Git tidak didukung. Konten yang disinkronkan mungkin membawa asumsi pengurutan yang tidak sesuai dengan gudang saat ini.
Menggabungkan perubahan antar ruang kerja melalui cabang Menggabungkan cabang-cabang Git di ruang kerja yang gudangnya memiliki pengurutan berbeda tidak didukung. Penggabungan mungkin berhasil di tingkat Git, tetapi kolase himpunan data yang dihasilkan tidak mencerminkan kolase gudang target.