

# 인벤토리 목록 찾기
<a name="storage-inventory-location"></a>

매니페스트 파일은 인벤토리 목록이 게시될 때 대상 버킷의 다음 위치에 게시됩니다.

```
destination-prefix/amzn-s3-demo-source-bucket/config-ID/YYYY-MM-DDTHH-MMZ/manifest.json
 destination-prefix/amzn-s3-demo-source-bucket/config-ID/YYYY-MM-DDTHH-MMZ/manifest.checksum
 destination-prefix/amzn-s3-demo-source-bucket/config-ID/hive/dt=YYYY-MM-DD-HH-MM/symlink.txt
```
+ `destination-prefix`는 인벤토리 구성에서 선택적으로 지정되는 객체 키 이름 접두사이며, 이 접두사를 사용하여 대상 버킷 내의 일반적인 위치에 있는 모든 인벤토리 목록 파일을 그룹화할 수 있습니다.
+ `amzn-s3-demo-source-bucket`은 인벤토리 목록에 객체가 열거되는 버킷입니다. 여러 소스 버킷에서 복수의 인벤토리 보고서가 동일한 대상 버킷으로 전송되는 경우 충돌을 방지하기 위해 소스 버킷 이름이 추가됩니다.
+ `config-ID`는 동일한 소스 버킷에서 동일한 대상 버킷으로 복수의 인벤토리 보고서가 전송되는 경우 이들의 충돌을 방지하기 위해 추가됩니다. `config-ID`는 인벤토리 보고서 구성에서 비롯되며 설정 중에 정의된 보고서의 이름입니다.
+ `YYYY-MM-DDTHH-MMZ`는 인벤토리 보고서 생성이 버킷 스캔을 시작한 시작 시간 및 날짜로 구성된 타임스탬프입니다(예: `2016-11-06T21-32Z`).
+ `manifest.json`은 매니페스트 파일입니다.
+ `manifest.checksum`은 `manifest.json` 파일 콘텐츠의 MD5 해시입니다.
+ `symlink.txt`는 Apache Hive 호환 매니페스트 파일입니다.

인벤토리 목록은 매일 또는 매주 대상 버킷의 다음 위치에 게시됩니다.

```
destination-prefix/amzn-s3-demo-source-bucket/config-ID/data/example-file-name.csv.gz
...
destination-prefix/amzn-s3-demo-source-bucket/config-ID/data/example-file-name-1.csv.gz
```
+ `destination-prefix`는 인벤토리 구성에서 선택적으로 지정되는 객체 키 이름 접두사이며, 대상 버킷 내의 일반적인 위치에 있는 모든 인벤토리 목록 파일을 그룹화하는 데 사용할 수 있습니다.
+ `amzn-s3-demo-source-bucket`은 인벤토리 목록에 객체가 열거되는 버킷입니다. 여러 소스 버킷에서 복수의 인벤토리 보고서가 동일한 대상 버킷으로 전송되는 경우 충돌을 방지하기 위해 소스 버킷 이름이 추가됩니다.
+ `example-file-name``.csv.gz`는 CSV 인벤토리 파일 중 하나입니다. ORC 인벤토리 이름은 파일 이름 확장자 `.orc`로 끝나고, Parquet 인벤토리 이름은 파일 이름 확장자 `.parquet`로 끝납니다.

## 인벤토리 매니페스트
<a name="storage-inventory-location-manifest"></a>

매니페스트 파일 `manifest.json` 및 `symlink.txt`는 인벤토리 파일의 위치에 대해 설명합니다. 새 인벤토리 목록이 제공될 때마다 새 매니페스트 파일 세트가 함께 제공됩니다. 이러한 파일은 서로 덮어쓸 수도 있습니다. Amazon S3는 버전 관리를 사용하는 버킷에서 매니페스트 파일의 새 버전을 생성합니다.

`manifest.json` 파일에 포함된 각 매니페스트에는 인벤토리에 대한 기타 기본 정보와 메타데이터가 들어 있습니다. 이 정보에는 다음 사항이 포함됩니다.
+ 소스 버킷 이름
+ 대상 버킷 이름
+ 인벤토리 버전
+ 시작 시간과 인벤토리 보고서 생성 프로세스가 버킷 스캔을 시작하는 날짜로 구성된 epoch 날짜 형식의 생성 타임스탬프
+ 인벤토리 파일의 형식 및 스키마
+ 대상 버킷에 있는 인벤토리 파일의 목록

`manifest.json` 파일이 쓰여질 때마다 `manifest.checksum` 파일 콘텐츠의 MD5 해시인 `manifest.json` 파일이 수반됩니다.

**Example `manifest.json` 파일의 인벤토리 매니페스트**  
다음 예제에서는 CSV, ORC, Parquet 형식 인벤토리에 대한 `manifest.json` 파일의 인벤토리 매니페스트를 보여 줍니다.  
다음은 CSV 형식 인벤토리에 대해 `manifest.json` 파일에 있는 매니페스트의 예입니다.  

```
{
    "sourceBucket": "amzn-s3-demo-source-bucket",
    "destinationBucket": "arn:aws:s3:::example-inventory-destination-bucket",
    "version": "2016-11-30",
    "creationTimestamp" : "1514944800000",
    "fileFormat": "CSV",
    "fileSchema": "Bucket, Key, VersionId, IsLatest, IsDeleteMarker, Size, LastModifiedDate, ETag, StorageClass, IsMultipartUploaded, ReplicationStatus, EncryptionStatus, ObjectLockRetainUntilDate, ObjectLockMode, ObjectLockLegalHoldStatus, IntelligentTieringAccessTier, BucketKeyStatus, ChecksumAlgorithm, ObjectAccessControlList, ObjectOwner",
    "files": [
        {
            "key": "Inventory/amzn-s3-demo-source-bucket/2016-11-06T21-32Z/files/939c6d46-85a9-4ba8-87bd-9db705a579ce.csv.gz",
            "size": 2147483647,
            "MD5checksum": "f11166069f1990abeb9c97ace9cdfabc"
        }
    ]
}
```
다음은 ORC 형식 인벤토리에 대해 `manifest.json` 파일에 있는 매니페스트의 예입니다.  

```
{
    "sourceBucket": "amzn-s3-demo-source-bucket",
    "destinationBucket": "arn:aws:s3:::example-destination-bucket",
    "version": "2016-11-30",
    "creationTimestamp" : "1514944800000",
    "fileFormat": "ORC",
    "fileSchema": "struct<bucket:string,key:string,version_id:string,is_latest:boolean,is_delete_marker:boolean,size:bigint,last_modified_date:timestamp,e_tag:string,storage_class:string,is_multipart_uploaded:boolean,replication_status:string,encryption_status:string,object_lock_retain_until_date:timestamp,object_lock_mode:string,object_lock_legal_hold_status:string,intelligent_tiering_access_tier:string,bucket_key_status:string,checksum_algorithm:string,object_access_control_list:string,object_owner:string>",
    "files": [
        {
            "key": "inventory/amzn-s3-demo-source-bucket/data/d794c570-95bb-4271-9128-26023c8b4900.orc",
            "size": 56291,
            "MD5checksum": "5925f4e78e1695c2d020b9f6eexample"
        }
    ]
}
```
다음은 Parquet 인벤토리에 대해 `manifest.json` 파일에 있는 매니페스트의 예입니다.  

```
{
    "sourceBucket": "amzn-s3-demo-source-bucket",
    "destinationBucket": "arn:aws:s3:::example-destination-bucket",
    "version": "2016-11-30",
    "creationTimestamp" : "1514944800000",
    "fileFormat": "Parquet",
    "fileSchema": "message s3.inventory { required binary bucket (UTF8); required binary key (UTF8); optional binary version_id (UTF8); optional boolean is_latest; optional boolean is_delete_marker; optional int64 size; optional int64 last_modified_date (TIMESTAMP_MILLIS); optional binary e_tag (UTF8); optional binary storage_class (UTF8); optional boolean is_multipart_uploaded; optional binary replication_status (UTF8); optional binary encryption_status (UTF8); optional int64 object_lock_retain_until_date (TIMESTAMP_MILLIS); optional binary object_lock_mode (UTF8); optional binary object_lock_legal_hold_status (UTF8); optional binary intelligent_tiering_access_tier (UTF8); optional binary bucket_key_status (UTF8); optional binary checksum_algorithm (UTF8); optional binary object_access_control_list (UTF8); optional binary object_owner (UTF8);}",
    "files": [
        {
           "key": "inventory/amzn-s3-demo-source-bucket/data/d754c470-85bb-4255-9218-47023c8b4910.parquet",
            "size": 56291,
            "MD5checksum": "5825f2e18e1695c2d030b9f6eexample"
        }
    ]
}
```
`symlink.txt` 파일은 Apache Hive 호환 매니페스트 파일이며 Hive에서 인벤토리 파일과 연결된 데이터 파일을 자동으로 검색할 수 있도록 해줍니다. Hive 호환 매니페스트는 Hive 호환 서비스인 Athena 및 Amazon Redshift Spectrum과 함께 작동합니다. 또한 [https://prestodb.io/](https://prestodb.io/), [https://hive.apache.org/](https://hive.apache.org/), [https://databricks.com/spark/about/](https://databricks.com/spark/about/) 등과 같은 Hive 호환 애플리케이션과 함께 작동합니다.  
`symlink.txt` Apache Hive 호환 매니페스트 파일은 현재 AWS Glue에서 작동하지 않습니다.  
[https://hive.apache.org/](https://hive.apache.org/) 및 [https://databricks.com/spark/about/](https://databricks.com/spark/about/)로 `symlink.txt` 파일 읽기는 ORC 및 Parquet 형식 인벤토리 파일에 지원되지 않습니다.