Fase 9: Estratégia de observabilidade do projeto
Nesta fase, você desenvolve estratégias de observabilidade e monitoramento para garantir a excelência operacional e a resolução proativa de problemas.
Databricks fornece recursos integrados de observabilidade para monitorar operações de plataforma, desempenho de carga de trabalho, qualidade de dados e modelo instalado. Elabore sua estratégia de observabilidade para equilibrar a observação operacional com os custos e a complexidade.
Estratégia de tabelas do sistema de design
As tabelas do sistema são um repositório analítico hospedado Databricksque armazena os dados operacionais da sua account. Eles fornecem visibilidade histórica de toda a sua account para monitoramento de uso, desempenho, custos, segurança e compliance .
Recursos das tabelas do sistema
- Faturamento e utilização : Monitore custos, consumo DBU e padrões de uso em todo o espaço de trabalho.
- logsde auditoria : rastreiam atividades workspace , padrões de acesso e eventos compliance .
- História da consulta : analise o desempenho da consulta, padrões de execução e oportunidades de otimização.
- ExecuçãoJob : monitore a história de execução do trabalho, taxas de sucesso e padrões de falha.
- linhagem de dados : rastreie dependências de dados e entenda o impacto das alterações de esquema.
- Eventos do cluster : Monitore a criação, o encerramento e a utilização de recursos cluster .
casos de uso de tabelas do sistema
- Otimização de custos : Identifique consultas dispendiosas, clusters subutilizados e oportunidades para reduzir custos.
- Monitoramento de segurança : auditar padrões de acesso, identificar anomalias e garantir compliance.
- Análise de desempenho : Analise padrões de consulta, identifique gargalos e otimize cargas de trabalho.
- Planejamento de capacidade : Previsão das necessidades de recursos com base nas tendências históricas de utilização.
- governança de dados : rastreie a linhagem de dados, monitore padrões de acesso e garanta compliance.
Melhores práticas para tabelas de sistema
- Habilite as tabelas do sistema para todos os metastores para capturar dados de uso abrangentes.
- Crie painéis e alertas com base em tabelas do sistema para monitoramento proativo.
- Consulte as tabelas do sistema regularmente para identificar oportunidades de otimização.
- Combine tabelas do sistema com logs de auditoria para obter relatórios de governança abrangentes.
- Documentar métricas- key e limite para monitoramento operacional.
- Utilize tabelas do sistema para identificar recursos não utilizados e reduzir custos.
Exemplos de consultas de monitoramento
- As 10 consultas mais caras por custo de cluster.
- Tarefa com falha por workspace e usuário.
- clusters não utilizados em execução há mais de 24 horas.
- Tabelas e volumes mais acessados.
- linhagem de dados para tabelas críticas de produção.
Para obter documentação completa sobre tabelas de sistema e exemplos de consultas, consulte Monitorar a atividade account com tabelas de sistema.
Estratégia de projeto e monitoramento pipeline
Monitore a execução de tarefas e pipeline para garantir a execução bem-sucedida do pipeline de dados e identifique falhas rapidamente. Elabore sua estratégia de monitoramento com base na criticidade da carga de trabalho, nos SLAs e nos requisitos operacionais.
Padrões de Job
- Alertas em tempo real : configure notificações email ou webhooks para falhas críticas de tarefas.
- Análise de tendências : Utilize a página de fluxo de trabalho e monitoramento de pipeline para acompanhar a história de execução do trabalho e identificar padrões.
- detecção de anomalia : Configure o alerta SQL para monitorar anomalias de duração do trabalho ou falhas repetidas.
- MonitoramentoSLA : Defina SLAs para trabalhos críticos e alerte quando os tempos de execução dos trabalhos excederem o esperado.
- Acompanhamento de dependências : Monitore as dependências de tarefas e as falhas upstream que impactam as cargas de trabalho downstream.
considerações sobre monitoramento de dutos
- Observabilidade declarativa de pipelinesLakeFlow Spark : Monitore o status de execução pipeline , as expectativas de qualidade dos dados e a linhagem.
- Processamento incremental : rastreie informações de pontos de verificação e métricas de processamento incremental.
- Atualização dos dados : Monitore a latência do pipeline e assegure-se de que os dados cheguem dentro dos prazos do SLA.
- Tratamento de erros : Projetar estratégias de repetição e filas de mensagens não entregues para registros com falha.
Melhores práticas para monitoramento de empregos
- Configure notificações email ou webhooks para falhas críticas de tarefas.
- Monitorar tarefa usando tabelas do sistema (
system.workflow.job_runs,system.workflow.task_runs). - Configure o alerta SQL para monitorar anomalias de duração do trabalho ou falhas repetidas.
- Defina SLAs para tarefas críticas com base nos requisitos de negócio.
- Implemente a automação de runbooks para cenários de falha comuns.
- Analise regularmente as tendências de desempenho das tarefas e otimize as tarefas com execução lenta.
Para obter informações detalhadas sobre a configuração do monitoramento de tarefas, consulte Monitoramento e observabilidade para tarefas LakeFlow.
Para informações sobre a observabilidade do pipeline declarativo LakeFlow Spark , consulte Monitorar pipeline.
Estratégia de monitoramento de desempenho do Design Spark
Monitore o desempenho dos trabalhos Spark para identificar gargalos como distorção, transbordamento, tarefas de longa duração e problemas de memória ou E/S. Projete sua abordagem de monitoramento Spark com base no tipo compute e nos requisitos de desempenho.
Perfil de consulta para serverless e SQL Warehouse
Para compute serverless e data warehouse SQL , use o perfil de consulta para analisar e otimizar o desempenho das consultas. O perfil de consulta fornece planos de execução detalhados, métricas em nível de estágio e recomendações de otimização.
Recursos de perfil de consulta
- Visualize planos de execução de consultas com métricas em nível de estágio.
- Identificar operações dispendiosas (por exemplo, ordenação, junção, agregação).
- Analise a distorção dos dados e o desequilíbrio entre as partições.
- Analise as recomendações de otimização do otimizador de consultas.
- Compare o desempenho da consulta em toda a execução.
Melhores práticas para perfil de consulta
- Analise o perfil de consultas em busca de consultas lentas para identificar oportunidades de otimização.
- Concentre-se nas etapas com alto tempo de execução ou distorção de dados.
- Implemente as otimizações sugeridas, como a poda de partições e a junção por broadcast.
- Monitore o desempenho da consulta após a otimização para medir a melhoria.
Spark UI para computeclássica
Para clusters compute clássicos, use a Spark UI para identificar gargalos de desempenho e restrições de recursos. A Spark UI fornece métricas detalhadas sobre executor, estágios, tarefas e armazenamento.
Recursos Spark UI
- Monitorar o tempo de execução de cada etapa e a distribuição de tarefas.
- Identifique a distorção dos dados analisando a variação na duração da tarefa.
- Monitore o uso de memória e as métricas de derramamento.
- Analise as métricas do executor (por exemplo, CPU, memória, E/S de disco).
- Analisar padrões de leitura/escrita.
Melhores práticas para Spark UI
- Habilite o envio log cluster para armazenamento cloud para retenção log a longo prazo.
- Monitore as métricas cluster (por exemplo, CPU, memória, E/S de disco) para identificar restrições de recursos.
- Analise logs de eventos Spark para solucionar problemas de lentidão em trabalhos e otimizar as configurações.
- Concentre-se nas fases com alta taxa de embaralhamento ou derramamento de memória para reduzir a pressão sobre a memória.
- Otimize o tamanho das partições para reduzir a distorção das tarefas.
Para obter documentação sobre perfis de consulta, consulte Perfil de consulta.
Para obter orientações sobre solução de problemas Spark UI , consulte a visão geralApache Spark.
Desenvolver estratégia de monitoramento da qualidade dos dados
O monitoramento da qualidade dos dados garante que as tabelas de produção atendam aos padrões de qualidade, identificando desvios nos dados ao longo do tempo. Elabore sua estratégia de monitoramento da qualidade dos dados com base na criticidade das tabelas, nos requisitos de atualização dos dados e nas necessidades compliance regulatória.
capacidades de monitoramento lakehouse
- Monitores de séries temporais : rastreiam métricas de qualidade de dados em janelas temporais para tabelas com dados temporais.
- MonitoresSnapshot : Calculam métricas de qualidade de dados para todos os dados em um determinado momento.
- Análise estatística : Monitore as estatísticas das colunas (por exemplo, mínimo, máximo, média, desvio padrão, contagem de valores nulos).
- Detecção de deriva de dados : Identificar mudanças na distribuição de dados ao longo do tempo.
- detecção de anomalia : alerta sobre mudanças inesperadas nas métricas de qualidade dos dados.
padrões de monitoramento da qualidade dos dados
- monitoramento da camada ouro : Crie monitores para todas as tabelas da camada ouro críticas para o negócio.
- Validação da camada prateada : Monitore as tabelas da camada prateada para compliance com o esquema e a qualidade dos dados.
- Verificações da camada Bronze : Validam a integridade da aquisição de dados e compliance do formato.
- Alertas em tempo real : Configure alertas para violações ou anomalias na qualidade dos dados.
- Monitoramento da atualização dos dados : Monitore a latência pipeline e assegure que os dados cheguem dentro dos prazos SLA .
Melhores práticas para monitoramento da qualidade dos dados
- Crie monitores para tabelas de produção críticas (especialmente tabelas da camada de ouro).
- Utilize monitores de séries temporais para tabelas com dados baseados em tempo para acompanhar as tendências de qualidade.
- Use monitores de instantâneo para tabelas sem dimensões de tempo.
- Configure alertas para violações ou anomalias na qualidade dos dados.
- Monitore a atualização dos dados para garantir que os pipelines estejam sendo executados corretamente.
- Documente os limites de qualidade dos dados e os procedimentos de escalonamento.
Para obter documentação abrangente sobre monitoramento de lakehouse, consulte Monitoramento de qualidade de dados.
Estratégia de monitoramento do modelo de projeto
Monitore modelos ML implantados para rastrear desempenho, integridade e solicitar métricas. Elabore sua estratégia de monitoramento de modelos com base na criticidade do modelo, nos requisitos SLA e nas necessidades compliance .
capacidades de observabilidade do modelo disponíveis
- Saúde do endpoint : Monitore a disponibilidade e o estado de saúde endpoint .
- Métricas de invocação : rastreie contagens de solicitações, latência e taxa de transferência.
- Tabelas de inferência : registram as previsões e analisam o comportamento do modelo ao longo do tempo.
- Acompanhamento da versão do modelo : Monitore o uso da versão do modelo e história de implantação.
- Monitoramento de erros : acompanhe as taxas de erro e os padrões de falha.
Padrões de monitoramento de modelos
- Alertas em tempo real : configure alertas para anomalias como alta latência ou taxas de erro.
- MonitoramentoSLA : Defina SLAs de latência e disponibilidade para modelos de produção.
- Análise de inferência : Utilize tabelas de inferência para analisar distribuições de previsão e detectar desvios.
- Testes A/B : Monitore o desempenho em diferentes versões do modelo para validar as melhorias.
- Procedimentos de reversão : Defina gatilhos de reversão automatizados com base no limite de desempenho.
Melhores práticas para monitoramento de modelos
- Monitore a integridade endpoint e as métricas de invocação para identificar problemas de desempenho.
- Rastreie a latência e solicite Taxa de transferência para garantir compliance SLA .
- Utilize tabelas de inferência para log previsões e analisar o comportamento do modelo.
- Configure alertas para anomalias como alta latência ou taxas de erro.
- Monitore o uso das versões do modelo para acompanhar implantações e reversões.
- Documentar as linhas de base de desempenho do modelo e o limite aceitável.
Para obter documentação sobre observabilidade do modelo de monitoramento, consulte Monitorar a qualidade do modelo e a integridade endpoint.
Desenvolver uma estratégia de integração de monitoramento de terceiros
Integre o Databricks com soluções de monitoramento externas para obter observabilidade centralizada em toda a sua infraestrutura. Elabore sua estratégia de integração com base nas ferramentas de monitoramento existentes, nos requisitos operacionais e na experiência da equipe.
Padrões de integração de terceiros
- Monitoramento centralizado : Encaminha informações e logs Databricks para plataformas de monitoramento centralizadas.
- Observabilidade em múltiplascloud : Utilize ferramentas independentes cloudpara monitorar Databricks em várias clouds.
- Painéis personalizados : Crie painéis unificados combinando métricas do Databricks com métricas de sistemas externos.
- Integração de alertas : Direcione alertas Databricks através de sistemas de gerenciamento de incidentes existentes.
- Relatórios de conformidade : logs agregados para fins compliance e auditoria.
Opções de integração
-
Datadog : Monitore métricas cluster , execução de trabalhos e logs de aplicativos com integração Datadog.
-
Prometheus : Exporte as métricas do cluster para o Prometheus para monitoramento e alertas de séries temporais.
-
Monitoramento Google Cloud : Encaminhar informações e logs para monitoramento Google Cloud.
-
Google Cloud Logging : agregue logs no Cloud Logging para análise e alertas.
Melhores práticas para integrações de terceiros
- Utilize integrações padrão (por exemplo, Datadog, Prometheus) sempre que disponíveis.
- Encaminhe logs para plataformas de registro centralizadas para retenção a longo prazo.
- Correlacione as métricas do Databricks com as métricas de infraestrutura para análise da causa raiz.
- Implementar tags consistentes em todo Databricks e em sistemas externos.
- Teste regularmente os procedimentos de roteamento e escalonamento de alertas.
Recomendações de observabilidade
Recomendado
- Habilite as tabelas do sistema para todos os metastores para capturar dados de uso abrangentes.
- Crie painéis de controle com base em tabelas do sistema para monitoramento de custos, desempenho e segurança.
- Configure o monitoramento de tarefas e pipeline com alertas para falhas críticas.
- Habilite o monitoramento Spark (perfil de consulta, Spark UI) para solução de problemas de desempenho.
- Criar monitoramento lakehouse para mesas críticas de produção (camada ouro).
- Monitore o endpoint do modelo oferecido para latência, taxa de transferência e taxas de erro.
- Integre com soluções de monitoramento de terceiros para observabilidade centralizada.
- Defina SLAs e limites de alerta para cargas de trabalho críticas.
- Documente os manuais de procedimentos operacionais padrão para cenários operacionais comuns.
Avaliar com base nos requisitos
- Equilibrar a granularidade do monitoramento com os custos e a sobrecarga operacional.
- Considere integrações com terceiros somente se for necessário monitoramento centralizado.
- Avalie o tempo de alerta em tempo real versus o monitoramento em lotes com base nos requisitos SLA .
- Considere os custos de monitoramento da qualidade dos dados (por exemplo, armazenamento, compute) para tabelas grandes.
- Teste a fadiga de alertas começando com um limite conservador e refinando-o ao longo do tempo.
Resultados da Fase 9
Após concluir a Fase 9, você deverá ter:
- Estratégia de tabelas do sistema definida com consultas de monitoramento e painéis de controle key .
- Monitoramento Job e pipeline configurado com alertas para falhas críticas.
- Abordagem de monitoramento de desempenho Spark desenhada (perfil de consulta, Spark UI).
- Qualidade de dados × estratégia definida com lakehouse × para tabelas críticas.
- Estratégia de monitoramento de modelo projetada para endpoint ML .
- Definição da abordagem de integração de monitoramento de terceiros (se aplicável).
- Acordos de nível de serviço (SLAs) e limites de alerta documentados para cargas de trabalho críticas.
- Manuais de procedimentos operacionais criados para cenários comuns de monitoramento.
Próxima fase : Fase 10: Projetar alta disponibilidade e recuperação de desastres
Orientações de implementação : Para obter instruções passo a passo sobre como implementar sua estratégia de observabilidade, consulte Monitorar a atividade account com tabelas do sistema e monitoramento e observabilidade para trabalhos LakeFlow.