버
버즈빌
May 23, 20161회
허니스크린 포인트 시스템 마이그레이션을 위한 MySQL 성능 최적화

간단 소개
허니스크린 포인트 시스템 마이그레이션을 위한 MySQL 성능 최적화 과정과 팁을 공유합니다. 대량 업데이트, 인덱스 활용, 쿼리 최적화, 데이터 백업 전략을 다룹니다.
AI Summary
- 포인트 시스템 마이그레이션 배경
- 기존 포인트 시스템의 문제점: 포인트 타입별 테이블 관리의 어려움, 유저 히스토리 조회 성능 저하
- DynamoDB로의 이전과 함께 포인트 히스토리 테이블을 하나로 통합
- 특정 시점의 유저 포인트 확인 기능 개선
- MySQL 성능 최적화 과정
- 기존 히스토리 데이터 마이그레이션을 위한 RDS 스냅샷 활용 및 통합 테이블 생성
- 유저별 시간 순 정렬을 위한 복합키 인덱스 생성 (데이터 이관 후 인덱스 생성으로 성능 최적화)
update쿼리 성능 문제 해결:insert방식으로 변경, MySQL 파라미터 조정 (innodb_flush_log_at_trx_commit, sync_binlog 등), 트랜잭션 격리 레벨 조정- 커버링 인덱스 적용으로 디스크 I/O 병목 해결 및 쿼리 성능 대폭 향상
- 데이터 백업 및 S3 이전
- AWS Data Pipeline의 제약으로 인해
mysqldump대신 mysql 커맨드라인 유틸리티 활용 - 쉘 스크립트를 이용해 백업 데이터를 파이프라인으로 S3에 직접 업로드
- AWS Data Pipeline의 제약으로 인해
Next Feeds
서버 비용을 70%나 줄인 온디맨드 리사이징 이야기
비트윈은 온디맨드 리사이징 아키텍처 변경 및 WebP, Skia 적용으로 서버 비용을 70% 절감했습니다.
온디맨드 리사이징SkiaWebPAWS비용 절감
2016. 5. 16.
VCNC

AWS DynamoDB at Buzzvil
버즈빌은 허니스크린 포인트 시스템을 위해 DynamoDB를 도입하고 테이블 구조 개선 및 데이터 일관성 문제를 해결했습니다.
DynamoDB포인트 시스템스케일링Conditional write데이터 일관성
2016. 3. 4.
버즈빌

AWS DynamoDB at Buzzvil
Buzzvil Honeyscreen 포인트 시스템의 DynamoDB 전환 및 테이블 설계, 문제 해결 과정 및 GSI 활용을 설명합니다.
DynamoDBHoneyscreenNoSQLAWSGSI
2016. 3. 4.
버즈빌

Weighted Random Shuffling Algorithms
Buzzvil은 가중치 랜덤 셔플링 알고리즘(WRS)을 사용하여 광고 및 콘텐츠 제공을 최적화하고, 다양한 구현 방법과 최적화 팁을 제시합니다.
WRSCTRBinary Search TreeBuzzAd최적화
2016. 2. 11.
버즈빌

Weighted Random Shuffling Algorithms
Weighted Random Shuffling 알고리즘의 개념, 구현 방법, 최적화 전략을 설명하고, 실제 프로덕션 환경에서의 활용 팁을 제공합니다.
Weighted Random ShufflingWRS가중치이진 탐색 트리최적화
2016. 2. 10.
버즈빌
비트윈의 멀티티어 아키텍처를 위한 프레젠터 이야기
비트윈은 ELB의 한계를 극복하고 채팅 시스템을 개선하기 위해 프레젠터를 도입, 성능 최적화 및 안정성을 확보했다.
프레젠터ELBMultiplexing로드밸런싱AutoScaling
2015. 11. 30.
VCNC