객체에서 Amazon S3 Select 사용 예제

객체에서 Amazon S3 Select 사용 예제

S3 Select는 콘솔, REST API, AWS SDK로 객체에서 원하는 내용만 골라낼 수 있게 해 줘요. 콘솔에서 어떻게 SQL 쿼리를 실행하는지, 그리고 각 언어별 SDK 예제 입구를 안내할게요.

출처: 문서

본문

중요 Amazon S3 Select는 더 이상 신규 고객에게 제공되지 않아요. 기존 Amazon S3 Select 고객은 평소처럼 기능을 계속 사용할 수 있어요.

S3 Select를 사용해 Amazon S3 콘솔, REST API, AWS SDK로 한 객체에서 내용을 선택할 수 있어요. S3 Select에서 지원하는 SQL 함수에 대한 자세한 내용은 SQL functions 문서를 참고하세요.

Amazon S3 콘솔에서 객체의 내용 선택하기

  1. AWS Management Console에 로그인하고 Amazon S3 콘솔을 https://console.aws.amazon.com/s3/ 에서 열어요.
  2. 왼쪽 탐색 창에서 Buckets를 선택해요.
  3. 내용을 선택할 객체가 들어 있는 버킷을 선택한 다음 객체 이름을 선택해요.
  4. Object actions를 선택하고 Query with S3 Select를 선택해요.
  5. 입력 데이터 형식에 따라 Input settings를 구성해요.
  6. 받고 싶은 출력 형식에 따라 Output settings를 구성해요.
  7. 선택한 객체에서 레코드를 추출하려면 SQL query 아래에서 SELECT SQL 명령을 입력해요. SQL 명령 작성 방법에 대한 자세한 내용은 SQL reference for Amazon S3 Select 문서를 참고하세요.
  8. SQL 쿼리를 입력한 후 Run SQL query를 선택해요. 그러면 Query results 아래에서 SQL 쿼리 결과를 볼 수 있어요.

AWS SDK를 사용해 객체에서 내용을 선택할 수 있어요. 다만 애플리케이션이 요구한다면 REST 요청을 직접 보낼 수도 있어요. 요청과 응답 형식에 대한 자세한 내용은 SelectObjectContent를 참고하세요. selectObjectContent 메서드를 사용해 Amazon S3 Select로 객체의 일부 내용을 선택할 수 있어요. 이 메서드가 성공하면 SQL 표현식의 결과를 반환해요.

Java — AWS SDK for Java로 Amazon S3 Select를 사용하려면 CSV 형식으로 저장된 데이터를 담는 객체에서 각 레코드의 첫 번째 열 값을 반환할 수 있어요. Progress와 Stats 메시지도 반환하도록 요청할 수 있어요. 유효한 버킷 이름과 CSV 형식 데이터를 담은 객체를 제공해야 해요. AWS SDK for Java로 Amazon S3 Select를 사용하는 예제는 Amazon S3 API Reference의 Select content from an object 문서를 참고하세요.

JavaScript — AWS SDK for JavaScript와 S3 SelectObjectContent API 작업으로 Amazon S3에 저장된 JSON과 CSV 파일에서 레코드를 선택하는 JavaScript 예제는 블로그 게시물 Introducing support for Amazon S3 Select in the AWS SDK for JavaScript 를 참고하세요.

Python — S3 Select를 사용해 Amazon S3에 콤마로 구분된 값(CSV) 파일로 로드된 데이터를 SQL 쿼리로 검색하는 Python 예제는 블로그 게시물 Querying data without servers or databases using Amazon S3 Select 를 참고하세요.