Moait
홈인기 피드모든 블로그모든 태그
홈인기 피드모든 블로그모든 태그
Trino로 타임아웃 개선하기 섬네일

Trino로 타임아웃 개선하기

NHN Cloud faviconNHN Cloud·Data·
MySQLTrinoDataQueryParquetAvro
2025년 03월 04일2

AI 요약

이 글은 AI가 요약했어요. 정확한 내용은 꼭 원문을 확인해 주세요!

핵심 요약

NHN Cloud의 NHN AppGuard 로그를 Trino 기반 DataQuery로 도입하고 OBS의 Parquet 저장을 활용해 대량 로그를 효율 분석하게 되었으며, 30일치 조회를 30분에서 7초로 단축하고 내부 집계 시간을 38m36s에서 22m16s로 개선했으며 저장 기간도 60일에서 1년으로 확장했습니다.

구현 방법

  • 데이터 소스 및 포맷: OBS를 데이터 소스로 사용하고 Parquet 파일 포맷으로 저장
  • 기술 스택: Trino(데이터쿼리) 기반의 Federation 가능한 쿼리 엔진 도입
  • 구성 선택: 3가지 구성안 중 3안인 “중간 DB(MySQL) 사용”을 채택해 실시간 조회와 파일 기반 저장의 균형 도모
  • Parquet 생성 방식: Avro 스키마를 활용한 Parquet 변환 및 저장; 필요 시 CTAS 방식도 검토하되 사내 데이터 소스 미지원으로 적용 어려움
  • tier down 전략: hot tier를 MySQL, cold tier를 Parquet으로 정의하고, daily 배치에서 MySQL 데이터를 Parquet로 변환해 OBS에 적재하는 방식으로 운영
  • 데이터 흐름: Kafka → log-batch → MySQL 저장 → daily-batch로 Parquet 변환 및 OBS 저장
  • 성능/운영 고려사항: Federation으로 OBS의 데이터와 MySQL 데이터를 하나의 쿼리로 조인 가능, 저장 기간은 확장 가능하지만 비용 증가(약 100만 원/월) 발생

주요 결과

  • 30일치 조회 속도 개선: 데이터쿼리(DataQuery)로 36.81초 수준, MySQL은 조회 불가(30분 이상)였으나 전체적으로 대폭 개선
  • 공용 API 조회 속도 개선: NHN AppGuard 공용 API에서 30분 소요에서 DataQuery 이용 시 7초 이내로 감소
  • 내부 집계 시간 개선: 38m36s에서 22m16s로 약 43% 개선
  • 저장 기간 확장: 데이터 저장 기간을 60일에서 1년으로 확장하여 장기 분석 가능성 증가
  • 비용 및 운영: DataQuery와 OBS 비용 추가로 약 100만 원/월의 운영 비용 증가; tier down 실패 시 영향 및 모니터링 증가 등의 운영 부담 존재

연관 피드

%가 높을수록 이 글과 비슷할 가능성이 높아요!
No Image
76%

오픈소스 Trino를 활용한 전사 데이터 분석 시스템 구축기

SK플래닛 faviconSK플래닛·2024년 09월 23일
No Image
71%

Apache Spark에서 컬럼 기반 저장 포맷 Parquet(파케이) 제대로 활용하기

타다 favicon타다·2018년 05월 24일
멀티 테넌트 데이터를 격리하고 더 안전하게 만드는 방법 섬네일
71%

멀티 테넌트 데이터를 격리하고 더 안전하게 만드는 방법

NHN Cloud faviconNHN Cloud·2024년 10월 21일