Habilitar zona de consumo de análise

Este artigo explica como habilitar a funcionalidade ACZ (Zona de Consumo de Análise) no recurso Azure Data Manager for Energy. A habilitação é um processo de instalação único que configura seu recurso Azure Data Manager para Energia, identidade gerenciada atribuída pelo usuário e conta de armazenamento. Após a habilitação, você pode criar várias instâncias do ACZ para sincronizar diferentes conjuntos de dados do Azure Data Manager for Energy com sua conta do Azure Data Lake Storage Gen2.

Importante

A Zona de Consumo de Análise está atualmente em versão preliminar. Para os termos legais aplicáveis aos recursos do Azure que estão em beta, em versão prévia ou que ainda não foram lançados em disponibilidade geral, consulte Termos de Uso Complementares para Versões Prévias do Microsoft Azure.

Durante a prévia, a ACZ está disponível apenas em instâncias da camada Developer e requer o uso de listas de permissões. Para habilitar a ACZ no recurso Azure Data Manager for Energy, siga as etapas deste artigo e entre em contato com seu representante do Microsoft.

Visão geral da configuração

A configuração estabelece uma identidade gerenciada que permite à ACZ acessar os dados do Azure Data Manager for Energy e gravá-los no Data Lake Storage Gen2.

Conclua as seguintes tarefas de instalação única para habilitar a ACZ no recurso Azure Data Manager for Energy. Após a habilitação, você pode criar várias instâncias ACZ usando as APIs.

Tip

Planeje a configuração do ACZ: Antes de criar uma instância do ACZ, decida se você precisa:

  • Todos os dados do catálogo: defina allCatalogSync: true (fora da seção de configuração) para exportar todos os tipos de entidade de catálogo de sua partição.
  • Tipos específicos de entidade: use o array na seção de configuração para exportar apenas tipos específicos (por exemplo, Wells, Wellbores ou Fields).

Quando allCatalogSync é true, as matrizes catalogKinds e wellboreDDMSKinds são ignoradas nos dados de catálogo. Os downloads de arquivo em massa do DDMS (Wellbore Domain Gerenciamento de Dados Service) ocorrem apenas para tipos listados em wellboreDDMSKinds.

Para obter exemplos de configuração, consulte Tutorial: Usar APIs ACZ.

Etapa Tarefa
1 Crie ou use uma conta de armazenamento Data Lake Storage Gen2 existente.
2 Crie uma identidade gerenciada atribuída pelo usuário para a ACZ.
3 Atribua uma identidade gerenciada atribuída pelo usuário ao recurso Azure Data Manager for Energy.
4 Verifique se o usuário tem acesso ao grupo de permissões.
5 Conceda permissões de armazenamento de identidade gerenciada atribuídas pelo usuário.
6 Compartilhe a identidade gerenciada atribuída pelo usuário e os detalhes da instância do Azure Data Manager for Energy com a Microsoft.

Pré-requisitos

Etapa 1: criar ou usar uma conta de armazenamento Data Lake Storage Gen2 existente

O ACZ requer uma conta de armazenamento Azure Data Lake Storage Gen2 com namespace hierárquico habilitado para armazenar os dados sincronizados. Se você ainda não tiver um, crie-o.

  1. No portal Azure, selecione Criar um recurso>Storage account.
  2. Na guia Noções básicas , selecione sua assinatura e grupo de recursos.
  3. Insira um nome de conta de armazenamento e selecione sua região preferida.
  4. No separador Avançadas , selecione Ativar espaço de nomes hierárquico.
  5. Selecione Examinar + criar e, em seguida, selecione Criar.

Você será responsável por selecionar uma conta de armazenamento de destino na área geográfica se tiver requisitos de residência de dados. A ACZ exporta dados para a conta de armazenamento Data Lake Storage Gen2 especificada, independentemente do local.

Etapa 2: Criar uma identidade gerenciada atribuída pelo usuário para a ACZ

A ACZ usa uma identidade gerenciada atribuída pelo usuário para gravar dados em Data Lake Storage Gen2, portanto, você precisa criar uma identidade dedicada para a ACZ.

Importante

Microsoft recomenda que você crie uma identidade gerenciada dedicada atribuída pelo usuário para ACZ em vez de reutilizar identidades de outros serviços, como CMEKs (chaves de criptografia gerenciadas pelo cliente) ou EDS (fontes de dados externas). Uma identidade dedicada fornece:

  • Trilhas de auditoria claras: uma identidade separada facilita rastrear operações específicas da ACZ nos logs de auditoria.
  • Gerenciamento independente do ciclo de vida: o controle independente permite que você gire, atualize ou remova a identidade do ACZ sem afetar outros serviços.
  • Controle de acesso granular: a identidade de ACZ só recebe as permissões necessárias (Colaborador de Dados do Blob de Armazenamento), sem herdar permissões desnecessárias.
  • Solução de problemas simplificada: problemas com permissões ACZ não afetam CMEKs, EDS ou outros serviços.

Para criar uma identidade gerenciada atribuída pelo usuário:

  1. Azure portal, pesquise por Managed Identities e selecione-o.
  2. Selecione + Criar.
  3. Selecione sua assinatura, grupo de recursos e região e forneça um nome para a identidade.
  4. Selecione Examinar + criar e, em seguida, selecione Criar.

Etapa 3: Atribuir a identidade gerenciada atribuída pelo usuário ao recurso Azure Data Manager for Energy

Atribua a identidade gerenciada atribuída pelo usuário que você criou na Etapa 2 ao recurso Azure Data Manager for Energy.

Importante

Esta etapa usa operações de Azure Resource ManagerPUT, que substituem toda a configuração de recursos. Você deve incluir todas as propriedades existentes (CORS, criptografia, configurações de rede, marcas e identidades) em sua solicitação PUT . A omissão de propriedades as remove da sua instância.

Siga estas três subetapas para anexar com segurança a identidade gerenciada.

Etapa 3.1: Obter a configuração atual

Recupere sua configuração de instância completa do Azure Data Manager for Energy.

# Set your Azure Data Manager for Energy instance details
SUBSCRIPTION_ID="{subscription-id}"
RESOURCE_GROUP="{resource-group}"
ADME_INSTANCE_NAME="{adme-instance-name}"

# Get Azure Resource Manager token
TOKEN=$(az account get-access-token --resource "https://management.azure.com/" --query accessToken -o tsv | tr -d '\r')

# Get current Azure Data Manager for Energy instance configuration
curl --http1.1 --request GET \
  --url "https://management.azure.com/subscriptions/$SUBSCRIPTION_ID/resourceGroups/$RESOURCE_GROUP/providers/Microsoft.OpenEnergyPlatform/energyServices/$ADME_INSTANCE_NAME?api-version=2025-12-15" \
  --header "Authorization: Bearer $TOKEN" \
  > adme-config.json

# View the configuration
cat adme-config.json | jq .

Substitua os espaços reservados

Espaço reservado Description
{subscription-id} O ID da assinatura em que o Azure Data Manager for Energy está localizado.
{resource-group} O grupo de recursos que contém o recurso Azure Data Manager for Energy.
{adme-instance-name} O nome do seu recurso do Azure Data Manager for Energy.

O comando exibe a configuração JSON completa sem truncamento. Examine o conteúdo do adme-config.json arquivo com cuidado. Você precisa copiar valores específicos dele para a Etapa 3.2.

Etapa 3.2: atualizar a configuração com a identidade gerenciada

Atualize a configuração adicionando sua identidade gerenciada preservando todas as propriedades existentes.

# Set your Azure Data Manager for Energy instance details
SUBSCRIPTION_ID="{subscription-id}"
RESOURCE_GROUP="{resource-group}"
ADME_INSTANCE_NAME="{adme-instance-name}"
MI_RESOURCE_ID="{managed-identity-resource-id}"

# Get Azure Resource Manager token
TOKEN=$(az account get-access-token --resource "https://management.azure.com/" --query accessToken -o tsv | tr -d '\r')

# Update Azure Data Manager for Energy instance with managed identity
# IMPORTANT: Replace {paste-entire-properties-block-from-GET} with the complete "properties" object from adme-config.json
# IMPORTANT: Replace {paste-all-existing-identities-from-GET} with all entries from identity.userAssignedIdentities, then add new MI
# IMPORTANT: Replace {paste-tags-from-GET} with the complete "tags" object from adme-config.json (or {} if no tags exist)
curl --http1.1 --request PUT \
  --url "https://management.azure.com/subscriptions/$SUBSCRIPTION_ID/resourceGroups/$RESOURCE_GROUP/providers/Microsoft.OpenEnergyPlatform/energyServices/$ADME_INSTANCE_NAME?api-version=2025-12-15" \
  --header "Authorization: Bearer $TOKEN" \
  --header "Content-Type: application/json" \
  --data '{
    "location": "{use-location-from-GET}",
    "properties": {paste-entire-properties-block-from-GET},
    "identity": {
      "type": "UserAssigned",
      "userAssignedIdentities": {
        {paste-all-existing-identities-from-GET},
        "'"$MI_RESOURCE_ID"'": {}
      }
    },
    "tags": {paste-tags-from-GET}
  }'

Substitua os espaços reservados

Espaço reservado Description
{subscription-id} O ID da assinatura em que o Azure Data Manager for Energy está localizado.
{resource-group} O grupo de recursos que contém o recurso Azure Data Manager for Energy.
{adme-instance-name} O nome do seu recurso do Azure Data Manager for Energy.
{managed-identity-resource-id} A ID de recurso completa da identidade gerenciada atribuída pelo usuário da Etapa 2 (por exemplo, /subscriptions/{sub-id}/resourceGroups/{rg}/providers/Microsoft.ManagedIdentity/userAssignedIdentities/{identity-name}).
{use-location-from-GET} O valor location da resposta na Etapa 3.1.
{paste-entire-properties-block-from-GET} O objeto completo properties da resposta na Etapa 3.1. (Copie todo o bloco JSON.)
{paste-all-existing-identities-from-GET} Todas as entradas de identity.userAssignedIdentities na resposta (por exemplo, "/subscriptions/.../identities/existing-mi": {},).
{paste-tags-from-GET} O objeto completo tags da resposta da Etapa 3.1, ou {} se não existirem tags.

Etapa 3.3: Verificar o anexo de identidade gerenciada

Importante

Essa verificação deve ser executada somente depois que o estado de provisionamento da instância de energia do Azure Data Manager for Energy for marcado como Bem-sucedido. A PUT operação na Etapa 3.2 pode levar vários minutos para ser concluída. Aguarde até que a instância conclua a atualização antes de executar esta etapa de verificação.

Confirme se a identidade gerenciada foi anexada com êxito à instância do Azure Data Manager for Energy.

# Set your Azure Data Manager for Energy instance details (if not already set from previous steps)
SUBSCRIPTION_ID="{subscription-id}"
RESOURCE_GROUP="{resource-group}"
ADME_INSTANCE_NAME="{adme-instance-name}"

# Get Azure Resource Manager token
TOKEN=$(az account get-access-token --resource "https://management.azure.com/" --query accessToken -o tsv | tr -d '\r')

# Get current managed identities
curl --http1.1 --request GET \
  --url "https://management.azure.com/subscriptions/$SUBSCRIPTION_ID/resourceGroups/$RESOURCE_GROUP/providers/Microsoft.OpenEnergyPlatform/energyServices/$ADME_INSTANCE_NAME?api-version=2025-12-15" \
  --header "Authorization: Bearer $TOKEN" \
  | jq '.identity.userAssignedIdentities | keys'

Substitua os espaços reservados

Espaço reservado Description
{subscription-id} A ID da assinatura em que o Azure Data Manager for Energy está localizado (o mesmo da Etapa 3.1).
{resource-group} O grupo de recursos que contém o recurso Azure Data Manager para Energia (igual à Etapa 3.1).
{adme-instance-name} Seu nome do recurso do Azure Data Manager for Energy (o mesmo da Etapa 3.1).

Se você executar todos os substeps na mesma sessão de terminal, as variáveis já serão definidas na Etapa 3.1 e na Etapa 3.2.

Saída de exemplo

[
  "/subscriptions/xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx/resourceGroups/my-rg/providers/Microsoft.ManagedIdentity/userAssignedIdentities/my-acz-identity"
]

A saída deve incluir a ID de recurso da identidade gerenciada. Se você tiver outras identidades (CMEK, EDS) anexadas, elas também aparecerão na lista.

Etapa 4: Verificar se o usuário tem acesso ao grupo de direitos

Para chamar APIs ACZ, você (o usuário) deve ser membro dos seguintes grupos de direitos:

  • users@{data-partition-id}.dataservices.energy
  • users.datalake.ops@{data-partition-id}.dataservices.energy

Esta etapa verifica se você (o usuário que chama APIs ACZ) tem acesso, não a identidade gerenciada atribuída pelo usuário. A identidade gerenciada atribuída pelo usuário criada na Etapa 2 é usada apenas pela ACZ para gravar dados no armazenamento. Ela não precisa de associação ao grupo de direitos.

Se você ainda não for membro desses grupos de direitos, faça com que um administrador do Azure Data Manager for Energy adicione sua conta de usuário. Para obter instruções detalhadas, consulte Gerenciar usuários no Azure Data Manager for Energy.

Para verificar se você tem acesso, use a API do Serviço de Direitos para verificar sua associação em ambos os grupos.

# Check users group membership
curl --http1.1 --request GET \
  --url https://{base_url}/api/entitlements/v2/groups/users@{data-partition-id}.dataservices.energy/members \
  --header 'Authorization: Bearer {access_token}' \
  --header 'data-partition-id: {data-partition-id}'

# Check users.datalake.ops group membership
curl --http1.1 --request GET \
  --url https://{base_url}/api/entitlements/v2/groups/users.datalake.ops@{data-partition-id}.dataservices.energy/members \
  --header 'Authorization: Bearer {access_token}' \
  --header 'data-partition-id: {data-partition-id}'

Substitua os espaços reservados

Espaço reservado Description
{base_url} Sua URL de recurso do Azure Data Manager para Energia (por exemplo, myinstance.energy.azure.com).
{access_token} Seu token de acesso pessoal para AZURE Data Manager para APIs de Energia. Consulte Gerar um token de autenticação.
{data-partition-id} Sua ID de partição de dados (por exemplo, dp1).

Resposta de exemplo

{
  "desId": "users@dp1.dataservices.energy",
  "name": "users@dp1.dataservices.energy",
  "description": "Datalake users",
  "email": "users@dp1.dataservices.energy",
  "members": [
    {
      "email": "user@example.com",
      "role": "MEMBER"
    },
    {
      "email": "admin@example.com",
      "role": "OWNER"
    }
  ]
}

Ambas as respostas devem incluir sua conta de usuário na members matriz. Se você não estiver listado em nenhum dos grupos, entre em contato com o administrador do Azure Data Manager for Energy para adicioná-lo a ambos os grupos necessários.

Etapa 5: Conceder permissões de identidade gerenciada atribuídas pelo usuário no contêiner de Data Lake Storage Gen2

Conceda à identidade gerenciada atribuída pelo usuário acesso de gravação à conta de armazenamento do Data Lake Storage Gen2. A identidade ACZ precisa das permissões do Colaborador de dados de blob de armazenamento para gravar arquivos Parquet Delta.

  1. Acesse sua conta de armazenamento Data Lake Storage Gen2 no portal do Azure.
  2. Selecione Controle de acesso (IAM) no menu à esquerda.
  3. Selecione +Adicionar>Adicionar atribuição de função.
  4. Na guia Função, pesquise por Storage Blob Data Contributor, selecione-o e selecione Avançar.
  5. Na guia Membros , para atribuir acesso, selecione Identidade gerenciada.
  6. Escolha + Selecionar membros.
  7. Na lista suspensa Identidade gerenciada, selecione Identidade gerenciada atribuída pelo usuário.
  8. Selecione a identidade gerenciada atribuída pelo usuário que você criou na Etapa 2 (ou na identidade existente do CMEK/EDS) e escolha Selecionar.
  9. Selecione Examinar + atribuir para concluir a atribuição de função.

Etapa 6: Compartilhar com a Microsoft a identidade gerenciada atribuída ao usuário e os detalhes da instância do Azure Data Manager for Energy (requisito da versão prévia)

Durante a versão prévia, é necessário usar listas de permissões para acessar o ACZ. Microsoft deve habilitar a funcionalidade ACZ em sua instância do Azure Data Manager for Energy e configurá-la com sua identidade gerenciada atribuída pelo usuário. Compartilhe os detalhes a seguir com seu contato Microsoft para concluir a habilitação do ACZ.

Forneça as informações a seguir ao representante do Microsoft.

Informação Description
nome do recurso do Azure Data Manager for Energy O nome do recurso do Azure Data Manager for Energy (por exemplo, my-adme-instance).
ID do recurso de identidade gerenciada atribuída pelo usuário A ID de recurso do Azure completa da identidade gerenciada atribuída pelo usuário. No portal Azure, acesse sua identidade gerenciada atribuída pelo usuário e selecionePropriedades de > para localizar a ID do recurso (por exemplo, /subscriptions/{sub-id}/resourceGroups/{rg}/providers/Microsoft.ManagedIdentity/userAssignedIdentities/{identity-name}).

Depois que Microsoft adiciona sua identidade gerenciada atribuída pelo usuário à lista de permissões, a ACZ é habilitada no recurso Azure Data Manager for Energy.

Criar uma instância do ACZ

Depois de concluir as etapas de habilitação, você pode criar uma ou mais instâncias ACZ para sincronizar seus dados do Azure Data Manager for Energy para Data Lake Storage Gen2. Você pode configurar cada instância do ACZ para sincronizar diferentes tipos de dados.

Chamar a API de criação de ACZ

Use a API de Criação de ACZ para criar uma instância de ACZ. Para obter um passo a passo completo, consulte Tutorial: Usar APIs ACZ.

curl --http1.1 --request POST \
  --url https://{base_url}/api/acz/v1/aczs \
  --header 'Authorization: Bearer {access_token}' \
  --header 'Content-Type: application/json' \
  --header 'data-partition-id: {data_partition_id}' \
  --data '{
    "name": "my-first-acz",
    "allCatalogSync": false,
    "sink": {
      "storageId": "/subscriptions/{sub-id}/resourceGroups/{rg}/providers/Microsoft.Storage/storageAccounts/{account}"
    },
    "configuration": {
      "catalogKinds": [
        "osdu:wks:master-data--Well:*",
        "osdu:wks:reference-data--UnitOfMeasure:*"
      ],
      "wellboreDDMSKinds": [
        "osdu:wks:work-product-component--WellLog:*"
      ]
    }
  }'

Substitua os espaços reservados

Espaço reservado Description
{base_url} Sua URL de recurso do Azure Data Manager para Energia (por exemplo, myinstance.energy.azure.com).
{access_token} O token de acesso para as APIs do Azure Data Manager for Energy. Consulte Gerar um token de autenticação.
{data_partition_id} Sua ID de partição de dados (por exemplo, dp1).
{sub-id} A ID da assinatura na qual reside a conta de armazenamento Data Lake Storage Gen2.
{rg} O grupo de recursos no qual reside a conta de armazenamento do Data Lake Storage Gen2.
{account} O nome da conta de armazenamento Data Lake Storage Gen2.

Uma resposta bem-sucedida retorna o status HTTP 201 com os detalhes da ACZ:

{
  "aczId": "acz-8a0aa7433085",
  "name": "my-first-acz",
  "status": "ACTIVE",
  "targetFormat": "DELTA_PARQUET",
  "aczType": "LATEST_VERSION",
  "sink": {
    "storageType": "microsoft.storage/storageaccounts",
    "storageId": "/subscriptions/{sub-id}/resourceGroups/{rg}/providers/Microsoft.Storage/storageAccounts/{account}",
    "basePath": ""
  },
  "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-05-01T12:00:00.000000",
  "updatedTs": "2026-05-01T12:00:00.000000",
  "createdBy": "your-user-object-id"
}

Anote o aczId valor (formato: acz-<identifier>). Você precisa desse identificador ACZ para:

  • Gerencie e consulte a instância do ACZ usando APIs.
  • Localize os dados no armazenamento Data Lake Storage Gen2 em <container>/<aczId>/ ou <container>/<basePath>/<aczId>/, se tiver especificado um caminho base.