새로운 오픈소스 프로젝트인 블레이즈룰즈(BlazeRules)가 스트리밍 데이터 처리를 위한 고성능 규칙 엔진으로 등장했습니다. 이 엔진은 YAML 파일로 정의된 규칙을 활용하여 초당 최대 500만 건의 데이터를 처리할 수 있는 놀라운 속도를 자랑합니다. 이는 실시간 로그 분석, 이상 감지, 금융 거래 모니터링 등 즉각적인 의사 결정이 필요한 다양한 분야에서 핵심적인 역할을 할 수 있음을 시사합니다.
블레이즈룰즈는 C++로 개발되었으며, 원래는 서브 밀리초(sub-millisecond) 단위의 로그 파서(log parser)를 목표로 시작했지만, 점차 확장되어 임베더블(embeddable) 의사 결정 엔진으로 발전했습니다. 이 엔진의 핵심은 들어오는 데이터를 컬럼형(columnar) 형식으로 재구성하여 벡터화된(vectorized) 방식으로 규칙을 실행한다는 점입니다. 이를 통해 페이로드 크기와 규칙 복잡성에 따라 초당 20만 건에서 수백만 건 이상의 레코드를 처리하며, 처리량은 평균 200MiB/s에서 3GiB/s에 달합니다. SQL 표현식, ONNX 모델(수치), 윈도우 연산 등 다양한 유형의 규칙을 지원하여 유연성을 높였습니다.
블레이즈룰즈의 등장은 실시간 데이터 처리 및 의사 결정 시스템 분야에 큰 파급 효과를 가져올 것으로 예상됩니다. 특히 대규모 스트리밍 데이터를 효율적으로 분석하고 즉각적인 조치를 취해야 하는 기업들에게 강력한 도구가 될 것입니다. 덕DB(DuckDB)와 유사하게 스트리밍 데이터에 특화된 온더플라이(on-the-fly) 의사 결정을 지원한다는 점에서, 기존 배치(batch) 처리 방식의 한계를 극복하고 데이터 기반 비즈니스의 민첩성을 극대화할 수 있을 것으로 보입니다. 이는 복잡한 이벤트 처리(CEP) 시스템이나 실시간 분석 플랫폼 구축에 새로운 가능성을 열어줄 것입니다.