Amazon S3 객체 Lambda

자체 코드를 S3 GET, HEAD, LIST 요청에 추가하여 애플리케이션으로 데이터가 반환될 때 데이터를 수정 및 처리할 수 있습니다.

개요

S3 Object Lambda를 사용하면 자체 코드를 S3 GET, HEAD, LIST 요청에 추가하여 애플리케이션으로 데이터가 반환될 때 데이터를 수정 및 처리할 수 있습니다. 사용자 지정 코드를 사용하여 행을 필터링하고 동적으로 이미지 크기를 조정하며 기밀 데이터를 교정하는 등 S3 GET 요청에서 반환한 데이터를 수정할 수 있습니다. 또한 S3 객체 Lambda를 사용해 S3 LIST 요청 출력을 수정하여 버킷에 저장된 객체를 볼 수 있는 사용자 지정 보기를 생성하거나, S3 HEAD 요청 출력을 수정하여 객체 이름이나 크기 같은 객체 메타데이터를 변경할 수 있습니다. AWS Lambda 함수에서 지원하는 이 기능을 사용하면 코드는 AWS의 완전관리형 인프라에서 실행되므로 데이터의 파생 사본을 생성 및 저장하거나 고가의 프록시를 실행하지 않아도 되며, 애플리케이션에 추가 요금이 발생하지 않습니다.

S3 객체 Lambda는 AWS Lambda 함수를 사용하여 표준 S3 GET, HEAD, LIST 요청의 출력을 자동으로 처리합니다. AWS 관리 콘솔에서 몇 번의 클릭만으로 Lambda 함수를 구성하고 S3 객체 Lambda 액세스 포인트에 연결할 수 있습니다. 이후로는 S3에서 Lambda 함수를 자동으로 호출하여 S3 객체 Lambda 액세스 포인트를 통해 검색된 데이터를 처리하고 애플리케이션에 변환된 결과를 다시 반환할 수 있습니다. 자체 사용자 지정 Lambda 함수를 작성 및 실행하여 특정 사용 사례에 맞게 S3 객체 Lambda의 데이터 변환을 조정할 수 있습니다.

이점

S3 객체 Lambda는 애플리케이션의 특정 요구 사항에 따라 S3 GET, HEAD, LIST 요청에서 직접 Lambda 함수를 호출하고 데이터를 처리하는 유연성을 제공합니다. S3 객체 Lambda는 S3 및 AWS Lambda의 완전관리형 인프라와 모든 해당 기능을 사용합니다. 기존 또는 새로운 AWS Lambda 함수를 사용하여 특정 애플리케이션에서 필터링, 마스킹, 교정, 압축, 형식 변경, 객체 수정 등의 방법으로 데이터를 처리할 수 있습니다.

AWS Lambda 함수에서 지원하는 이 기능을 사용하면 코드는 AWS의 완전관리형 인프라에서 실행되므로 데이터의 파생 사본을 생성 및 저장하거나 고가의 프록시를 실행하지 않아도 되며, 애플리케이션에 추가 요금이 발생하지 않습니다. S3 GET, HEAD, LIST 요청에서 S3 객체 Lambda 액세스 포인트를 사용하도록 애플리케이션을 업데이트하여 객체를 처리하는 AWS Lambda 함수를 실행할 수 있습니다. 그러면 S3 객체 Lambda Access Point에서 Lambda 함수가 호출되고 처리된 객체가 요청 클라이언트에 전달됩니다.

S3 객체 Lambda를 사용하면 복잡한 소프트웨어 및 인프라를 사용하거나 데이터의 파생 복사본을 생성하지 않고도 S3 데이터를 다양한 애플리케이션에 맞게 손쉽게 변환할 수 있습니다. S3에서 검색된 데이터를 처리한 다음 이를 애플리케이션에 반환하는 자체 코드를 추가할 수 있습니다. S3 객체 Lambda는 기존 애플리케이션에서 작동하므로 코드를 변경할 필요가 없습니다. 표준 S3 GET, HEAD, LIST 요청을 사용하여 다양한 애플리케이션에 적합한 데이터의 여러 보기를 손쉽게 제공할 수 있습니다.

S3 Object Lambda는 어떻게 작동합니까?

S3 객체 Lambda의 작동 원리

S3 객체 Lambda는 추가 인프라(예: 프록시 레이어)를 구축해서 운영하거나, 데이터에서 파생된 여러 사본을 만들어서 관리하지 않고도 애플리케이션의 고유한 데이터 형식 요구 사항을 손쉽게 충족할 수 있습니다. S3 객체 Lambda는 AWS Lambda 함수를 사용하여 표준 S3 GET, HEAD, LIST 요청의 출력을 자동으로 처리합니다. AWS Lambda는 기본 컴퓨팅 리소스를 관리하지 않고도 고객이 정의한 코드를 실행하는 서버리스 컴퓨팅 서비스입니다. 

AWS 관리 콘솔에서 몇 번의 클릭만으로 Lambda 함수를 구성하고 S3 객체 Lambda 액세스 포인트에 연결할 수 있습니다. 이제 S3 객체 Lambda 액세스 포인트를 통해 생성된 표준 S3 GET, HEAD, LIST 요청은 지정된 Lambda 함수를 호출합니다. 이후로는 S3에서 Lambda 함수를 자동으로 호출하여 S3 객체 Lambda 액세스 포인트를 통해 검색된 데이터를 처리하고 애플리케이션에 변환된 결과를 다시 반환할 수 있습니다. 자체 사용자 지정 Lambda 함수를 작성 및 실행하여 특정 사용 사례에 맞게 S3 객체 Lambda의 데이터 변환을 조정할 수 있습니다. 자세한 내용은 S3 객체 Lambda 사용 설명서를 참조하세요.

S3 객체 Lambda 사용 사례: 민감한 데이터 교정

S3 객체 Lambda의 작동 방식

S3 객체 Lambda를 사용하면 기존 객체를 변경하거나 데이터에서 파생된 여러 사본을 만들어서 관리하지 않고도 특정 애플리케이션의 S3 객체에서 민감한 정보를 교정할 수 있습니다. Lambda 함수는 표준 S3 GET 요청에서 객체를 가져오고, 민감한 정보를 삭제하도록 데이터를 처리하고, 교정된 객체를 애플리케이션에 반환합니다. 다른 사용 사례에 대한 자세한 내용은 S3 객체 Lambda 사용 설명서를 참조하세요.

고객

  • Pixieset

    Pixieset은 현대 사진 작가를 위한 올인원 플랫폼으로, 사진 클라이언트 갤러리, 웹 사이트, 온라인 스토어 및 스튜디오 관리 소프트웨어 도구를 제공합니다.

    Amazon S3 Object Lambda를 사용하여 이미지를 즉시 변환하는 Pixieset

    Pixieset의 사명은 전 세계 사진 작가와 크리에이터의 비즈니스 운영과 성장을 지원하는 것입니다. 고객은 사진을 업로드하고 스마트폰, 태블릿 또는 데스크톱과 같은 다양한 시청 디바이스에서 클라이언트와 공유합니다. 사진 배포를 최적화하기 위해 현재 AWS Lambda를 사용하여 Amazon S3에 이미지를 업로드한 직후 다양한 해상도의 복사본을 생성하고 있습니다. Amazon S3 객체 Lambda가 Amazon CloudFront와 통합되어 매우 기쁩니다. Amazon CloudFront에서 이미지에 액세스할 때 즉시 변환하고 워터마크를 적용할 수 있기 때문입니다. 더 이상 동일한 이미지의 복사본을 여러 개 저장할 필요 없이 글로벌 캐싱의 이점을 활용할 수 있습니다.

    Sam Lin, Pixieset Head of Engineering
  • Audible

    Audible은 프리미엄 오디오 스토리텔링의 선도적인 제작자이자 제공업체로서 일상을 개선하고 풍요롭게 하는 새로운 방법을 제공합니다. Audible 콘텐츠에는 79만 개 이상의 오디오북, 팟캐스트 및 Audible Original이 포함됩니다. Audible은 전 세계에 수백만 명의 회원을 보유하고 있으며 이 회원들은 호주, 캐나다, 프랑스, 독일, 인도, 이탈리아, 일본, 스페인, 영국 및 미국의 고객을 위해 설계된 10개의 현지화된 서비스 중 하나를 구독합니다.  

    Amazon S3 Object Lambda를 통해 매니페스트를 동적으로 수정하여 가장 성능이 뛰어난 스트리밍을 제공하는 Audible

    블로그: Amazon S3 Object Lambda를 사용하여 스트리밍 재생 성능을 개선하는 Audible의 사례

    사용자는 인터넷 연결이 잘 되는 곳부터 연결이 원활하지 않은 곳까지 다양한 디바이스와 지역에서 Audible의 콘텐츠에 액세스하여 스트리밍합니다. 당사는 Amazon S3 객체 Lambda를 사용하여 매니페스트와 세그먼트 크기를 동적으로 수정하기 때문에 사용자는 집에 있든 이동 중이든 성능이 뛰어난 고품질 스트리밍 및 오디오 엔터테인먼트를 경험할 수 있습니다. S3 Object Lambda를 사용하면 재생 성능을 개선할 수 있기 때문에 기술 혁신과 우수한 프로그래밍을 통해 고객 경험을 더욱 개선할 수 있습니다.

    Saurabh Gandhi, Audible Software Development Sr. Director
  • Trend Micro

    글로벌 사이버 보안 리더인 Trend Micro는 전 세계에서 디지털 정보의 안전한 교환을 지원합니다. Trend Micro의 사이버 보안 플랫폼은 수십 년에 걸친 보안 전문 지식, 글로벌 위협 연구 및 지속적인 혁신을 바탕으로 클라우드, 네트워크, 디바이스 및 엔드포인트 걸쳐 수십만 개의 조직과 수백만 명의 개인을 보호합니다. Trend Micro의 사이버 보안 플랫폼은 AWS에 최적화된 강력한 범위의 고급 위협 방어 기술을 제공합니다.

    블로그: Amazon S3 Object Lambda를 사용하여 민감한 데이터의 보안을 유지하는 Trend Micro의 사례

    간단하게 시작할 수 있다는 점이 마음에 듭니다. File Storage Security 솔루션에서 S3 Object Lambda를 사용함으로써 하루 만에 개념 증명을 완료할 수 있었고 그 다음 날에 기존 플러그인 세트와의 통합이 포함된 첫 번째 정식 버전이 완료되었습니다.

    Mike Milner, Trend Micro Product Management Director
  • Druva

    Druva는 복잡한 인프라와 시간 소모적인 관리 작업 없이 엔드포인트, 데이터 센터, 클라우드 워크로드에 데이터 보호 및 관리 기능을 제공합니다.

    4,000개에 달하는 고객사들은 글로벌 데이터 보호, 규정 준수, 보안 요구 사항의 확대에 대응해야 합니다. Amazon S3 객체 Lambda는 컴퓨팅 리소스를 중앙 집중식 데이터 리포지토리에 더 가까이 가져와 데이터에서 더 많은 가치를 창출하도록 함으로써 시장에 혁신을 일으키고 있습니다. Druva는 완전한 AWS 기반 플랫폼이며, AWS 최신 기능과 기술로 사용자 환경을 지속적으로 개선하고 있습니다. AWS에서 지원하는 Druva 클라우드 플랫폼과 Amazon S3 Object Lambda를 결합하면 타의 추종을 불허하는 통합 기회와 더불어, 직접 액세스와 분석을 통해 백업 데이터의 잠재력을 모두 실현할 수 있습니다.

    Stephen Manley, Druva Chief Technology Officer
  • Nasuni

     

    Nasuni는 Amazon S3의 클라우드 기반 접근 방식으로 파일 스토리지에 혁신을 일으키고 있으며, 기존 온프레미스의 기본 스토리지와 보조 스토리지를 대체하고 있습니다. Nasuni는 객체 스토리지를 사용하는 파일 스토리지 플랫폼을 통해 더욱 간단하면서도 저렴하고 효율적인 클라우드 솔루션을 제공합니다. 이 솔루션은 급격히 늘어나는 비정형 데이터에 맞추어 확장이 가능합니다.

    Nasuni는 S3 Object Lambda로 큰 변화를 맞이하였고, AWS에서 우리 클라우드 파일 스토리지 서비스의 핵심 기술이 될 것입니다. S3 객체 Lambda를 사용하여 Nasuni 고유의 객체 스토리지 기반 파일 시스템을 위한 단순하고 확장 가능한 API를 만들 수 있습니다. 엔터프라이즈 고객은 이를 통해 Nasuni Edge 어플라이언스 대신 S3 버킷에서 직접 파일에 액세스할 수 있습니다. 즉, Nasuni의 비정형 데이터를 AWS 분석 서비스(예: Macie, Kendra)에 간편하게 연결하고 고객이 파일 데이터에서 인사이트를 확보할 수 있도록 지원합니다.

    Russ Kennedy, Nasuni 최고 제품 책임자
  • PetaGene

    PetaGene은 유전체학의 모태인 케임브리지에서 유전체 산업의 폭증하는 데이터 관리 문제를 해결할 목적으로 설립되었습니다. PetaGene은 유전체 압축 및 암호화 솔루션에서 업계 최고의 성능과 사용성을 제공하는 것으로 유명합니다. 이 회사의 소프트웨어는 이제 원활하고 투명한 액세스 방식으로 각종 데이터에 암호화, 선택적 데이터 공유 및 감사 솔루션을 제공합니다.

    PetaGene은 조직에서 데이터를 관리하고 각 사용자에게 표시할 데이터를 감사함으로써 사용자가 볼 수 있는 각 파일의 내용만 노출합니다. 또한, PetaGene은 이미 압축된 NGS 유전체 데이터를 어떠한 손실도 없이 최대 11배까지 효율적으로 압축합니다. 사용자가 이미 사용자 모드 되읽기 라이브러리를 환경에 로드하는 방법으로 보호 및/또는 압축된 데이터를 원래의 기본 형식으로 투명하게 액세스할 수는 있지만, S3 객체 Lambda를 사용하면 사용자가 라이브러리를 설치하지 않고도 표준 S3 GET 요청을 통해 원래의 기본 형식으로 데이터에 액세스할 수 있습니다. 이제 고객들이 PetaGene의 데이터 보호, 규정 준수 및 압축 솔루션 제품을 최종 사용자에게 보다 쉽게 배포할 수 있게 되었습니다.

    Dan Greenfield 박사, PetaGene 공동 창업자 겸 CEO

S3 Object Lambda 리소스

Amazon S3 객체 Lambda를 사용한 데이터 사용자 지정(14:45)
Amazon S3 또는 Amazon EFS를 사용하여 서버리스 최신 애플리케이션 구축(30:13)

시작하기

S3 객체 Lambda는 S3 관리 콘솔에서 간단한 3단계를 통해 설정할 수 있습니다. 먼저, 콘솔에서 Object Lambda Access Point(객체 Lambda 액세스 포인트) 탭으로 이동합니다. 그런 다음, S3 객체 Lambda 액세스 포인트를 생성합니다. 해당 구성에서 이 리소스에 대한 이름, S3 GET, HEAD 또는 LIST 요청에 대해 호출할 Lambda 함수, 지원 S3 액세스 포인트를 제공합니다. AWS 설명서에 서비스를 시작하는 데 도움이 되는 Lambda 함수 구현 예제가 나와 있습니다. 마지막으로, 새 S3 객체 Lambda 액세스 포인트를 사용하여 원하는 언어 SDK로 S3에서 데이터를 검색하도록 SDK 및 애플리케이션을 업데이트합니다. 그러면 S3 객체 Lambda가 표준 S3 GET, HEAD, LIST 요청을 처리하기 시작합니다.

시작 방법에 대한 자세한 내용을 알아보려면 S3 Object Lambda 시작하기 자습서에 액세스하고 사용 설명서를 참조하세요.