Inventário do Amazon S3 - Amazon Simple Storage Service

Inventário do Amazon S3

O Amazon S3 Inventory é uma das ferramentas que o Amazon S3 fornece para ajudar a gerenciar seu armazenamento. Você pode usá-lo para auditar e gerar relatórios sobre o status da replicação e criptografia de seus objetos para os negócios, a conformidade e as necessidades normativas. Também é possível simplificar e acelerar os fluxos de trabalho de negócios e os trabalhos de big data usando o Amazon S3 Inventory, que fornece uma alternativa programada para a operação síncrona da API List do Amazon S3. O inventário do Amazon S3 não usa a API List para auditar seus objetos e não afeta a taxa de solicitação do bucket.

O Amazon S3 Inventory fornece arquivos de saída nos formatos CSV (valores separados por vírgulas), ORC (colunar de linhas otimizado do Apache) ou Apache Parquet que listam seus objetos e os metadados correspondentes, diária ou semanalmente, para um bucket do S3 ou prefixo compartilhado (ou seja, objetos que tenham nomes que comecem com uma string comum). Caso isso ocorra semanalmente, um relatório será gerado todos os domingos (UTC) após o relatório inicial. Para obter mais informações sobre preços do Amazon S3 Inventory, consulte Preços do Amazon S3.

Você pode configurar várias listas de inventário para um bucket. Você pode configurar quais metadados de objeto serão incluídos no inventário, se deseja relacionar todas as versões do objeto ou apenas as versões atuais, onde armazenar o arquivo resultante da lista de inventários e se o inventário será gerado em uma frequência diária ou semanal. Você também pode especificar se o arquivo de lista de inventários será criptografado.

É possível consultar o Amazon S3 Inventory usando o SQL padrão, o Amazon Athena, o Amazon Redshift Spectrum e outras ferramentas, como Presto, Apache Hive e Apache Spark. Você pode usar o Athena para executar consultas em seus arquivos de inventário. É possível usar as consultas do Amazon S3 Inventory em todas as regiões onde o Athena está disponível.

Buckets de origem e destino

O bucket para o qual o inventário lista objetos é chamado de bucket de origem. O bucket em que o arquivo de lista de inventários é armazenado é chamado de bucket de destino.

Bucket de origem

O inventário lista os objetos armazenados no bucket de origem. Você pode obter as listas de inventário para um bucket inteiro ou filtradas pelo prefixo (nome de chave de objeto).

O bucket de origem:

  • Contém os objetos que estão listados no inventário.

  • Contém a configuração para o inventário.

Bucket de destino

Os arquivos de lista do Amazon S3 Inventory são gravados no bucket de destino. Você pode especificar um prefixo de destino (nome de chave de objeto) na configuração do inventário para agrupar todos os arquivos de lista de inventários em um local comum no bucket de destino.

O bucket de destino:

  • Contém as listas de arquivos de inventário.

  • Contém os arquivos manifestos que relacionam todas as listas de inventários de arquivo armazenadas no bucket de destino. Para obter mais informações, consulte Manifesto de inventário.

  • Deve haver uma política de bucket para dar permissão ao Amazon S3 para verificar a propriedade do bucket e permissão para gravar arquivos no bucket.

  • Deve estar na mesma Região da AWS do bucket de origem.

  • Pode ser igual ao bucket de origem.

  • Pode pertencer a uma Conta da AWS diferente da conta que é proprietária do bucket de origem.

Lista do Amazon S3 Inventory

Um arquivo de lista de inventários contém uma lista dos objetos no bucket de origem e os metadados de cada objeto. As listas de inventários são armazenadas no bucket de destino como um arquivo CSV compactado com GZIP, como um arquivo colunar de linhas otimizado (ORC) do Apache compactado com ZLIB ou como um arquivo do Apache Parquet compactado com Snappy. Os objetos são classificados em ordem crescente com base nos nomes das chaves.

Uma lista de inventários contém uma lista dos objetos em um bucket do S3 e os seguintes metadados para cada objeto relacionado:

  • Nome do bucket: o nome do bucket a que o inventário se refere.

  • Key name (Nome da chave): o nome da chave de objeto (ou chave) que identifica cada objeto no bucket. Ao usar o formato de arquivo CSV, o nome da chave é codificado em URL e deve ser decodificado para que possa ser usado.

  • Version ID (ID da versão): o ID de 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 obter mais informações, consulte Usando o versionamento em buckets do S3. (O campo não está incluído se a lista for somente para a versão atual dos objetos.)

  • IsLatest: definido como True se o objeto for a versão atual do objeto. (O campo não está incluído se a lista for somente para a versão atual dos objetos.)

  • Size (Tamanho): o tamanho do objeto em bytes.

  • Last modified date (Data da última modificação) – a data de criação do objeto ou data da última modificação, a mais atual entre as duas.

  • ETag: a tag de entidade é 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. Tudo depende de como o objeto foi criado e de como está criptografado.

  • Storage class (Classe de armazenamento) – a classe de armazenamento usada para armazenar o objeto. Para obter mais informações, consulte Uso de classes de armazenamento do Amazon S3.

  • Sinalizador de multipart upload: definido como True se o objeto foi carregado como um multipart upload. Para obter mais informações, consulte Carregar e copiar objetos usando multipart upload.

  • Delete marker (Marcador de exclusão): definido como True se o objeto for um marcador de exclusão. Para obter mais informações, consulte Usando o versionamento em buckets do S3. (Este campo é adicionado automaticamente ao seu relatório se você configurou o relatório para incluir todas as versões dos seus objetos).

  • Replication status (Status da replicação): defina comoPENDING, COMPLETED, FAILED, ouREPLICA. Para obter mais informações, consulte Obtenção de informações sobre o status da replicação.

  • Status da criptografia: definido como SSE-S3, SSE-C, SSE-KMS ou NOT-SSE. O status da criptografia no lado do servidor para SSE-S3, SSE-KMS e SSE com chaves fornecidas pelo cliente (SSE-C). Um status NOT-SSE significa que o objeto não foi criptografado com a criptografia no lado do servidor. Para obter mais informações, consulte Proteção de dados usando criptografia.

  • Manutenção do bloqueio do objeto do S3 até a data: a data até a qual o objeto bloqueado não pode ser excluído. Para obter mais informações, consulte Usar o bloqueio de objetos do S3.

  • Modo de bloqueio do objeto do S3: definido como Governance ou Compliance para objetos que estejam bloqueados. Para obter mais informações, consulte Usar o bloqueio de objetos do S3.

  • S3 Object Lock Legal hold status (Status de retenção legal de bloqueio do objeto do S3): definido como On caso uma retenção legal tenha sido aplicada a um objeto. Caso contrário, ele será definido como Off. Para mais informações, consulte Usar o bloqueio de objetos do S3.

  • S3 Intelligent-Tiering access tier (Nível de acesso do S3 Intelligent-Tiering): nível de acesso (frequente ou infrequente) do objeto se armazenado no S3 Intelligent-Tiering. Para mais informações, consulte Classe de armazenamento para otimizar automaticamente dados com padrões de acesso alterados ou desconhecidos.

  • S3 Bucket Key Status (Status da chave do bucket do S3): defina como ENABLED ou DISABLED. Indica se o objeto usa a chave do bucket do S3 para criptografia no lado do servidor. Para mais informações, consulte Uso de chaves de bucket do Amazon S3.

  • Checksum Algorithm (Algoritmo de soma de verificação): indica o algoritmo usado para criar a soma de verificação do objeto.

Recomendamos que você crie uma política de ciclo de vida que exclua listas de inventário antigas. Para mais informações, consulte Gerenciando seu ciclo de vida de armazenamento.

Com s3:PutInventoryConfiguration, o usuário tem permissão para selecionar todos os campos de metadados listados anteriormente para cada objeto ao configurar uma lista de inventário e especificar o bucket de destino para armazenar o inventário. Um usuário com acesso de leitura aos objetos no bucket de destino pode acessar todos os campos de metadados do objeto que estão disponíveis na lista de inventário. Para restringir o acesso a um relatório de inventário, consulte Restringir o acesso a um relatório do Amazon S3 Inventory.

Consistência de inventário

Todos os seus objetos podem não aparecer em cada lista de inventários. A lista de inventários fornece uma consistência eventual para solicitações PUT de objetos novos e substituídos, e solicitações DELETE. As listas de inventário são um snapshot de rolamento de itens do bucket, que são eventualmente consistentes (ou seja, a lista pode não incluir os objetos adicionados ou excluídos recentemente).

Para validar o estado do objeto antes de você realizar uma ação no objeto, recomendamos que faça uma solicitação HEAD Object da API REST para recuperar metadados do objeto ou verifique suas propriedades no console do Amazon S3. Você também pode verificar metadados do objeto com a AWS CLI ou os AWS SDKs. Para obter mais informações, consulte HEAD Object na Referência da API do Amazon Simple Storage Service.

Para obter mais informações sobre como trabalhar com o Amazon S3 Inventory, consulte os tópicos a seguir.