Menautkan ruang kerja Azure Synapse Analytics dan Azure Pembelajaran Mesin dan melampirkan kumpulan Apache Spark (tidak digunakan lagi)

BERLAKU UNTUK:SDK Python azureml v1

Peringatan

Integrasi Azure Synapse Analytics dengan Azure Pembelajaran Mesin, tersedia di Python SDK v1, tidak digunakan lagi. Pengguna masih dapat menggunakan ruang kerja Synapse, yang terdaftar di Azure Pembelajaran Mesin, sebagai layanan tertaut. Namun, ruang kerja Synapse baru tidak dapat lagi terdaftar di Azure Machine Learning sebagai layanan tertaut. Sebaiknya gunakan komputasi Spark tanpa server dan kumpulan Synapse Spark yang terpasang, tersedia di CLI v2 dan Python SDK v2. Untuk informasi selengkapnya, kunjungi https://aka.ms/aml-spark.

Dalam artikel ini, Anda akan mempelajari cara membuat layanan tertaut yang menautkan ruang kerja Azure Synapse Analytics dan Azure Machine LearningAnda.

Dengan ruang kerja Azure Pembelajaran Mesin, yang ditautkan dengan ruang kerja Azure Synapse, Anda dapat melampirkan kumpulan Apache Spark, yang didukung oleh Azure Synapse Analytics, sebagai sumber daya komputasi khusus. Anda dapat menggunakan sumber daya ini untuk manipulasi data dalam skala besar, atau Anda dapat melakukan pelatihan model - semuanya dari buku catatan Python yang sama.

Anda dapat menautkan ruang kerja ML dan ruang kerja Synapse dengan Python SDK atau studio Azure Pembelajaran Mesin. Anda juga dapat menautkan ruang kerja, dan melampirkan kumpulan Synapse Spark, dengan satu templat Azure Resource Manager (ARM).

Prasyarat

Penting

Agar berhasil menautkan ke ruang kerja Synapse, Anda harus diberikan peran Pemilik ruang kerja Synapse. Periksa akses Anda di portal Azure.

Jika Anda hanya kontributor ke ruang kerja Synapse, dan Anda tidak memiliki Pemilik untuk ruang kerja Synapse tersebut, Anda hanya dapat menggunakan layanan tertaut yang ada. Untuk informasi selengkapnya, kunjungi Mengambil dan menggunakan layanan tertaut yang sudah ada.

Kode ini menggunakan LinkedService kelas dan SynapseWorkspaceLinkedServiceConfiguration , untuk

  • Menautkan ruang ws kerja pembelajaran mesin Anda dengan ruang kerja Azure Synapse Anda
  • Mendaftarkan ruang kerja Synapse Anda dengan Azure Pembelajaran Mesin sebagai layanan tertaut
import datetime  
from azureml.core import Workspace, LinkedService, SynapseWorkspaceLinkedServiceConfiguration

# Azure Machine Learning workspace
ws = Workspace.from_config()

#link configuration 
synapse_link_config = SynapseWorkspaceLinkedServiceConfiguration(
    subscription_id=ws.subscription_id,
    resource_group= 'your resource group',
    name='mySynapseWorkspaceName')

# Link workspaces and register Synapse workspace in Azure Machine Learning
linked_service = LinkedService.register(workspace = ws,              
                                            name = 'synapselink1',    
                                            linked_service_config = synapse_link_config)

Penting

Identitas system_assigned_identity_principal_id terkelola dibuat untuk setiap layanan tertaut. Anda harus memberikan identitas terkelola ini peran Administrator Synapse Apache Spark dari ruang kerja Synapse sebelum Anda memulai sesi Synapse Anda. Untuk informasi selengkapnya, kunjungi Cara mengelola penugasan Azure Synapse RBAC di Synapse Studio.

Untuk menemukan system_assigned_identity_principal_id layanan tertaut tertentu, gunakan LinkedService.get('<your-mlworkspace-name>', '<linked-service-name>').

Mengelola layanan tertaut

Lihat semua layanan tertaut yang terkait dengan ruang kerja pembelajaran mesin Anda:

LinkedService.list(ws)

Untuk membatalkan tautan ruang kerja Anda, gunakan unregister() metode :

linked_service.unregister()

Tautkan ruang kerja pembelajaran mesin dan ruang kerja Synapse Anda melalui studio Azure Pembelajaran Mesin:

  1. Masuk ke Studio Pembelajaran Mesin Microsoft Azure

  2. Pilih Layanan Tertaut di bagian Kelola di panel kiri

  3. Pilih Tambahkan integrasi

  4. Pada formulir Tautkan ruang kerja, isi bidang

    Bidang KETERANGAN
    Nama Masukkan nama untuk layanan tertaut. Referensi ke layanan tertaut tertentu ini menggunakan nama ini
    Nama langganan Pilih nama langganan Anda yang terkait dengan ruang kerja pembelajaran mesin Anda
    Ruang kerja Synapse Pilih ruang kerja Synapse yang ingin Anda tautkan
  5. Pilih Berikutnya untuk membuka formulir Pilih kumpulan Spark (opsional). Pada formulir ini, Anda dapat memilih kumpulan Synapse Spark yang akan dipasang ke ruang kerja Anda

  6. Pilih Berikutnya untuk membuka formulir Tinjau , dan periksa pilihan Anda

  7. Pilih Buat untuk menyelesaikan proses pembuatan layanan tertaut

Mendapatkan layanan tertaut yang sudah ada

Sebelum dapat melampirkan komputasi khusus untuk manipulasi data, Anda harus memiliki ruang kerja pembelajaran mesin yang ditautkan ke ruang kerja Azure Synapse Analytics. Kami menyebut ruang kerja ini sebagai layanan tertaut. Pengambilan dan penggunaan layanan tertaut yang ada memerlukan izin Pengguna atau Kontributor ke ruang kerja Azure Synapse Analytics.

Contoh ini mengambil layanan tertaut yang ada - synapselink1 - dari ruang wskerja , dengan get() metode :

from azureml.core import LinkedService

linked_service = LinkedService.get(ws, 'synapselink1')

Memasang kumpulan Synapse Spark sebagai komputasi

Setelah Anda mengambil layanan tertaut, pasang kumpulan Synapse Apache Spark sebagai sumber daya komputasi khusus untuk tugas perselisihan data Anda. Anda dapat melampirkan kumpulan Apache Spark dengan

Memasang kumpulan melalui studio

  1. Masuk ke Studio Pembelajaran Mesin Microsoft Azure
  2. Pilih Layanan Tertaut di bagian Kelola di panel kiri
  3. Pilih ruang kerja Synapse Anda
  4. Pilih Kumpulan Spark terlampir di kiri atas
  5. Pilih Lampirkan
  6. Pilih kumpulan Apache Spark Anda dari daftar dan berikan nama
    1. Daftar ini mengidentifikasi kumpulan Synapse Spark yang tersedia yang dapat dilampirkan ke komputasi Anda
    2. Untuk membuat kumpulan Synapse Spark baru, lihat Mulai Cepat: Membuat kumpulan Apache Spark tanpa server baru menggunakan portal Azure
  7. Pilih Lampirkan dipilih

Memasang kumpulan dengan Python SDK

Anda juga dapat menggunakan Python SDK untuk melampirkan kumpulan Apache Spark, seperti yang ditunjukkan dalam contoh kode ini:

from azureml.core.compute import SynapseCompute, ComputeTarget

attach_config = SynapseCompute.attach_configuration(linked_service, #Linked synapse workspace alias
                                                    type='SynapseSpark', #Type of assets to attach
                                                    pool_name=synapse_spark_pool_name) #Name of Synapse spark pool 

synapse_compute = ComputeTarget.attach(workspace= ws,                
                                       name= synapse_compute_name, 
                                       attach_configuration= attach_config
                                      )

synapse_compute.wait_for_completion()

Verifikasi bahwa kumpulan Apache Spark terpasang.

ws.compute_targets['Synapse Spark pool alias']

Kode ini

  1. SynapseCompute Mengonfigurasi dengan

    1. LinkedService, linked_service yang Anda buat atau ambil di langkah sebelumnya
    2. Jenis target komputasi yang ingin Anda lampirkan - dalam hal ini, SynapseSpark
    3. Nama kumpulan Apache Spark. Nama harus cocok dengan kumpulan Apache Spark yang ada di ruang kerja Azure Synapse Analytics Anda
  2. Membuat pembelajaran ComputeTarget mesin dengan meneruskan

    1. Ruang kerja pembelajaran mesin yang ingin digunakan, ws
    2. Nama yang ingin Anda gunakan untuk merujuk ke komputasi dalam ruang kerja Azure Pembelajaran Mesin
    3. attach_configuration yang Anda tentukan saat mengonfigurasi Synapse Compute
      1. Panggilan ke ComputeTarget.attach() tidak sinkron, sehingga eksekusi sampel diblokir hingga panggilan selesai

Langkah berikutnya