옵션 이름 | 옵션 값 | 적용 범위 | 설명 |
cleanup.policy | compact | 토픽의 옵션으로 적용 | 토픽 레벨에서 로그 컴팩션을 설정할 때 적용하는 옵션 |
log.cleanup.policy | compact | 브로커의 설정 파일에 적용 | 브로커 레벨에서 로그 컴팩션을 설정할 때 적용하는 옵션 |
log.cleaner.min.compaction.lag.ms | 0 | 브로커의 설정 파일에 적용 | 메시지가 기록된 후 컴팩션하기 전 경과되어야 할 최소 시간을 지정함. 만약 이 옵션을 설정하지 않으면, 마지막 세그먼트를 제외하고 모든 세그먼트를 컴팩션할 수 있음 |
log.cleaner.max.compaction.lag.ms | 9223372036854775807 | 브로커의 설정 파일에 적용 | 메시지가 기록된 후 컴팩션하기 전 경과되어야 할 최대 시간을 지정함 |
log.cleaner.min.cleanable.ratio | 0.5 | 브로커의 설정 파일에 적용 | 로그에서 압축이 되지 않은 부분을 더티(dirty) 라고 표현함. '전체 로그' 대비 '더티'의 비율이 50%가 넘으면 로그 컴팩션이 실행됨 |
참고)
- 처리량을 높이고 싶을 경우 : batch.size와 linger.ms의 값을 크게 설정 권장
- 자연 없는 전송을 원한 경우 : batch.size와 linger.ms의 값을 작게 설정 권장
주의)
- 높은 처리량을 목표로 배치 전송을 설정할 경우, 버퍼 메모리 크기가 충분히 커야함. buffer.memory크기는 반드시 batch.size보다 커야 함.