본문으로 이동
Batch Performance 극한으로 끌어올리기: 1억 건 데이터 처리를 위한 노력 / if(kakao)2022
컨퍼런스

Batch Performance 극한으로 끌어올리기: 1억 건 데이터 처리를 위한 노력 / if(kakao)2022

if kakao 카카오 · YouTube

원문 보기

AI 핵심 요약

데이터가 늘면서 배치 처리 시간이 길어지고, 실행 상태와 자원 사용을 파악하기 어려운 문제를 해결하기 위해 카카오페이 정산플랫폼팀은 리드·집계·라이트 방식과 구동 환경을 개선했습니다. 조회에는 OFFSET 대신 PK 기반 제로 오프셋 리더와 JDBC 커서를 적용하고, 쿼리 구현에는 QueryDSL과 Kotlin 기반 Exposed를 활용했습니다. 집계는 Redis에 청크 단위로 요청하고 파이프라인으로 네트워크 왕복을 줄였으며, 쓰기에는 JDBC 배치 인서트를 사용하고 Spring Cloud Data Flow와 Kubernetes로 실행 및 모니터링을 관리했습니다. 발표의 핵심은 대량 배치에서 조회·집계·쓰기 각각의 병목을 측정해 줄이고, 실행 자원과 상태를 함께 관리해야 한다는 점입니다.

  • 페이지네이션에서 OFFSET이 커질수록 조회가 느려지므로, PK 기준으로 다음 구간을 찾는 키셋 방식이나 서버 커서를 고려하세요.
  • JPA 커서 리더는 데이터를 메모리에 모아 OOM을 일으킬 수 있으므로, 대량 처리에서는 JDBC 커서 리더 등 실제 데이터 접근 방식을 확인해야 합니다.
  • 복잡한 조인·GROUP BY 집계는 DB 부하와 튜닝 난도를 높일 수 있으며, Redis 파이프라인으로 네트워크 왕복을 줄여 집계하는 대안이 있습니다.
  • 대량 쓰기에서는 필요한 컬럼만 명시적으로 다루고 JDBC 배치 인서트를 활용해 네트워크 요청 횟수를 줄이세요.
  • Spring Cloud Data Flow와 Kubernetes를 연동하면 배치별 자원 할당, 실행 흐름 관리, 상태 및 이력 모니터링을 체계화할 수 있습니다.

소개

수 천만 건 이상의 대량 배치처리를 하기 위한 최고의 노하우를 전달드리겠습니다. 카카오페이 정산플랫폼팀은 카카오페이의 빠른 성장과 더불어 늘어나는 데이터를 일괄처리하기 위하여 꾸준히 노력 하고 있습니다. 더 많은 데이터를 처리하기 위해 진화하는 서비스와 개발방식을 소개하고자 합니다. #BatchPerformance #SpringBatch #SpringCloudDataFlow #Kubernetes #Redis 카카오페이 정산플랫폼팀 베니입니다. 서버 Performance 개선에 관심이 많습니다. 발표자료 보기 👉https://speakerdeck.com/kakao/ifkakao22-065 if(kakao)2022에 대한 자세한 정보는 👉 https://if.kakao.com if(kakao)2022에 대한 문의는 👉 if@kakaocorp.com #카카오 #이프카카오 #개발자컨퍼런스 #기술 #개발 #ifkakao2022

비슷한 학습 자료

컨퍼런스 if kakao

동시에 몰려오는 카카오페이의 수많은 거래를 빠르고 안전하게 처리하기 위한 우아한 분산락 노하우를 공유합니다. 피할 수 없는 동시성 이슈를 함수형 프로그래밍을 적용한 우아한 분산락으로 해결하는 방법을 소개합니다. #분산락 #AOP #함수형 프로그래밍 카카오페이 해외결제서비스를 개발하는 Snow입니다. 함수형 프로그래밍을 좋아합니다. 발표자료 보기 👉 https://speakerdeck.com/kakao/ifkakao24-86 if(kakaoAI)2024에 대한 자세한 정보는 👉 https://if.kakao.com #카카오 #이프카카오 #개발자컨퍼런스 #AI #기술 #개발 #ifkakaoAI2024

백엔드 프로그래밍 언어

컨퍼런스 if kakao

카카오 내에 수많은 데이터에서 원하는 데이터를 빠르게 찾아주는 '0depth 사내봇 개발기'를 공유합니다. #Data #AI #LLM #RAG 카카오 데이터 조직의 Tory입니다. 실용적이고 사용자 친화적인 AI Application을 만드는 것에 관심이 많습니다. 카카오 내에 다양한 AI 프로덕트를 생산하는 Jennie입니다. 발표자료 보기 👉 https://speakerdeck.com/kakao/ifkakao24-27 if(kakaoAI)2024에 대한 자세한 정보는 👉 https://if.kakao.com #카카오 #이프카카오 #개발자컨퍼런스 #AI #기술 #개발 #ifkakaoAI2024

AI에이전트 개발

컨퍼런스 if kakao

[2023.07.18. 제2회 kakao tech meet 발표] 배치 애플리케이션이 어느 구간에서 쉽게 느려지는지 파악하고, 이를 해결하기 위한 방법에 대해 다룹니다. 특히, IO 작업이 처리 시간에 큰 영향을 주는데, 이를 해결하기 위해 병렬 처리 및 벌크 IO 처리를 활용하여 IO 작업의 효율성을 높이는 성능 최적화 방법에 대해 다루게 됩니다. 배치 애플리케이션 개발자, 대량 처리에 관심있는 분이 듣길 추천합니다. 발표자: @yun.cheese(김남윤) 카카오페이 정산팀 Yun 입니다. Yun Blog를 운영하고 있으며, 서버 개발자로서 좋은 코드 설계와 아키텍처에 관심이 많습니다. #springbatch #대량처리성능최적화 💬 발표자 인터뷰: https://tech.kakao.com/2023/08/01/techmeet-spring-batch/ ✨ 카카오테크 페이스북: https://www.facebook.com/kakaotech ✨ 카카오테크 톡채널: http://pf...

백엔드 데이터베이스

컨퍼런스 if kakao

Preview data / if(kakao)2022

컨퍼런스 if kakao

if(kakao)2022 컨퍼런스에서 data 관련 기술 발표세션을 소개합니다. 02:24 1. Batch Performance 극한으로 끌어올리기: 1억 건 데이터 처리를 위한 노력 by 안성훈(benny.ahn) 카카오페이 정산플랫폼팀 베니입니다. 서버 Performance 개선에 관심이 많습니다. 02:38 2. InnoDBCluster for kakao by 김근표(pio.p) 카카오에서 MySQL Database 를 운영하고 있는 피오입니다. 03:12 3. Kakao Hadoop Plaform (KHP): 카카오 하둡 플랫폼의 아키텍처와 개발/운영에 대한 이야기 by 국성표(elixir.kook) 카카오 내 하둡 클러스터를 효율적으로 운영하기 위해 힘쓰고 있습니다. KHP 프로젝트 중에는 배포판 PL을 맡았으며, 최근에는 Spark, Kafka 관련 업무를 수행하고 있습니다. 03:34 4. 생성부터 활용까지, 게임데이터 Flow 따라가기 by 이학희(kyle.l...

데이터베이스 데브옵스 · 인프라

컨퍼런스 if kakao

10년간 카카오톡 메시지 릴레이를 책임져온 C++ 기반 서버를 JVM 기반 언어(JAVA 및 Kotlin)로 포팅하는 이야기를 합니다. 위 프로젝트를 진행하게 된 계기를 소프트웨어 엔지니어링 측면으로 설명하고, 현재까지 진척 상황에 대한 이야기를 공유합니다. #카카오톡 카카오톡 메시징 시스템을 개발 및 운영하는 시리우스 입니다. 발표자료 보기 👉https://speakerdeck.com/kakao/ifkakao22-28 if(kakao)2022에 대한 자세한 정보는 👉 https://if.kakao.com if(kakao)2022에 대한 문의는 👉 if@kakaocorp.com #카카오 #이프카카오 #개발자컨퍼런스 #기술 #개발 #ifkakao2022

백엔드 프로그래밍 언어

컨퍼런스 if kakao

Preview Backend_1 @if(kakao)2022

컨퍼런스 if kakao

if(kakao)2022 컨퍼런스에서 Backend_1 관련 기술 발표 트랙을 소개합니다. 03:02 1. API 테스트 주도 개발의 시작 by 공진산(ronaldo.c) 카카오 테스트플랫폼셀에서 개발을 하고 있는 호날두입니다. 03:38 2.대량의 광고 데이터 필터 기능 개발기: ES한테 뺨맞고 Citus한테 안긴 썰 by 이동준(genos.lee) 카카오 crux개발2셀에서 서버 개발을 담당하고 있는 제노스라고 합니다. 04:17 3.Docker Swarm 기반 Redis SaaS 플랫폼 구축사례 by 이은미(silvia.lee) 카카오 시스템엔지니어와 레디스 플랫폼 엔지니어를 맡고있는 실비아입니다. 04:48 4. 카카오톡 메시징 시스템 재건축 이야기: C++ 서버를 Java및 Kotlin으로 by 남기영(sirius.nam) 카카오톡 메시징 시스템을 개발 및 운영하는 시리우스 입니다. 05:10 5. 카카오톡 메시징 지표 이상감지 시스템의 개선사례 by 김예솔(so...

백엔드 데이터베이스 소프트웨어 테스트