Stand_Up_Seoul 프로젝트를 진행하며 사용했던 MySQL 기능이다.
- 하루에 한 번 정해진 시간에 실행되도록 만드는 Event 처리가 필요했다.
- wearther 테이블과 population 테이블이 분석용으로 redshift로 이동함에 따라 DB단에서는 1주일치의 데이터만 필요하기 때문에 매일 삭제해 주는 Event를 추가해 주었다.
- 해당 Event Trigger를 사용함으로써 RDS의 과부하를 줄여줄 수 있었다.
weather 테이블 구조
weather - 7일 치 데이터만 남기고 삭제
CREATE EVENT delete_old_weather_data
ON SCHEDULE EVERY 1 DAY
STARTS '2023-06-20 19:00'
DO
DELETE FROM weather WHERE created_date < DATE_SUB(CURDATE(), INTERVAL 7 DAY);
population 테이블 구조
population - 7일 치 데이터만 남기고 삭제
CREATE EVENT delete_old_population_data
ON SCHEDULE EVERY 1 DAY
STARTS '2023-06-20 19:00'
DO
DELETE FROM population WHERE created_date < DATE_SUB(CURDATE(), INTERVAL 7 DAY);
'Back > MySQL' 카테고리의 다른 글
MySQL Trigger (0) | 2023.07.04 |
---|