Catatan
Akses ke halaman ini memerlukan otorisasi. Anda dapat mencoba masuk atau mengubah direktori.
Akses ke halaman ini memerlukan otorisasi. Anda dapat mencoba mengubah direktori.
Fungsi data Fabric User menyediakan koneksi ke sumber data fabric dan item yang didukung dengan menggunakan fitur Kelola koneksi di portal Fabric. Fitur ini memungkinkan Anda untuk terhubung ke sumber data Fabric Anda tanpa harus membuat string koneksi atau mengelola kredensial akses. Untuk item-item fabric yang bukan merupakan sumber data, Anda dapat terhubung dengan aman ke item-item tersebut di dalam fungsi.
Dalam artikel ini, Anda akan mempelajari cara:
- Buat koneksi baru untuk item fungsi data pengguna Anda.
- Gunakan koneksi baru Anda dalam kode fungsi Anda.
- Ubah atau hapus koneksi data Anda.
Item yang didukung dalam fungsi data Fabric User
Item berikut saat ini didukung untuk fungsi data Fabric User:
- Database Fabric SQL untuk operasi baca/tulis
- Gudang kain untuk operasi membaca/menulis
- Fabric lakehouses digunakan untuk operasi baca/tulis pada file Lakehouse dan untuk operasi baca-saja pada Endpoint SQL.
- Database cermin fabric untuk operasi baca-saja
- Fabric Variable library untuk menentukan pengaturan konfigurasi sebagai variabel. Pelajari selengkapnya.
Membuat koneksi data baru untuk item fungsi data pengguna Anda
Koneksi data apa pun yang Anda tambahkan dikaitkan dengan item fungsi data pengguna Anda dan dapat dirujuk dalam kode salah satu fungsi Anda. Untuk mengikuti panduan ini, Anda memerlukan item fungsi data Fabric User yang ada dan sumber data Fabric yang ada.
1. Akses fitur Kelola koneksi dari portal Functions
Dalam mode Kembangkan, temukan dan pilih Kelola koneksi di pita editor portal Functions.
Panel yang terbuka berisi koneksi data apa pun yang Anda buat. Pilih Tambahkan koneksi data untuk membuat koneksi baru.
2. Pilih koneksi data Anda dari katalog OneLake
Saat Anda memilih Tambahkan koneksi data, katalog OneLake terbuka dengan daftar semua sumber data yang dapat diakses akun pengguna Anda. Daftar difilter untuk hanya menyertakan sumber data yang didukung, beberapa di antaranya mungkin berada di ruang kerja lain.
Pilih sumber data Anda, lalu pilih Sambungkan.
Nota
Jika Anda tidak dapat menemukan sumber data yang Anda cari, pastikan Anda memiliki izin yang tepat untuk menyambungkannya. Atau, pastikan Anda menggunakan sumber data yang didukung, seperti yang tercantum di awal artikel ini.
Setelah dibuat, koneksi baru ke sumber data yang Anda pilih ditampilkan di panel samping pada tab Koneksi . Saat Anda melihat koneksi, perhatikan bidang Alias yang dihasilkan untuk itu. Anda memerlukan alias ini untuk mereferensikan koneksi dari fungsi apa pun dalam item fungsi data pengguna Anda.
3. Gunakan alias koneksi Anda dalam kode fungsi Anda
Setelah kembali ke editor portal, Anda perlu menambahkan alias koneksi yang Anda buat di Manage Connections tab ke kode Anda. Alias ini secara otomatis dibuat berdasarkan nama item Fabric yang Anda sambungkan.
Dalam hal ini kita akan menggunakan sampel kode yang disebut "Membaca data dari tabel di SQL Database". Anda dapat menemukan sampel ini dengan mengklik tab Edit, lalu mengklik tombol "Sisipkan sampel" dan menavigasi ke "SQL Database".
Ini adalah kode sampel yang disisipkan:
@udf.connection(argName="sqlDB",alias="<alias for sql database>")
@udf.function()
def read_from_sql_db(sqlDB: fn.FabricSqlConnection)-> list:
# Replace with the query you want to run
query = "SELECT * FROM (VALUES ('John Smith', 31), ('Kayla Jones', 33)) AS Employee(EmpName, DepID);"
# Establish a connection to the SQL database
connection = sqlDB.connect()
cursor = connection.cursor()
query.capitalize()
# Execute the query
cursor.execute(query)
# Fetch all results
results = []
for row in cursor.fetchall():
results.append(row)
# Close the connection
cursor.close()
connection.close()
return results
Nota
Meskipun sampel ini tersambung ke SQL Database, sampel tidak memerlukan skema atau data dalam database Anda untuk dijalankan.
Untuk menggunakan koneksi data yang Anda buat, ubah baris berikut dalam sampel ini: @udf.connection(argName="sqlDB",alias="<alias for sql database>") dengan mengganti nilai dengan yang alias Anda peroleh dari Manage Connections menu. Kode berikut menunjukkan contoh ini dengan nilai ContosoSalesDat:
@udf.connection(argName="sqlDB",alias="ContosoSalesDat")
@udf.function()
def read_from_sql_db(sqlDB: fn.FabricSqlConnection)-> list:
[...]
Setelah memodifikasi kode, Anda dapat menguji perubahan dengan menggunakan kemampuan Uji dalam mode Kembangkan. Setelah siap, Anda dapat menerbitkan fungsi menggunakan tombol Terbitkan di toolbar. Operasi ini mungkin akan memakan waktu beberapa menit.
Setelah penerbitan selesai, Anda dapat menjalankan fungsi Anda dengan mengarahkan mouse ke namanya di daftar Functions Explorer, dan mengklik tombol "Jalankan" di panel samping. Panel bawah "Output" menunjukkan hasil menjalankan fungsi.
Dan itu saja yang Anda butuhkan untuk terhubung ke sumber data dari Fabric User Data Functions Anda.
Memperoleh variabel dari pustaka variabel Fabric
Pustaka Variabel Fabric di Microsoft Fabric adalah repositori terpusat untuk mengelola variabel yang dapat digunakan di berbagai item dalam ruang kerja. Ini memungkinkan pengembang untuk menyesuaikan dan berbagi konfigurasi item secara efisien. Ikuti langkah-langkah ini untuk menggunakan Pustaka Variabel di fungsi Anda:
- Tambahkan koneksi ke pustaka variabel menggunakan Kelola koneksi dan dapatkan alias untuk item pustaka variabel.
- Tambahkan dekorator koneksi untuk item pustaka variabel. Misalnya,
@udf.connection(argName="varLib", alias="<My Variable Library Alias>")dan ganti alias ke koneksi yang baru ditambahkan untuk item pustaka variabel. - Dalam definisi fungsi, sertakan argumen dengan jenis
fn.FabricVariablesClient. Klien ini menyediakan metode yang Anda butuhkan untuk bekerja dengan item pustaka variabel. - Gunakan
getVariables()metode untuk mendapatkan semua variabel dari pustaka variabel. - Gunakan, untuk membaca nilai variabel,
["variable-name"]atau.get("variable-name").
Contoh Dalam contoh ini, kami mensimulasikan skenario konfigurasi untuk produksi dan lingkungan pengembangan. Fungsi ini mengatur jalur penyimpanan tergantung pada lingkungan yang dipilih menggunakan nilai yang diambil dari Pustaka Variabel. Pustaka Variabel berisi variabel yang disebut ENV tempat pengguna dapat mengatur nilai dev atau prod.
@udf.connection(argName="varLib", alias="<My Variable Library Alias>")
@udf.function()
def get_storage_path(dataset: str, varLib: fn.FabricVariablesClient) -> str:
"""
Description: Determine storage path for a dataset based on environment configuration from Variable Library.
Args:
dataset_name (str): Name of the dataset to store.
varLib (fn.FabricVariablesClient): Fabric Variable Library connection.
Returns:
str: Full storage path for the dataset.
"""
# Retrieve variables from Variable Library
variables = varLib.getVariables()
# Get environment and base paths
env = variables.get("ENV")
dev_path = variables.get("DEV_FILE_PATH")
prod_path = variables.get("PROD_FILE_PATH")
# Apply environment-specific logic
if env.lower() == "dev":
return f"{dev_path}{dataset}/"
elif env.lower() == "prod":
return f"{prod_path}{dataset}/"
else:
return f"incorrect settings define for ENV variable"