Kafka5 5) Consumer Consumer Offset Consumer Group이 읽은 위치를 표시 Consumer가 자동 / 수동으로 읽은 데이터 위치를 Commit하여 다시 읽는 것을 방지 __conuser_offsets라는 Internal Topic에 Consumer Offset을 저장하여 관리 Mulit Partition with Single Consumer 여러개의 Partition으로 구성된 Topic의 데이터를 사용하는 Single Consumer의 경우 Topic의 모든 Partition에서 모든 Message를 가져옴 이때, 각 Parttition의 Offset을 별도로 관리함 Multi Partition with Consumer Group 여러개의 Partition, 그와 동일한 숫자의 Consumer로 이루어.. 2023. 9. 7. 4) Producer Producer의 Message key - value → 보내고싶은 데이터 Kafka는 데이터를 모두 Byte Array로 저장함 메시지를 보내면 그것을 받아 Serializer에서 Byte Array로 변경하여 있는 그대로 저장 Consumers는 Deserializer로 Byte Array를 다시 변경해서 가져옴 사용자가 하는 것은 Send()밖에 없음 나머지 과정은 전부 Kafka 내부에서 처리됨 사용자가 작성한 Key-Value가 Serializer를 거쳐 Partitioner로 향한다 Partitioner는 사용자가 send한 Byte Array를 어느 파티션으로 보낼지 판단한다 설정에 따라 Compress에서 압축이 되고, Record Accumulator에서 Batch 혹은 하나하나 Kafk.. 2023. 9. 5. 3) Broker, Zookeeper Broker Partition에 대한 read / write 관리 Kafka Server라고 도 불림 Topic 내부 Partition 분산 / 유지 / 관리 ID(숫자)로 식별됨 Topic의 일부 Partition만 포함. 전체 데이터 X. 장애시 처리 용이 Broker가 모인 것을 Kafka Cluster라 함 Client는 하나의 Broker에 연결되도 전체 클러스터에 연결할 수 있음 → 하지만, 장애를 대비하여, 전체 Broker 목록을 입력하는 것이 안전 최소 3대 이상 권장 Bootstrap 서버라고도 부름 각각의 Broker는 모든 Broker, Topic, Partition에 대해 알고 있음 Zookeeper Broker를 목록 / 설정을 관리하는 소프트웨어 변경사항에 대하여 Kafka에 .. 2023. 8. 28. 2) Topic, Partition, Segment Topic 전송되는 메시지가 저장되는 부분 논리적인 구분 Producer 메시지를 만들어서 Topic으로 전송 Consumer Topic에서 메시지를 가져와서 소비 Consumer Group Topic에서 메시지를 사용하기 위해 협력하는 Consumer 집단 하나의 Consumer는 Consumer group에 포함되어 Consumer끼리 협력하여 메시지를 분산 병렬 처리 Producer와 Consumer는 서로 알지 못한다 Producer와 Consumer는 각각의 속도로 Commit log에서 write (pro) / read (con)를 수행 Consumer group이 다른 각각의 Consumer들은 서로 연관이 없으며, Commit Log의 다른 부분의 메시지를 읽을 수도 있음 Commit Lo.. 2023. 8. 28. 1) Apache kafka 란? Data in Montion platform (움직이는 데이터를 처리하는 플랫폼) 혹은 Event streaming platform (실시간으로 흐르는 이벤트 들의 흐름을 처리하는 플랫폼) Event의 예시 웹 사이트에서의 클릭 실시간 좌표 배송 중인 물건의 위치 등등 이런 이벤트 데이터들은 비지니스 적으로 유용하게 활용됨 비지니스의 모든 영역에서 광범위하게 발생하기 때문에 대용량으로 발생하게 됨 Apach Kafka의 특징 이벤트 스트림을 안전하게 전송 이벤트 스트림을 디스크에 저장이 특화가 되어있음 (가장 큰 특징) 이벤트 스트림을 분석 / 처리가 가능 Apach Kafka의 사용사례 메시징 시스템 IOT 디바이스부터 데이터 수집 로그 수집 DB 동기화 (MSA 기반 분리된 DB 동기화) 실시간 ET.. 2023. 8. 28. 이전 1 다음