Kommentar
Åtkomst till den här sidan kräver auktorisering. Du kan prova att logga in eller ändra kataloger.
Åtkomst till den här sidan kräver auktorisering. Du kan prova att ändra kataloger.
Den här självstudien visar hur du använder hanterings-API:erna för Analytics Consumption Zone (ACZ) i Azure Data Manager for Energy. Du skapar, listar, hämtar och tar bort ACZ-instanser med hjälp av cURL.
I den här tutorialen lär du dig följande:
- Skapa en ACZ-instans.
- Visa en lista över alla ACZ-instanser i en datapartition.
- Få information om en specifik ACZ-instans.
- Ta bort en ACZ-instans.
Förutsättningar
- Ett Azure-abonnemang. Skapa en kostnadsfritt.
- En Azure Data Manager for Energy (Developer eller Standard-nivå) instans i din Azure-prenumeration. Skapa en Azure Data Manager för Energy-instans.
- ACZ aktiverat för din instans. Se Aktivera konsumtionszon för analys.
- Azure CLI installerat och autentiserat (
az login). - cURL (för Bash-exempel) eller PowerShell 5.1+ (för PowerShell-exempel).
Tip
Utforska API:et interaktivt: Du kan visa den fullständiga ACZ API-specifikationen och testslutpunkterna med hjälp av Swagger-användargränssnittet på https://{instance-name}.energy.azure.com/api/acz/v1/docs. Ersätt {instance-name} med instansnamnet för din Azure Data Manager for Energy.
Hämta information om din Azure Data Manager for Energy-instans
Samla in den här informationen från din Azure Data Manager for Energy-instans i Azure-portalen.
Innan du börjar
Kodexemplen i den här handledningen använder platshållarvärden i formatet {curly-braces}. Ersätt dessa platshållare med dina faktiska värden när du kör kommandona.
Alla API-anrop kräver autentisering. Exemplen för Bash och PowerShell visar hur token genereras direkt i kommandot med Azure CLI. Alternativa autentiseringsmetoder finns i Generera en autentiseringstoken.
Skapa en ACZ-instans
Använd Skapa ACZ API för att konfigurera en ny ACZ-instans för en datapartition.
API
POST /api/acz/v1/aczs
Viktiga punkter
- Du kan ha upp till tre ACZ-instanser per datapartition.
- ACZ-namnet måste vara unikt i partitionen.
- Den användartilldelade hanterade identiteten måste vara:
- Tilldelad till din Azure Data Manager för energiresurs (se Aktivera analysförbrukningszon).
- Tilldelades rollen Storage Blob Data Contributor på mållagringskontot för Azure Data Lake Storage Gen2.
- Ett Data Lake Storage Gen2 lagringskonto med ett hierarkiskt namnområde aktiverat krävs.
# 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}"]
}
}'
Ersätt platshållarna
| Placeholder | Description |
|---|---|
{subscription-id} |
Prenumerations-ID där din Azure Data Manager for Energy-instans finns. |
{resource-group} |
Resursgrupp som innehåller din Azure Data Manager för Energy-instansen. |
{adme-instance-name} |
Namnet på din Azure Data Manager for Energy-instans. |
{base-url} |
Url för din Azure Data Manager for Energy-instans (till exempel myinstance.energy.azure.com). |
{data-partition-id} |
Ditt datapartitions-ID (till exempel opendes). |
{acz-name} |
Visningsnamn för ACZ-instansen (1–100 tecken, till exempel my-acz-wells-and-logs). |
{acz-type} |
Valfritt: LATEST_VERSION (standard) exporterar endast den senaste versionen och ALL_VERSIONS exporterar alla versioner. |
{storage-resource-id} |
Azure-resurs-ID för mål-Data Lake Storage Gen2-lagringskontot (till exempel /subscriptions/xxx.../storageAccounts/mystorageacct). |
{base-path} |
Valfritt: Lagringsplats för ACZ-utgång (till exempel acz-output eller acz-output/workbench). Det första segmentet är containernamnet; ACZ skapar containern om den inte existerar. Det första segmentet måste vara ett giltigt containernamn. För namngivningsregler, se Namngivning och referenser av behållare, blobs och metadata. Eventuella återstående segment är mappar. ACZ skriver data på <basePath>/<aczId>/. Om du utelämnar basePath, skapar ACZ en behållare som är uppkallad efter aczId och skriver data till <aczId>/<aczId>/. Om du använder Swagger-gränssnittet, byt ut platshållarvärdet string; annars skapar ACZ en container som heter string. |
allCatalogSync |
Valfritt (standard: false). När värdet är inställt på trueexporteras alla katalogtyper från partitionen. Anges utanför avsnittet configuration. När true, catalogKinds och wellboreDDMSKinds i konfigurationen ignoreras för katalogdata. |
{catalog-kinds} |
Valfritt: typsträngar för OSDU®-katalogen som ska synkroniseras (till exempel ["osdu:wks:master-data--Well:*"]). Ignoreras om allCatalogSync är true. |
{wellbore-ddms-kinds} |
Valfritt (förhandsvisning): Wellbore Domain Data Management Service (DDMS) typsträngar för synkronisering (till exempel, ["osdu:wks:work-product-component--WellLog:*"]). Filnedladdningar sker endast för typer som anges här. |
Tip
Exportera alla katalogdata: Ange "allCatalogSync": true (utanför configuration avsnittet) för att exportera alla katalogtyper från datapartitionen. När detta är aktiverat ignoreras arrayerna catalogKinds och wellboreDDMSKinds i konfigurationen för katalogdata. Wellbore DDMS massfilnedladdningar sker fortfarande endast för typer som anges i wellboreDDMSKinds.
Du måste ange minst ett av följande alternativ:
- Ange
"allCatalogSync": true(utanför konfigurationen). - Ange
catalogKindsmatrisen i konfigurationen med minst ett typmönster. - Ange
wellboreDDMSKindsmatrisen i konfigurationen med minst ett typmönster.
Exempelsvar (201 Skapad)
{
"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",
"maintenance": [],
"createdTs": "2026-03-31T10:00:00Z",
"updatedTs": "2026-03-31T10:00:00Z",
"createdBy": "user@contoso.com",
"catalogSchemaVersion": 2
}
När du har skapat ACZ-instansen påbörjar den den historiska ögonblicksbilden i tillståndet PROCESSING. Använd API:et Hämta ACZ för att kontrollera statusen.
Lista ACZ-instanser
Använd API:et List ACZs för att hämta alla ACZ-instanser i en datapartition.
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}'
Ersätt platshållarna
| Placeholder | Description |
|---|---|
{subscription-id} |
Prenumerations-ID där din Azure Data Manager for Energy-instans finns. |
{resource-group} |
Resursgrupp som innehåller din Azure Data Manager för Energy-instansen. |
{adme-instance-name} |
Namnet på din Azure Data Manager for Energy-instans. |
{base-url} |
Url för din Azure Data Manager for Energy-instans (till exempel myinstance.energy.azure.com). |
{data-partition-id} |
Ditt datapartitions-ID (till exempel opendes). |
Exempelsvar (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",
"maintenance": [],
"createdTs": "2026-03-31T10:00:00Z",
"updatedTs": "2026-03-31T10:00:00Z",
"createdBy": "user@contoso.com",
"catalogSchemaVersion": 2
},
{
"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",
"maintenance": [
{
"activity": "OPTIMIZE_Z_ORDER",
"status": "SUCCEEDED",
"lastAttemptTs": "2026-04-01T03:00:00Z",
"lastSuccessfulTs": "2026-04-01T03:00:12Z"
},
{
"activity": "VACUUM",
"status": "SUCCEEDED",
"lastAttemptTs": "2026-04-01T03:00:12Z",
"lastSuccessfulTs": "2026-04-01T03:00:13Z"
}
],
"createdTs": "2026-03-31T09:00:00Z",
"updatedTs": "2026-03-31T09:45:00Z",
"createdBy": "user@contoso.com",
"catalogSchemaVersion": 2
}
],
"count": 2
}
Svaret listar alla ACZ-instanser oavsett status: ACTIVE, FAILED eller ACCESS_DENIED. Det här svaret visar två ACZ-instanser: en med selektiv katalogsynkronisering (allCatalogSync: false med specifika typer) och en annan som använder allCatalogSync: true för att exportera alla katalogtyper.
Hämta ACZ-information
Använd Get ACZ API (Hämta ACZ API) för att få information om en specifik ACZ-instans.
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}'
Ersätt platshållarna
| Placeholder | Description |
|---|---|
{subscription-id} |
Prenumerations-ID där din Azure Data Manager for Energy-instans finns. |
{resource-group} |
Resursgrupp som innehåller din Azure Data Manager för Energy-instansen. |
{adme-instance-name} |
Namnet på din Azure Data Manager for Energy-instans. |
{base-url} |
Url för din Azure Data Manager for Energy-instans (till exempel myinstance.energy.azure.com). |
{data-partition-id} |
Ditt datapartitions-ID (till exempel opendes). |
{acz-id} |
ACZ-identifierare från svaret Skapa eller Lista (till exempel acz-abc123def456). |
Exempelsvar (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",
"maintenance": [
{
"activity": "OPTIMIZE_Z_ORDER",
"status": "SUCCEEDED",
"lastAttemptTs": "2026-04-01T03:00:00Z",
"lastSuccessfulTs": "2026-04-01T03:00:12Z"
},
{
"activity": "VACUUM",
"status": "SUCCEEDED",
"lastAttemptTs": "2026-04-01T03:00:12Z",
"lastSuccessfulTs": "2026-04-01T03:00:13Z"
}
],
"createdTs": "2026-03-31T10:00:00Z",
"updatedTs": "2026-03-31T10:30:00Z",
"createdBy": "user@contoso.com",
"catalogSchemaVersion": 2
}
Spåra etablering av ACZ genom att kontrollera fälten status och historicalSnapshotStatus.
Svaret inkluderar också:
-
catalogSchemaVersion: Schemaversionen avosducatalogtabellen. Nya ACZ-instanser använder version 2, som lägger tillmodifyUserochmodifyTimekolumnerna. För detaljer, se Analytics Consumption Zone-koncept. -
maintenance: Status för Delta-tabellens underhållsaktiviteter som ACZ kör (OPTIMIZE_Z_ORDERochVACUUM), inklusive sista försökstid och sista lyckade körtid. Arrayen är tom fram till den första underhållskörningen.
Ta bort en ACZ-instans
Använd Ta bort ACZ-API:et för att ta bort en ACZ-konfiguration.
API
DELETE /api/acz/v1/aczs/{acz-id}
Varning
Det går inte att ångra den här borttagningsåtgärden. Den tar bort all ACZ-konfiguration och stoppar synkronisering. Data som redan finns i målkontot för Data Lake Storage Gen2-lagring förblir oförändrade.
# 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}'
Ersätt platshållarna
| Placeholder | Description |
|---|---|
{subscription-id} |
Prenumerations-ID där din Azure Data Manager for Energy-instans finns. |
{resource-group} |
Resursgrupp som innehåller din Azure Data Manager för Energy-instansen. |
{adme-instance-name} |
Namnet på din Azure Data Manager for Energy-instans. |
{base-url} |
Url för din Azure Data Manager for Energy-instans (till exempel myinstance.energy.azure.com). |
{data-partition-id} |
Ditt datapartitions-ID (till exempel opendes). |
{acz-id} |
ACZ-identifierare från svaret Skapa eller Lista (till exempel acz-abc123def456). |
Exempelsvar (204 Inget innehåll)
En lyckad borttagning returnerar HTTP 204 utan svarstext. ACZ-status ändras till DELETING medan rensningen pågår.
Felsvar
ACZ-API:erna returnerar följande felkoder.
| HTTP-statuskod | Description |
|---|---|
400 |
Felaktig begäran. Kontrollera begärandetexten för verifieringsfel. |
401 |
Behörighet saknas. Bearer-token saknas eller är ogiltig. |
403 |
Förbjudet. Användaren tillhör inte den behörighetsgrupp som krävs. |
404 |
Hittades inte Det angivna ACZ-ID:t finns inte. |
422 |
Verifieringen misslyckades. Begärandetexten har värden som inte är giltiga. |
500 |
Internt serverfel uppstod. Kontakta supporten om det här felet kvarstår. |