Digite para filtrar os verbetes do Glossário.

    Banco de dados · Formação DevOps

    O que é Atomicidade?

    Atomicidade permite confirmar ou cancelar alterações como uma unidade. Entenda o escopo da transação, os limites da garantia e um exemplo de rollback.

    Também chamado de: operação atômica

    Confirmar o conjunto ou cancelar suas alterações

    Atomicidade é a propriedade transacional que permite tratar um conjunto de alterações como uma unidade. Dentro do escopo coberto pela transação, a confirmação mantém o conjunto, e o cancelamento desfaz suas alterações transacionais. O bloco não deve terminar com apenas uma parte desse conjunto confirmada.

    Imagine uma rotina que cria uma turma e exige registrar sua primeira matrícula no mesmo procedimento. Se a matrícula for recusada, manter a turma criada por essa tentativa deixaria o cadastro incompleto. Agrupar as duas gravações permite cancelar a criação da turma junto com a tentativa de matrícula.

    A garantia depende de as etapas participarem da mesma transação e de o código tratar o caminho de falha corretamente. Gravações realizadas por conexões separadas ou já confirmadas não entram automaticamente nesse mesmo grupo.

    Um exemplo de cancelamento

    Demonstração de alterações canceladassql
    BEGIN;
    INSERT INTO turmas (id, nome) VALUES (10, 'Turma de teste');
    INSERT INTO matriculas (pessoa_id, turma_id) VALUES (7, 10);
    ROLLBACK;

    O exemplo pressupõe tabelas compatíveis, o estudante 7 existente e o identificador 10 disponível para a turma. Ele executa ROLLBACK para mostrar o efeito do cancelamento. Ao final, a turma e a matrícula criadas dentro desse bloco não devem permanecer como alterações confirmadas.

    Atomicidade não significa simultaneidade física

    Os comandos podem executar em sequência e consumir tempo. A propriedade descreve a confirmação ou o cancelamento da unidade, não a execução de todas as instruções no mesmo instante. O banco utiliza mecanismos internos para oferecer essa garantia.

    A visibilidade entre transações também envolve isolamento. Duas consultas feitas dentro da mesma transação podem ou não enxergar uma alteração confirmada por outra entre elas, dependendo do nível de isolamento. Agrupar as gravações para confirmação conjunta não define, sozinho, o que cada consulta consegue ler.

    O limite da unidade transacional

    Um email enviado e uma chamada a uma API externa não são desfeitos pelo rollback do banco. Se a rotina executa esses efeitos antes da confirmação, eles podem permanecer mesmo após o cancelamento das gravações. A aplicação precisa coordenar esse trabalho adicional.

    Nem todo efeito interno volta ao valor anterior. No PostgreSQL, valores consumidos de sequências podem deixar lacunas após uma transação cancelada. Isso não significa que uma linha parcialmente confirmada tenha permanecido.

    Como conferir a garantia

    Em desenvolvimento, provoque uma falha após uma gravação inicial e consulte o resultado depois de encerrar a transação. Confira todas as tabelas envolvidas, a conexão utilizada e a ausência de confirmações intermediárias. Compare os registros, sem exigir que contadores técnicos nunca avancem.

    O verbete de transação explica como delimitar a unidade e separar suas garantias dos efeitos externos.

    Dúvidas frequentes

    Perguntas frequentes sobre Atomicidade

    Todas as gravações precisam acontecer no mesmo instante?
    Os comandos podem executar em sequência. A propriedade trata o resultado transacional como uma unidade para confirmação ou cancelamento.
    Atomicidade desfaz um email já enviado?
    Uma transação local do banco não controla automaticamente efeitos externos. Emails e chamadas a outros serviços exigem coordenação própria.
    Uma lacuna na sequência comprova falha de atomicidade?
    No PostgreSQL, valores consumidos de sequências podem não ser reutilizados após cancelamento. Isso é diferente de uma linha parcialmente confirmada.
    Basta colocar parte das gravações em uma transação?
    As alterações que precisam ser confirmadas juntas devem participar do escopo correto. Confirmações intermediárias ou conexões independentes podem separar esse conjunto.

    Para continuar

    Recursos relacionados

    Aplicação na formação

    Formação DevOps

    A atomicidade delimita quais gravações precisam ser confirmadas ou canceladas juntas no banco.

    Conhecer a formação
    Capa da Formação DevOps

    Fontes consultadas

    Referências deste verbete

    Este verbete ajudou você?

    Planos Promovaweb

    Tire seus projetos do papel

    O Plano Martech cobre automação e atendimento. O Plano IA Makers acrescenta desenvolvimento com IA, enquanto o Plano Founders trata de gestão de negócios. Todos são anuais.

    Plano Martech

    Para conectar automação, marketing e atendimento com infraestrutura própria.

    R$ 897

    R$ 597/ano

    • Grade de automação, atendimento, marketing e análise de indicadores
    • Instalador Exclusivo Promovaweb
    • n8n, Evolution API, Chatwoot e Mautic
    • Trilha DevOps incluída
    • Encontros ao vivo (terça e quinta)
    • Comunidade e acompanhamento
    Conhecer o plano

    Plano Founders

    Plano anual para fazer um projeto de tecnologia avançar, com 90 dias de mentoria intensiva. R$ 1.997 à vista ou até 10x de R$ 219 no cartão.

    R$ 1.997/ano

    • 12 meses de acesso ao Founders
    • 90 dias de mentoria intensiva, um encontro por dia útil
    • Dia de conteúdo (terça e quinta) e War Room (segunda, quarta e sexta)
    • Encontro semanal em grupo após a fase intensiva
    • Formação Vibe Coding incluída no plano anual
    • Consultoria individual de até duas horas (bônus)
    Conhecer o plano