Cloudflare Logpush, SQL 엔진 내장한 'Transformers' 정식 출시

ARCH-B

ARCH-B

Cloudflare Blog 기반 · 2026년 10월 13일 · 6분 분량

0

한눈에 보는 핵심요약

Cloudflare가 대규모 로그 내보내기 파이프라인에서 SQL 쿼리로 직접 데이터를 필터링하고 스키마를 재구성할 수 있는 Logpush Transformers를 정식 출시했습니다. 외부 가공 서비스 없이 Rust 기반 Apache DataFusion 엔진을 배달 서비스 내부에 임베디드하여 전송 단계에서 비용과 데이터 구조를 최적화할 수 있도록 지원합니다.

  • 로그 전송 직전 단계에서 SQL을 통해 민감 정보 마스킹, 필드 재구성, 레코드 필터링을 직접 수행합니다.
  • 원격 네트워크 지연을 방지하기 위해 Workers 대신 Rust 기반 Apache DataFusion을 Go 데몬 내부에 직접 임베디드했습니다.
  • 모든 셀프서브 및 엔터프라이즈 요금제에 제공되며, NDJSON 포맷 작업에서 월 1GB의 변환 입력 용량이 기본 무료로 지원됩니다.
Cloudflare Logpush, SQL 엔진 내장한 'Transformers' 정식 출시
이미지 제공: Cloudflare Blog · 원출처 기사

외부 처리 파이프라인 없애는 인라인 SQL 가공 기능의 정식 도입

Cloudflare가 자사의 실시간 대규모 로그 전송 서비스인 Logpush에 SQL 기반 데이터 변환 기능인 'Transformers'를 정식 출시(GA)했습니다. 이번 기능 출시는 Birthday Week를 기점으로 Logpush가 모든 셀프서브 계정에 전면 개방됨과 동시에 이루어졌으며, Free, Pro, Business, Enterprise를 포함한 전 요금제 사용자에게 일괄 적용됩니다. 이에 따라 사용자는 중간 가공 인프라 없이도 로그 파이프라인 내부에서 직접 가공 작업을 제어할 수 있게 되었습니다.

기존에는 CDN과 네트워크 에지에서 대량 발생하는 원시 로그를 SIEM이나 외부 분석 저장소로 보내기 전에 불필요한 헬스체크 트래픽을 제거하거나 민감 정보를 가공하기 위해 별도의 처리 서비스(중간 파이프라인)를 구축해 운영해야 했습니다. Transformers는 이러한 가공 작업을 Logpush 내보내기 단계 내부로 완전히 편입시켰습니다. 사용자는 SQL 쿼리의 WHERE 절을 통해 불필요한 레코드를 버리고, SELECT 문을 통해 필드 구조를 중첩하거나 이름을 바꾸고 특정 IP 등을 마스킹할 수 있습니다.

Workers 대신 Rust 기반 Apache DataFusion을 임베디드한 아키텍처

Cloudflare 발표에 따르면 자사 데이터 파이프라인은 초당 10억 개 이상의 이벤트를 수집하며, 배달 서비스인 'Bufstream'은 수백 대의 Kubernetes 파드 환경에서 초당 1억 1천만 개 이상의 레코드를 고객 목적지로 분산 전송합니다. 이러한 대규모 핫 패스(hot path)에서 높은 처리량을 유지하기 위해 기술 스택 선정 과정에서 큰 설계 변경이 있었습니다. 원격 환경 호출로 인한 잠재적 지연을 원천 차단하기 위한 아키텍처 재검토가 이뤄졌습니다.

초기 프로토타입 단계에서는 Cloudflare Workers 상에서 WebAssembly(Wasm)로 사용자 정의 변환을 실행하는 방식이 검토되었습니다. 그러나 데이터 전송 경로 한가운데에 원격 네트워크 호출이 추가되면 일시적인 타임아웃과 재시도가 누적되어 배달 지연과 처리량 저하가 불가피하다는 결론을 내렸습니다. 이에 따라 Bufstream은 네트워크 홉을 배제하고 데몬 내부에서 직접 구동(in-process)되는 방식을 채택했습니다. Go 언어로 작성된 배달 데몬에 Rust 기반의 벡터화 컬럼형 쿼리 엔진인 Apache DataFusion을 임베딩하고, Apache Arrow IPC를 통해 언어 경계 간 데이터를 효율적으로 교환하도록 설계했습니다.

ARCH.B 분석

단일 고루틴 벤치마크 결과와 실제 운영 환경에서의 성능 고려점

Cloudflare가 공개한 내부 벤치마크에 따르면, 단일 Go 고루틴 환경에서 5,000행의 합성 http_requests 배치를 대상으로 사전 컴파일된 Transformer를 실행했을 때 약 3ms가 소요되었으며, 이는 초당 약 160만 행을 처리하는 속도에 해당합니다. 회사는 DataFusion 엔진의 벡터화 컬럼 실행 모델을 활용해 예측 가능한 리소스 사용량을 달성했다고 설명하지만, 실제 운영 환경에 도입할 때는 이러한 벤치마크의 측정 한계를 비판적으로 살펴야 합니다.

해당 수치는 단순 가공 쿼리와 가상의 합성 데이터셋을 바탕으로 단일 고루틴에서 측정한 마이크로 벤치마크 결과에 불과합니다. 실제 프로덕션 워크로드에서는 다중 필드 중첩, 복잡한 문자열 파싱, 정규표현식 기반의 IP 및 식별자 마스킹 등 고비용 연산이 추가될 수 있으며, 이는 배달 데몬의 CPU 점유율을 크게 끌어올릴 수 있습니다. 따라서 대규모 트래픽을 처리하는 환경에서는 쿼리 복잡도에 따라 실제 처리 지연 시간이 증가할 수 있음을 전제하고 성능 테스트를 병행해야 합니다.

요금 체계와 하위 시스템 제약 사항 및 확인된 한계

Transformers의 요금 체계는 처리 입력 용량에 비례해 부과됩니다. 계정당 매월 1GB의 변환 입력 용량이 기본 무료로 제공되며, 이를 초과할 경우 압축 해제된 입력 바이트 기준으로 1GB당 $0.04의 추가 비용이 발생합니다. 이는 외부 대상지(S3, Datadog 등 월 25GB 초과 시 GB당 $0.10)나 내부 대상지(R2 등 월 25GB 초과 시 GB당 $0.03)로 전송될 때 발생하는 기존 내보내기(Export) 요금과는 별도로 계산됩니다.

기능 적용 시 주의해야 할 시스템 제약 사항도 확인되었습니다. Transformers는 출력 포맷으로 NDJSON(Newline Delimited JSON)을 사용하는 Logpush 작업에서만 활성화할 수 있습니다. 또한 기존의 단순 필터(Filters)와 Transformer는 하나의 작업에 중복 적용할 수 없으며, Transformer Studio를 적용할 때 기존 필터는 SQL의 WHERE 절로 자동 전환됩니다. 아울러 배치 내 단일 레코드 단위 변환을 전제로 하므로 복수 데이터셋 간 조인(JOIN)이나 윈도우 함수 등 고급 분석 쿼리의 지원 여부나 특수 데이터셋의 지원 범위는 현재 공식 문서상 명확히 확인되지 않았습니다.

ARCH.B 분석

데이터 파이프라인 단순화 효과와 실무 도입 전략

실무 관점에서 Transformers 도입의 가장 큰 실익은 데이터 수집 계층의 단순화와 다운스트림 수집 비용 절감입니다. Datadog, Splunk, Elastic과 같은 외부 가시성 플랫폼은 데이터 인제스트(Ingest) 용량에 비례해 높은 비용을 청구합니다. Logpush 단계에서 내부 헬스체크 로그나 불필요한 헤더 필드를 원천 제거하고 전달하면 SIEM 및 로그 저장소의 과금 청구액을 크게 낮출 수 있습니다. 또한 중간 가공용 Kafka, Logstash, 자체 컨테이너 인프라의 운영 부담도 덜어낼 수 있습니다.

도입 전 반드시 고려해야 할 실무 전략은 비용 트레이드오프 분석입니다. 변환 처리 자체에 GB당 $0.04의 비용이 발생하므로, 제거하거나 마스킹함으로써 절감되는 다운스트림 전송 및 수집 비용이 변환 추가 요금보다 현저히 큰지를 면밀히 따져야 합니다. 또한 대시보드의 'Transformer Studio'를 통해 버전 관리가 지원되므로, 실운영 트래픽에 적용하기 전에 스키마 변경 사항과 필터 조건을 단계적으로 테스트하고 배포하는 운영 프로세스를 갖출 것을 권장합니다.

출처

Cloudflare Blog의 원출처와 본문에 표시한 참고자료를 바탕으로 한국어로 재구성했습니다. ‘ARCH.B 분석’은 자료를 읽고 덧붙인 편집 해석입니다.

Filter, reshape, and redact logs before export with Transformers (새 창)

Share

Related

함께 읽기 좋은 글