Desvendando o Amazon S3
- Lucas Diniz
- 6 de nov. de 2024
- 3 min de leitura

O que é o Amazon S3?
O Amazon Simple Storage Service (S3) é uma solução de armazenamento na nuvem da AWS projetada para armazenar e proteger grandes quantidades de dados com flexibilidade e segurança. Usado por empresas de diversos tamanhos, o S3 facilita o armazenamento de arquivos e dados estruturados e não estruturados, oferecendo alta disponibilidade e durabilidade.
O amazon S3 utiliza uma forma de armazenamento em objeto onde existem:
· Dados: O conteúdo do arquivo
· Metadados: Informações do arquivo, como a data de criação.
· Identificador: Um ponteiro único de cada objeto.

O S3 é a classe de armazenamento da AWS que tem um ótimo custo benefício devido sua alta escalabilidade e resiliência.
Versionamento no Amazon S3
O versionamento permite armazenar várias versões de um objeto em um bucket S3. Quando o versionamento é ativado, todas as alterações feitas em um objeto criam uma versão, mantendo o histórico completo de versões e facilitando a recuperação em caso de exclusão ou modificação acidental.
O versionamento cria uma camada de segurança em todos os objetos do bucket, pois certifica que mesmo que o ambiente seja comprometido e os objetos forem deletados ou criptografados (ransomware), ainda existiram cópias integras de cada objeto.
Cabe reforçar que o versionamento influencia em aumento de custo do bucket, pois em alguns objetos terão mais de 1 cópia do mesmo objeto.
Resiliência e Durabilidade do S3
A resiliência do S3 é um de seus pontos fortes. Ele utiliza replicação em múltiplas zonas de disponibilidade (AZs), garantindo que os dados fiquem seguros e disponíveis mesmo em caso de falha de hardware. Essa estrutura de alta resiliência é essencial para aplicativos críticos e recuperação de desastres.
O S3 foi projetado para ter uma durabilidade para os objetos de de 99,999999999% (11 noves). Isto quer dizer que se você armazenar 10 milhões de objetos, perderá em média apenas um a cada 10.000 anos.
No ambiente de São Paulo existem três zonas de disponibilidade (Data Centers da AWS). Armazenar 1 objeto em um bucket nesta região, automaticamente estará replicado para todas as Zonas Disponibilidades disponíveis. Essa replicação é automática, ou seja, os usuários só precisa realizar upload do arquivo no S3 e já será replicado para as outas Zonas de Disponibilidade.

Políticas de Acesso no S3
O S3 permite configurar políticas de acesso detalhadas em nível de bucket ou de objeto, utilizando políticas do IAM, políticas de bucket e listas de controle de acesso (ACLs). Com essas opções, você pode definir quem pode acessar o bucket, quais ações são permitidas e quais condições devem ser atendidas, oferecendo um controle de acesso granular e seguro. É possível deixar um bucket com seus objetos públicos. A configuração da política irá certifica quem poderá acessar ou realizar upload de arquivos neste bucket.
Hospedagem de Sites Estáticos com Amazon S3
O S3 também pode ser configurado para hospedar sites estáticos. Você pode armazenar e servir arquivos HTML, CSS, JavaScript e outros ativos diretamente de um bucket S3, utilizando URLs personalizados e configurando o bucket para atuar como ponto de entrada para o site. Essa solução é ideal para sites que não requerem processamento dinâmico no servidor.
Classes de Armazenamento (Tiers) do S3
O S3 oferece diferentes classes de armazenamento, cada uma otimizada para casos de uso específicos. As opções incluem:
S3 Standard: Alta disponibilidade e desempenho, ideal para dados de acesso frequente, sites estáticos, soluções de Big Data e aplicações no geral.
S3 Intelligent-Tiering: Movimenta automaticamente os dados entre as classes com base em padrões de uso. Essa classe monitora os acessos de cada objeto, e dependendo da ociosidade de acesso, pode automaticamente movimentar para classes do Glacier.
S3 Standard-IA (Infrequent Access) e S3 One Zone-IA: Para dados que são acessados raramente.
S3 Glacier Instant Retrieval: Classe do glacier é destinado para arquivos de longa duração e oferencem um custo menor se comparados a classes do Standard. Processo de recuperação de milissegundos.
S3 Glacier Flexible Retrieval: Classe intermediária do Glacier, que oferece um ótimo custo benefício, e processo de recuperação dos objetos que podem durar algumas horas.
S3 Glacier Deep Archive: Classe com menor custo de armazenamento, destinado para objetos de longa retenção. Para recuperar um arquivo, o processo pode durar até 12 horas para disponibilização do arquivo.
Essas classes ajudam a otimizar custos sem sacrificar a resiliência dos dados.
Regras de Ciclo de Vida (Lifecycle)
As regras de ciclo de vida do S3 permitem automatizar a movimentação e exclusão de objetos com base em sua idade ou padrão de acesso. É possível configurar regras para mover dados entre classes de armazenamento ou excluir objetos antigos, simplificando a gestão e reduzindo custos de armazenamento. As políticas do Lifecycle pode ser configurada para todos os objetos do bucket ou para subpastas.
Comentários