kafka streams 데이터 보관 주기 질문
509
작성한 질문수 3
안녕하세요
카프카 스트림즈 학습중에 궁금한 점이 있어 질문드립니다.
예를 들어 말씀드리겠습니다
kstream 으로 변경되는 상품의 가격 정보를 받아온다고 가정하고, ktable 로 해당 상품의 마스터성 정보를 받는다고 해보겠습니다.
카프카 스트림즈를 써도 결국엔 카프카 브로커에 로그로 쌓이는 것이고, 로그 압축이나 삭제 정책에 따라 A라는 상품의 정보가 있다가 사라질 수 있을 것 같은데요
4월 1일에는 A상품의 정보(상품이름, 판매처 등)가 로그에 있어서 데이터를 읽어올수 있었지만 4월4일에는 기간이 지나 삭제되었다거나 하는 경우가 있을 것 같아서요
카프카 스트림즈를 띄우는 서버의 메모리나 로컬 디스크에 모든 내용을 가지고 있는 건지가 궁금하구요
만약 해당 서버에 데이터가 있다면 서버가 다운되거나 했을때 리밸런싱 혹은 서버가 재시작 되었을때 사라진 로컬데이터의 복구 기능이 구현되어있는 건지 궁금합니다
또한 로컬에 저장된다면 그동안 스트림을 거쳐간 모든 데이터를 가지고 있는건지.. 데이터가 대용량이 된다면 로컬 머신의 저장공간을 고려해야하는지 궁금합니다
그리고.. 만약 카프카 스트림엔 데이터가 없고 rdb등의 저장소에 데이터가 있다면 이걸 가져와서 쓸수 있는지도 궁금합니다
답변 1
1
안녕하세요! 문의주신 내용에 대해 답변드립니다.
1) KTable로 상품 정보를 가지고 있을 때 스트림즈를 띄우는 서버의 메모리나 로컬 디스크에 모든 내용을 가지고 있는지?
맞습니다. 특정 토픽에 상품 정보를 담았고, 카프카 스트림즈를 통해 KTable로 해당 토픽을 가져올 경우 rocksdb를 통해 로컬 디스크(기본 설정)에 데이터를 가지고 있습니다.
2) 서버가 다운되었거나 리밸런싱 되었을 때 로컬 데이터의 복구 기능이 있는지?
KTable로 토픽을 선언할 경우 서버 재시작시, 리밸런싱 시 재할당된 해당 파티션에 대해 구체화된 뷰(materialized view) 형태로 데이터를 다시 구축합니다. 그러므로 리밸런싱 이후에 다시 데이터를 활용하실 수 있습니다.
3) 스트림을 거쳐간 모든 데이터를 가지고 있는지?
기본적으로 KTable은 offset을 항상 earliest로 가져와서 구체화된 뷰를 만들기 때문에 토픽에 존재하는 모든 데이터에 대해 존재한다고 볼 수 있습니다. 토픽 만료정책(compact or delete)에 의해 삭제된 데이터는 복구할 수 없습니다.
4) 대용량 데이터를 다룰 경우 로컬 머신의 저장 공간 고려해야하는지?
대용량 데이터를 다룰 경우 로컬 머신의 저장 공간 고려해야만 합니다.
5) 스트림즈를 통해 데이터가 없을 경우 RDB에서 가져와서 사용할 수 있는지?
말씀하신 로직을 개발하신다면 문제없이 사용하실 수 있습니다!
consume 이후 lag가 줄어들지 않음
0
75
2
안녕하세요. 강의의 카프카 버전과 현재 시점의 카프카의 차이점 문의 드립니다.
0
118
2
멱등성 프로듀서 retries 관련 질문입니다.
0
99
2
채팅 서비스 개발 시 주의점이 있을까요?
0
100
2
충분히 큰 파티션 생성시 궁금증이 존재합니다.
0
88
2
KTable 키가 없는 레코드 처리
0
73
2
컨슈머 테스트 코드 작성
0
94
2
리밸런스 onPartitionRevoked이 필요한 상황
0
74
2
카프카 클러스터에서 감당 가능한 파티션(레플리카) 수 문의
0
120
2
reset offset 질문
0
77
2
KStreamJoinKTable 실행시 오류
0
78
2
auto.commit.interval.ms 옵션 관련 질문 드립니다.
0
142
2
파티션, 컨슈머 그룹, 컨슈머 관련 질문
0
117
1
java, kotlin
0
130
2
shutdownThread 에 대한 문의 입니다.
0
155
2
zookeeper실행시 오류가 발생합니다.
0
271
2
커스텀 소스 커넥터에서 Thread.sleep (1000) 은 왜 하는거에요?
0
153
2
처리량을 늘리기 위해서 파티션을 늘리고 컨슈머를 늘려야한다고 설명하셨는데요
0
181
3
파티션 개수와 컨슈머 개수의 처리량 관련 질문
0
164
2
동영상 및 이미지 처리 관련 문의 드립니다.
0
226
2
주키퍼 없이 사용 문의 드립니다.
0
303
1
kafka 를 띄우니 오류가 발생하고 종료합니다.
0
281
3
zookeeper 실행시 오류 .. 무엇을 해야 할까요?
0
220
2
파티션 추가로 해결할 수 있지만 늘어난 파티션은 줄일 수 없지 않나요?
0
192
2





