Nota
L'accesso a questa pagina richiede l'autorizzazione. È possibile provare ad accedere o modificare le directory.
L'accesso a questa pagina richiede l'autorizzazione. È possibile provare a modificare le directory.
Questa esercitazione illustra come usare le API di gestione ACZ (Analytics Consumption Zone) in Azure Data Manager for Energy. È possibile creare, elencare, recuperare ed eliminare istanze di ACZ usando cURL.
Importante
Analytics Consumption Zone è attualmente in anteprima. Per le condizioni legali applicabili alle funzionalità di Azure disponibili in versione beta, in anteprima o non ancora rilasciate nella disponibilità generale, vedere Condizioni per l'utilizzo supplementari per Microsoft Azure anteprime.
Durante l'anteprima, ACZ è disponibile solo nelle istanze del livello sviluppatore e richiede l'uso di elenchi di elementi consentiti. Seguite le indicazioni in Abilitare la zona di utilizzo di Analytics, e contattate il rappresentante Microsoft.
In questa esercitazione apprenderai a:
- Creare un'istanza di ACZ.
- Elencare tutte le istanze di ACZ in una partizione di dati.
- Ottenere i dettagli di un'istanza specifica di ACZ.
- Eliminare un'istanza di ACZ.
Prerequisiti
- Una sottoscrizione di Azure. Creane uno gratis.
- Un'istanza di Azure Data Manager per Energy (livello Sviluppatore) nell'abbonamento Azure. Creare un'istanza di Azure Data Manager per l'energia.
- ACZ attivato per l'istanza. Vedi Abilita la zona di consumo di Analytics.
- Il interfaccia della riga di comando di Azure installato e autenticato (
az login). - cURL (per esempi di Bash) o PowerShell 5.1+ (per esempi di PowerShell).
Tip
Esplorare l'API in modo interattivo: È possibile visualizzare la specifica dell'API ACZ completa e gli endpoint di test usando l'interfaccia utente di Swagger all'indirizzo https://{instance-name}.energy.azure.com/api/acz/v1/docs. Sostituire {instance-name} con il nome dell'istanza di Azure Data Manager per Energy.
Ottieni i dettagli dell'istanza di Azure Data Manager for Energy
Raccogliere questi dettagli dall'istanza di Azure Data Manager for Energy nel portale di Azure.
Prima di iniziare
Gli esempi di codice in questo tutorial usano valori segnaposto nel formato {curly-braces}. Sostituite questi segnaposto con i valori effettivi quando eseguite i comandi.
Tutte le chiamate API richiedono l'autenticazione. Gli esempi di Bash e PowerShell mostrano la generazione di token inline usando il interfaccia della riga di comando di Azure. Per metodi di autenticazione alternativi, vedere Generare un token di autenticazione.
Creare un'istanza di ACZ
Usare l'API Create ACZ per configurare una nuova istanza di ACZ per una partizione di dati.
API
POST /api/acz/v1/aczs
Punti chiave
- Un massimo di tre istanze ACZ per partizione di dati (limite di anteprima).
- Il nome ACZ deve essere univoco all'interno della partizione.
- L'identità gestita assegnata dall'utente deve essere:
- Assegnato alla risorsa Azure Data Manager for Energy (vedi Abilitare la zona di utilizzo di Analytics).
- Concesso il ruolo Collaboratore ai dati del BLOB di archiviazione nell'account di archiviazione Azure Data Lake Storage Gen2 di destinazione.
- È necessario un account di archiviazione Data Lake Storage Gen2 con uno spazio dei nomi gerarchico abilitato.
# Get auth app ID for your Azure Data Manager for Energy instance
AUTH_APP_ID=$(az resource show --ids /subscriptions/{subscription-id}/resourceGroups/{resource-group}/providers/Microsoft.OpenEnergyPlatform/energyServices/{adme-instance-name} --query properties.authAppId -o tsv)
# Get access token
TOKEN=$(az account get-access-token --resource $AUTH_APP_ID --query accessToken -o tsv)
# Create ACZ instance
curl --request POST \
--url https://{base-url}/api/acz/v1/aczs \
--header "Authorization: Bearer $TOKEN" \
--header 'Content-Type: application/json' \
--header 'data-partition-id: {data-partition-id}' \
--data '{
"name": "{acz-name}",
"aczType": "{acz-type}",
"targetFormat": "DELTA_PARQUET",
"allCatalogSync": false,
"sink": {
"storageType": "microsoft.storage/storageaccounts",
"storageId": "{storage-resource-id}",
"basePath": "{base-path}"
},
"configuration": {
"catalogKinds": ["{catalog-kinds}"],
"wellboreDDMSKinds": ["{wellbore-ddms-kinds}"]
}
}'
Sostituisci i segnaposto
| Placeholder | Description |
|---|---|
{subscription-id} |
ID della sottoscrizione in cui si trova l'istanza di Azure Data Manager per Energy. |
{resource-group} |
Gruppo di risorse che contiene l'istanza di Azure Data Manager for Energy. |
{adme-instance-name} |
Nome dell'istanza di Azure Data Manager per Energy. |
{base-url} |
URL dell'istanza di Azure Data Manager for Energy, ad esempio myinstance.energy.azure.com. |
{data-partition-id} |
ID della partizione di dati, ad esempio opendes. |
{acz-name} |
Nome visualizzato per l'istanza di ACZ (ad esempio, 1-100 caratteri). my-acz-wells-and-logs |
{acz-type} |
Facoltativo: LATEST_VERSION (impostazione predefinita) esporta solo la versione più recente ed ALL_VERSIONS esporta tutte le versioni. |
{storage-resource-id} |
ID risorsa di Azure dell'account di archiviazione di destinazione Data Lake Storage Gen2 (ad esempio, /subscriptions/xxx.../storageAccounts/mystorageacct). |
{base-path} |
Facoltativo: percorso di base all'interno dell'account di archiviazione per l'output dei dati ACZ (ad esempio, acz-output). |
allCatalogSync |
Facoltativo (impostazione predefinita: false). Se impostato su true, esporta tutti i tipi di catalogo dalla partizione. Specificato all'esterno della configuration sezione. Quando true, catalogKinds e wellboreDDMSKinds nella configurazione vengono ignorati nei dati del catalogo. |
{catalog-kinds} |
Facoltativo: stringhe di tipi di catalogo OSDU® da sincronizzare (ad esempio, ["osdu:wks:master-data--Well:*"]). Ignorato se allCatalogSync è true. |
{wellbore-ddms-kinds} |
Facoltativo: stringhe di tipo del servizio Wellbore Domain Gestione dati Service (DDMS) da sincronizzare (ad esempio, ["osdu:wks:work-product-component--WellLog:*"]). I download di file vengono eseguiti solo per i tipi elencati qui. |
Tip
Esportare tutti i dati del catalogo: Impostare "allCatalogSync": true (all'esterno della configuration sezione) per esportare tutti i tipi di catalogo dalla partizione di dati. Quando è abilitata, gli array catalogKinds e wellboreDDMSKinds nella configurazione vengono ignorati per i dati di catalogo. I download in blocco di Wellbore DDMS si verificano ancora solo per i tipi elencati in wellboreDDMSKinds.
È necessario specificare almeno una delle opzioni seguenti:
- Imposta
"allCatalogSync": true(configurazione esterna). - Fornire una matrice
catalogKindsnella configurazione con almeno un criterio di tipo. - Fornire una matrice
wellboreDDMSKindsnella configurazione con almeno un criterio di tipo.
Risposta di esempio (201 Creata)
{
"aczId": "acz-abc123def456",
"name": "my-acz-wells-and-logs",
"status": "ACTIVE",
"aczType": "LATEST_VERSION",
"targetFormat": "DELTA_PARQUET",
"sink": {
"storageType": "microsoft.storage/storageaccounts",
"storageId": "/subscriptions/{sub-id}/resourceGroups/{rg}/providers/Microsoft.Storage/storageAccounts/{account}",
"basePath": "acz-output"
},
"allCatalogSync": false,
"configuration": {
"catalogKinds": [
"osdu:wks:master-data--Well:*",
"osdu:wks:reference-data--UnitOfMeasure:*"
],
"wellboreDDMSKinds": [
"osdu:wks:work-product-component--WellLog:*"
]
},
"historicalSnapshotStatus": "PROCESSING",
"createdTs": "2026-03-31T10:00:00Z",
"updatedTs": "2026-03-31T10:00:00Z",
"createdBy": "user@contoso.com"
}
Dopo aver creato l'istanza ACZ, viene avviata l'istantanea cronologica con lo stato PROCESSING. Usare l'API Get ACZ per controllare lo stato.
Elencare istanze ACZ
Usare l'API List ACZs per ottenere tutte le istanze di ACZ in una partizione di dati.
API
GET /api/acz/v1/aczs
# Get auth app ID for your Azure Data Manager for Energy instance
AUTH_APP_ID=$(az resource show --ids /subscriptions/{subscription-id}/resourceGroups/{resource-group}/providers/Microsoft.OpenEnergyPlatform/energyServices/{adme-instance-name} --query properties.authAppId -o tsv)
# Get access token
TOKEN=$(az account get-access-token --resource $AUTH_APP_ID --query accessToken -o tsv)
# List ACZ instances
curl --request GET \
--url https://{base-url}/api/acz/v1/aczs \
--header "Authorization: Bearer $TOKEN" \
--header 'Accept: application/json' \
--header 'data-partition-id: {data-partition-id}'
Sostituire i segnaposto
| Placeholder | Description |
|---|---|
{subscription-id} |
ID della sottoscrizione in cui si trova l'istanza di Azure Data Manager per Energy. |
{resource-group} |
Gruppo di risorse che contiene l'istanza di Azure Data Manager for Energy. |
{adme-instance-name} |
Nome dell'istanza di Azure Data Manager per Energy. |
{base-url} |
URL dell'istanza di Azure Data Manager per l'energia (ad esempio, myinstance.energy.azure.com). |
{data-partition-id} |
ID della partizione di dati, ad esempio opendes. |
Risposta di esempio (200 OK)
{
"items": [
{
"aczId": "acz-abc123def456",
"name": "my-acz-wells-and-logs",
"status": "ACTIVE",
"aczType": "LATEST_VERSION",
"targetFormat": "DELTA_PARQUET",
"sink": {
"storageType": "microsoft.storage/storageaccounts",
"storageId": "/subscriptions/{sub-id}/resourceGroups/{rg}/providers/Microsoft.Storage/storageAccounts/{account}",
"basePath": "acz-output"
},
"allCatalogSync": false,
"configuration": {
"catalogKinds": [
"osdu:wks:master-data--Well:*"
]
},
"historicalSnapshotStatus": "PROCESSING",
"createdTs": "2026-03-31T10:00:00Z",
"updatedTs": "2026-03-31T10:00:00Z",
"createdBy": "user@contoso.com"
},
{
"aczId": "acz-xyz789ghi012",
"name": "all-catalog-sync-example",
"status": "ACTIVE",
"aczType": "LATEST_VERSION",
"targetFormat": "DELTA_PARQUET",
"sink": {
"storageType": "microsoft.storage/storageaccounts",
"storageId": "/subscriptions/{sub-id}/resourceGroups/{rg}/providers/Microsoft.Storage/storageAccounts/{account}",
"basePath": "acz-output"
},
"allCatalogSync": true,
"configuration": {
"wellboreDDMSKinds": [
"osdu:wks:work-product-component--WellLog:*"
]
},
"historicalSnapshotStatus": "COMPLETED",
"createdTs": "2026-03-31T09:00:00Z",
"updatedTs": "2026-03-31T09:45:00Z",
"createdBy": "user@contoso.com"
}
],
"count": 2
}
La risposta elenca tutte le istanze di ACZ in qualsiasi stato: ACTIVE, FAILEDo ACCESS_DENIED. Questa risposta mostra due istanze di ACZ: una che usa la sincronizzazione selettiva del catalogo (allCatalogSync: false con tipi specifici) e un'altra che usa allCatalogSync: true per esportare tutti i tipi di catalogo.
Ottenere i dettagli di ACZ
Usare l'API Get ACZ per ottenere i dettagli per un'istanza di ACZ specifica.
API
GET /api/acz/v1/aczs/{acz-id}
# Get auth app ID for your Azure Data Manager for Energy instance
AUTH_APP_ID=$(az resource show --ids /subscriptions/{subscription-id}/resourceGroups/{resource-group}/providers/Microsoft.OpenEnergyPlatform/energyServices/{adme-instance-name} --query properties.authAppId -o tsv)
# Get access token
TOKEN=$(az account get-access-token --resource $AUTH_APP_ID --query accessToken -o tsv)
# Get ACZ details
curl --request GET \
--url https://{base-url}/api/acz/v1/aczs/{acz-id} \
--header "Authorization: Bearer $TOKEN" \
--header 'Accept: application/json' \
--header 'data-partition-id: {data-partition-id}'
Sostituire i segnaposto
| Placeholder | Description |
|---|---|
{subscription-id} |
ID della sottoscrizione in cui si trova l'istanza di Azure Data Manager per Energy. |
{resource-group} |
Gruppo di risorse che contiene l'istanza di Azure Data Manager for Energy. |
{adme-instance-name} |
Nome dell'istanza di Azure Data Manager per Energy. |
{base-url} |
URL dell'istanza di Azure Data Manager for Energy, ad esempio myinstance.energy.azure.com. |
{data-partition-id} |
ID della partizione di dati, ad esempio opendes. |
{acz-id} |
Identificatore ACZ dalla risposta Create o List (ad esempio, acz-abc123def456). |
Risposta di esempio (200 OK)
{
"aczId": "acz-abc123def456",
"name": "my-acz-wells-and-logs",
"status": "ACTIVE",
"aczType": "LATEST_VERSION",
"targetFormat": "DELTA_PARQUET",
"sink": {
"storageType": "microsoft.storage/storageaccounts",
"storageId": "/subscriptions/{sub-id}/resourceGroups/{rg}/providers/Microsoft.Storage/storageAccounts/{account}",
"basePath": "acz-output"
},
"allCatalogSync": false,
"configuration": {
"catalogKinds": [
"osdu:wks:master-data--Well:*",
"osdu:wks:reference-data--UnitOfMeasure:*"
],
"wellboreDDMSKinds": [
"osdu:wks:work-product-component--WellLog:*"
]
},
"historicalSnapshotStatus": "COMPLETED",
"createdTs": "2026-03-31T10:00:00Z",
"updatedTs": "2026-03-31T10:30:00Z",
"createdBy": "user@contoso.com"
}
Per tenere traccia del provisioning di ACZ, verificare i campi status e historicalSnapshotStatus.
Eliminare un'istanza di ACZ
Usare l'API Delete ACZ per rimuovere una configurazione ACZ.
API
DELETE /api/acz/v1/aczs/{acz-id}
Avvertimento
Questa azione di eliminazione non può essere annullata. Rimuove tutte le configurazioni ACZ e arresta la sincronizzazione. I dati già presenti nell'account di archiviazione Data Lake Storage Gen2 di destinazione rimangono intatti.
# Get auth app ID for your Azure Data Manager for Energy instance
AUTH_APP_ID=$(az resource show --ids /subscriptions/{subscription-id}/resourceGroups/{resource-group}/providers/Microsoft.OpenEnergyPlatform/energyServices/{adme-instance-name} --query properties.authAppId -o tsv)
# Get access token
TOKEN=$(az account get-access-token --resource $AUTH_APP_ID --query accessToken -o tsv)
# Delete ACZ instance
curl --request DELETE \
--url https://{base-url}/api/acz/v1/aczs/{acz-id} \
--header "Authorization: Bearer $TOKEN" \
--header 'Accept: application/json' \
--header 'data-partition-id: {data-partition-id}'
Sostituire i segnaposto
| Placeholder | Description |
|---|---|
{subscription-id} |
ID della sottoscrizione in cui si trova l'istanza di Azure Data Manager per Energy. |
{resource-group} |
Gruppo di risorse che contiene l'istanza di Azure Data Manager for Energy. |
{adme-instance-name} |
Nome dell'istanza di Azure Data Manager for Energy. |
{base-url} |
URL dell'istanza di Azure Data Manager for Energy (ad esempio, myinstance.energy.azure.com). |
{data-partition-id} |
ID della partizione di dati, ad esempio opendes. |
{acz-id} |
Identificatore ACZ dalla risposta di Create o List (ad esempio, acz-abc123def456). |
Risposta di esempio (204 Nessun contenuto)
Un'eliminazione riuscita restituisce HTTP 204 senza corpo della risposta. Lo stato ACZ cambia in DELETING durante l'esecuzione della pulizia.
Risposte agli errori
Le API ACZ restituiscono i codici di errore seguenti.
| Stato HTTP | Description |
|---|---|
400 |
Richiesta non valida. Controllare il corpo della richiesta per verificare la presenza di errori di convalida. |
401 |
Non autorizzato. Il token bearer manca o non è valido. |
403 |
Vietato. L'utente non appartiene al gruppo di autorizzazioni necessario. |
404 |
Non trovato. L'ID ACZ specificato non esiste. |
422 |
Convalida non riuscita. Il corpo della richiesta ha valori non validi. |
500 |
Errore interno del server. Contattare il supporto tecnico se l'errore persiste. |