본문 바로가기

개발 이것저것/빅 데이터(Big Data)3

Spark에서 kafka message compression 적용기 kafka message compreesion이란? Producer가 메세지를 전송하기 전에 특정 압축 알고리즘을 적용하여 messege를 전송하는 방식, 압축 알고리즘의 종류에 따라 다르겠지만 Cloudflare의 사례에 따르면 zstd 방식을 적용했을 때 압축률이 4.5배에 달한다고 한다. (broker에서 압축을 적용하는 방식이 있지만 권장하지 않는 방식이라고 한다) trade-off가 있을까? Producer, Consumer가 메세지 압축, 압축해제를 함에 따라 CPU 사용률이 증가할 수 있다. 하지만 Cloudflare 사례에 따르면 Snappy 알고리즘을 적용해보았을 때 single-core cpu의 2.4%를 사용했다고 한다. (gzip 알고리즘은 snappy의 9배 정도의 cpu 사용률을.. 2023. 12. 27.
데이터 웨어하우스(DW)와 ELT 데이터 웨어하우스(DW) 사용자가 원하는 질문에 대답할 수 있는 데이터 분석 활동을 지원하기 위해 서로 다른 시스템의 데이터가 모델링되어 저장되는 데이터베이스. DW의 데이터는 리포팅 및 분석 쿼리를 위해 정형화되고 최적화 됨 데이터 레이크 데이터가 저장되지만 데이터 웨어하우스(DW)처럼 데이터 구조나 쿼리 최적화가 필요 없는 곳. ELT(Extract-Load-Transform) 오늘날의 대부분의 데이터 웨어하우스(DW)는 비용 효율적인 방식, 대규모 데이터세트에 대한 대량 변환을 저장하고 실행할 수 있는 확장성이 뛰어난 열 기반 DB를 기반으로 함 분석에서는 기존의 행 기반 RDBMS의 활용과 달리 많은 양의 데이터를 드물게 읽고 쓰는 경우가 많으며 행 전체에 대한 접근 보다는 단일 열을 필요로 하는.. 2023. 10. 22.
Unbounded Vs Bounded Data Unbounded streams 시작을 가지지만 정의된 끝이 없으며, 종료하지않고 데이터를 생성되는대로 제공한다. 지속적으로 처리되어야하며, 즉 events는 즉시 수집되는대로 즉시 hadle되어야 한다 입력이 한정되지 않고 어떤 특정 지점에서 제 시간에 완료되지 않기 때문에 모든 입력 데이터가 도달하는 것을 기다리는 것은 불가능하다. unbounded data 처리는 결과의 완전성을 추론하기위해 자주 event들이 특정 순서로 수집되는 것을 요구한다. 예를 들면 이벤트가 발생된 순서 등이다. Bounded streams Bounded streams는 시작과 끝이 정의되어있다. 이것은 어떠한 계산이 수행되기 전에 모든 데이터를 섭취함으로써 처리될 수 있다. bounded data set은 항상 정렬될 .. 2023. 10. 18.