Cargas de trabalho transacionais e analíticas. Agora vamos falar das duas siglas bastante conhecidas que são OLTP e OLAP. Vamos lá! Sobre o LTP de Online Transaction Processing, ou processamento de transações online, nós temos aqui o processamento de várias transações simultaneamente por diferentes agentes, por diferentes pessoas. Vamos associar o exemplo de um banco, instituição financeira, com diferentes operações de crédito e débito nas contas correntes, diferentes transferências de valores financeiros com diferentes interlocutores, tudo isso acontecendo de maneira simultânea. interlocutores, tudo isso acontecendo de maneira simultânea. Então, um banco, instituição financeira, é um ótimo exemplo do que é uma carga de trabalho transacional, ou OLTP, Online Transactional Processing. Normalmente, estamos falando da inserção, atualização e exclusão de pequenas quantidades de dados com bastante frequência e com o objetivo de proteger essas transações e aqui transações a gente tem o conceito original de transação econômica ou financeira das trocas que estão acontecendo na vida real. Um exemplo adicional além do banco e instituição financeira seria o processo de compra e venda de produtos e o manejo desses produtos saindo de um estoque indo para o comprador. Então esse tipo de transação é o que embasa o conceito aqui de processamento de transações. Esse tipo de carga de trabalho, o LTP, é o que embasa o conceito aqui de processamento de transações. Esse tipo de carga de trabalho, o LTP, é o tipo de carga tradicional ou clássico dos bancos de dados relacionais. Os bancos de dados relacionais utilizam uma modelagem de dados que favorece este processamento, que tem uma característica de inserção, atualização e exclusão dos dados em pequenas quantidades, porém com muita frequência. Agora, falando de OLAP, carga de trabalho analítica, então OLAP, de Online Analytical Processing, ou Processamento Analítico Online. Para compreendermos bem o que é o OLAP, vamos traçar um paralelo em relação ao OLTP. como mencionamos, é a forma de você processar ou ele permite a execução de um grande número de transações de maneira simultânea por diferentes interlocutores. E o OLAP, na verdade, consiste na leitura de todo esse universo que está sendo transacionado. Então, existe uma leitura predominante, uma leitura massiva nesse tipo de carga de trabalho. E destaque para esse comentário final, em um banco de dados para fins analíticos. Ou seja, essas operações de leitura, que frequentemente vão necessitar também de operações de agregação, que são as sumarizações, as contagens e os agrupamentos, essa informação, acontecem tipicamente em um banco de dados com esse fim analítico, ou seja, um banco de dados diferente e adicional ao banco de dados que está processando o seu transacional, o seu OLTP. O objetivo do OLAP é justamente empoderar as pessoas gestoras das empresas que estão utilizando esses bancos de dados a tomarem decisões baseadas em dados, baseadas em fatos. aprofundando mais nas diferenças entre OLTP e OLAP vamos então começar falando sobre execução então em OLTP execução em tempo real de um grande número de transações por um grande número de pessoas, tudo isso de maneira simultânea. Já no OLAP, nós temos essa consulta de muitos registros, até mesmo uma varredura completa da base de dados, em um banco de dados que tem este fim. Então, um banco de dados adicional ao banco de dados transacional. Sobre tempos de resposta, em um LTP, os tempos de resposta são extremamente rápidos. Então, como nós temos muita coisa acontecendo em paralelo, diferentes transações concorrendo entre si, os tempos de resposta para tudo isso tem que ser extremamente rápido ou praticamente instantâneo para representar aquilo que está acontecendo na nossa vida real, nas transações que estão acontecendo nesse instante. Já no LTP, os tempos de resposta são mais lentos. Por mais que a gente consiga gerar relatórios e dashboards com informação em tempo real, este processamento é relativamente mais lento do que o que acontece em OLTP. Sobre a característica das operações, OLTP modifica pequenas quantidades de dados com muita frequência. Então destaque aqui para frequência. para a frequência e, por pequenas quantidades, vamos entender que estamos falando de um único registro ou de alguns poucos registros. E também vai existir um certo equilíbrio entre a quantidade de leituras e gravações no banco de dados. Então, tem leitura e escrita acontecendo. Então, tem leitura e escrita acontecendo. Já no OLAP, nós temos o predomínio de leitura. Então, a leitura é muito intensa, é uma leitura complexa, porque vão existir operações de agregação, que são as sumarizações, contagens e agrupamentos, e não vai existir modificação de dados de forma alguma no OLAP. Ainda sobre tempos de resposta em OLTP, nós vamos perceber o uso de indexação. Então, os índices são muito importantes em OLTP para melhorar os tempos de resposta. Já no OLAP, a técnica que melhora o tempo de resposta, o que facilita o acesso, é o formato colunar, que justamente vai facilitar essas operações, tanto de leitura, de passar por todos os registros, e também a respectiva agregação dessa informação. Sobre backups, em OLTP os backups são frequentes ou até mesmo simultâneos. Já em OLAP a frequência dos backups são menores. A frequência é menor, você faz menos backups. Sobre espaço de indisco, aqui um ponto interessante, a modelagem de dados do LTP, ou seja, a modelagem de dados que predomina nos bancos de dados relacionais, porque não vai existir duplicidade das informações. Você grava uma única informação, um único dado, uma única vez e o modelo de dados, com seus relacionamentos entre as entidades, que são as tabelas, vai fazer a montagem da informação completa que a gente necessita. a montagem da informação completa que a gente necessita. Já no OLAP, nós vamos ter dois fatores diferentes. Então, primeiro, carga de dados histórica. Então, você imagina no OLAP que nós vamos acumular 5 anos de transações, talvez 10 anos de transações, 20 anos. Então, esse histórico, com certeza, representa algumas vezes o universo recente de um transacional. Talvez o seu transacional, da empresa que você trabalha, tenha um ano de dados, ou dois anos de dados. Mas, certamente, não é um sistema transacional que vai ter 10 anos de informação ali. Esse backup, perdão, esse histórico é papel do OLAP. E uma outra coisa que vai acontecer em OLAP também é a modelagem de dados que admite uma denormalização da informação. Frequentemente em OLAP nós vamos aplicar a modelagem dimensional de dados, que é uma maneira mais humanizada de compreender a informação e que também vai favorecer as leituras, as agregações que vão acontecer para a gente chegar nas perguntas de negócios sofisticados, que vão perguntar qual é a quantidade de vendas que aconteceu no último mês na região sudeste do Brasil por pessoas que estão na faixa entre 30 e 50 anos. Perceba que esse enunciado todo é uma consulta complexa, sofisticada. E essa modelagem de dados que admite uma denormalização, ou seja, uma duplicação da informação, também vai impactar e pode elevar o uso de armazenamento. Mas, sobretudo, em OLAP, é o histórico que fará com que a massa de dados seja, algumas vezes, o tamanho do seu transacional. E para concluir a nossa compreensão sobre o RTP e OLAP, é justamente esse tema que eu acabei já abordando sobre as consultas. Em um LTP, a consulta é simples e está relacionada a um ou poucos registros. E já no LAP, teremos consultas sofisticadas com essa complexidade de análise e passando por um grande número de registros que além de serem lidos serão com certeza sumarizados de alguma maneira. Então, considerações finais, OLTP vamos compreender como um sistema de modificação de dados em tempo real, que representa todas as transações que estamos realizando na vida cotidiana dos negócios. E o OLAP é um sistema de armazenamento de dados multidimensional, histórico, usado para justamente ter essas grandes sumarizações e agregações e contagens para fins analíticos. E uma outra coisa interessante do OLAP é que geralmente as análises desses dados estão relacionadas a um ou mais OLTPs.