인프런3 [카프카 퀴즈] 카프카 기본 구조 퀴즈 컨슈머가 가져간 데이터는 파티션에서 삭제된다 (O/X)X카프카에서 데이터 복제의 단위는 토픽이다 (O/X)X. 파티션임.파티션은 1개의 리더 파티션과 1개 이상의 팔로워 파티션으로 이루어져 있다 (O/X)X 리더만일수도? (rf=1)프로듀서와 컨슈머는 팔로워 파티션과 통신하여 데이터 처리량을 늘릴 수 있다 (O/X)X (반드시 프로듀서와 컨슈머는 리더 파티션과만 통신!)레코드는 타임스탬프, 메시지 키, 메시지 값, 오프셋으로 이루어져 있다 (O/X)X (+ 헤더. 데이터 처리할 때 필요한 스키마)다음 파티션에서 압축(compact)이 실행된다면, 남은 모든 오프셋의 배열은? (주관식, 숫자 나열)10 14 15 16 17 18 19이 포스팅은 모두 인프런의 [아파치 카프카 애플리케이션 프로그래밍] 개념부.. DevOps/Kafka 2024. 6. 27. [카프카 프로그래밍] 토픽과 파티션 토픽토픽은 카프카에서 데이터 구분 위해 사용.토픽은 1개 이상 파티션 소유파티션파티션에서 프로듀서가 보낸 데이터들이 저장되는데 이 데이터들을 레코드라 함.파티션은 결론적으로 큐와 비슷하지만 차이가 있다면 큐는 데이터를 가져가면 삭제하지만 카프카에서는 삭제하지 않는다는 것.그래서 여러 컨슈머 (이를 테면 하둡과 엘라스틱 서치가 있다 치자.) 들이 모두 데이터를 가져갈 수 있음.토픽과 파티션이 배치 되는 방법파티션이 5개인 토픽을 생성했을 때 보통 0번부터 라운드 로빈 방식으로 리더 파티션들이 생성.카프카 클라이언트는 리더 파티션이 있는 브로커와 통신하여 데이터를 주고 받아 특정브로커에 통신이 집중되는 핫스팟 현상을 막고 선형 확장 하여 데이터가 많아져도 자연스럽게 대응.위 같이 특정 브로커에 파티션이 쏠릴.. DevOps/Kafka 2024. 6. 27. [카프카 프로그래밍] 브로커의 역할 1️⃣ 컨트롤러다수 브로커 중 한대가 컨트롤러의 역할을 해서 헬스체크하고 비정상이면 빠르게 클러스터에서 빼내기.2️⃣ 컨슈머 오프셋 저장어느 레코드까지 가져갔는지 확인하려고 오프셋 커밋. _consumer_offsets 토픽에 저장이건 언제보냐? 장애 났을 때 어디까지 토픽 저장됐는 지 확인할 때 본다.3️⃣ 그룹 코디네이터파티션을 컨슈머와 매칭되도록 분배.컨슈머가 보통 1:1 처리 중인데 만약 컨슈머가 장애나서 빠지면 파티션을 정상 컨슈머로 할당해서 한 컨슈머가 여러 파티션 처리하게 우선 리밸런스함.4️⃣ 데이터의 저장카프카를 실행할 때 config/server.properties의 log.dir 옵션에 정의한 디렉토리에 데이터를 저장하는데 토픽 이름과 파티션 번호의 조합으로 하위 디렉토리를 생성하여 .. DevOps/Kafka 2024. 6. 23. 이전 1 다음