티스토리 뷰

728x90

카프카 로고

1️⃣ topic 생성

kafka-topics.sh --bootstrap-server localhost:9092 --topic test_topic --create --partitions 3

topic 생성

2️⃣  #producing / 데이터 쓰기

 

1) key없이 데이터 쓰기 

- 키를 입력하지 않은 경우 key는 Null이다

kafka-console-producer.sh --bootstrap-server localhost:9092 --topic test_topic

위 명령어를 입력하면, 데이터를 쓸 수 있게 터미널이 변경 된다.

kafka-console-producer

쓰고 싶은 데이터를 입력 후 프로듀서를 빠지나오고 싶으면 ctrl+C를 눌러주면 된다.

2) key 데이터 쓰기 

- : 로 key와 값을 구분한다.

- 동일한 키는 동일한 파티션에 데이터가 쓰여진다.

kafka-console-producer.sh --bootstrap-server localhost:9092 --topic test_topic --property parse.key=true --property key.separator=:

 

3️⃣ #consuming / 데이터 읽기

1) 기본 명령어 

- 명령어를 입력후 쓰여진 데이터만 표시된다. 이전에 작성된 데이터는 보여지지 않는다. 처음부터 읽고 싶으면 2)처음부터 읽기 명령어를 사용해야 한다.

kafka-console-consumer.sh --bootstrap-server localhost:9092 --topic test_topic

2) 처음부터 읽기

- #옵션 : --from-beginning

kafka-console-consumer.sh --bootstrap-server localhost:9092 --topic test_topic --from-beginning

3) 키와 값, 시간 표시하기

- 시간표시 : --property print.timestamp=true 
- key표시 : --property print.key=true 
- 값 표시 : --property print.value=true 
-파티션 표시 : --property print.partition=true 

kafka-console-consumer.sh --bootstrap-server localhost:9092 --topic test_topic 
--formatter kafka.tools.DefaultMessageFormatter 
--property print.timestamp=true 
--property print.key=true 
--property print.value=true 
--property print.partition=true 
--from-beginning

좌 : producer 우 : consumer

message라는 key를 가진 데이터는 항상 Partition:0 에 쓰여진 것을 볼 수 있다. 

 

공지사항
최근에 올라온 글
최근에 달린 댓글
Total
Today
Yesterday
링크
«   2024/11   »
1 2
3 4 5 6 7 8 9
10 11 12 13 14 15 16
17 18 19 20 21 22 23
24 25 26 27 28 29 30
글 보관함