AWS Redshift의 INTERVAL 데이터 타입 및 Continue Handler 지원
최근 AWS는 Amazon Redshift에서 INTERVAL 데이터 타입과 저장 프로시저 내 Continue Handler 구문의 지원을 공식 발표하였습니다. 이번 업데이트는 데이터 웨어하우스 환경에서 자동화와 활용 면에서 큰 변화를 가져올 수 있으며, 개발자와 DBA들에게 더욱 유연하고 직관적인 데이터 처리 및 예외 처리 방식을 제공합니다.
INTERVAL 데이터 타입이란?
기존의 Amazon Redshift 사용자들은 특정 시간 경과 데이터를 표현하기 위해 두 개의 TIMESTAMP 컬럼 간 차이를 계산하거나 복잡한 로직을 적용해야 했습니다. 그러나 INTERVAL 데이터 타입이 도입되면서 ‘12시간’, ‘6주’, ‘1개월’과 같은 시간 간격을 별도로 저장하고 활용할 수 있게 되었습니다. 이는 시간 기반 분석, 스케줄링, 리포팅 등에 큰 장점을 제공하며 자동화된 쿼리 구성에 도움이 됩니다.
예를 들어, 과거 1개월 간의 사용자 로그 데이터를 조회하거나 특정 이벤트 이후 3일 이상 경과한 데이터 필터링 등에 INTERVAL 타입을 활용하면 코드가 단순해지면서도 가독성이 향상됩니다. 무엇보다도, 쿼리 실행 시에 시간 간격을 계산하는 오버헤드를 줄일 수 있어 성능에도 긍정적인 효과가 있습니다.
Continue Handler로 저장 프로시저의 예외 처리 자동화
이전까지는 Redshift의 저장 프로시저 내에서 오류가 발생하면 실행이 즉시 중단되고 호출자에게 예외가 전달되었습니다. 이는 복잡한 트랜잭션 처리 로직에서 예외 처리 유연성을 저해하는 요인이었으나, 이제 Continue Handler 구문을 통해 개발자가 정의한 사용자 로직 내에서 오류가 발생해도 처리를 이어나갈 수 있게 되었습니다.
Continue Handler는 TRY-CATCH 구문과 유사하게 작동하며, 다음과 같은 방식으로 구현됩니다.
- 오류 발생 시 해당 오류에 따라 정의된 핸들러 블록이 별도의 트랜잭션으로 호출
- 이후에도 저장 프로시저의 나머지 로직 실행 가능
- 로깅, 재시도, 보정 로직 삽입 가능
이 기능은 특히 비즈니스 로직이 복잡하거나 외부 시스템 연계가 있는 저장 프로시저 설계 시 매우 유용하게 활용될 수 있습니다. 실패 내역을 로그에 기록하거나 특정 상황에서 대체 데이터를 활용하여 오류를 복구하고 처리를 이어나가는 방식의 자동화된 예외 처리 로직이 현실화 됩니다.
활용 및 배포 가이드
이번 업데이트는 모든 AWS 리전에서 사용이 가능하며, AWS GovCloud (US) 리전 또한 포함됩니다. 배포를 위해서는 다음 가이드를 활용해 보세요.
- 기존 저장 프로시저 내에서 TIME 또는 TIMESTAMP 차이 연산이 많은 부분을 INTERVAL 타입을 활용한 방식으로 점진적으로 리팩토링
- 오류이력 있는 저장 프로시저에 대해 Continue Handler를 활용한 예외 관리 로직을 도입
- 테스트 환경에서 예외 시나리오와 런타임 경과 시간 등을 측정하여 개선된 자동화 성능과 안정성을 확인
비교적 작은 변화로도 Redshift 기반 애플리케이션의 신뢰성과 성능을 향상시킬 수 있으며, 이는 비용 효율적 데이터 활용 및 전사적 자동화 수준 향상으로 이어질 수 있습니다.
결론
Amazon Redshift에서 INTERVAL 데이터 타입과 Continue Handler 지원이 추가된 것은 단순한 기능 확장을 넘어, 실제 업무 환경에서 SQL 기반 데이터 처리와 저장 프로시저 활용도 전반을 개선해줄 변곡점이 될 수 있습니다. 효율적인 시간 데이터 관리와 유연한 예외 처리를 통해 자동화된 데이터 워크플로우를 구성하고 싶은 기업이라면 지금 바로 적용해 보시길 추천드립니다.
AI, Cloud 관련한 문의는 아래 연락처로 연락주세요!
(주)에이클라우드
이메일 : acloud@a-cloud.co.kr
회사 번호 : 02-538-3988
회사 홈페이지 : https://www.a-cloud.co.kr/
문의하기