No mundo da infraestrutura em nuvem em grande escala, mesmo uma pequena queda no desempenho pode levar a ineficiências significativas. Considere uma mudança que faz com que um aplicativo seja executado 0,05% mais devagar – um número que parece insignificante à primeira vista. No entanto, na escala Meta, onde milhões de servidores trabalham continuamente para manter os serviços em funcionamento para milhares de milhões de utilizadores, essas pequenas quedas acumulam-se, potencialmente desperdiçando milhares de servidores. Lidar com regressões de desempenho nesta pequena escala é um grande desafio devido ao “ruído” introduzido pelas variações de hardware, problemas transitórios e pela grande escala de operações. Muitos métodos simples de detecção resultam em um grande número de falsos positivos, uma vez que eventos transitórios – em vez de códigos de troca – geralmente aparecem como regressões de desempenho.
Meta AI apresenta o programa FBDetect: um programa para detectar declínio no desempenho na produção
Para enfrentar esses desafios, a Meta AI lançou o FBDetect, um processo de detecção de regressões na produção que pode detectar até mesmo as menores regressões, até 0,005%. O FBDetect foi projetado para monitorar aproximadamente 800.000 séries temporais cobrindo diversas métricas, como taxa de transferência, latência, CPU e uso de memória, para centenas de serviços executados em milhões de servidores. Ele usa novas técnicas, como rastreamento de pilha de toda a amostra, para capturar diferenças de otimização em nível de sub-rotina. Ao analisar esses rastreamentos granulares, o FBDetect pode filtrar com eficácia falsos positivos e identificar regressões reais, garantindo uma análise eficaz da causa raiz da degradação do desempenho causada por alterações de código ou configuração.
O foco principal do sistema é capturar e analisar o desempenho no nível da sub-rotina, em vez de testar a aplicação inteira. Ao se concentrar em processos individuais – onde mesmo uma pequena mudança pode mostrar um impacto relativo significativo – o FBDect leva o problema de detecção da regressão mais desafiadora de 0,05% no nível do programa para mudanças detectáveis de 5% no nível do subcaminho. Esse foco reduz bastante o ruído e torna as alterações de rastreamento mais eficazes.
Detalhes técnicos e benefícios do FBDetect
O FBDetect usa três tecnologias principais para lidar com regressões de desempenho na hiperescala Meta. Primeiro, faça detecção de regressão em nível de sub-rotina para reduzir a variabilidade nos dados de desempenho, permitindo a detecção de regressões em níveis muito menores do que seria possível com métricas de todo o serviço. Ao medir as métricas neste nível, mesmo pequenas regressões que podem não ser visíveis tornam-se visíveis. Segundo, amostras de rastreamento de pilha é executado em navios para medir onde o tempo é gasto no nível da sub-rotina, semelhante ao perfil de desempenho, mas em uma escala sem precedentes. Isso permite que a equipe identifique com precisão qual sub-rotina é afetada e como. Finalmente, para cada regressão encontrada, análise de causa raiz realizada para determinar se a diminuição se deve a problemas temporários, alterações de custos ou alterações reais de código. Ao analisar o rastreamento de pilha associado à regressão e compará-lo com o código recém-executado, o FBDetect pode determinar automaticamente qual alteração causou a regressão.
Um dos principais pontos fortes do FBDetect é a sua robustez. Ele foi testado em batalha ao longo de sete anos em instalações de produção e é capaz de filtrar de forma confiável o recuo enganoso da mercadoria. Ao fazer isso, o FBDetect reduz bastante o número de eventos que os desenvolvedores precisam investigar, permitindo que eles se concentrem em mudanças significativas, em vez de analisar vários alarmes falsos. Este programa tem um impacto direto na eficiência da infraestrutura Meta: sem o FBDetect, mesmo um pequeno número de regressões invisíveis pode desperdiçar milhões de servidores todos os anos.
Por que o FBDetect é importante e seu impacto na metainfraestrutura
A importância de encontrar esta regressão de desempenho não pode ser exagerada em ambientes de hiperescala. A frota de servidores da Meta inclui milhões de servidores que suportam centenas de serviços usados por bilhões de usuários. Nesse caso, mesmo uma pequena regressão — como aquela que resulta em um aumento de 0,005% no uso da CPU — pode ter um grande impacto. De acordo com o jornal, o FBDetect ajudou a evitar o desperdício de quase 4.000 servidores por ano ao detectar uma regressão tão pequena. O atraso médio da CPU encontrado foi tão baixo quanto 0,048%, um nível no qual a maioria dos programas de análise de desempenho irá falhar.
O sistema atinge essa precisão monitorando 800.000 séries temporais, incluindo CPU, memória, latência e outras métricas importantes. Os falsos positivos são um grande desafio em ambientes tão barulhentos e dinâmicos. O FBDetect aborda isso usando uma combinação de detecção de pontos de mudança, análise de tendências e técnicas de agrupamento para identificar regressões reais e diferenciá-las de problemas temporários. As estratégias são as mesmas Aproximação Agregada Simbólica (SAX) eles são usados para ajudar a identificar se uma anomalia observada é um erro único ou uma regressão verdadeira, adicionando uma camada extra de confiabilidade. Apesar dos contratempos, o FBDetect proporciona sucesso análise de causa raiz combinando análise de código, correlação de série temporal e investigação de rastreamento de pilha, melhorando significativamente a capacidade dos engenheiros de resolver problemas descobertos de forma rápida e eficiente.
A conclusão
O desempenho realmente importa em hiperescala. Mesmo uma diminuição aparentemente inconsequente no desempenho pode traduzir-se em custos e ineficiências significativos. O FBDetect representa um importante passo em frente na abordagem destes desafios. Sua capacidade de detectar regressões em nível de sub-rotina tão pequenas quanto 0,005% é uma prova dos métodos avançados que Meta usa para otimizar sua grande infraestrutura. Ao usar um sistema robusto de detecção de regressão em produção que aprende e se adapta continuamente, o Meta não apenas salva milhões de servidores, mas também estabelece uma nova referência para monitoramento de desempenho em escala. À medida que mais empresas operam em hiperescala, os sistemas de identificação comuns serão essenciais para manter a eficiência e a escalabilidade na nuvem.
Confira Papel. Todo o crédito deste estudo vai para os pesquisadores deste projeto. Além disso, não se esqueça de nos seguir Twitter e junte-se ao nosso Estação telefônica de novo LinkedIn Gracima. Se você gosta do nosso trabalho, você vai gostar do nosso jornal.. Não se esqueça de participar do nosso SubReddit de 55k + ML.
[AI Magazine/Report] Leia nosso último relatório sobre 'MODELOS DE TERRENO PEQUENOS'
Asif Razzaq é o CEO da Marktechpost Media Inc. Como empresário e engenheiro visionário, Asif está empenhado em aproveitar o poder da Inteligência Artificial em benefício da sociedade. Seu mais recente empreendimento é o lançamento da Plataforma de Mídia de Inteligência Artificial, Marktechpost, que se destaca por sua ampla cobertura de histórias de aprendizado de máquina e aprendizado profundo que parecem tecnicamente sólidas e facilmente compreendidas por um amplo público. A plataforma possui mais de 2 milhões de visualizações mensais, o que mostra sua popularidade entre o público.
Ouça nossos podcasts e vídeos de pesquisa de IA mais recentes aqui ➡️