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.
O que é uma simulação de corrida?
Uma execução simulada simula a execução de uma atribuição de tarefa de armazenamento sem realmente realizar qualquer operação nos seus blobs. Quando crias uma execução simulada, o Armazenamento do Azure Actions analisa e avalia os teus blobs contra as condições da tarefa, tal como faria numa execução real, mas não executa nenhuma operação. Em vez disso, gera um relatório detalhado que mostra quais os blobs que correspondiam às condições e que operações teriam sido realizadas.
Simulações são úteis quando queres:
- Pré-visualize o impacto de uma tarefa antes de a executar em escala, especialmente quando as operações são irreversíveis (como políticas de eliminação ou de imutabilidade)
- Valide as condições no conjunto completo de blobs da sua conta, não apenas numa pequena amostra de pré-visualização.
- Gerar relatórios prontos para auditoria que mostrem quais os blobs que seriam afetados, sem fazer quaisquer alterações.
- Estima o custo compreendendo quantos blobs seriam visados e quantas operações seriam invocadas.
Note
Uma execução simulada analisa e avalia todos os blobs abrangidos, tal como uma execução real. A única diferença é que não realiza nenhuma operação nos blobs. Como não executa operações, as execuções simuladas são tipicamente mais rápidas do que as execuções reais.
Como funcionam as simulações de corrida
Crie uma execução simulada como uma atribuição de tarefa de armazenamento, com o tipo de acionador definido como MockRun. Tal como outros tipos de atribuição, uma execução simulada direciona-se a uma conta de armazenamento específica, utiliza filtros prefixos opcionais para definir os blobs e gera relatórios de execução num contentor de exportação designado.
Quando uma execução simulada é executada:
- O Armazenamento do Azure Actions enumera todos os blobs que correspondem ao âmbito e aos filtros de prefixo da atribuição.
- Avalia cada blob em função das condições da tarefa de armazenamento.
- Para blobs que correspondem, regista as operações que seriam realizadas – mas não executa nenhuma operação.
- Gera um relatório detalhado que lista os blobs correspondentes e as suas operações simuladas.
Simulação de execução vs. pré-visualização de condição
Tanto as execuções simuladas como a funcionalidade de pré-visualização de condição ajudam a validar as condições da tarefa antes da execução, mas servem propósitos diferentes:
| Capacidade | Pré-visualização da condição | Simulação de corrida |
|---|---|---|
| Scope | Amostra limitada (até 5.000 blobs) | Em grande escala - todos os blobs do âmbito da atribuição |
| Operações apresentadas | No | Sim - mostra quais as operações que seriam realizadas |
| Relatório gerado | No | Sim - relatório CSV descarregável |
| Modelo de execução | Resultados síncronos e imediatos | Assíncrono, funciona como uma tarefa real |
| Faturação | Grátis | Cobrança pela instância de execução da tarefa e pelos objetos analisados (sem cobrança por operações) |
| Caso de utilização | Verificação rápida ao escrever condições | Validação total antes da execução em produção |
Utilize a pré-visualização das condições ao definir as condições da tarefa e, em seguida, utilize uma execução de teste para a validação final antes de ativar uma execução real.
Ciclo de vida simulado e estados
As execuções de teste seguem o mesmo ciclo de vida que as atribuições de execução única.
Importante
Não podes reiniciar uma simulação completa. Para executar outra simulação simulada com a mesma configuração, deve criar uma nova atribuição ou duplicar a existente.
Comportamento de concorrência
Apenas uma execução – simulada ou real – pode ser executada numa conta de armazenamento de cada vez. Este modelo de concorrência corresponde ao modelo para execuções reais de tarefas:
- Se uma execução real estiver em curso, o sistema coloca em fila uma nova execução simulada até a execução real terminar.
- Se uma execução simulada estiver em curso, o sistema coloca em fila uma nova execução real da tarefa ou ignora-a no caso de execuções agendadas.
- Se houver outra simulação em curso, o sistema adiciona a nova simulação à fila.
Este modelo assegura estabilidade e previne a contenção de recursos na conta de armazenamento alvo.
Relatórios de execução simulada
Quando uma execução simulada termina, o processo escreve um relatório detalhado no contentor de exportação de relatórios que especifica durante a criação da atribuição. Pode aceder a relatórios em formatos CSV .
Também pode ver um resumo da execução diretamente no portal do Azure, na página de resultados da execução simulada da atribuição. O resumo inclui o número de objetos listados, objetos que cumpriram as condições e operações que o processo teria realizado.
Colunas de relatório:
| Coluna | Description |
|---|---|
| Contentor | O recipiente onde a massa reside. |
| Blob | O nome do blob. |
| Operação a realizar | A operação simulada, com prefixo de (mock) — por exemplo, (mock) DeleteBlob ou (mock) SetBlobImmutability. |
| Bloco de condição correspondente | Que condição bloqueia o blob correspondente (por exemplo, IF ou ELSE). |
Exemplo de saída CSV:
| Contentor | Blob | Operação a realizar | Bloco de condição correspondente |
|---|---|---|---|
| testContainer1 | output1.log | (imitação) DeleteBlob | IF |
| testContainer2 | output2.log | (imitação) DeleteBlob | IF |
| testContainer1 | financials1.csv | (imitação) SetBlobImmutability | ELSE |
| testContainer2 | financials2.csv | (imitação) SetBlobImmutability | ELSE |
O processo também gera um ficheiro JSON resumo juntamente com o relatório. Este ficheiro contém métricas agregadas:
{
"completionTime": "2024-10-21T17:46:59",
"destination": "taskoutput",
"endpoint": "https://contoso1storage1.blob.core.windows.net",
"fileFormat": "csv",
"fileSchema": [
"Container",
"Blob",
"Operation to be performed",
"Result",
"Matched condition block"
],
"files": [
"<link to the reporting file>"
],
"objectsListed": 1100,
"objectsToBeOperated": 240,
"operationType": "BlobOperation",
"runId": "mockrun-assignment-2024-10-21T17:30:13.9121342Z",
"startTime": "2024-10-21T17:37:12",
"status": "succeeded"
}
Campos principais no resumo:
- objectsListed: Número total de blobs escaneados durante a execução simulada.
- objectsToBeOperated: Número de blobs que cumpriram as condições e sobre os quais teriam sido realizadas operações.
-
status: O resultado da execução simulada (
succeededoufailed).
Transição de simulação para corrida real
Depois de rever o relatório de simulação e confirmar que os resultados são os esperados, pode transitar a tarefa de simulação para uma execução real:
- Aceda à atribuição no portal do Azure.
- Edite a atribuição e altere o tipo de acionador de Execução simulada para Executar uma vez ou Recorrente.
- Guarde a atribuição atualizada.
Ao usar este processo, pode passar da validação à execução sem recriar a tarefa do zero.
Preços
As execuções simuladas são faturadas de forma semelhante às execuções reais de atribuição de tarefas, com uma diferença fundamental: não é aplicada nenhuma carga ao medidor de operações, uma vez que nenhuma operação é realmente realizada em blobs.
| Contador de faturação | Aplica-se a simulações de corridas? |
|---|---|
| Instância de execução de tarefa (por execução) | ✅ Sim |
| Objetos detetados (por milhão de objetos analisados) | ✅ Sim |
| Operações realizadas (por milhão de operações) | ❌ Não (sempre $0) |
Os custos padrão da API Armazenamento de Blobs para listar e ler propriedades do blob durante a análise continuam a aplicar-se.
Tip
Como as simulações excluem a cobrança do contador de operações, são significativamente mais baratas do que as corridas reais. Use execuções simuladas como uma forma económica de validar a configuração da sua tarefa antes de se comprometer com uma execução completa.
Permissions
A identidade gerida associada à tarefa de armazenamento deve ter o papel apropriado na conta de armazenamento alvo para realizar uma execução simulada. Embora o processo não realize operações, a identidade necessita de acesso de leitura para escanear e avaliar blobs:
- Função mínima: Leitor de Dados de Blobs de Armazenamento
- Função recomendada: Proprietário dos Dados de Blobs de Armazenamento (se planeia transitar para uma execução real com a mesma atribuição)
Tanto as identidades geridas atribuídas pelo sistema como as atribuídas pelo utilizador suportam execuções simuladas.
Se a conta de armazenamento alvo tiver restrições de rede, certifique-se de que a opção Permitir serviços Microsoft confiável está ativada na configuração de rede da conta.