카프카의 로그 클린업 정책은 Delete와 Compact 두가지가 있습니다.
각각의 장점과 단점, 어떤 경우에 적합한지에 대해 정리해보았습니다.
⭐️ Delete 정책
👍 장점:
메시지가 보존 기간이나 파티션 크기에 따라 삭제되므로 저장 공간이 일정 수준으로 유지됩니다.
시간 또는 크기 기반으로 메시지를 제거하므로, 처리 속도가 빠릅니다.
👎 단점:
메시지가 보존 기간이 만료되면 삭제되므로, 오래된 데이터에 대한 액세스가 제한됩니다.
🗓 주요 사용 사례:
실시간 분석, 스트림 처리, 대량의 데이터를 처리하는 경우에 적합합니다.
오래된 데이터가 필요하지 않은 시나리오에 적합합니다.
⭐️ Compact 정책
👍 장점:
중복 키를 가진 이전 메시지를 삭제하므로, 키별로 가장 최신 메시지만 유지됩니다.
저장 공간이 절약되며, 중복 데이터를 처리할 필요가 없으므로 처리 속도가 빠릅니다.
메시지 보존 기간과 관계없이 중복 키의 이전 메시지를 제거합니다.
👎 단점:
로그 클린업 프로세스가 더 복잡하고, 성능에 영향을 줄 수 있습니다.
로그 압축 프로세스는 주기적으로 실행되므로, 공간 절약 효과는 즉시 나타나지 않을 수 있습니다.
🗓 주요 사용 사례:
변경 데이터 캡처(CDC), 이벤트 소싱, 키-값 스토어와 같이 키별로 최신 메시지만 필요한 경우에 적합합니다. 오래된 데이터에 대한 액세스가 필요한 경우에 적합합니다.