Bagikan melalui


Membuat dan menggunakan titik akhir privat terkelola

Pengguna dengan izin admin ke ruang kerja Microsoft Fabric dapat membuat, melihat, dan menghapus titik akhir privat terkelola dari portal Fabric melalui pengaturan ruang kerja.

  • Pengguna juga dapat memantau status dan proses persetujuan titik akhir privat terkelola dari bagian Keamanan jaringan dari pengaturan ruang kerja.

  • Pengguna dapat mengakses sumber data menggunakan nama titik akhir privat dari beban kerja Fabric Spark.

Buat titik akhir privat terkelola

  1. Di ruang kerja Fabric, navigasikan ke pengaturan ruang kerja, pilih tab Keamanan jaringan, lalu pilih opsi Buat di bagian Titik Akhir Privat Terkelola.

    Cuplikan layar tab keamanan Jaringan di pengaturan ruang kerja.

    Dialog Buat titik akhir Privat Terkelola terbuka.

    Cuplikan layar tab Keamanan jaringan di pengaturan ruang kerja.

  2. Tentukan nama untuk titik akhir privat dan salin di pengidentifikasi sumber daya untuk sumber daya Azure. Pengidentifikasi sumber daya dapat ditemukan di tab properti di halaman portal Azure.

    Setelah selesai, pilih Buat.

  3. Ketika titik akhir privat terkelola telah disediakan, status Aktivasi berubah menjadi Berhasil.

    Cuplikan layar indikasi keberhasilan provisi titik akhir privat terkelola pada tab Jaringan.

    Selain itu permintaan untuk akses titik akhir privat dikirim ke sumber data. Admin sumber data diberi tahu di halaman sumber daya portal Azure untuk sumber data mereka. Di sana mereka akan melihat permintaan akses tertunda dengan pesan permintaan.

Mengambil server SQL sebagai contoh, pengguna dapat menavigasi ke portal Azure dan mencari sumber daya "SQL Server".

  1. Pada halaman Sumber Daya, pilih Jaringan dari menu navigasi lalu pilih tab Akses Privat.

    Cuplikan layar memperlihatkan tab Akses privat di halaman Jaringan sumber daya di portal Azure.

  2. Administrator sumber data harus dapat melihat koneksi titik akhir privat aktif dan permintaan koneksi baru.

    Cuplikan layar memperlihatkan permintaan yang tertunda pada tab Akses privat.

  3. Admin dapat Menyetujui atau Menolak dengan memberikan pembenaran bisnis.

    Cuplikan layar memperlihatkan formulir persetujuan.

  4. Setelah permintaan disetujui atau ditolak oleh admin sumber data, status diperbarui di halaman pengaturan ruang kerja Fabric saat refresh.

    Cuplikan layar memperlihatkan titik akhir privat terkelola dalam status yang disetujui.

  5. Ketika status telah berubah menjadi disetujui, titik akhir dapat digunakan dalam notebook atau definisi pekerjaan Spark untuk mengakses data yang disimpan di sumber data dari ruang kerja Fabric.

Menggunakan titik akhir privat terkelola di Fabric

Notebook Microsoft Fabric mendukung interaksi yang mulus dengan sumber data di belakang jaringan aman menggunakan titik akhir privat terkelola untuk eksplorasi dan pemrosesan data. Dalam buku catatan, pengguna dapat dengan cepat membaca data dari sumber data yang dilindungi (dan menulis data kembali ke) lakehouse mereka dalam berbagai format file.

Panduan ini menyediakan sampel kode untuk membantu Anda memulai di notebook Anda sendiri untuk mengakses data dari sumber data seperti SQL DB melalui titik akhir privat terkelola.

Prasyarat

  1. Akses ke sumber data. Contoh ini melihat Azure SQL Server dan Azure SQL Database.

  2. Masuk ke Microsoft Fabric dan portal Azure.

  3. Navigasi ke halaman sumber daya Azure SQL Server di portal Azure dan pilih menu Properti. Salin ID Sumber Daya untuk SQL Server yang ingin Anda sambungkan dari Microsoft Fabric.

  4. Menggunakan langkah-langkah yang tercantum dalam Membuat titik akhir privat terkelola, buat titik akhir privat terkelola dari halaman pengaturan keamanan Fabric Network.

  5. Setelah administrator sumber data server SQL menyetujui permintaan koneksi titik akhir privat baru, Anda harus dapat menggunakan Titik Akhir Privat Terkelola yang baru dibuat.

Koneksi ke Sumber Data dari Notebook

  1. Di ruang kerja Microsoft Fabric, gunakan pengalih pengalaman di sisi kiri halaman beranda Anda untuk beralih ke pengalaman Rekayasa Data Synapse.

    Cuplikan layar memperlihatkan cara masuk ke pengalaman rekayasa data di Fabric.

  2. Pilih Buat dan buat buku catatan baru.

  3. Sekarang, di buku catatan, dengan menentukan nama database SQL dan properti koneksinya, Anda dapat menyambungkan melalui koneksi titik akhir privat terkelola yang telah disiapkan untuk membaca tabel dalam database dan menulisnya ke lakehouse Anda di Microsoft Fabric.

  4. Kode PySpark berikut menunjukkan cara menyambungkan ke database SQL.

serverName = "<server_name>.database.windows.net"
database = "<database_name>"
dbPort = 1433
dbUserName = "<username>"
dbPassword = “<db password> or reference based on Keyvault>”

from pyspark.sql import SparkSession

spark = SparkSession.builder \
    .appName("Example") \
    .config("spark.jars.packages", "com.microsoft.azure:azure-sqldb-spark:1.0.2") \
    .config("spark.sql.catalogImplementation", "com.microsoft.azure.synapse.spark") \
    .config("spark.sql.catalog.testDB", "com.microsoft.azure.synapse.spark") \
    .config("spark.sql.catalog.testDB.spark.synapse.linkedServiceName", "AzureSqlDatabase") \ .config("spark.sql.catalog.testDB.spark.synapse.linkedServiceName.connectionString", f"jdbc:sqlserver://{serverName}:{dbPort};database={database};user={dbUserName};password={dbPassword}") \ .getOrCreate()

    
jdbcURL = "jdbc:sqlserver://{0}:{1};database={2}".format(serverName,dbPort,database)
connection = {"user":dbUserName,"password":dbPassword,"driver": "com.microsoft.sqlserver.jdbc.SQLServerDriver"}

df = spark.read.jdbc(url=jdbcURL, table = "dbo.Employee", properties=connection)
df.show()
display(df)

# Write the dataframe as a delta table in your lakehouse
df.write.mode("overwrite").format("delta").saveAsTable("Employee")

# You can also specify a custom path for the table location
# df.write.mode("overwrite").format("delta").option("path", "abfss://yourlakehouse.dfs.core.windows.net/Employee").saveAsTable("Employee")

Sekarang setelah koneksi dibuat, langkah selanjutnya adalah membuat bingkai data untuk membaca tabel di SQL Database.

Sumber data yang didukung

Microsoft Fabric mendukung lebih dari 26 sumber data untuk terhubung menggunakan titik akhir privat terkelola. Pengguna perlu menentukan pengidentifikasi sumber daya, yang dapat ditemukan di halaman Pengaturan properti sumber data mereka di portal Azure. Pastikan format ID sumber daya diikuti seperti yang diperlihatkan dalam tabel berikut.

Layanan Format ID Sumber Daya
Cognitive Services /subscriptions/{subscription-id}/resourceGroups/{resource-group-name}/providers/Microsoft.CognitiveServices/accounts/{resource-name}
Azure Databricks /subscriptions/{subscription-id}/resourceGroups/{resource-group-name}/providers/Microsoft.Databricks/workspaces/{workspace-name}
Azure Database untuk MariaDB /subscriptions/{subscription-id}/resourceGroups/{resource-group-name}/providers/Microsoft.DBforMariaDB/servers/{server-name}
Azure Database untuk MySQL /subscriptions/{subscription-id}/resourceGroups/{resource-group-name}/providers/Microsoft.DBforMySQL/servers/{server-name}
Azure Database untuk PostgreSQL /subscriptions/{subscription-id}/resourceGroups/{resource-group-name}/providers/Microsoft.DBforPostgreSQL/servers/{server-name}
Azure Cosmos DB untuk MongoDB /subscriptions/{subscription-id}/resourceGroups/{resource-group-name}/providers/Microsoft.DocumentDB/databaseAccounts/{account-name}
Azure Cosmos DB for NoSQL /subscriptions/{subscription-id}/resourceGroups/{resource-group-name}/providers/Microsoft.DocumentDB/databaseAccounts/{account-name}
Cakupan Azure Monitor Private Link /subscriptions/{subscription-id}/resourceGroups/{resource-group-name}/providers/Microsoft.Insights/privateLinkScopes/{scope-name}
Azure Key Vault /subscriptions/{subscription-id}/resourceGroups/{resource-group-name}/providers/Microsoft.KeyVault/vaults/{vault-name}
Azure Data Explorer (Kusto) /subscriptions/{subscription-id}/resourceGroups/{resource-group-name}/providers/Microsoft.Kusto/clusters/{cluster-name}
Pembelajaran Mesin Azure /subscriptions/{subscription-id}/resourceGroups/{resource-group-name}/providers/Microsoft.Machine Pembelajaran Services/workspaces/{workspace-name}
Layanan Private Link /subscriptions/{subscription-id}/resourceGroups/{resource-group-name}/providers/Microsoft.Network/privateLinkServices/{service-name}
Microsoft Purview /subscriptions/{subscription-id}/resourceGroups/{resource-group-name}/providers/Microsoft.Purview/accounts/{account-name}
Pencarian Azure /subscriptions/{subscription-id}/resourceGroups/{resource-group-name}/providers/Microsoft.Search/searchServices/{service-name}
Database Azure SQL /subscriptions/{subscription-id}/resourceGroups/{resource-group-name}/providers/Microsoft.Sql/servers/{server-name}
Azure SQL Database (Azure SQL Managed Instance) /subscriptions/{subscription-id}/resourceGroups/{resource-group-name}/providers/Microsoft.Sql/managedInstances/{instance-name}
Azure Blob Storage /subscriptions/{subscription-id}/resourceGroups/{resource-group-name}/providers/Microsoft.Storage/storageAccounts/{storage-account-name}
Azure Data Lake Storage Gen2 /subscriptions/{subscription-id}/resourceGroups/{resource-group-name}/providers/Microsoft.Storage/storageAccounts/{storage-account-name}
Penyimpanan File Azure /subscriptions/{subscription-id}/resourceGroups/{resource-group-name}/providers/Microsoft.Storage/storageAccounts/{storage-account-name}
Azure Queue Storage /subscriptions/{subscription-id}/resourceGroups/{resource-group-name}/providers/Microsoft.Storage/storageAccounts/{storage-account-name}
Penyimpanan Tabel Azure /subscriptions/{subscription-id}/resourceGroups/{resource-group-name}/providers/Microsoft.Storage/storageAccounts/{storage-account-name}
Azure Synapse Analytics /subscriptions/{subscription-id}/resourceGroups/{resource-group-name}/providers/Microsoft.Synapse/workspaces/{workspace-name}
Azure Synapse Analytics (Artefak) /subscriptions/{subscription-id}/resourceGroups/{resource-group-name}/providers/Microsoft.Synapse/workspaces/{workspace-name}
Azure Functions /subscriptions/{subscription-id}/resourceGroups/{resource-group-name}/providers/Microsoft.Web/sites/{function-app-name}
Azure Event Hubs /subscriptions/{subscription-id}/resourcegroups/{resource-group-name}/providers/Microsoft.EventHub/namespaces/{namespace-name}
Azure IoT Hub /subscriptions/{subscription-id}/resourceGroups/{resource-group-name}/providers/Microsoft.Devices/IotHubs/{iothub-name}