Rodar S3 no seu Laptop? Isso muda tudo (MinIO)

BBetter Stack
Computing/SoftwareSmall Business/StartupsInternet Technology

Transcript

00:00:00As faturas do S3 podem ficar muito caras; os apps geram tantos dados que cada upload e download
00:00:05pode acabar ficando pesado. E a maioria dos devs acha que armazenamento de objetos significa uma coisa: a nuvem.
00:00:09Mas isso nem sempre é verdade. E se você pudesse rodar um armazenamento de objetos compatível com S3 no seu laptop?
00:00:15É aí que entra o Mini I/O. Ele é rápido, compatível com S3 e roda em praticamente qualquer lugar,
00:00:20até localmente no seu Mac. Nos próximos minutos, vou mostrar três coisas para vocês.
00:00:25Como configurar e rodar, por que os devs estão usando e a realidade de ferramentas como esta.
00:00:30[MÚSICA]
00:00:35Se você está tentando cortar custos de nuvem ou facilitar o desenvolvimento, isso pode te poupar muita
00:00:39dor de cabeça. Aqui está o que isso realmente resolve. A maioria dos devs e equipes lida com estes mesmos três
00:00:45problemas: contas de nuvem difíceis de prever; dados que estão longe demais do app que os utiliza;
00:00:51e cargas de trabalho de IA que precisam de armazenamento local rápido. O Mini I/O nos dá outra opção. Temos
00:00:57compatibilidade com S3, forte desempenho e controle total sem depender da nuvem.
00:01:01É ótimo para desenvolvimento local, protótipos, pipelines de RAG, mídia, backups, tudo isso. E sim,
00:01:07você pode rodar tudo localmente, sem VPS, sem conta na nuvem. Agora, um rápido aviso:
00:01:12o repositório no GitHub está arquivado e em modo de manutenção. Então não podemos usar isso
00:01:17para sempre. Eles mudaram o foco do Mini I/O para o Mini I/O AI Store, mas o I/O ainda está lá também.
00:01:24Podemos usar isso por um bom tempo com benefícios reais. Se você gosta de ferramentas que aceleram
00:01:29seu fluxo de trabalho, inscreva-se. Temos vídeos saindo o tempo todo.
00:01:32Certo, deixe-me mostrar como isso é simples. Tenho o Mini I/O rodando em um container Docker
00:01:37aqui no meu M4 Pro. Primeiro, eu o conecto e vou rodar "MC alias set local". Vou adicionar
00:01:44meu localhost e apenas usar as credenciais de login fornecidas por enquanto. Então posso criar um bucket,
00:01:50MC, MB local demo bucket, podemos chamar assim. E então vou apenas começar a subir alguns arquivos:
00:01:55imagem, texto, JSON. Primeiro minha imagem, depois eu poderia fazer um arquivo de texto leve.
00:02:02E, finalmente, vamos apenas adicionar alguns dados JSON aqui. Agora, se eu listar tudo, aqui está. Estrutura limpa,
00:02:08exatamente como o S3. Agora aqui está a parte que a maioria de nós realmente se importa. Eu rodo este pequeno script
00:02:14Python bem aqui. E ele ainda usa o Boto3, mesmo estilo de código da AWS. Não há mudanças aqui.
00:02:22E no navegador, está rodando no localhost. Abro o bucket. Posso expandir as pastas. Posso
00:02:27clicar na imagem e pronto, a prévia. Parece o S3, exceto que está rodando no seu laptop.
00:02:33Então, o que é o Mini I/O na verdade? Basicamente, é um servidor de armazenamento de objetos que fala a
00:02:39API do Amazon S3. Assim você mantém tudo o que já sabe. Podemos manter os mesmos SDKs. Mantemos os mesmos comandos,
00:02:46o mesmo modelo mental, mas em vez de estar preso à AWS, ele roda onde você quiser. Docker,
00:02:53Kubernetes, bare metal, edge, ou apenas no seu laptop como eu estou aqui. E isso importa mais agora
00:02:59do que antes, porque nossos apps estão ficando cada vez mais pesados em dados com o passar dos anos. Porque quando
00:03:05seu computador está aqui e seus dados estão em outro lugar, acabamos pagando muito dinheiro por isso,
00:03:10em latência e em custos de nuvem. O Mini I/O muda tudo isso. Ele traz o armazenamento para mais perto de onde o trabalho
00:03:17acontece. E é por isso que esta configuração é tão útil para desenvolvimento e testes. Não para produção,
00:03:22mas para esses dois casos é muito bom. No meu caso, estou rodando localmente, o que o torna ótimo para
00:03:27construir e depurar apps pesados em dados antes mesmo de tocar na produção. Agora, temos muitas outras
00:03:33opções por aí, claro. Como o AWS S3, você tem armazenamento totalmente gerenciado e escala massiva. Mas, novamente,
00:03:40a troca é o custo, taxas, e então você fica preso à AWS. Com o Ceph, você tem algo ótimo e
00:03:46também escalável, mas é mais complexo de rodar. Mais partes móveis, mais sobrecarga. Agora, um padrão comum
00:03:52pode ser algo assim: posso usar o Mini I/O localmente para desenvolvimento, Mini I/O ou S3 para
00:03:57staging na nuvem e em produção. Isso funciona porque sua configuração local ainda corresponde ao modelo S3 que seu
00:04:03app já usa ou usará. Então, se seu app lida com muitos dados, o Mini I/O faz sentido
00:04:10enquanto estamos em desenvolvimento. Certo, agora deixe-me ser sincero por um segundo. Você deve usar isso? Bem,
00:04:15é fácil de implantar, é um único binário ou Docker, forte compatibilidade com S3 e é muito rápido.
00:04:21E se você está movendo muitos dados, evitar taxas de saída (egress) é uma grande vitória. Mas aqui está o detalhe:
00:04:26o Mini I/O de código aberto que você está vendo aqui ainda é gratuito sob a licença AGPL, versão 3.
00:04:33E funciona bem para demos, desenvolvimento local e protótipos. Agora, novamente, eles mudaram o
00:04:38foco para o Mini I/O AI Store. Isso inclui um nível gratuito para uso em nó único, mas então
00:04:43eles agora estão adicionando níveis pagos para clustering, alta disponibilidade e todos esses outros recursos.
00:04:48Então, para aprendizado, dev local e pequenos projetos, isso é muito legal. É bom. Mas para clusters
00:04:53de produção, você provavelmente precisará do AI Store ou alternativas como Ceph ou Garage. Então vale
00:04:59a pena se estivermos em desenvolvimento local ou apenas experimentos, mas talvez não se você precisar de infra totalmente gerenciada ou
00:05:04HA nativo desde o primeiro dia. Ainda podemos continuar com outros para isso. O Mini I/O ou o nível gratuito do AI Store
00:05:11oferece armazenamento estilo S3, forte desempenho e controle total sobre seus dados sem pagar
00:05:16o prêmio da nuvem automaticamente ainda. E você pode testar agora mesmo no seu laptop como eu fiz aqui.
00:05:21Se você gosta de ferramentas de código aberto e dicas de programação como esta para acelerar seu fluxo de trabalho,
00:05:25não deixe de se inscrever no canal Better Stack. Nos vemos em outro vídeo.

Key Takeaway

O MinIO permite simular o ambiente de armazenamento Amazon S3 localmente via Docker ou binário único, eliminando custos de nuvem e latência durante as fases de desenvolvimento e testes de aplicações intensivas em dados.

Highlights

O MinIO funciona como um servidor de armazenamento de objetos local totalmente compatível com a API do Amazon S3.

A configuração utiliza um único binário ou container Docker para rodar em hardware local como o chip M4 Pro.

O uso de armazenamento local elimina taxas de saída de dados (egress) e reduz a latência em aplicações pesadas de IA.

Scripts Python utilizam a biblioteca Boto3 da AWS sem alterações no código para interagir com o MinIO local.

A versão de código aberto do MinIO permanece gratuita sob a licença AGPL v3 para desenvolvimento e protótipos.

O MinIO AI Store substituiu o foco principal do repositório, oferecendo níveis gratuitos para nó único e pagos para alta disponibilidade.

Timeline

Problemas de custo e latência no armazenamento em nuvem

  • Faturas de S3 elevadas resultam do volume massivo de uploads e downloads em aplicações modernas.
  • A distância física entre os dados na nuvem e a aplicação gera latência desnecessária.
  • O armazenamento de objetos local oferece controle total sem a dependência de contas de provedores de nuvem.

O armazenamento de objetos é tradicionalmente associado apenas à nuvem, mas o MinIO quebra essa barreira ao rodar em laptops. Esta ferramenta resolve três dificuldades centrais: previsibilidade de custos, proximidade dos dados e suporte para cargas de trabalho de IA que exigem alta velocidade. O sistema é ideal para fluxos de trabalho de RAG, backups e prototipagem rápida.

Configuração técnica e compatibilidade com S3

  • O comando 'MC alias set local' configura o acesso ao localhost com as credenciais de login padrão.
  • A estrutura de buckets e pastas no MinIO replica exatamente a organização do Amazon S3.
  • O desenvolvimento em Python permanece idêntico ao ambiente AWS através do uso do SDK Boto3.

A instalação ocorre de forma simples em containers Docker, permitindo a criação de buckets via linha de comando instantaneamente. Testes práticos mostram que arquivos de imagem, texto e JSON são gerenciados com a mesma lógica do S3, incluindo prévias de arquivos no navegador. Essa paridade técnica garante que o código escrito localmente funcione sem modificações ao ser movido para a produção.

Comparação com AWS S3 e Ceph

  • O MinIO atua como um servidor que traduz as chamadas da API S3 para o hardware local ou privado.
  • O AWS S3 oferece escala massiva gerenciada, mas impõe taxas de saída e aprisionamento tecnológico (vendor lock-in).
  • O Ceph é uma alternativa escalável, porém apresenta maior complexidade operacional e sobrecarga de gerenciamento.

A escolha entre as ferramentas depende do estágio do projeto, sendo o MinIO superior para desenvolvimento e depuração devido à agilidade. Um fluxo de trabalho comum envolve o uso do MinIO no laptop do desenvolvedor e o S3 ou MinIO em clusters para o ambiente de produção. Essa estratégia mantém o modelo mental de desenvolvimento consistente em todas as etapas do ciclo de vida do software.

Licenciamento e transição para AI Store

  • A licença AGPL v3 cobre a versão de código aberto para uso em demos e experimentos locais.
  • O novo foco da empresa no MinIO AI Store introduz cobranças para recursos de clustering e alta disponibilidade.
  • Alternativas como Garage ou Ceph são recomendadas para quem necessita de infraestrutura totalmente gerenciada sem os custos do novo modelo.

Embora o repositório original do MinIO esteja em modo de manutenção, ele ainda é funcional para projetos de pequeno porte. A transição para o modelo AI Store foca em monetizar recursos avançados como clustering, mas mantém um nível gratuito para usuários individuais. Para aprendizado e testes de performance local, o MinIO continua sendo a ferramenta mais rápida e simples de implantar.

Community Posts

View all posts