Azure Synapse Analytics és Azure Machine Tanulás munkaterületek összekapcsolása és Apache Spark-készletek csatolása (elavult)

ÉRVÉNYES:Python SDK azureml v1

Figyelmeztetés

A Python SDK 1-ben elérhető Azure Synapse Analytics-integráció és az Azure Machine Tanulás elavult. A felhasználók továbbra is használhatják az Azure Machine Tanulás regisztrált Synapse-munkaterületet társított szolgáltatásként. Új Synapse-munkaterületet azonban már nem lehet regisztrálni az Azure Machine Learninggel társított szolgáltatásként. Javasoljuk, hogy használjon kiszolgáló nélküli Spark-számítást és csatolt Synapse Spark-készleteket, amely a CLI v2 és a Python SDK v2-ben érhető el. További információ: https://aka.ms/aml-spark.

Ebből a cikkből megtudhatja, hogyan hozhat létre olyan társított szolgáltatást, amely összekapcsolja az Azure Synapse Analytics-munkaterületet és az Azure Machine Tanulás-munkaterületet.

Egy Azure-beli Synapse-munkaterülethez társított Azure Machine Tanulás-munkaterülettel dedikált számítási erőforrásként csatolhat egy Azure Synapse Analytics által működtetett Apache Spark-készletet. Ezt az erőforrást használhatja az adatok nagy léptékű átszervezéséhez, vagy elvégezheti a modell betanítását – mindezt ugyanabból a Python-jegyzetfüzetből.

Az ML-munkaterületet és a Synapse-munkaterületet összekapcsolhatja a Python SDK-val vagy az Azure Machine Tanulás studióval. Munkaterületeket is csatolhat, és egy Synapse Spark-készletet csatolhat egyetlen Azure Resource Manager- (ARM-) sablonnal.

Előfeltételek

Fontos

A Synapse-munkaterülethez való sikeres csatoláshoz meg kell adni a Synapse-munkaterület tulajdonosi szerepkörét. A hozzáférését az Azure Portalon ellenőrizheti.

Ha ön csak a Synapse-munkaterület közreműködője , és nem rendelkezik tulajdonossal a Synapse-munkaterülethez, csak meglévő társított szolgáltatásokat használhat. További információkért látogasson el a Lekérés lapra, és használjon egy meglévő társított szolgáltatást.

Ez a kód azokat az LinkedService osztályokat és SynapseWorkspaceLinkedServiceConfiguration osztályokat alkalmazza,

  • Gépi tanulási munkaterület ws összekapcsolása az Azure Synapse-munkaterülettel
  • Synapse-munkaterület regisztrálása az Azure Machine Tanulás társított szolgáltatásként
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)

Fontos

A rendszer minden társított szolgáltatáshoz létrehoz egy felügyelt identitást system_assigned_identity_principal_id . A Synapse-munkamenet megkezdése előtt meg kell adnia ennek a felügyelt identitásnak a Synapse Apache Spark Rendszergazda istrator szerepkörét. További információ: Azure Synapse RBAC-hozzárendelések kezelése a Synapse Studióban.

Egy adott társított szolgáltatás megkereséséhez használja a system_assigned_identity_principal_id következőt LinkedService.get('<your-mlworkspace-name>', '<linked-service-name>'): .

Társított szolgáltatások kezelése

A gépi tanulási munkaterülethez társított összes társított szolgáltatás megtekintése:

LinkedService.list(ws)

A munkaterületek leválasztásához használja a unregister() következő módszert:

linked_service.unregister()

Kapcsolja össze a gépi tanulási munkaterületet és a Synapse-munkaterületet az Azure Machine Tanulás Studióval:

  1. Bejelentkezés az Azure Machine Tanulás studióba

  2. A bal oldali panel Kezelés szakaszában válassza a Csatolt szolgáltatásoklehetőséget

  3. Válassza az Integráció hozzáadása lehetőséget

  4. A Munkaterület csatolása űrlapon töltse ki a mezőket

    Mező Leírás
    Név Adja meg a társított szolgáltatás nevét. Az adott társított szolgáltatásra mutató hivatkozások ezt a nevet használják
    Előfizetés neve Válassza ki a gépi tanulási munkaterülethez társított előfizetés nevét
    Synapse-munkaterület Válassza ki azt a Synapse-munkaterületet, amelyhez csatolni szeretné
  5. Válassza a Tovább lehetőséget a Spark-készletek kiválasztása (nem kötelező) űrlap megnyitásához. Ezen az űrlapon kiválaszthatja, hogy melyik Synapse Spark-készletet csatolja a munkaterülethez

  6. A Tovább elemet választva nyissa meg a Véleményezés űrlapot, és ellenőrizze a kijelöléseket

  7. Válassza a Létrehozás lehetőséget a társított szolgáltatás létrehozási folyamatának befejezéséhez

Meglévő társított szolgáltatás lekérése

Ahhoz, hogy dedikált számítást csatoljon az adatkonvergáláshoz, rendelkeznie kell egy Azure Synapse Analytics-munkaterülethez társított gépi tanulási munkaterületpel. Ezt a munkaterületet társított szolgáltatásként tekintjük. Meglévő társított szolgáltatás lekéréséhez és használatához felhasználói vagy közreműködői engedélyekre van szükség az Azure Synapse Analytics-munkaterületen.

Ez a példa egy meglévő társított szolgáltatást kér le a synapselink1 munkaterületről wsa get() következő módszerrel:

from azureml.core import LinkedService

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

Synapse Spark-készlet csatolása számításként

Miután lekérte a társított szolgáltatást, csatoljon egy Synapse Apache Spark-készletet dedikált számítási erőforrásként az adatáthelyezési feladatokhoz. Apache Spark-készleteket csatolhat

Készlet csatolása a stúdión keresztül

  1. Bejelentkezés az Azure Machine Tanulás studióba
  2. A bal oldali panel Kezelés szakaszában válassza a Csatolt szolgáltatásoklehetőséget
  3. A Synapse-munkaterület kiválasztása
  4. Válassza a csatolt Spark-készleteket a bal felső sarokban
  5. Válassza a Csatolás lehetőséget
  6. Válassza ki az Apache Spark-készletet a listából, és adjon meg egy nevet
    1. Ez a lista azonosítja a számításhoz csatolható rendelkezésre álló Synapse Spark-készleteket
    2. Új Synapse Spark-készlet létrehozásához tekintse meg a rövid útmutatót: Új kiszolgáló nélküli Apache Spark-készlet létrehozása az Azure Portal használatával
  7. Válassza a Kijelölt csatolás lehetőséget

Készlet csatolása a Python SDK-val

A Python SDK-t is használhatja egy Apache Spark-készlet csatolásához, ahogyan az ebben a kód példában látható:

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()

Ellenőrizze, hogy az Apache Spark-készlet csatlakoztatva van-e.

ws.compute_targets['Synapse Spark pool alias']

Ez a kód

  1. Konfigurálja a következőt:SynapseCompute

    1. Az LinkedServiceelőző lépésben létrehozott vagy lekért , linked_service
    2. A csatolni kívánt számítási cél típusa – ebben az esetben SynapseSpark
    3. Az Apache Spark-készlet neve. A névnek meg kell egyeznie az Azure Synapse Analytics-munkaterületen meglévő Apache Spark-készletével
  2. Gépi tanulást ComputeTarget hoz létre az átadással

    1. A használni kívánt gépi tanulási munkaterület, ws
    2. Az Azure Machine Tanulás munkaterületen belüli számításra hivatkozni kívánt név
    3. A Synapse Compute konfigurálásakor megadott attach_configuration
      1. A ComputeTarget.attach() hívása aszinkron, ezért a mintafuttatás le lesz tiltva, amíg a hívás befejeződik

Következő lépések