O OLTP ou Processamento de Transações Online é um tipo de processamento de dados que consiste na execução de várias transações que ocorrem simultaneamente (transações bancárias online, compras, entrada de pedidos ou envio de mensagens de texto, por exemplo). Essas transações são tradicionalmente chamadas de transações econômicas ou financeiras, registradas e protegidas para que uma empresa possa acessar as informações a qualquer momento para fins contábeis ou de relatórios.
No passado, o OLTP era limitado a interações do mundo real em que algo era trocado, como por dinheiro, produtos, informações, solicitação de serviços e assim por diante. Mas a definição de transação nesse contexto se expandiu ao longo dos anos, principalmente desde o advento da internet, abrangendo qualquer tipo de interação digital ou engajamento com uma empresa que possa ser acionado de qualquer lugar do mundo e por meio de qualquer sensor conectado à web Isso também inclui qualquer tipo de interação ou ação, como fazer download de pdfs em uma página da web, visualizar um vídeo específico ou acionadores de manutenção automática ou comentários em canais sociais que podem ser críticos para uma empresa registrar a fim de atender melhor seus clientes.
A definição primária para transações, sejam elas econômicas ou financeiras, continua sendo a base para a maioria dos sistemas OLTP, portanto, o processamento de transações online normalmente envolve inserir, atualizar e/ou excluir pequenas quantidades de dados em um armazenamento de dados para coletar, gerenciar e proteger essas transações. Normalmente, uma aplicação da Web, móvel ou corporativa, rastreia todas essas interações ou transações com clientes, fornecedores ou parceiros e as atualiza no banco de dados OLTP. Esses dados de transação armazenados no banco de dados são essenciais para as empresas e são usados em relatórios ou analisados visando a tomada de decisões orientada por dados.
Leia sobre como outras empresas, como Retraced, Parque Arqueológico de Pompeia, Jasci ou Siemens, conseguiram criar cargas de trabalho de processamento de transações na nuvem.
As empresas geralmente têm dois tipos de recursos de processamento de dados: OLTP e OLAP.
Embora pareçam semelhantes e sejam sistemas de processamento de dados online, há uma grande diferença entre os dois.
O OLTP permite a execução em tempo real de um grande número de transações por um grande número de pessoas, enquanto o processamento analítico online (OLAP) geralmente envolve a consulta dessas transações (também chamadas de registros) em um banco de dados para fins analíticos. O OLAP ajuda as empresas a extrair insights de dados de transações para que possam usá-los em tomadas de decisões mais informadas.
A tabela abaixo mostra a comparação entre os sistemas OLTP e OLAP.
Sistemas OLTP |
Sistemas OLAP |
Habilita a execução em tempo real de um grande número de transações de banco de dados por um grande número de pessoas |
Geralmente envolve a consulta de muitos registros (mesmo todos os registros) em um banco de dados para fins analíticos |
Requer tempos de resposta extremamente rápidos |
Requer tempos de resposta que são ordens de magnitude mais lentos do que os exigidos pelo OLTP |
Modifica pequenas quantidades de dados com frequência e geralmente envolve um equilíbrio de leituras e gravações |
Não modifica os dados de forma alguma; cargas de trabalho são geralmente de leitura intensiva |
Usa dados indexados para melhorar os tempos de resposta |
Armazena dados em formato colunar para permitir acesso fácil a um grande número de registros |
Exige backups de banco de dados frequentes ou simultâneos |
Exige backups de banco de dados muito menos frequente |
Exige relativamente pouco espaço de armazenamento |
Normalmente tem requisitos de espaço de armazenamento significativos, porque armazenam grandes quantidades de dados históricos |
Geralmente executa consultas simples envolvendo apenas um ou alguns registros |
Executa consultas complexas envolvendo um grande número de registros |
Portanto, o OLTP é um sistema de modificação de dados online, enquanto o OLAP é um sistema de armazenamento de dados multidimensional histórico online usado para recuperar grandes quantidades de dados para fins analíticos. O OLAP geralmente fornece análises sobre dados que foram capturados por um ou mais sistemas OLTP.
A arquitetura mais comum de um sistema OLTP que usa dados transacionais é uma arquitetura de três camadas que normalmente consiste em uma camada de apresentação, uma camada de lógica de negócios e uma camada de armazenamento de dados. A camada de apresentação é o front-end, onde a transação se origina por meio de uma interação humana ou é gerada pelo sistema. A camada lógica consiste em regras que verificam a transação e garantem que todos os dados necessários para concluir a transação estejam disponíveis. A camada de armazenamento de dados armazena a transação e todos os dados relacionados a ela.
As principais características de um sistema de processamento de transações online são as seguintes:
Os bancos de dados relacionais foram construídos especificamente para aplicações de transação. Eles incorporam todos os elementos essenciais necessários para armazenar e processar grandes volumes de transações, ao mesmo tempo em que são continuamente atualizados com novos recursos e funcionalidades para extrair mais valor desses ricos dados de transações. Os bancos de dados relacionais são projetados desde o início para fornecer a maior disponibilidade possível e o desempenho mais rápido. Eles fornecem simultaneidade e conformidade com ACID para que os dados sejam precisos, estejam sempre disponíveis e sejam facilmente acessíveis. Eles armazenam os dados em tabelas após extrair os relacionamentos entre os dados para que estes possam ser usados por qualquer aplicação, garantindo uma única fonte confiável.
À medida que as transações se tornaram mais complexas, originadas de qualquer fonte ou dispositivo, em qualquer lugar do mundo, os bancos de dados relacionais tradicionais não eram avançados o suficiente para atender às necessidades dos fluxos de trabalho transacionais modernos. Foi necessário evoluir para lidar com as transações modernas, dados heterogêneos e escala global e, o mais importante, para executar cargas de trabalho mistas. Bancos de dados relacionais transformados em bancos de dados multimodais que armazenam e processam não apenas dados relacionais, mas também todos os outros tipos de dados, incluindo xml, html, JSON, Apache Avro e Parquet, e documentos nativos, sem muita transformação. Os bancos de dados relacionais também precisavam adicionar mais funcionalidades, como clustering e sharding, para que pudessem ser distribuídos globalmente e escalados infinitamente para armazenar e processar volumes de dados cada vez maiores e fazer uso de armazenamento mais barato disponível na nuvem. Com outros recursos, como in-memory, análise avançada, visualização e filas de eventos de transação incluídos, esses bancos de dados agora podem executar várias cargas de trabalho, como executar análises em dados de transações ou processar dados de streaming (Internet of Things (IoT)) ou executar análise espacial e gráfica.
Bancos de dados relacionais modernos construídos na nuvem automatizam muitos aspectos operacionais e de gerenciamento do banco de dados, facilitando o uso e o provisionamento para os usuários. Eles fornecem provisionamento, segurança, recuperação, backup e dimensionamento automatizados para que os DBAs e as equipes de TI tenham que gastar muito menos tempo para mantê-los. Também incorporam inteligência para ajustar e indexar automaticamente os dados para que o desempenho das consultas ao banco de dados seja consistente, independentemente da quantidade de dados, do número de usuários simultâneos ou da complexidade das consultas. Esses bancos de dados em nuvem também incluem recursos de autoatendimento e APIs REST para que desenvolvedores e analistas possam acessar e usar facilmente os dados. Isso simplifica o desenvolvimento de aplicações, oferecendo flexibilidade e tornando mais fácil para os desenvolvedores criarem novas funcionalidades e personalizações em aplicações. Também simplifica a análise, tornando mais fácil para analistas e cientistas de dados usarem os dados para extrair insights.
À medida que a equipe de TI se esforça para acompanhar a velocidade dos negócios, é importante que, ao escolher um banco de dados operacional, você considere suas necessidades imediatas de dados e os requisitos de dados de longo prazo. Para armazenar transações, manter sistemas de registro ou gerenciamento de conteúdo, você precisará de um banco de dados com alta simultaneidade, alta produtividade, baixa latência e características de missão crítica, como alta disponibilidade, proteção de dados e recuperação de desastres. Muito provavelmente, a carga de trabalho flutuará ao longo do dia, da semana ou do ano, portanto, garantir que o banco de dados possa ser dimensionado automaticamente ajudará você a economizar muitas despesas. Você também pode precisar decidir se deve usar um banco de dados específico ou um banco de dados de uso geral. Se os requisitos forem para um tipo específico de dados, um banco de dados criado especificamente pode funcionar para você, mas certifique-se de não comprometer nenhuma das outras características necessárias. Criar essas características posteriormente na camada de aplicação seria caro e consumiria muitos recursos. Além disso, se suas necessidades de dados crescerem e você quiser expandir a funcionalidade de sua aplicação, adicionar mais bancos de dados de propósito único ou adequados apenas criará silos de dados e aumentará os problemas de gerenciamento de dados. Considere também outras funcionalidades que podem ser necessárias para sua carga de trabalho específica, por exemplo, requisitos de ingestão, requisitos de computação push-down e tamanho no limite.
Selecione um serviço de banco de dados em nuvem à prova de futuro com recursos de autoatendimento que automatizarão todo o gerenciamento de dados para que seus consumidores de dados – desenvolvedores, analistas, engenheiros de dados, cientistas de dados e DBAs – possam fazer mais com os dados e acelerar o desenvolvimento de aplicações.
Saiba mais sobre o Autonomous Transaction Processing Database da Oracle, o serviço de banco de dados de OLTP na nuvem. Experimente gratuitamente.