

# Esquema de tabelas de inventário em tempo real do S3 Metadata
<a name="metadata-tables-inventory-schema"></a>

A tabela de inventário em tempo real fornece um inventário simples e consultável de todos os objetos e das respectivas versões no bucket para que você possa determinar o estado mais recente dos dados. As atualizações de objeto geralmente são mostradas na tabela de inventário no prazo de uma hora.

É possível usar essa tabela para simplificar e acelerar fluxos de trabalho de negócios e tarefas de big data identificando objetos que você deseja processar para várias workloads. Por exemplo, você pode consultar a tabela de inventário para fazer o seguinte: 
+ Encontrar todos os objetos armazenados na classe de armazenamento S3 Glacier Deep Archive.
+ Criar uma distribuição de tags de objeto ou encontrar objetos sem tags.
+ Encontrar todos os objetos que não são criptografados usando a criptografia do lado do servidor com chaves do AWS Key Management Service (AWS KMS) (SSE-KMS). 

Quando você habilita a tabela de inventário para sua configuração de tabela de metadados, ela passa por um processo conhecido como *preenchimento*, durante o qual o Amazon S3 verifica o bucket de uso geral para recuperar os metadados iniciais de todos os objetos no bucket. Dependendo do número de objetos no bucket, esse processo pode levar de minutos (no mínimo 15 minutos) a horas. Quando o processo de preenchimento é concluído, o status da tabela de inventário muda de **Preenchendo** para **Ativo**. Depois que o preenchimento é concluído, geralmente as atualizações dos objetos são mostradas na tabela de inventário no prazo de uma hora.

**nota**  
Você recebe cobrança pelo preenchimento da tabela de inventário. Se o bucket de uso geral tiver mais de um bilhão de objetos, você também pagará uma taxa mensal pela tabela de inventário. Para obter mais informações, consulte [Preços do Amazon S3](https://aws.amazon.com/s3/pricing/).

As tabelas de inventário do Amazon S3 contêm linhas e colunas. Cada linha representa o estado atual de um objeto no bucket de uso geral. A tabela de inventário fornece um inventário simples e consultável de todos os objetos no bucket para que você possa determinar o estado atual dos dados.

O seguinte exemplo mostra uma tabela de inventário para um bucket de uso geral denominado `amzn-s3-demo-bucket:`: 

```
bucket                key                        sequence_number                                                                                          version_id   is_delete_marker   size   last_modified_date   e_tag	                          storage_class   is_multipart   encryption_status   is_bucket_key_enabled   kms_key_arn                                                                   checksum_algorithm   object_tags   user_metadata	                                                                                                                  
amzn-s3-demo-bucket   Finance/statement1.pdf     80e737d8b4d82f776affffffffffffffff006737d8b4d82f776a00000000000000000000000000000000000000000000000072                FALSE              6223   11/15/2024 23:26     e131b86632dda753aac4018f72192b83    STANDARD	  FALSE          SSE-KMS             FALSE                   arn:aws:kms:us-east-1:111122223333:key/1234abcd-12ab-34cd-56ef-1234567890df   SSECRC32             {}            {count -> Asia, customs -> false, family -> true, location -> Mary, name -> football, user -> United States}                      
amzn-s3-demo-bucket   s3-dg.pdf                  80e737d8b4e39f1dbdffffffffffffffff006737d8b4e39f1dbd00000000000000000000000000000000000000000000000072                FALSE              3554   11/15/2024 23:26     9bb49efc2d92c05558ddffbbde8636d5    STANDARD	  FALSE          DSSE-KMS            FALSE                   arn:aws:kms:us-east-1:936810216292:key/0dcebce6-49fd-4cae-b2e2-5512ad281afd   SSESHA1              {}            {}                                                                                                                                
amzn-s3-demo-bucket   Development/Projects.xls   80e737d8b4ed9ac5c6ffffffffffffffff006737d8b4ed9ac5c600000000000000000000000000000000000000000000000072                FALSE              7746   11/15/2024 23:26     729a6863e47fb9955b31bfabce984908    STANDARD	  FALSE          SSE-S3              FALSE                   NULL                                                                          SSECRC32             {}            {count -> Asia, customs -> Canada, family -> Billiards, filter -> true, location -> Europe, name -> Asia, user -> United States}
```

As tabelas de inventário têm o seguinte esquema:


| Nome da coluna | Obrigatório? | Tipo de dados |   | 
| --- | --- | --- | --- | 
|  `bucket`  | Sim | String | O nome do bucket de uso geral. Para ter mais informações, consulte [Regras de nomenclatura de buckets de uso geral](bucketnamingrules.md). | 
|  `key`  | Sim | String | O nome da chave de objeto (ou chave) que identifica o objeto no bucket de maneira única. Para ter mais informações, consulte [Nomear objetos do Amazon S3](object-keys.md). | 
|  `sequence_number`  | Sim | String |  O número de sequência, que é um ordinal incluído nos registros de determinado objeto. Para ordenar registros do mesmo bucket e chave, você pode classificar por `sequence_number`. Para um bucket e uma chave específicos, um valor `sequence_number` maior em ordem lexicográfica implica que o registro foi introduzido no bucket mais recentemente.  | 
|  `version_id`  | Não | String |  O ID da versão do objeto. Quando você habilita o versionamento em um bucket, o Amazon S3 atribui um número de versão aos objetos adicionados ao bucket. Para ter mais informações, consulte [Reter várias versões de objetos com o Versionamento do S3](Versioning.md). Os objetos que são armazenados no bucket antes da habilitação do versionamento têm um ID de versão nulo.  | 
|  `is_delete_marker`  | Não | Booleano |  O status do marcador de exclusão do objeto. Se o objeto for um marcador de exclusão, esse valor será `True`. Caso contrário, será `False`. Para ter mais informações, consulte [Trabalhar com marcadores de exclusão](DeleteMarker.md).  As linhas adicionadas para marcadores de exclusão têm um valor `DELETE` para `record_type`, não `UPDATE_METADATA`. Se o marcador de exclusão for criado como resultado de uma expiração da funcionalidade Ciclo de Vida do S3, o valor de `requester` será `s3.amazonaws.com`.   | 
|  `size`  | Não | Longo |  O tamanho do objeto em bytes, sem incluir o tamanho de uploads fracionados incompletos ou metadados de objetos. Se `is_delete_marker` for `True`, o tamanho será `0`. Para ter mais informações, consulte [Metadados do objeto definidos pelo sistema](UsingMetadata.md#SysMetadata).  | 
|  `last_modified_date`  | Não | Carimbo de data/hora NTZ (sem fuso horário) |  A data de criação do objeto ou data da última modificação, o que aconteceu por último. Para uploads fracionados, a data de criação do objeto é a data em que o upload fracionado foi inicializado. Para ter mais informações, consulte [Metadados do objeto definidos pelo sistema](UsingMetadata.md#SysMetadata).  | 
|  `e_tag`  | Não | String |  A tag de entidade (ETag), que é um hash do objeto. O ETag reflete as alterações apenas no conteúdo de um objeto, não em seus metadados. A ETag pode ser um resumo MD5 dos dados do objeto. O fato de a ETag ser um resumo MD5 depende de como o objeto foi criado e de como ele é criptografado. Para obter mais informações, consulte [https://docs.aws.amazon.com/AmazonS3/latest/API/API_Object.html](https://docs.aws.amazon.com/AmazonS3/latest/API/API_Object.html) na *Referência da API do Amazon S3*.  | 
|  `storage_class`  | Não | String |  A classe de armazenamento usada para armazenar o objeto. Uma destas opções: `STANDARD`, `REDUCED_REDUNDANCY`, `STANDARD_IA`, `ONEZONE_IA`, `INTELLIGENT_TIERING`, `GLACIER`, `DEEP_ARCHIVE` ou `GLACIER_IR`. Para ter mais informações, consulte [Compreender e gerenciar classes de armazenamento do Amazon S3](storage-class-intro.md).  | 
|  `is_multipart`  | Não | Booleano |  O tipo de upload do objeto. Se o objeto foi carregado como um upload fracionado, esse valor será `True`. Caso contrário, será `False`. Para ter mais informações, consulte [Carregar e copiar objetos usando upload fracionado no Amazon S3](mpuoverview.md).  | 
|  `encryption_status`  | Não | String |  O status da criptografia do lado do servidor, dependendo do tipo de chave de criptografia usada: criptografia do lado do servidor com chaves gerenciadas pelo Amazon S3 (SSE-S3), criptografia do lado do servidor com chaves do AWS Key Management Service (AWS KMS) (SSE-KMS), criptografia de camada dupla do lado do servidor com AWS KMS keys (DSSE-KMS) ou criptografia do lado do servidor com chaves fornecidas pelo cliente (SSE-C). Se o objeto não estiver criptografado, esse valor será nulo. Os valores possíveis são `SSE-S3`, `SSE-KMS`, `DSSE-KMS`, `SSE-C` ou nulo. Para ter mais informações, consulte [Proteger dados com criptografia](UsingEncryption.md).  | 
|  `is_bucket_key_enabled`  | Não | Booleano |  O status de habilitação da chave de bucket do S3 do objeto. Se o objeto usar uma chave de bucket do S3 para SSE-KMS, esse valor será `True`. Caso contrário, será `False`. Para ter mais informações, consulte [Configurar uma chave de bucket do S3 no nível de objeto](configuring-bucket-key-object.md).  | 
|  `kms_key_arn`  | Não | String |  O nome do recurso da Amazon (ARN) para a chave do KMS com a qual o objeto é criptografado, para linhas em que `encryption_status` é `SSE-KMS` ou `DSSE-KMS`. Se o objeto não estiver criptografado com SSE-KMS ou DSSE-KMS, o valor será nulo. Para obter mais informações, consulte [Usar criptografia do lado do servidor com o AWS KMS (SSE-KMS)](UsingKMSEncryption.md) e [Usar criptografia de camada dupla do lado do servidor com chaves do AWS KMS (DSSE-KMS)](UsingDSSEncryption.md).  Se uma linha representa uma versão do objeto que não existia mais no momento em que um evento de exclusão ou substituição foi processado, `kms_key_arn` conterá um valor nulo, mesmo que o valor da coluna `encryption_status` seja `SSE-KMS` ou `DSSE-KMS`.   | 
|  `checksum_algorithm`  | Não | String |  O algoritmo usado para criar a soma de verificação do objeto, podendo ser `CRC64-NVME`, `CRC32`, `CRC32C`, `SHA1` ou `SHA256`. Se nenhuma soma de verificação estiver presente, esse valor será nulo. Para ter mais informações, consulte [Usar algoritmos de soma de verificação compatíveis](checking-object-integrity-upload.md#using-additional-checksums).  | 
|  `object_tags`  | Não | Mapa <String, String> |  As tags que estão associadas ao objeto. As tags de objeto são armazenadas como um mapa de pares de chave/valor. Se um objeto não tiver nenhum tag, um mapa vazio (`{}`) será armazenado. Para ter mais informações, consulte [Categorizar objetos usando tags](object-tagging.md).  Se o valor de `record_type` for `DELETE`, a coluna `object_tags` conterá um valor nulo. Se o valor de `record_type` for `CREATE` ou `UPDATE_METADATA`, as linhas que representam versões de objetos que não existiam mais no momento em que um evento de exclusão ou substituição foi processado conterão um valor nulo na coluna `object_tags`.    | 
|  `user_metadata`  | Não | Mapa <String, String> |  Os metadados de usuários associados ao objeto. Os metadados de usuários são armazenados como um mapa de pares de chave/valor. Se um objeto não tiver nenhum metadado de usuário, um mapa vazio (`{}`) será armazenado. Para ter mais informações, consulte [Metadados do objeto definidos pelo usuário](UsingMetadata.md#UserMetadata).   Se o valor de `record_type` for `DELETE`, a coluna `user_metadata` conterá um valor nulo. Se o valor de `record_type` for `CREATE` ou `UPDATE_METADATA`, as linhas que representam versões de objetos que não existiam mais no momento em que um evento de exclusão ou substituição foi processado conterão um valor nulo na coluna `user_metadata`.   | 