S3 Inventory Configuration

더쿠·2024년 11월 18일
0

참고

S3 Inventory를 사용한 데이터 카탈로그화 및 분석 - Amazon Simple Storage Service

설명

  • S3 Inventory는 S3 Bucket에 저장된 객체 정보(예: 크기, 스토리지 클래스, 암호화 상태 등)를 보고서 형태(예: CSV, ORC, Parquet)로 제공하는 기능입니다. 이를 통해 S3 Bucket에 저장된 객체들의 현황을 식별할 수 있습니다.

    • 보고서를 통해 객체의 업로드 날짜, 수정 시간을 기반으로 오래된 객체를 제거하거나, 스토리지 클래스를 변경하도록 정책을 수립할 수 있습니다.
    • 보고서를 확인하여, 저장된 객체들의 암호화 상태를 확인하여, 암호화가 필요한 객체들을 식별할 수 있습니다.
  • ListObjectsV2 API를 사용하여 객체를 조회하는 방법은 객체의 수가 적은 경우, 효과적일 수 있습니다. 하지만 해당 방법은 기본적으로 동기식이고, 한 번의 요청에 1,000개의 객체를 조회할 수 있기 때문에 조회해야하는 객체의 수가 많아질 수록, 비효율적인 방법입니다.
    S3 Inventory를 사용하면 비동기식으로, 대량의 객체를 효과적으로 조회할 수 있습니다.

  • S3 Inventory 설정 시 보고서를 매주 또는 매일 생성되도록 설정할 수 있습니다.

    • UTC 시간 기반으로 보고서가 생성됩니다.
  • S3 Inventory를 설정 시, 최초로 생성되는 보고서는 최대 48시간 걸릴 수 있습니다.

    • S3 Inventory 설정마다 적용되는 사항으로, 새로운 S3 Inventory를 생성 시 해당 S3 Inventory 설정에 대한 Report는 최대 48시간이상 소요될 수 있습니다.
    • 초기 Report는, 리포트 생성 주기 설정과 관계 없이 활성화 순간 부터 48시간 이내에 Report를 생성합니다.
  • S3 InventoryGZIP으로 압축된 CSV, ZLIB으로 압축된 Apach ORC, Snappy로 압축된 Apach Parquet 형식 중 하나로 보고서를 지정한 버킷에 저장할 수 있습니다.
    • 보고서는 동일한 리전의 Bucket에만 저장할 수 있습니다.
    • 다른 AWS 계정의 Bucket에 보고서를 저정할 수 있습니다.



Bucket에 설정된 Inventory 설정 목록 확인 명령어

aws s3api list-bucket-inventory-configurations \
--profile default \
--bucket <Bucket Name>



Inventory Configuration 설정 명령어

aws s3api put-bucket-inventory-configuration \
--profile default \
--bucket <Source Bucket Name> \
--id <Inventory Configuration Name> \
--inventory-configuration '{
    "Id": <Inventory Configuration Name>,
    "Destination": {
        "S3BucketDestination": {
            "AccountId": <Destination Bucket Accout ID>,
            "Bucket": <Destination Bucket ARN>,
            "Format": <Inventort Report FIle Format (CSV | ORC | Parquet),
            "Prefix": <Destionation Bucket Sub Path>,
        }
    },
    "IsEnabled": true,
    "Filter": {
        "Prefix":<Source Bucket Sub Path >
    },
    "IncludedObjectVersions": "Current",
    "Schedule": {
        "Frequency": "Weekly"
    },
    "OptionalFields": [ 
        "Size",
        <Additional Report Parameter>
    ]
}'
profile
궁금한게 많은 사람

0개의 댓글