AWS S3 Lifecycle이란?

2026. 6. 25. 08:39·Data Engineering/AWS

 스토리지 클래스와 객체 자동 관리 이해하기

S3는 AWS에서 가장 많이 사용되는 객체(Object) 스토리지 서비스입니다. 단순히 파일을 저장하는 것뿐만 아니라 저장된 데이터를 자동으로 관리하여 비용을 절감할 수 있는 Lifecycle(Life Cycle) 기능을 제공합니다.

이번 글에서는 S3 Lifecycle의 개념과 스토리지 클래스, 객체 만료, 버전 관리까지 함께 살펴보겠습니다.


1. S3 Lifecycle이란?

https://jayendrapatil.com/aws-s3-object-lifecycle-management

S3 Lifecycle은 객체가 생성된 후 일정 시간이 지나면 자동으로 스토리지 클래스를 변경하거나 삭제하도록 설정하는 기능입니다.

예를 들어 최근 한 달 동안은 자주 사용하는 로그 파일을 Standard에 저장하고, 이후에는 Standard-IA, 장기 보관 시에는 Glacier로 자동 이동하도록 설정할 수 있습니다.

이 기능을 활용하면 별도의 스크립트를 작성하지 않아도 AWS가 자동으로 데이터를 관리해 줍니다.

예시

  • 생성 후 30일 → Standard-IA
  • 생성 후 180일 → Glacier Flexible Retrieval
  • 생성 후 700일 → 자동 삭제


2. 스토리지 클래스(Storage Class)란?

https://aws.amazon.com/ko/blogs/architecture/lets-architect-modern-data-architectures-2

스토리지 클래스는 객체를 어떤 방식으로 저장할 것인지를 의미합니다.

객체의 내용은 그대로 유지되지만 저장 비용, 조회 비용, 접근 속도 등이 달라집니다.


3. S3 클래스 종류

클래스 특징 접근 속도 비용  기간
(보관/사용 패턴)
대표 활용 사례
Standard 가장 기본적인 스토리지 클래스로 자주 사용하는 데이터를
저장
즉시 접근 저장 비용
높음
단기 ~ 중기
(자주 접근)
웹 서비스 이미지, 사용자 업로드 파일, 최근 로그, 운영 데이터
Standard-IA 자주 조회하지 않지만 필요 시
즉시 접근해야 하는 데이터
저장
즉시 접근 저장 비용
저렴, 조회 시 비용 발생
중기 ~ 장기
(가끔 접근)
지난달 Airflow 로그, Kafka 로그, 프로젝트 백업, 오래된 파일
Intelligent-
Tiering
객체의 접근 패턴을 AWS가 자동으로 분석하여 적절한
계층으로 이동
즉시 접근 접근 빈도에 따라 자동
최적화
단기 ~ 장기
(접근 패턴 예측 어려움)
프로젝트 산출물, 분석 데이터, 연구 데이터, 접근 빈도를 예측하기 어려운 파일
Glacier
Flexible
Retrieval
장기 보관을 위한
스토리지 클래스
복원 후 접근 (수분~수시간) 매우 저렴 장기 (드물게 접근) 운영 로그, 감사(Audit) 로그, 장기 백업, 이전 프로젝트 데이터
Glacier Deep Archive 가장 저렴한 장기 보관용
스토리지 클래스
복원 후 접근 (수시간~수십 시간) 가장 저렴 초장기 (거의 접근하지 않음) 법적 보관 자료, 의료 기록, 회계 자료, 장기 백업
S3 Express One Zone 하나의 AZ에 저장하여 가장
낮은 지연 시간과 높은
처리량 제공
매우 빠름 워크로드에 따라 상이 단기 (초고속 처리, 실시간 워크로드) AI 학습 데이터, 실시간 데이터 분석, Spark 기반 빅데이터 처리, 대규모 영상 처리

4. 객체 현재 버전과 이전 버전이란?

S3 Versioning을 활성화하면 객체를 수정하거나 덮어써도 이전 버전이 삭제되지 않습니다.

예를 들어 report.pdf를 수정하면

  • v2 : 현재 버전
  • v1 : 이전 버전

으로 관리됩니다.

Lifecycle에서는 현재 버전과 이전 버전에 대해 각각 다른 정책을 설정할 수 있습니다.


5. 객체의 현재 버전 만료

현재 버전 만료는 현재 사용 중인 객체를 일정 기간이 지나면 자동으로 삭제하는 기능입니다.

700일 후 현재 버전 만료 로 설정하면 생성 후 700일이 지난 객체는 자동으로 삭제됩니다.

Versioning이 활성화된 경우에는 실제 삭제 대신 Delete Marker가 생성됩니다.


6. 객체의 이전 버전 영구 삭제

더 이상 필요하지 않은 이전 버전은 일정 기간 후 자동으로 삭제할 수 있습니다.

700일 후 이전 버전 삭제로 설정하면 이전 버전이 된 후 700일이 지나면 자동으로 영구 삭제됩니다.

이를 통해 불필요한 저장 공간 사용을 줄일 수 있습니다.


7. Lifecycle 정책 예시

7-1) 현재 버전(Current Version) 전환

현재 사용 중인 객체를 생성 후 경과 기간에 따라 자동으로 다른 스토리지 클래스로 이동하도록 설정한 화면입니다.

기간 설정 객체 생성 후이동되는 스토리지 클래스
목적
30일 Standard-IA 자주 사용하지 않는 데이터의 저장 비용 절감
60일 Intelligent-Tiering 접근 패턴을 AWS가 자동 분석하여 최적의 계층으로 관리
90일 Glacier Instant Retrieval 거의 조회하지 않지만 즉시 접근이 필요한 데이터 보관
180일 Glacier Flexible Retrieval 장기 보관을 위한 저비용 스토리지로 이동
365일 Glacier Deep Archive 거의 조회하지 않는 데이터를 가장 저렴한 비용으로 장기 보관

즉, 객체는 생성된 이후 시간이 지날수록 비용이 저렴한 스토리지 클래스로 자동 이동하며, 운영자는 별도의 작업 없이 스토리지 비용을 최적화할 수 있습니다.

7-2) 이전 버전(Noncurrent Version) 전환

'

현재 설정에서는 객체가 이전 버전으로 변경된 후 90일이 지나면 Glacier Flexible Retrieval로 자동 이동하도록 구성되어 있습니다.

 

예를 들어 report.pdf를 수정하면 기존 파일은 이전 버전으로 남게 되며, 90일이 지나면 Glacier Flexible Retrieval로 이동하여 저장 비용을 절감합니다.

 

이 기능은 이전 버전을 일정 기간 보관해야 하지만 자주 조회하지 않는 환경에서 효과적으로 사용할 수 있습니다.


8. 마치며

S3 Lifecycle은 단순히 오래된 파일을 삭제하는 기능이 아니라 데이터의 생명주기를 자동으로 관리하는 기능입니다.

 

데이터의 사용 빈도에 따라 적절한 스토리지 클래스로 이동시키고, 일정 기간이 지나면 자동 삭제하도록 설정하면 운영자의 관리 부담을 줄이는 동시에 스토리지 비용도 절감할 수 있습니다.

 

실무에서는 로그 파일, 백업 데이터, 원본 데이터와 같이 시간이 지날수록 조회 빈도가 낮아지는 데이터를 대상으로 Lifecycle 정책을 적용하는 경우가 많습니다. S3를 운영한다면 Lifecycle 기능을 함께 활용하여 효율적인 데이터 관리 환경을 구성해 보는 것을 추천합니다.

'Data Engineering > AWS' 카테고리의 다른 글

AWS EFS란?  (0) 2026.06.26
AWS EBS란?  (0) 2026.06.26
AWS S3 보안 정리 - SSE, CSE, SSL/TLS 이해하기  (0) 2026.06.25
AWS Glue란?  (0) 2026.06.23
Data Mesh란?  (0) 2026.06.23
'Data Engineering/AWS' 카테고리의 다른 글
  • AWS EBS란?
  • AWS S3 보안 정리 - SSE, CSE, SSL/TLS 이해하기
  • AWS Glue란?
  • Data Mesh란?
jjaehyeok
jjaehyeok
jjaehyeok 님의 블로그 입니다.
  • jjaehyeok
    jjaehyeok 님의 블로그
    jjaehyeok
  • 전체
    오늘
    어제
    • 분류 전체보기 (108) N
      • Navisafe (15)
        • Infrastructure (13)
        • Data Pipeline (0)
        • Trouble shooting (2)
      • Data Engineering (56) N
        • Airflow (11)
        • Kafka (3)
        • Spark (0)
        • ELK (2)
        • Kubernetes (7)
        • AWS (33) N
        • Flink (0)
      • CodingTest (31)
        • 문제 풀이(Lv1~Lv2) (21)
        • 문제 풀이(Lv3) (10)
        • SQL (0)
      • 알고리즘 정리 (3)
        • 자료구조 (스택, 큐, 해시) (3)
        • 정렬 & 그리디 (0)
        • DFS & BFS (0)
        • 이분탐색 (0)
        • DP (0)
      • 자격증 (1)
        • CKAD (1)
        • DEA-C01 (0)
  • 블로그 메뉴

    • 홈
    • 태그
    • 방명록
  • 링크

  • 공지사항

  • 인기 글

  • 태그

    ECR
    Airflow
    RDS
    k8s
    Kafka
    Redshift
    S3
    DynamoDB
    DEA-C01
    eks
    trouble shooting
    datatransfer
    batch
    CKAD
    Glue
    documentdb
    EC2
    AWS
    elk
    datasync
  • 최근 댓글

  • 최근 글

  • hELLO· Designed By정상우.v4.10.6
jjaehyeok
AWS S3 Lifecycle이란?
상단으로

티스토리툴바