이 페이지는 Vaults와 2012RESTAPI년의 원본을 사용하는 S3 Glacier 서비스의 기존 고객만 사용할 수 있습니다.
아카이브 스토리지 솔루션을 찾고 있다면 Amazon S3, S3 Glacier Instant Retrieval , S33 S3 Glacier Flexible Retrieval 및 S3 Glacier Deep Archive 의 S3 Glacier 스토리지 클래스를 사용하는 것이 좋습니다. Amazon S3 이러한 스토리지 옵션에 대한 자세한 내용은 Amazon S3 사용 설명서의 S3 Glacier 스토리지 클래스
기계 번역으로 제공되는 번역입니다. 제공된 번역과 원본 영어의 내용이 상충하는 경우에는 영어 버전이 우선합니다.
AWS SDK for Java을 사용하여 Amazon S3 Glacier에서 볼트 메타데이터 검색
볼트 메타데이터 가져오기
특정 AWS 리전에 속하는 특정 볼트 또는 모든 볼트의 메타데이터를 검색할 수 있습니다. 다음은 Java용 Amazon SDK의 로우레벨 API를 사용해 특정 볼트용 볼트 메타데이터를 검색하는 단계입니다.
-
AmazonGlacierClient
클래스(클라이언트)의 인스턴스를 만듭니다.볼트가 속하는 AWS 리전을 지정해야 합니다. 이 클라이언트를 사용하여 실행하는 모든 작업이 해당 AWS 리전에 적용됩니다.
-
DescribeVaultRequest
클래스 인스턴스를 생성하여 요청 정보를 입력합니다.Amazon S3 Glacier(S3 Glacier)는 볼트 이름과 사용자의 계정 ID를 요구합니다. 계정 ID를 입력하지 않는 경우에는 요청 서명을 위해 입력하는 자격 증명과 연결되어 있는 계정 ID로 간주합니다. 자세한 내용은 AWS SDK for Java과 함께 Amazon S3 Glacier 사용 섹션을 참조하세요.
-
요청 객체를 파라미터로 입력하여
describeVault
메서드를 실행합니다.S3 Glacier가 반환하는 볼트 메타데이터 정보는
DescribeVaultResult
객체에서 사용할 수 있습니다.
다음은 위에서 설명한 단계를 나타내는 Java 코드 조각입니다.
DescribeVaultRequest request = new DescribeVaultRequest() .withVaultName("*** provide vault name***"); DescribeVaultResult result = client.describeVault(request); System.out.print( "\nCreationDate: " + result.getCreationDate() + "\nLastInventoryDate: " + result.getLastInventoryDate() + "\nNumberOfArchives: " + result.getNumberOfArchives() + "\nSizeInBytes: " + result.getSizeInBytes() + "\nVaultARN: " + result.getVaultARN() + "\nVaultName: " + result.getVaultName());
참고
기본 REST API에 대한 자세한 내용은 볼트 설명(GET vault) 단원을 참조하십시오.
리전에 속하는 모든 볼트의 메타데이터 가져오기
listVaults
방법을 사용하여 특정 AWS 리전에 속하는 모든 볼트의 메타데이터를 검색할 수 있습니다.
다음은 us-west-2
리전에 속하는 볼트 목록을 가져오는 Java 코드 조각입니다. 요청에 따라 응답으로 반환되는 볼트 수는 5개로 제한됩니다. 코드 조각은 연속으로 listVaults
를 직접 호출하여 AWS 리전의 볼트 목록을 모두 검색합니다.
AmazonGlacierClient client; client.setEndpoint("https://glacier.us-west-2.amazonaws.com/"); String marker = null; do { ListVaultsRequest request = new ListVaultsRequest() .withLimit("5") .withMarker(marker); ListVaultsResult listVaultsResult = client.listVaults(request); List<DescribeVaultOutput> vaultList = listVaultsResult.getVaultList(); marker = listVaultsResult.getMarker(); for (DescribeVaultOutput vault : vaultList) { System.out.println( "\nCreationDate: " + vault.getCreationDate() + "\nLastInventoryDate: " + vault.getLastInventoryDate() + "\nNumberOfArchives: " + vault.getNumberOfArchives() + "\nSizeInBytes: " + vault.getSizeInBytes() + "\nVaultARN: " + vault.getVaultARN() + "\nVaultName: " + vault.getVaultName()); } } while (marker != null);
위의 코드 조각에서 요청 시에 Limit
값을 지정하지 않으면 S3 Glacier가 S3 Glacier API의 설정에 따라 최대 10개까지 볼트를 반환합니다. 목록을 조회할 볼트가 더 있는 경우에는 응답 본문의 marker
필드에 새로운 요청과 함께 목록이 계속되는 지점에 볼트의 Amazon 리소스 이름(ARN)이 추가됩니다. 그렇지 않으면 marker
필드는 null 값을 갖습니다.
참고로 목록의 각 볼트마다 반환되는 정보는 특정 볼트에서 describeVault
메서드를 호출하여 가져오는 정보와 동일합니다.
참고
listVaults
메서드는 기본 REST API를 호출합니다(볼트 목록 조회(GET vaults) 참조).
예: Java용 Amazon SDK를 사용하는 볼트 메타데이터 검색
유효 코드 예제를 보려면 예제: AWS SDK for Java를 사용하여 볼트 생성 단원을 참조하십시오. Java 코드 예제는 볼트를 생성한 후 볼트 메타데이터를 가져옵니다.