데이터 엔지니어 이것저것

Kafka Topic 본문

오픈소스/kafka

Kafka Topic

pastime 2023. 1. 28. 22:50
728x90

카프카 토픽이란?

  • 카프카 무리내의 특정한 데이터 흐름
  • 로그, GPS, 구매 기록 등으로 명명할수 있다.
  • 데이터베이스에 있는 테이블과 비슷하지만 제약이 없다.
  • 카프카의 주제로 무엇이든 보낼수 있지만 데이터 검증은 없다.
  • 원하는 만큼의 토픽을 가질 수 있다.
  • 여러 형태의 메시지 형식을 지원한다
    Json, Avro, Text File, Binary File ...

토픽은 데이터 베이스와 비슷하지만 쿼리를 할 수 없다.

카프카 토픽에 데이터를 추가하는 대신 카프카 프로듀서를 사용한다.

데이터를 읽기 위해서는 컨슈머를 이용한다.

 

파티션과 오프셋

카프카 토픽에는 여러개의 파티션을 가질 수 있다.

파티션의 수는 증가 시킬수는 있지만 줄이는 방법은 없다. 

만약 줄이고 싶으면 삭제 하는 방법 뿐이다.

파티션에는 각각 오프셋이라는 ID를 가지고있는데, 이를 통해 메시지는 정렬이 된다.

이는 각 파티션 별로 순서를 보장하지만, 토픽에 대한 순서는 보장하지 않는다.

카프카의 토픽은 불변한다.

이 말은 즉, 데이터가 일단 파티션에 쓰이면 바꿀 수 없다.

 

카프카는 기본적으로 일주일 정도만 데이터를 보관한다.

728x90

'오픈소스 > kafka' 카테고리의 다른 글

kafka-topic.sh 기본 명령어  (0) 2023.04.13
카프카 메시지 순서를 보장  (0) 2023.03.27
CCDAK 준비  (0) 2022.11.14
카프카 커넥트  (0) 2022.08.22
카프카를 사용하는 이유  (0) 2022.01.03