real-time-data-processing

2 개의 포스트

Iceberg Low-Latency Queries with Materialized Views (feat. 실시간 거래 리포트) (새 탭에서 열림)

네이버의 실시간 거래 리포트 시스템은 대규모 데이터를 다양한 조건으로 빠르게 조회하기 위해 Apache Iceberg와 StarRocks의 Materialized View를 핵심 기술로 활용합니다. 단순히 데이터를 적재하는 수준을 넘어, 데이터의 최신성(Freshness)과 저지연(Low-Latency) 응답 속도, 그리고 시스템 확장성을 동시에 확보하는 것이 이번 기술 여정의 핵심 결론입니다. 이를 통해 복잡한 다차원 필터링이 필요한 비즈니스 환경에서도 사용자에게 즉각적인 분석 결과를 제공하는 데이터 레이크하우스 아키텍처를 구현했습니다. **실시간 거래 리포트의 기술적 도전 과제** * 대규모로 발생하는 거래 데이터를 실시간에 가깝게 수집하면서도, 사용자가 원하는 다양한 검색 조건에 즉각 응답해야 하는 성능적 요구사항이 있었습니다. * 데이터의 양이 방대해짐에 따라 기존의 단순 조회 방식으로는 응답 속도가 저하되는 문제가 발생했으며, 데이터의 신선도와 쿼리 성능 사이의 트레이드오프를 해결해야 했습니다. * 다차원 필터링과 집계 연산이 빈번한 리포트 특성상, 인덱싱 최적화와 리소스 효율성을 동시에 고려한 설계가 필요했습니다. **Iceberg와 StarRocks를 활용한 저지연 쿼리 전략** * **Apache Iceberg 기반 데이터 관리**: 데이터 레이크의 스토리지 포맷으로 Iceberg를 채택하여 ACID 트랜잭션을 보장하고, 대규모 데이터셋에 대한 효율적인 스키마 진화와 파티션 관리를 수행합니다. * **StarRocks의 구체화 뷰(Materialized View) 도입**: Iceberg에 저장된 원본 데이터를 직접 조회하는 대신, StarRocks의 Materialized View를 활용해 자주 사용되는 쿼리 결과를 미리 연산하여 저장함으로써 조회 속도를 비약적으로 향상시켰습니다. * **증분 업데이트 및 동기화**: 실시간으로 유입되는 데이터를 Materialized View에 효율적으로 반영하기 위해 Spark와 StarRocks 간의 연동 최적화를 진행하여 데이터의 최신성을 유지합니다. **아키텍처 구성 요소 및 운영 최적화** * **Spark**: 대용량 거래 데이터의 가공 및 Iceberg 테이블로의 수집을 담당하는 컴퓨팅 엔진으로 활용됩니다. * **StarRocks**: 고성능 OLAP 엔진으로서 Iceberg 외부에 위치하며, Materialized View를 통해 복잡한 조인(Join)과 집계(Aggregation) 쿼리를 가속화합니다. * **확장성 확보**: 데이터 노드와 컴퓨팅 리소스를 분리하여 운영함으로써 트래픽 증가에 유연하게 대응할 수 있는 구조를 설계했습니다. 대용량 실시간 분석 시스템을 구축할 때 Apache Iceberg만으로는 쿼리 성능의 한계가 있을 수 있으므로, StarRocks와 같은 고성능 OLAP 엔진의 구체화 뷰를 결합하는 레이크하우스 전략이 효과적입니다. 특히 데이터의 최신성이 중요한 금융 및 거래 리포트 분야에서 이와 같은 기술 조합은 인프라 비용을 절감하면서도 사용자 경험을 극대화할 수 있는 강력한 대안이 됩니다.

안드로이드 지진 알림: (새 탭에서 열림)

구글은 전 세계 수십억 대의 안드로이드 스마트폰에 내장된 가속도계를 활용하여 지진을 조기에 감지하고 경보를 전달하는 글로벌 지진 경보 시스템을 구축했습니다. 이 시스템은 고가의 지진 관측 장비가 부족한 지역에서도 작동하며, 지진의 파괴적인 파동이 도착하기 전 수초에서 수십 초의 대피 시간을 확보해 줍니다. 결과적으로 이 기술은 지진 조기 경보 시스템의 수혜 대상을 기존 2억 5천만 명에서 25억 명으로 10배 이상 확대하며 전 세계적인 안전망을 제공하고 있습니다. **스마트폰 센서를 활용한 지진 감지 메커니즘** * 안드로이드 기기에 탑재된 가속도계가 지진의 초기 파동인 P파(P-wave)를 감지하면, 대략적인 위치 정보와 함께 구글의 지진 감지 서버로 신호를 전송합니다. * 서버는 특정 지역의 수많은 휴대폰으로부터 들어오는 데이터를 실시간으로 분석하여 지진 발생 여부를 확인하고 규모와 진앙지를 추정합니다. * 파괴력이 큰 S파(S-wave)가 도달하기 전, 예상되는 진동 강도에 따라 '알림(BeAware, 약한 진동)' 또는 '조치(TakeAction, 강한 진동)' 경보를 발송합니다. 특히 조치 경보는 화면을 점유하며 큰 소리를 내어 즉각적인 대피를 유도합니다. **글로벌 도달 범위와 가시적인 성과** * 2021년 뉴질랜드와 그리스를 시작으로 서비스를 확대하여, 2023년 말 기준 전 세계 98개국에서 안드로이드 지진 경보 시스템이 작동하고 있습니다. * 현재까지 규모 1.9부터 7.8에 이르는 지진을 18,000건 이상 감지했으며, 유의미한 위험이 있는 약 2,000건의 지진에 대해 총 7억 9,000만 건의 경보를 전송했습니다. * 지진 관측 인프라가 열악한 국가에서도 스마트폰 네트워크를 통해 전문적인 지진 조기 경보(EEW) 서비스를 이용할 수 있게 되었습니다. **실시간 규모 추정 기술의 고도화** * 지진 초기 단계의 제한된 데이터로 정확한 규모를 예측하기 위해 알고리즘을 지속적으로 개선하고 있습니다. * 지난 3년간의 기술 발전을 통해 규모 추정의 중앙값 절대 오차(Median Absolute Error)를 0.50에서 0.25로 절반가량 줄였습니다. * 이는 전통적인 지진 관측망과 대등하거나 일부 상황에서는 더 우수한 정확도를 보여주며, 오보를 줄이고 경보의 신뢰도를 높이는 데 기여하고 있습니다. **실제 사례를 통한 효용성 입증** * 2023년 11월 필리핀에서 발생한 규모 6.7 지진 당시, 시스템은 발생 18.3초 만에 첫 경보를 발송했습니다. * 진앙지 근처의 사용자들은 가장 강한 진동이 오기 전 최대 15초의 시간을 벌 수 있었고, 외곽 지역 사용자들은 최대 1분의 준비 시간을 확보했습니다. * 이러한 골든타임은 사용자가 사다리에서 내려오거나, 위험한 물건에서 멀어지고, 즉시 몸을 숨기는 등 인명 피해를 줄이는 결정적인 역할을 합니다. 지진 위험 지역에 거주하거나 방문할 계획이 있는 안드로이드 사용자는 기기 설정에서 '지진 경보'와 '위치 서비스'가 활성화되어 있는지 확인하는 것이 권장됩니다. 이 시스템은 기존의 지진 관측 인프라를 보완하며, 전 세계 어디서든 스마트폰만 있다면 생명을 보호할 수 있는 필수적인 기술적 안전 장치로 자리 잡고 있습니다.