카
카카오페이
December 9, 20221회
[if kakao 2022] Batch Performance를 고려한 최선의 Reader
간단 소개
카카오페이의 대량 데이터 처리를 위한 최적의 ItemReader 구현 경험 공유: ZeroOffsetItemReader와 ExposedCursorItemReader를 소개하고 성능을 비교 분석합니다.
AI Summary
- 배치 성능과 Reader의 중요성
- 배치 처리 성능은 ItemReader에 의해 크게 좌우되며, 평균적으로 80% 이상을 결정한다.
- 대량 데이터에서 필요한 데이터만 효율적으로 골라내는 것이 핵심이다.
- Chunk Processing은 대량 데이터 처리를 위한 필수적인 방식이며, Pagination과 Cursor를 통해 구현할 수 있다.
- 기존 ItemReader의 한계와 개선
- MySQL Limit Offset 방식은 페이지가 깊어질수록 성능 저하가 발생한다.
- ZeroOffsetItemReader는 Offset을 0으로 유지하여 성능 저하를 방지하고, QueryDsl을 통해 쿼리 구현을 개선했다.
- JpaCursorItemReader는 OOM을 유발할 수 있어 사용에 주의해야 한다.
- 새로운 CursorItemReader의 개발 및 성능 비교
- ExposedCursorItemReader는 Exposed DSL을 사용하여 쿼리 구현의 직관성을 높이고 실수를 줄인다.
- ZeroOffsetItemReader와 ExposedCursorItemReader는 JpaPagingItemReader보다 빠르고 안정적인 성능을 보인다.
- 대량 데이터 처리 시 ZeroOffsetItemReader와 ExposedCursorItemReader가 적합하다.
Next Feeds
[if kakao 2022] 사례로 보는 모바일 자동화 테스트를 통한 모니터링
카카오페이의 모바일 자동화 테스트 환경 구축 및 모니터링 프로세스, 장애 발생 사례를 통한 효율적인 이슈 파악 및 처리 과정 소개.
자동화 테스트모바일 테스트Device FarmJenkins카카오페이
2022. 12. 9.
카카오페이
섬세한 ISFP의 코드 가독성 개선 경험 / if(kakao)2022
ISFP 개발자의 코드 가독성 개선 경험을 바탕으로, 정확한 단어 선택과 코드 형태 개선을 통해 가독성을 높이는 방법을 제시합니다.
코드 가독성ISFP단어 선택코드 형태유지보수
2022. 12. 9.
카카오엔터테인먼트FE
ㄷㄷㄷ: Domain Driven Design과 적용 사례 공유 / if(kakao)2022
카카오엔터테인먼트의 MSA 전환 사례로, DDD 적용 배경, 핵심 개념, Hexagonal Architecture, 그리고 적용 후 과제와 효과를 분석합니다.
DDDMSAHexagonal ArchitectureBounded-ContextAggregate
2022. 12. 9.
카카오엔터테인먼트FE
Technical Writing: 글로 하는 의사소통 / if(kakao)2022
테크니컬 라이팅의 중요성과 원칙을 소개하고, 효과적인 정보 전달을 위한 글쓰기 방법을 제시합니다.
테크니컬 라이팅글쓰기의사소통정보 전달문서화
2022. 12. 9.
카카오엔터테인먼트FE

무형상품 서비스에 캐시 적용하기
무형상품 서비스에 ElastiCache를 적용하여 캐시 전략을 구현하고 Spring Boot를 활용해 효율적인 캐싱 시스템을 구축하는 과정을 설명합니다.
캐시ElastiCacheRedisSpringBootCacheable
2022. 12. 8.
올리브영
[if kakao 2022] ML 모델 학습 파이프라인 설계 (feat. MLOps 플랫폼)
카카오페이 MLOps 플랫폼 구축 사례를 통해 모델 학습 파이프라인 설계 및 AWS Step Functions, SageMaker Model Registry 활용 방안을 제시합니다.
MLOps모델 학습 파이프라인AWS Step FunctionsSageMaker자동화
2022. 12. 8.
카카오페이