O que é gerenciamento de transações?

Empresário e empresária utilizando tablet digital e smartphone em um corredor de escritório

Autores

Josh Schneider

Staff Writer

IBM Think

Ian Smalley

Staff Editor

IBM Think

O que é gerenciamento de transações?

O gerenciamento de transações é um processo integrante dos sistemas de gerenciamento de bancos de dados (DBMS) durante o qual o software de gerenciamento de transações supervisiona, coordena e executa todas as tentativas de transações.

O software de gerenciamento de transações para automação de fluxos de trabalho é uma parte crítica de qualquer setor que envolva o processamento de transações, incluindo comércio eletrônico, finanças, hotelaria e qualquer empresa que exija o gerenciamento preciso de bancos de dados.

Essencialmente, o software de gerenciamento de transações depende do conceito de atomicidade para definir uma transação singular como uma série de operações que devem ser todas concluídas, ou nenhuma será considerada concluída. Em outras palavras, para manter a consistência dos dados, um sistema de gerenciamento de transações garante que uma transação nunca possa ser parcialmente concluída.

Por exemplo, quando uma pessoa tenta sacar dinheiro em um caixa eletrônico, um software de gerenciamento de transações processa as consultas e alterações necessárias no banco de dados para verificar o saldo de sua conta, subtrair o valor solicitado, atualizar os registros do banco e liberar o dinheiro que saiu do caixa eletrônico. Todas essas etapas são consideradas como uma nova transação, e o sistema de gerenciamento de transações garante que todo o processo seja concluído para evitar inconsistências no banco de dados e preservar a exatidão dos registros.

Durante uma transação, o estado do banco de dados correlacionado está em fluxo e é considerado inconsistente. Durante esse período, uma transação pode executar qualquer número de operações de leitura e/ou gravação, quer seja lendo o banco de dados para fornecer informações (como verificar o saldo de uma conta bancária) e/ou gravando novas informações no banco de dados (como atualizar o saldo de uma conta após um saque). Somente depois que a transação for totalmente concluída, o banco de dados poderá retornar a um novo estado consistente.

Projeto 3D de bolas rolando em uma pista

As últimas notícias e insights sobre IA 


Descubra insights selecionados por especialistas e notícias sobre IA, nuvem e outros assuntos no boletim informativo semanal Think. 

Estados das transações

O princípio da atomicidade permite que o software de gerenciamento de transações trate séries discretas de operações como transações singulares, protegendo a integridade dos bancos de dados.

A atomicidade evita erros que poderiam surgir de transações incompletas ou interrompidas. Voltando ao exemplo do caixa eletrônico, a atomicidade impede que uma transação debite dinheiro da conta bancária de um usuário antes do dinheiro efetivamente sair da máquina. Caso algo como uma falha no sistema impeça a saída de dinheiro do caixa eletrônico, toda a transação será abortada, e nenhuma alteração será feita no banco de dados ou na conta do usuário.

Enquanto a transação estiver em andamento e o banco de dados estiver em fluxo, a transação pode ser dividida em vários estados sequenciais de transação.

Ativo

Quando uma transação começa, ela entra em um estado ativo durante o qual as operações de leitura e gravação do banco de dados podem ocorrer.

Confirmação parcial

Depois que todas as etapas necessárias da transação forem concluídas, a transação será considerada apenas parcialmente confirmada até que o banco de dados mestre seja atualizado.

Confirmação

Depois que a transação é concluída com sucesso, ela é confirmada no banco de dados, entrando em um estado confirmado.

Falha

Quando uma transação não consegue executar uma ou mais de suas operações ou é interrompida, ela é considerada como estando um estado de falha. Uma transação com falha acionará uma reversão, que desfaz quaisquer alterações no banco de dados em andamento.

Encerramento

Uma transação no estado encerrado — o estado final de todas as transações — é retirada do sistema e não pode mais realizar nenhuma operação no banco de dados.

Todas as transações começam em um estado ativo e, se não houver problemas, elas avançam para os estados parcialmente confirmado, confirmado e encerrado. Se surgir um problema durante o processamento da transação, a transação entrará no estado de falha e reverterá toda e qualquer alteração feita no decorrer da transação. É possível, então, tentar executar a transação novamente ou abortá-la. Quer sejam abortadas ou confirmadas, todas as transações confirmadas eventualmente passam para um estado encerrado, liberando recursos para o DBMS processar novas transações.

Entendendo as propriedades do ACID

No campo do gerenciamento de banco de dados, a atomicidade é apenas uma das quatro propriedades cruciais necessárias para manter a integridade do banco de dados. Resumidas na sigla ACID, as quatro propriedades são atomicidade, consistência, isolamento e durabilidade:

  • Atomicidade: as transações são tratadas como unidades únicas de operação que podem ser inteiramente executadas ou não, sem que nenhum estado intermediário seja confirmado no banco de dados mestre.
  • Consistência: o banco de dados deve permanecer em um estado consistente para que todo usuário que verifique o banco de dados tenha acesso às informações mais recentes e precisas.
  • Isolamento: as transações devem ser processadas isoladamente umas das outras. Quando as informações de uma transação simultânea são relevantes para outra transação, podem ser implementados níveis de isolamento para facilitar a execução adequada da transação. Os níveis de isolamento comuns incluem leitura não confirmada, leitura confirmada, leitura repetível e serializável.
  • Durabilidade: as transações devem ser duráveis no sentido de que todas as transações concluídas são preservadas pelo DBMS e não serão perdidas em caso de falha do sistema.
Think 2025

Aproveite a nuvem híbrida para potencializar o valor da IA em escala

Descubra como uma arquitetura híbrida bem planejada unifica dados, tira o máximo proveito da computação de alto desempenho e aprimora a segurança para apoiar sua jornada rumo ao sucesso com a IA em escala.

Tecnologias de gerenciamento de transações

Os sistemas de gerenciamento de transações, uma faceta do DBMS, dependem de uma série de tecnologias e softwares de banco de dados que oferecem vários graus de otimizações, como automações, modelos e listas de verificação. Fornecedores como IBM, Microsoft e Oracle oferecem uma grande variedade de soluções de gerenciamento de transações a preços competitivos. As tecnologias mais amplas de gerenciamento de transações incluem as seguintes:

Linguagem de consulta estruturada (SQL)

SQL é a linguagem de programação padrão para armazenar e processar informações em um banco de dados relacional. Os comandos SQL típicos incluem BEGIN TRANSACTION, COMMIT e ROLLBACK.

Java Transaction API (JTA)

A JTA é a interface de programação de aplicativos (API) padrão para aplicações empresariais, permitindo que aplicações de gerenciamento de transações se comuniquem com outros tipos de aplicações, incluindo bancos de dados e sistemas de mensagens, garantindo atomicidade e consistência.

Benefícios e casos de uso do gerenciamento de transações

Vários setores dependem do gerenciamento de transações para gerenciar de forma eficaz e eficiente os bancos de dados relacionais e os importantes recursos operacionais que representam, tanto físicos (inventário) quanto efêmeros (informações).

Veja a seguir uma breve lista de casos de uso comuns de gerenciamento de transações.

Finanças

Os serviços financeiros, incluindo empresas de corretagem e instituições bancárias, dependem do gerenciamento de transações não só nas suas operações diárias, mas também em seus negócios de microssegundo a microssegundo. Sem o gerenciamento de transações, produtos comuns como contas correntes modernas e plataformas de negociação de ações não seriam viáveis.

E-commerce

Nas plataformas de varejo online, o gerenciamento de transações facilita o processamento de pedidos, pagamentos e gerenciamento de inventário para atender efetivamente aos pedidos de comércio eletrônico.

Imóvel

No complicado mundo imobiliário, os coordenadores de transações profissionais contam com um software de gerenciamento de transações para simplificar a compra, venda e locação de imóveis.

Gerenciamento de relacionamento com o cliente (CRM)

Os sistemas de CRM, como o Salesforce, são essenciais para que as grandes organizações rastreiem e gerenciem leads, interações com clientes, pedidos de vendas e uma ampla gama de pontos de contato adicionais que se tornaram acessíveis por meio do DBSM e do gerenciamento de transações.

Desafios do gerenciamento de transações

O gerenciamento de transações é uma parte essencial de muitas operações comerciais modernas. No entanto, o gerenciamento confiável de transações deve ser capaz de mitigar certos desafios críticos:

  • Gerenciamento de dependências: os sistemas de gerenciamento de transações devem estar equipados para gerenciar dependências de transações para evitar situações de impasse nas quais uma ou mais transações individuais fiquem travadas aguardando a liberação de informações de outra transação.
  • Recuperação de falhas no sistema: no caso de falhas no sistema, os sistemas de gerenciamento de transações precisam ser duráveis o suficiente para restaurar o banco de dados para um estado consistente.
  • Processamento em tempo real: nas transações dependentes em tempo real, como mecanismos de negociação de ações e preços, os sistemas de processamento de transações devem ser capazes de lidar com grandes volumes de transações de forma eficiente e com baixa latência.
Soluções relacionadas
Software de transação para IBM Z

O software de transação desempenha um papel crítico nos servidores de mainframe, gerenciando com eficiência várias transações simultaneamente.

Explore CICS no IBM z/OS
Soluções de modernização de aplicações de mainframe

Aproveite a IA generativa para modernização acelerada e simplificada de aplicações de mainframe.

Explore a modernização de mainframe
Soluções para operações de negócios

Aumente a resiliência da sua empresa com soluções impulsionadas por IA para cadeia de suprimentos e gerenciamento inteligente de ativos.

Explore as soluções de operações de negócios
Dê o próximo passo

O software de transação desempenha um papel crítico nos servidores de mainframe, gerenciando com eficiência várias transações simultaneamente.

Explore CICS no IBM z/OS Veja mais informações