목록STUDY/Kafka (5)
공부해봅시당
현재 작성 중인 KAFKA 시리즈는 [카프카 핵심 가이드] 책을 보고 정리한 글임을 밝힙니다. 1.4 데이터 생태계 데이터 생태계에 있어서 순환 시스템을 제공 모든 클라이언트에 대해 일관된 인터페이스를 제공하면서 다양한 인프라스트럭처 요소들 사이에 메시지 전달 1.4.1 이용 사례 1. 활동 추적 사용자가 뭔가 행동을 할 때마다 이것에 대한 메시지를 생성하는 프론트엔드 애플리케이션 작동 이 메시지들은 하나 이상의 토픽으로 발행되어 백엔드에서 작동 중인 애플리케이션에 전달됨 이 애플리케이션들은 다양하게 활용됨(검색 결과 업데이트, 보고서 생성, 기계 학습 시스템에 데이터 전달 등) 2. 메시지 교환 사용자에게 이메일과 같은 알림을 보내야하는 애플리케이션에서도 활용 가능 메시지 형식이나 전송 방법에 신경 쓸..
현재 작성 중인 KAFKA 시리즈는 [카프카 핵심 가이드] 책을 보고 정리한 글임을 밝힙니다. 1.3 왜 카프카인가? 1.3.1 다중 프로듀서 여러 프로듀서 처리 가능 프로듀서 클라이언트가 사용하는 토픽의 개수와 무관 따라서 프론트엔드 시스템으로부터 데이터를 수집하고 일관성을 유지하는 데 적격 1.3.2 다중 컨슈머 큐 시스템과의 차이점 큐 시스템 하나의 메시지를 하나의 클라이언트에서만 소비할 수 있도록 되어 있음 카프카 많은 컨슈머가 상호 간섭 없이 어떠한 메시지 스트림도 읽을 수 있도록 설계됨 다수의 카프카 컨슈머는 컨슈머 그룹의 일원으로 작동함 따라서 하나의 스트림을 여럿이서 나눠서 읽을 수 있음 이 경우 주어진 메시지는 전체 컨슈머 그룹에 대해 한 번만 처리됨 1.3.3 디스크 기반 보존 지속성 ..

현재 작성 중인 KAFKA 시리즈는 [카프카 핵심 가이드] 책을 보고 정리한 글임을 밝힙니다. 1.2 카프카 입문 아파치 카프카 카프카란 비즈니스가 확장됨에 따라 함께 확장되는, 일반화된 유형의 데이터를 발행하고 구독할 수 있는 중앙 집중화된 시스템이 필요해져서 고안된 메시지 pub/sub 시스템임 '분산 커밋 로그' 혹은 '분산 스트리밍 플랫폼'이라고 불리기도 함 파일시스템이나 데이터베이스 커밋 로그와의 비교 파일시스템이나 데이터베이스 커밋 로그 모든 트랜잭션 기록을 지속성 있게 보존함으로써 시스템의 상태를 일관성 있게 복구할 수 있도록 고안됨 카프카 이와 유사하게, 카프카에 저장된 데이터는 순서를 유지한 채로 지속성 있게 보관되며, 읽을 수 있음 확장시 성능을 향샹시키고 실패가 발생하더라도 데이터 사..

현재 작성 중인 KAFKA 시리즈는 [카프카 핵심 가이드] 책을 보고 정리한 글임을 밝힙니다. CHAPTER 1 과학자들이 서로 동의하지 않는 상황이 벌어진다면, 그것은 데이터가 불충분하기 때문이다. 그리고 어떤한 데이터를 얻을 것인지를 합의하고 데이터를 얻을 수 있다면 문제는 해결된다. 내가 옳든 상대방이 옳든, 아니면 둘 다 틀리든 말이다. 그제서야 우리는 그 다음으로 진행해 갈 수 있다 - 닐 디그래스 타이슨 데이터가 중심이 되는 기업에서 파이프라인은 핵심적인 요소임 데이터를 어떻게 이동시키느냐의 문제는 데이터 그 자체만큼이나 중요함 1.1. pub/sub 메시지 전달 아파치 카프카의 특징에 대해 이해하기 전, pub/sub 메시지 전달의 개념과 데이터 주도 애플리케이션에서의 중요성을 이해할 필요가..
현재 작성 중인 KAFKA 시리즈는 [카프카 핵심 가이드] 책을 보고 정리한 글임을 밝힙니다. 들어가기 전 카프카의 시작 카프카는 링크드인에서 구축한 내부 인프라스트럭처 등장배경 데이터를 저장하기 위해 만들어진 데이터베이스와 다른 시스템들은 많이 있었지만, 지속적인 데이터의 흐름을 처리할 수 있게 해주는 것은 없었음 카프카를 개발하기 전 메시징 시스템에서부터 로그 수집 시스템과 ETL 툴에 이르는 모든 종류의 현존하는 해법들을 실험해봤지만, 만족스러운 것은 없었음 따라서 완전히 새로운 것을 개발하기로 함 조건 관계형 데이터베이스나 키-값 저장소, 검색 인덱스, 혹은 캐시처럼 데이터 저장에 초점을 둬서는 안되었음 대신 데이터를 지속적으로 진화하고 성장하는 스트림으로서의 데이터를 다루는 것에 초점을 맞추고,..