Creare un archivio dati

Completato

In Azure Machine Learning gli archivi dati sono astrazioni per le origini dati cloud. Incapsulano le informazioni necessarie per connettersi alle origini dati e archiviare in modo sicuro queste informazioni di connessione in modo che non sia necessario inserirle tramite codice negli script.

I vantaggi dell'uso degli archivi di dati sono:

  • Fornisce URI facili da usare per l'archiviazione dei dati.
  • Facilita l'individuazione dei dati in Azure Machine Learning.
  • Archivia in modo sicuro le informazioni di connessione, senza esporre segreti e chiavi agli scienziati dei dati.

Quando si crea un archivio dati con un account di archiviazione esistente in Azure, è possibile usare due metodi di autenticazione diversi:

Diagramma di due diversi metodi di autenticazione usati da archivi dati di Azure Machine Learning per connettersi a origini dati esterne.

  • Basato sulle credenziali: usare un'entità servizio, un token di firma di accesso condiviso ouna chiave dell'account per autenticare l'accesso all'account di archiviazione.
  • Basato sull'identità: Usare l'identità Microsoft Entra o l'identità gestita.

Informazioni sui tipi di archivi dati

Azure Machine Learning supporta la creazione di archivi dati per più tipi di origine dati di Azure, tra cui:

  • Archiviazione BLOB di Azure
  • Condivisione file di Azure
  • Azure Data Lake (Gen 2)

Usare gli archivi dati predefiniti

Ogni area di lavoro include quattro archivi dati predefiniti (due che si connettono a contenitori di BLOB di Archiviazione di Azure e due che si connettono a condivisioni file di Archiviazione di Azure) usati come risorse di archiviazione di sistema da Azure Machine Learning.

Nella maggior parte dei progetti di apprendimento automatico, è necessario usare origini dati personalizzate. Ad esempio, è possibile integrare la soluzione di apprendimento automatico con dati provenienti da applicazioni esistenti o pipeline di ingegneria dei dati.

Creare un archivio dati

Gli archivi dati sono collegati alle aree di lavoro e vengono usati per archiviare le informazioni di connessione ai servizi di archiviazione. Quando si crea un archivio dati, è possibile specificare un nome che può essere usato per recuperare le informazioni di connessione.

Gli archivi dati consentono di connettersi facilmente ai servizi di archiviazione senza dover fornire tutti i dettagli necessari ogni volta che si desidera leggere o scrivere dati. Crea anche un livello protettivo se si desidera che gli utenti usino i dati, ma non che si connettano direttamente al servizio di archiviazione sottostante.

Creare un archivio dati per un contenitore di Archiviazione BLOB di Azure

È possibile creare un archivio dati tramite l'interfaccia utente grafica, l'interfaccia della riga di comando di Azure o l'SDK (Software Development Kit) Python.

A seconda del servizio di archiviazione a cui ci si vuole connettere, sono disponibili diverse opzioni per l'autenticazione di Azure Machine Learning.

Ad esempio, quando si vuole creare un archivio dati per connettersi a un contenitore di Archiviazione BLOB di Azure, è possibile usare una chiave dell'account:

blob_datastore = AzureBlobDatastore(
    			name = "blob_example",
    			description = "Datastore pointing to a blob container",
    			account_name = "mytestblobstore",
    			container_name = "data-container",
    			credentials = AccountKeyConfiguration(
        			account_key="XXXxxxXXXxXXXXxxXXX"
    			),
)
ml_client.create_or_update(blob_datastore)

In alternativa, è possibile creare un archivio dati per connettersi a un contenitore di Archiviazione BLOB di Azure usando un token di firma di accesso condiviso per l'autenticazione:

blob_datastore = AzureBlobDatastore(
name="blob_sas_example",
description="Datastore pointing to a blob container",
account_name="mytestblobstore",
container_name="data-container",
credentials=SasTokenConfiguration(
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(blob_datastore)