BLOG

F5 colabora com a Microsoft na Fase 2 do OpenTelemetry com Apache Arrow

Miniatura de Laurent Querel
Laurent Querel
Publicado em 9 de junho de 2025

A F5 está colaborando com a Microsoft na Fase 2 do projeto de código aberto OpenTelemetry com o Apache Arrow (OTAP). Como parte deste projeto, os dados do OpenTelemetry serão consumidos, processados e exportados usando lotes de registros do Apache Arrow do SDK para o agente, coletor e backend. Com base no sucesso da Fase 1, que viu melhorias drásticas nas taxas de compressão de dados de telemetria, este próximo capítulo visa expandir ainda mais os limites do OpenTelemetry com um pipeline de processamento de dados nativo do Arrow e baseado em Rust. 

A colaboração da F5 e da Microsoft na Fase 2 do projeto OpenTelemetry com Apache Arrow desenvolverá um pipeline de telemetria de alto desempenho integrado ao ecossistema Apache Arrow, com uma variedade de applications para usos de pequena e grande escala. Estamos criando novas bibliotecas de pipeline de telemetria na linguagem Rust e pretendemos fornecer essa funcionalidade por meio da integração com o OpenTelemetry Collector existente.

Esta colaboração está pronta para fornecer melhorias inovadoras de desempenho para sistemas de telemetria, marcando um marco significativo não apenas para o OpenTelemetry, mas também para os ecossistemas mais amplos do Apache Arrow e Rust. Estamos confiantes em nossa abordagem e agora estamos implementando ativamente esse novo pipeline baseado em Rust e conduzindo uma ampla avaliação comparativa de desempenho para demonstrar claramente os avanços.  

Uma retrospectiva: Sucesso da Fase 1

A Fase 1 do OpenTelemetry com Apache Arrow foi definida com metas ambiciosas. Ao introduzir inovações no OpenTelemetry Protocol (OTLP), esta fase otimizou o transporte de dados de telemetria como nunca antes. As taxas de compressão melhoraram entre 30% e 70% em comparação ao protocolo OTLP padrão, uma conquista notável que lançou as bases para o trabalho futuro.

Mas a Fase 1 foi apenas a ponta do iceberg. Ele provou o poder da combinação do OpenTelemetry e do Apache Arrow e preparou o cenário para uma missão ainda maior: transformar todo o pipeline do OpenTelemetry em uma potência de processamento de dados em colunas de alto desempenho.

Fase 2: Entram Rust e Arrow

Na Fase 2, a F5 e a Microsoft estão se aprofundando na otimização de desempenho ao desenvolver um pipeline OpenTelemetry totalmente nativo, alimentado por Rust e Apache Arrow, com o objetivo de construir pipelines Rust para o coletor Golang. Isso levará a melhorias drásticas na utilização da CPU, eficiência da memória, rendimento e latência — tudo isso contribuindo para um ecossistema de processamento de dados mais eficiente.

Nosso objetivo também é equilibrar a compressão ideal de dados, o processamento acelerado de dados e a integração eficiente com a observabilidade moderna e orientada a colunas, diferenciando esta iniciativa de outros projetos focados principalmente apenas na compressão, como o STEF. 

A decisão de apostar tudo no Rust gerou entusiasmo — e um pouco de controvérsia — na comunidade técnica. Afinal, o projeto Collector do OpenTelemetry é tradicionalmente construído usando Golang. Então por que Rust?

Por que Rust e Apache Arrow são a dupla perfeita

Rust e Apache Arrow são como melhores amigos no mundo do processamento de dados. Ambas as tecnologias se complementam profundamente, tornando o Rust a escolha ideal para o desenvolvimento da Fase 2. Aqui estão apenas algumas razões: 

  • Segurança e desempenho da memória sem o Garbage Collector: O forte compromisso da Rust com a segurança da memória garante que os pipelines de dados sejam robustos e seguros, minimizando riscos como corrupção de dados ou falhas de segmentação. Combine isso com as características de desempenho do Rust — baixa sobrecarga e abstrações de custo zero — e você terá uma combinação perfeita para lidar com eficiência com os dados de telemetria de alta velocidade e alto volume adotados pelo Apache Arrow.
  • Processamento de dados colunares: O Apache Arrow é a estrutura de fato para processamento de dados orientado a colunas e com cópia zero. Ele é amplamente adotado em data lakes modernos, dando suporte a sistemas como Parquet, Delta Lake e Iceberg. A integração nativa com o Arrow significa que você pode trocar dados de forma integrada e eficiente com mecanismos de análise poderosos, como Apache DataFusion e data lakes habilitados para Arrow.
  • Design de cópia zero: O paradigma de cópia zero do Apache Arrow se alinha perfeitamente com a ênfase do Rust no acesso direto à memória. Juntas, essas tecnologias eliminam a sobrecarga de serialização e desserialização, tornando possível manipular grandes fluxos de dados de forma eficiente, sem desperdiçar ciclos de CPU.
  • Um ecossistema próspero: O ecossistema Rust em torno do Apache Arrow está prosperando. Ao escolher Rust para a Fase 2, a F5 e a Microsoft aproveitam essa comunidade vibrante, desbloqueando integrações com bibliotecas e estruturas poderosas, como o Apache DataFusion. Essas conexões abrem portas para novas applications, especialmente integrações com data lakes de grande escala usados ​​para análise e aprendizado de máquina. Embora este projeto ainda esteja em estágios iniciais, já atraímos o interesse de diversas empresas especializadas em bancos de dados focados em observabilidade.

Além do desempenho: Horizontes expandidos

Com Rust e Apache Arrow no comando, o OpenTelemetry com Apache Arrow não está apenas abordando métricas de desempenho, mas também preparando o cenário para uma adoção mais ampla em ecossistemas de telemetria e dados.

Imagine um mundo onde pipelines de telemetria podem ser facilmente incorporados em data lakes, oferecendo conexões diretas a plataformas de análise orientadas a colunas. Este pipeline de ponta a ponta e sem cópia permitirá que os dados de telemetria fluam perfeitamente da produção para os sistemas downstream, desbloqueando integrações antes inimagináveis dentro do OpenTelemetry.

Ao proteger a capacidade de incorporação, priorizar controles de memória rigorosos e habilitar o suporte de tempo de execução de thread por núcleo, a Fase 2 garante que esse paradigma baseado em Rust não apenas superará as expectativas, mas também permanecerá acessível a desenvolvedores e empresas.

Uma abordagem unificada: Rust encontra Go

Apesar do burburinho em torno de Rust, a Fase 2 não significa deixar Golang para trás. Na verdade, a F5 e a Microsoft estão tomando medidas cuidadosas para garantir a compatibilidade entre os pipelines Go e Rust. Adaptadores e componentes existentes do OpenTelemetry Collector escritos em Golang continuarão a receber suporte e manutenção. Isso garante a interoperabilidade, permitindo que as organizações escolham o melhor conjunto de ferramentas para seus fluxos de trabalho sem ficarem presas a uma única linguagem.

Essa abordagem unificadora está alinhada ao compromisso da OpenTelemetry de desenvolver o ecossistema, não fragmentá-lo. Ao unir os pipelines Rust e Go como parte de um fluxo de trabalho interconectado, a colaboração garante que o OpenTelemetry permaneça acessível à sua diversificada base de usuários.

Apoio e contribuições da indústria

O Comitê de Governança do OpenTelemetry aprovou a Fase 2, reconhecendo a importância de explorar inovações baseadas em Rust, mantendo a harmonia dentro do ecossistema mais amplo do OpenTelemetry. Contribuições do F5, como a biblioteca “Beaubourg”, já forneceram uma base sólida para a construção.

À medida que a F5 e a Microsoft colaboram nesse esforço, elas não estão apenas otimizando o desempenho, mas também abrindo portas para possibilidades interessantes para o mundo da telemetria. Este investimento em inovação diz muito sobre o comprometimento da OpenTelemetry em permanecer na vanguarda dos sistemas de telemetria de código aberto.

O que vem depois?

Para aqueles que acompanham o progresso do OpenTelemetry com o Apache Arrow, a Fase 2 representa um salto em eficiência, escalabilidade e flexibilidade. Ao usar o Rust e o Apache Arrow em seu potencial máximo, esta colaboração tem o potencial de redefinir como os dados de telemetria são produzidos, processados e consumidos.

Enquanto a comunidade técnica aguarda os resultados desta fase ambiciosa, uma coisa é clara: o OpenTelemetry com Apache Arrow está ajudando a moldar o futuro dos sistemas de observabilidade distribuída.

Fique atualizado para mais insights sobre os desenvolvimentos da Fase 2 e como este projeto está abrindo caminho para um futuro de dados colunares de alto desempenho. Vamos construir grande — e rápido.

A colaboração entre a F5 e a Microsoft resume o espírito da inovação de código aberto, e estamos animados para ver como esses esforços elevam o OpenTelemetry para todos nós. Juntos, não estamos apenas adotando ferramentas modernas, estamos redefinindo o que é possível. Para saber mais, leia a postagem do blog da Microsoft