Nota
O acesso a esta página requer autorização. Pode tentar iniciar sessão ou alterar os diretórios.
O acesso a esta página requer autorização. Pode tentar alterar os diretórios.
Este tutorial mostra como utilizar as APIs de gestão da Zona de Consumo de Análise (ACZ) no Azure Data Manager for Energy. Cria, lista, recupera e elimina instâncias ACZ usando cURL.
Importante
Analytics Consumption Zone está atualmente em versão preliminar. Para termos legais que se aplicam a funcionalidades do Azure que estejam em beta, pré-visualização ou que ainda não tenham sido lançadas em disponibilidade geral, consulte Termos Suplementares de Utilização para Prévisualizações do Microsoft Azure.
Durante a pré-visualização, o ACZ está disponível apenas em instâncias de nível Developer e requer o uso de listas de autorizações. Siga as orientações em Ativar Zona de Consumo de Análises e contacte o seu representante da Microsoft.
Neste tutorial, aprenderás como:
- Cria uma instância ACZ.
- Liste todas as instâncias ACZ numa partição de dados.
- Obtenha detalhes de uma instância ACZ específica.
- Eliminar uma instância de ACZ.
Pré-requisitos
- Uma assinatura do Azure. Crie um gratuitamente.
- Uma instância Azure Data Manager for Energy (nível Developer) na sua subscrição do Azure. Crie um Azure Data Manager para uma instância de Energia.
- ACZ ativado para a tua instância. Consulte Ativar a zona de consumo de analítica.
- A CLI do Azure instalada e autenticada (
az login). - cURL (para exemplos de Bash) ou PowerShell 5.1+ (para exemplos de PowerShell).
Tip
Explore a API de forma interativa: Pode visualizar a especificação completa da API ACZ e os endpoints de teste usando a interface do Swagger em https://{instance-name}.energy.azure.com/api/acz/v1/docs. Substitua {instance-name} pelo nome da sua instância do Azure Data Manager for Energy.
Obtenha os detalhes da sua instância Azure Data Manager for Energy
Recolha estes dados na sua instância Azure Data Manager for Energy no portal Azure.
Antes de começar
Os exemplos de código neste tutorial usam valores provisórios no {curly-braces} formato. Substitui esses marcadores de posição pelos teus valores reais quando executares os comandos.
Todas as chamadas de API requerem autenticação. Os exemplos de Bash e PowerShell mostram geração de tokens inline usando a CLI do Azure. Para métodos alternativos de autenticação, veja Gerar um token de autenticação.
Criar uma instância ACZ
Use a API Create ACZ para configurar uma nova instância ACZ para uma partição de dados.
API
POST /api/acz/v1/aczs
Pontos principais
- No máximo, três instâncias ACZ por partição de dados (limite da versão preliminar).
- O nome ACZ deve ser único dentro da partição.
- A identidade gerida atribuída pelo utilizador deve ser:
- Atribuído ao recurso Azure Data Manager for Energy (veja Ativar a Zona de Consumo de Análise).
- Foi concedida a função Storage Blob Data Contributor na conta de armazenamento de destino do Azure Data Lake Storage Gen2.
- É necessária uma conta de armazenamento Data Lake Storage Gen2 com um namespace hierárquico ativado.
# 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}"]
}
}'
Substitua os marcadores
| Placeholder | Description |
|---|---|
{subscription-id} |
ID de subscrição onde reside o seu Azure Data Manager para a instância de Energia. |
{resource-group} |
Grupo de recursos que contém a sua instância Azure Data Manager for Energy. |
{adme-instance-name} |
O nome da sua instância do Azure Data Manager for Energy. |
{base-url} |
A URL da sua instância Azure Data Manager for Energy (por exemplo, myinstance.energy.azure.com). |
{data-partition-id} |
O ID da sua partição de dados (por exemplo, opendes). |
{acz-name} |
Nome de exibição para a instância ACZ (1-100 caracteres, por exemplo, my-acz-wells-and-logs). |
{acz-type} |
Opcional: LATEST_VERSION (por defeito) exporta apenas a versão mais recente e ALL_VERSIONS exporta todas as versões. |
{storage-resource-id} |
ID de recurso Azure da conta de armazenamento de destino Data Lake Storage Gen2 (por exemplo, /subscriptions/xxx.../storageAccounts/mystorageacct). |
{base-path} |
Opcional: Caminho base dentro da conta de armazenamento para a saída de dados ACZ (por exemplo, acz-output). |
allCatalogSync |
Opcional (por defeito: false). Quando definido para true, exporta todos os tipos de catálogo da partição. Especificado fora da configuration secção. Quando true, catalogKinds e wellboreDDMSKinds em configuração são ignorados para dados de catálogo. |
{catalog-kinds} |
Opcional: cadeias de tipos do catálogo OSDU® para sincronizar (por exemplo, ["osdu:wks:master-data--Well:*"]). Ignorado se allCatalogSync estiver true. |
{wellbore-ddms-kinds} |
Opcional: cadeias de tipo do Wellbore Domain Gestão de Dados Service (DDMS) para sincronizar (por exemplo, ["osdu:wks:work-product-component--WellLog:*"]). Os downloads de ficheiros ocorrem apenas nos tipos listados aqui. |
Tip
Exportar todos os dados do catálogo: Defina "allCatalogSync": true (fora da configuration secção) para exportar todos os tipos de catálogo a partir da sua partição de dados. Quando esta opção está ativada, as matrizes catalogKinds e wellboreDDMSKinds na configuração são ignoradas relativamente aos dados do catálogo. Os downloads massivos de ficheiros Wellbore DDMS ainda ocorrem apenas para os tipos listados em wellboreDDMSKinds.
Deve fornecer pelo menos uma das seguintes opções:
- Definir
"allCatalogSync": true(fora da configuração). - Forneça na configuração o array
catalogKindscom pelo menos um padrão de tipo. - Forneça um array
wellboreDDMSKindsna configuração com pelo menos um padrão de tipo.
Exemplo de resposta (201 Criado)
{
"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"
}
Depois de criar a instância ACZ, é iniciado o instantâneo histórico com o estado PROCESSING. Usa a API do Get ACZ para verificar o estado.
Lista de instâncias ACZ
Use a API List ACZs para obter todas as instâncias ACZ numa partição de dados.
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}'
Substitua os marcadores
| Placeholder | Description |
|---|---|
{subscription-id} |
ID de subscrição onde reside o seu Azure Data Manager para a instância de Energia. |
{resource-group} |
Grupo de recursos que contém a sua instância Azure Data Manager for Energy. |
{adme-instance-name} |
O nome da instância do Azure Data Manager for Energy. |
{base-url} |
A URL da sua instância Azure Data Manager for Energy (por exemplo, myinstance.energy.azure.com). |
{data-partition-id} |
O ID da sua partição de dados (por exemplo, opendes). |
Resposta de exemplo (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
}
A resposta lista todas as instâncias ACZ em qualquer estado: ACTIVE, FAILED, ou ACCESS_DENIED. Esta resposta mostra duas instâncias ACZ: uma usando sincronização seletiva de catálogo (allCatalogSync: false com tipos específicos) e outra usada allCatalogSync: true para exportar todos os tipos de catálogo.
Obtenha os detalhes da ACZ
Use a API Get ACZ para obter detalhes de uma instância ACZ específica.
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}'
Substitua os marcadores
| Placeholder | Description |
|---|---|
{subscription-id} |
ID de subscrição onde reside o seu Azure Data Manager para a instância de Energia. |
{resource-group} |
Grupo de recursos que contém a sua instância Azure Data Manager for Energy. |
{adme-instance-name} |
O nome da instância do Azure Data Manager for Energy. |
{base-url} |
A URL da sua instância Azure Data Manager for Energy (por exemplo, myinstance.energy.azure.com). |
{data-partition-id} |
O ID da sua partição de dados (por exemplo, opendes). |
{acz-id} |
Identificador ACZ a partir da resposta Criar ou Listar (por exemplo, acz-abc123def456). |
Resposta de exemplo (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"
}
Para acompanhar o provisionamento do ACZ, verifique os campos status e historicalSnapshotStatus.
Eliminar uma instância ACZ
Use a API Delete ACZ para remover uma configuração ACZ.
API
DELETE /api/acz/v1/aczs/{acz-id}
Warning
Esta ação de apagar não pode ser desfeita. Remove toda a configuração do ACZ e interrompe a sincronização. Os dados já presentes na conta de armazenamento Data Lake Storage Gen2 de destino mantêm-se intactos.
# 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}'
Substitua os marcadores
| Placeholder | Description |
|---|---|
{subscription-id} |
ID de subscrição onde reside o seu Azure Data Manager para a instância de Energia. |
{resource-group} |
Grupo de recursos que contém a sua instância Azure Data Manager for Energy. |
{adme-instance-name} |
O nome da instância do Azure Data Manager for Energy. |
{base-url} |
A URL da sua instância Azure Data Manager for Energy (por exemplo, myinstance.energy.azure.com). |
{data-partition-id} |
O ID da sua partição de dados (por exemplo, opendes). |
{acz-id} |
Identificador ACZ a partir da resposta Criar ou Listar (por exemplo, acz-abc123def456). |
Resposta de exemplo (204 Sem Conteúdo)
Uma eliminação bem-sucedida devolve HTTP 204 sem corpo de resposta. O estado ACZ altera-se para DELETING enquanto decorre a limpeza.
Respostas de erro
As APIs ACZ devolvem os seguintes códigos de erro.
| Estado HTTP | Description |
|---|---|
400 |
Pedido inválido. Verifique o corpo do pedido para erros de validação. |
401 |
Não autorizado. O token de portador está em falta ou não é válido. |
403 |
Proibido. O utilizador não pertence ao grupo de direitos obrigatórios. |
404 |
Não encontrado. O ID ACZ especificado não existe. |
422 |
A validação falhou. O corpo do pedido tem valores que não são válidos. |
500 |
Erro de servidor interno. Contacte o suporte se este erro persistir. |