[Amazon S3 Security] S3 Object Lambda

hi·2024년 8월 27일
0

AWS-SAA

목록 보기
84/91
post-custom-banner

Amazon S3(Simplified Storage Service)는 대규모 데이터를 안전하게 저장하고 관리하는 데에 널리 사용되는 서비스입니다. 하지만 단순히 데이터를 저장하는 것만으로는 충분하지 않은 경우가 많습니다. 특히 특정 사용자나 애플리케이션의 요구에 맞게 데이터를 조정해야 하는 경우가 있죠. 예를 들어, 데이터 형식을 변경하거나, 개인식별정보(PII)를 제거하거나, 이미지를 처리해야 할 때입니다.

이러한 요구를 해결하기 위해 AWS는 S3 Object Lambda를 도입했습니다. S3 Object Lambda는 Lambda 함수를 사용해 S3 객체를 실시간으로 수정할 수 있는 강력한 도구입니다. 이 글에서는 S3 Object Lambda가 어떻게 작동하며, 다양한 활용 사례에서 어떻게 사용될 수 있는지 살펴보겠습니다.


S3 Object Lambda와 액세스 포인트의 작동 원리

기본적으로 S3 Object Lambda는 S3 객체에 액세스할 때마다 Lambda 함수를 호출하여 객체를 실시간으로 수정합니다. 이 과정에서 S3 액세스 포인트를 사용해 특정 애플리케이션이 수정된 데이터를 요청할 수 있게 설정할 수 있습니다.

예시1: 분석 애플리케이션을 위한 데이터 처리

여러분은 전자상거래 애플리케이션을 운영 중이며, 이 애플리케이션은 S3 버킷에 고객 데이터를 저장하고 있습니다. 이 데이터를 분석하기 위해 분석 애플리케이션을 사용한다고 해보죠. 하지만 분석기에서는 개인식별정보(PII)가 제거된 데이터만 필요합니다. 이를 위해 S3 버킷을 복제해 데이터를 가공할 수도 있겠지만, 이는 비용과 관리의 부담을 늘리게 됩니다.

대신, S3 Object Lambda를 사용하면 간단하게 해결할 수 있습니다. S3 버킷을 복제하지 않고, S3 액세스 포인트를 통해 Lambda 함수를 연결할 수 있습니다. 이 Lambda 함수는 S3에서 객체를 가져온 후, PII를 제거하는 코드를 실행합니다. 결과적으로 분석 애플리케이션은 동일한 S3 버킷에서 데이터를 가져오되, PII가 제거된 객체를 받게 되는 것입니다.

예시2: 마케팅 애플리케이션

다른 예로, 마케팅 애플리케이션이 데이터를 보강하여 사용해야 할 경우를 생각해봅시다. 이 애플리케이션은 고객 충성도 데이터베이스를 활용하여 데이터를 보강해야 할 수도 있습니다. 이 경우에도 S3 버킷을 복제하지 않고, 별도의 S3 Object Lambda 액세스 포인트를 생성해 Lambda 함수를 사용해 데이터를 보강할 수 있습니다. 마케팅 애플리케이션은 이 액세스 포인트를 통해 보강된 데이터를 바로 사용할 수 있게 됩니다.


S3 Object Lambda의 주요 활용 사례

S3 Object Lambda는 다양한 활용 사례에서 강력한 이점을 제공합니다. 여기에는 다음과 같은 사례가 포함됩니다.

  1. PII 데이터 제거: 분석기나 비프로덕션 환경을 위해 PII 데이터를 실시간으로 제거하여 개인정보 보호를 강화할 수 있습니다.
  2. 데이터 형식 변환: 데이터를 XML에서 JSON으로 변환하는 것과 같은 형식 변환을 수행할 수 있습니다.
  3. 이미지 처리: 이미지의 크기를 조정하거나 워터마크를 추가하는 등의 실시간 이미지 처리가 가능합니다.

중요한 점은 이러한 변환 작업이 S3 버킷의 원본 객체를 수정하는 것이 아니라, 객체를 요청하는 사용자에게만 적용된다는 것입니다. 즉, S3 Object Lambda를 통해 원본 데이터는 유지되며, 특정 애플리케이션에 맞춤화된 데이터만 제공되는 것이죠.


마치며

Amazon S3 Object Lambda는 단순히 데이터를 저장하는 것 이상의 기능을 제공합니다. 액세스 포인트와 Lambda 함수를 조합하여 데이터를 실시간으로 처리하고, 다양한 애플리케이션 요구에 맞춘 데이터를 제공할 수 있습니다. 이를 통해 데이터 복제와 같은 비효율적인 방법을 사용하지 않고도 맞춤형 데이터 처리가 가능해집니다.

S3 Object Lambda는 특히 데이터 분석, 비프로덕션 환경의 데이터 보호, 그리고 이미지 처리와 같은 다양한 시나리오에서 큰 가치를 발휘할 수 있습니다. 이를 통해 클라우드 환경에서 데이터 처리를 더욱 유연하고 효율적으로 관리할 수 있습니다.

post-custom-banner

0개의 댓글