Remarque
L’accès à cette page nécessite une autorisation. Vous pouvez essayer de vous connecter ou de modifier des répertoires.
L’accès à cette page nécessite une autorisation. Vous pouvez essayer de modifier des répertoires.
Les magasins de données Azure Machine Learning conservent de manière sécurisée les informations de connexion à votre stockage de données sur Azure. Vous n’avez donc pas à les coder dans vos scripts. Le concept de magasin de données V2 reste principalement inchangé par rapport à la V1. La différence est que nous ne prenons pas en charge les sources de données de type SQL via des magasins de données Azure Machine Learning. Nous allons prendre en charge les sources de données de type SQL via les fonctionnalités d’importation&exportation de données Azure Machine Learning.
Cet article fournit une comparaison des scénarios dans le SDK v1 et le SDK v2.
Créer un magasin de données à partir d’un conteneur d’objets blob Azure via account_key
Kit de développement logiciel (SDK) v1
blob_datastore_name='azblobsdk' # Name of the datastore to workspace container_name=os.getenv("BLOB_CONTAINER", "<my-container-name>") # Name of Azure blob container account_name=os.getenv("BLOB_ACCOUNTNAME", "<my-account-name>") # Storage account name account_key=os.getenv("BLOB_ACCOUNT_KEY", "<my-account-key>") # Storage account access key blob_datastore = Datastore.register_azure_blob_container(workspace=ws, datastore_name=blob_datastore_name, container_name=container_name, account_name=account_name, account_key=account_key)Kit de développement logiciel (SDK) v2
from azure.ai.ml.entities import AzureBlobDatastore from azure.ai.ml import MLClient ml_client = MLClient.from_config() store = AzureBlobDatastore( name="blob-protocol-example", description="Datastore pointing to a blob container using wasbs protocol.", account_name="mytestblobstore", container_name="data-container", protocol="wasbs", credentials={ "account_key": "XXXxxxXXXxXXXXxxXXXXXxXXXXXxXxxXxXXXxXXXxXXxxxXXxxXXXxXxXXXxxXxxXXXXxxxxxXXxxxxxxXXXxXXX" }, ) ml_client.create_or_update(store)
Créer un magasin de données à partir d’un conteneur d’objets blob Azure via sas_token
Kit de développement logiciel (SDK) v1
blob_datastore_name='azblobsdk' # Name of the datastore to workspace container_name=os.getenv("BLOB_CONTAINER", "<my-container-name>") # Name of Azure blob container sas_token=os.getenv("BLOB_SAS_TOKEN", "<my-sas-token>") # Sas token blob_datastore = Datastore.register_azure_blob_container(workspace=ws, datastore_name=blob_datastore_name, container_name=container_name, sas_token=sas_token)Kit de développement logiciel (SDK) v2
from azure.ai.ml.entities import AzureBlobDatastore from azure.ai.ml import MLClient ml_client = MLClient.from_config() store = AzureBlobDatastore( name="blob-sas-example", description="Datastore pointing to a blob container using SAS token.", account_name="mytestblobstore", container_name="data-container", credentials=SasTokenCredentials( sas_token= "?xx=XXXX-XX-XX&xx=xxxx&xxx=xxx&xx=xxxxxxxxxxx&xx=XXXX-XX-XXXXX:XX:XXX&xx=XXXX-XX-XXXXX:XX:XXX&xxx=xxxxx&xxx=XXxXXXxxxxxXXXXXXXxXxxxXXXXXxxXXXXXxXXXXxXXXxXXxXX" ), ) ml_client.create_or_update(store)
Créer un magasin de données à partir d’un conteneur d’objets blob Azure via l’authentification basée sur l’identité
- Kit de développement logiciel (SDK) v1
blob_datastore = Datastore.register_azure_blob_container(workspace=ws,
datastore_name='credentialless_blob',
container_name='my_container_name',
account_name='my_account_name')
Kit de développement logiciel (SDK) v2
from azure.ai.ml.entities import AzureBlobDatastore from azure.ai.ml import MLClient ml_client = MLClient.from_config() store = AzureBlobDatastore( name="", description="", account_name="", container_name="" ) ml_client.create_or_update(store)
Récupérer les magasins de données à partir de votre espace de travail
Kit de développement logiciel (SDK) v1
# Get a named datastore from the current workspace datastore = Datastore.get(ws, datastore_name='your datastore name')# List all datastores registered in the current workspace datastores = ws.datastores for name, datastore in datastores.items(): print(name, datastore.datastore_type)Kit de développement logiciel (SDK) v2
from azure.ai.ml import MLClient from azure.identity import DefaultAzureCredential #Enter details of your Azure Machine Learning workspace subscription_id = '<SUBSCRIPTION_ID>' resource_group = '<RESOURCE_GROUP>' workspace_name = '<AZUREML_WORKSPACE_NAME>' ml_client = MLClient(credential=DefaultAzureCredential(), subscription_id=subscription_id, resource_group_name=resource_group, workspace_name=workspace_name) datastore = ml_client.datastores.get(name='your datastore name')Note
DefaultAzureCredentialtente plusieurs méthodes d’authentification dans l’ordre, notamment les variables d’environnement, l’identité managée, Azure CLI, etc. Pour le développement local, connectez-vous via Azure CLI (az login) ou définissez les variables d’environnementAZURE_CLIENT_ID,AZURE_TENANT_IDetAZURE_CLIENT_SECRETpour l’authentification du Service Principal. Pour plus d’informations, consultez Configurer l’authentification pour des ressources et workflows Azure Machine Learning.
Mappage des fonctionnalités clés dans le SDK v1 et le SDK v2
| Types de stockage dans le Kit de développement logiciel (SDK) v1 | Types de stockage dans le Kit de développement logiciel (SDK) v2 |
|---|---|
| azureml_blob_datastore | azureml_blob_datastore |
| azureml_data_lake_gen1_datastore | azureml_data_lake_gen1_datastore |
| azureml_data_lake_gen2_datastore | azureml_data_lake_gen2_datastore |
| azuremlml_sql_database_datastore | Utilisation des données (importer des données à partir de ressources externes) |
| azuremlml_my_sql_datastore | Utilisation des données (importer des données à partir de ressources externes) |
| azuremlml_postgre_sql_datastore | Utilisation des données (importer des données à partir de ressources externes) |
Étapes suivantes
Pour plus d'informations, consultez les pages suivantes :