← 최신 논문
💻 컴퓨터 과학

Dynamic Sampling for Telemetry in Microservices: A Reinforcement Learning and Entropy-Based Approach

이 논문은 결정적인 관측 가능성과 데이터 품질을 유지하면서 자원 소비를 획기적으로 줄이기 위해 마이크로서비스 텔레메트리 샘플링을 동적으로 최적화하는 강화 학습 및 엔트로피 기반 에이전트인 RADAR를 소개한다.

원저자: Renan Martins Alves, Jéferson Campos Nobre, Juliano Araujo Wickboldt

게시일 2026-10-19
📖 4 분 읽기☕ 가벼운 읽기

원저자: Renan Martins Alves, Jéferson Campos Nobre, Juliano Araujo Wickboldt

원본 논문은 CC BY 4.0 (https://creativecommons.org/licenses/by/4.0/) 라이선스로 제공됩니다. ✨ 이것은 아래 논문에 대한 AI 생성 설명입니다. 저자가 작성하거나 승인한 것이 아닙니다. 기술적 정확성을 위해서는 원본 논문을 참조하세요. 전체 면책 조항 읽기

현대적인 소프트웨어는 종종 하나의 거대한 프로그램이 아니라, 네트워크를 통해 서로 통신하는 작고 독립적인 서비스들의 군집으로서 존재합니다. 마이크로서비스라고 알려진 이 방식은 기업들이 애플리케이션의 일부를 빠르게 업데이트하고 필요에 따라 규모를 확장하거나 축소할 수 있게 해줍니다. 그러나 이러한 유연성에는 숨겨진 비용이 따릅니다. 즉, 문제가 발생했을 때 시스템 내부에서 어떤 일이 일어나고 있는지 파악하는 것이 매우 어려워진다는 점입니다. 이를 해결하기 위해 엔지니어들은 분산 트레이싱(distributed tracing)이라는 기술을 사용합니다. 고객이 웹사이트에서 주문을 하는 상황을 상상해 보십시오. 그 단일 요청은 재고 확인, 세금 계산, 결제 처리 등을 수행하며 수십 개의 서로 다른 서비스를 거쳐 이동할 수 있습니다. 분산 트레싱은 이 요청의 여정을 시작부터 끝까지 추적하여 상세한 지도를 만들어냅니다. 이 지도는 버그를 찾고 성능 문제를 이해하는 데 필수적이지만, 엄청난 양의 데이터를 생성합니다. 만약 시스템이 수백만 건의 요청을 처리한다면, 모든 개별 트레이스를 수집하는 것은 네트워크를 과부하시키고, 막대한 컴퓨팅 자원을 소비하며, 지속 불가능한 속도로 저장 공간을 채우게 될 것입니다.

따라서 과제는 일상적이고 성공적인 운영이라는 소음 속에 빠지지 않으면서도, 문제를 식별할 수 있을 만큼 충분한 데이터를 수집하는 것입니다. 전통적인 방법은 100건 중 1건만 기록하거나, 에러가 발생할 때까지 기다리는 것과 같은 단순한 규칙에 의존하는 경우가 많습니다. 이러한 접근 방식은 너무 경직되어 있습니다. 드물지만 치명적인 실패를 놓칠 수도 있고, 새로운 통찰력을 제공하지 않는 평범한 트래픽을 기록하는 데 자원을 낭비할 수도 있기 때문입니다. 브라질 리오그란데두술 연방 대학교의 연구진은 이 딜레마를 다루는 새로운 방법을 개발했습니다. 그들은 RADAR라고 불리는 시스템을 만들었는데, 이는 이 데이터에 대한 지능적이고 스스로 조절되는 필터 역할을 합니다. 고정된 규칙을 사용하는 대신, RADAR는 다양한 샘플링 규칙의 조합을 끊임없이 테스트하고 그 결과를 관찰함으로써 어떤 트레이스를 유지할 가치가 있는지 학습합니다.

RADAR의 핵심 아이디어는 데이터 수집을 학습 과정으로 취급하는 것입니다. 이 시스템은 강화 학습(reinforcement learning)이라는 방법을 사용하는데, 여기서 컴퓨터 에이전트는 결정을 내리고, 결과를 확인하며, 더 나은 결과를 얻기 위해 전략을 조정합니다. 이 경우 에이전트의 목표는 저장하는 데이터의 양을 최소화하면서 유지하는 데이터의 '정보 가치'를 극대화하는 것입니다. 정보 가치를 측정하기 위해 연구진은 정보 이론의 개념인 엔트로피(entropy)를 사용했습니다. 간단히 말해, 엔트로피는 데이터 집합이 얼마나 다양하거나 예측 불가능한지를 측정합니다. 모두 동일한 트레이스들의 집합은 엔트로피와 가치가 낮습니다. 왜냐하면 그것들은 새로운 것을 알려주지 않기 때문입니다. 반면, 다양하고 드물며 특이한 경로들을 포함하는 집합은 엔로피와 가치가 높습니다. 왜냐하면 시스템의 복잡한 동작과 잠재적인 실패를 드러내기 때문입니다. RADAR는 이 다양성 측정을 보상 신호로 사용합니다. 에이전트가 너무 많은 데이터를 수집하지 않으면서도 광범위하고 독특한 동작들을 포착하는 규칙 세트를 선택하면, 높은 보상을 받고 그 선택을 반복하도록 학습합니다.

이 아이디어를 테스트하기 위해 연구진은 실제 환경의 복잡한 애플리케이션을 모사한 컴퓨터 클러스터 상에서 작동하는 시뮬레이션 온라인 스토어를 구축했습니다. 그들은 일반적인 브라우징과 에러나 특이한 동작을 유발하도록 설계된 특정 시나리오를 포함한 다양한 유형의 트래픽을 도입했습니다. 그런 다음 RADAR 에이전트가 여러 시간 동안 실행되도록 하여 다양한 규칙을 실험하게 했습니다. 어떤 규칙은 느린 요청을 포착하는 데 집중했고, 어떤 규칙은 에러에, 또 어떤 규칙은 고가 구매와 같은 특정 비즈니스 이벤트에 집중했습니다. 에이전트는 이러한 규칙들 사이를 전환하며 수집된 트레이스의 양과 그 다양성을 관찰했습니다. 시간이 흐르면서 에이전트는 완벽한 균형을 찾는 법을 배웠습니다. 에이전트는 시스템을 이해하기 위해 모든 요청을 기록할 필요가 없다는 것을 발견했습니다. 대신, 가장 다양하고 정보가 풍부한 경로에 집중함으로써, 데이터의 양을 획기적으로 줄이면서도 시스템의 상태를 명확하게 파악할 수 있었습니다.

실험 결과는 놀라웠습니다. 모든 트레이스를 기록하는 시스템과 비교했을 때, RADAR는 네트워크를 통해 전송되는 데이터의 양을 97.4% 감소시켰습니다. 또한 데이터를 처리하는 데 필요한 컴퓨팅 파워를 99.0% 줄였습니다. 이러한 절감 효과는 시스템을 훨씬 저렴하고 빠르게 실행할 수 있음을 의미하므로 매우 중요합니다. 하지만 연구진은 이러한 효율성이 중요한 정보를 놓치는 대가로 얻어진 것이 아님을 확실히 하기 위해 주의를 기울였습니다. 그들은 RADAR가 수집한 데이터를 전체 데이터셋과 비교하여 희귀하고 중요한 이벤트를 포착했는지 확인했습니다. 그 결과, RADAR는 심각한 문제의 시작을 알리는 데 자주 쓰이는 독특하고 일회적인 사건인 '희귀 트레이스 패턴'의 약 85.6%를 유지하고 있음을 발견했습니다. 또한, 유지된 데이터의 평균 다양성은 약 25% 증가했는데, 이는 남겨진 데이터가 무작위 샘로 추출된 데이터보다 진단에 훨씬 더 유용하다는 것을 의미합니다.

이러한 접근 방식은 정적인 인간 정의 규칙에서 동적이고 자율적인 관리로의 전환을 의미합니다. 전통적인 시스템은 엔지니어가 어떤 규칙을 적용할지 수동으로 결정해야 하는데, 이는 시스템이 변화하고 성장함에 따라 어려워지는 작업입니다. 반면, RADAR는 시스템의 현재 상태에 맞춰 지속적으로 적응합니다. RADAR는 에러가 어떤 모습인지 미리 알려줄 필요가 없습니다. 단지 다양한 행동 세트가 반복적인 세트보다 더 가치 있다는 것을 학습할 뿐입니다. 이 시스템은 현대 소프트웨어 엔지니어들이 사용하는 표준 도구 내에서 완전히 작동하므로, 애플리케이션 코드 자체에 침습적인 변경을 요구하지 않고도 기존 인프라와 호환됩니다.

이 연구는 복잡한 시스템을 모니터링하는 부담을 크게 줄이면서도 무엇이 잘못되었는지 파악하는 능력을 희생하지 않을 수 있음을 보여줍니다. 다양성이라는 수학적 척도를 사용하여 수집 과정을 가이드함으로써, 연구진은 지능형 에이전트가 노이즈를 걸러내고 신호를 유지하는 법을 배울 수 있음을 입증했습니다. 비록 실험은 통제된 환경에서 수행되었지만, 결과는 클라우드 기반 애플리케이션의 증가하는 복잡성을 관리하기 위한 실행 가능한 경로를 제시합니다. 이 작업은 시스템 모니터링의 미래가 더 많은 데이터를 수집하는 것이 아니라, 정보의 가치를 실시간으로 이해하는 에이전트에 의해 유도되는 더 스마트한 데이터를 수집하는 데 있다는 점을 강조합니다.

연구 분야의 논문에 파묻히고 계신가요?

연구 키워드에 맞는 최신 논문의 일일 다이제스트를 받아보세요 — 기술 요약 포함, 당신의 언어로.

Digest 사용해 보기 →