DevMedia - asp.net, Java, Delphi, SQL e web Design, tudo em um só lugar!
Bem vindo a DevMedia!
LOGIN:     SENHA:
 
 

  Este é um post disponível para assinantes MVP
Este post também está disponível para assinantes da SQL Magazine DIGITAL
ou para quem possui Créditos DevMedia.  Clique aqui para saber mais!

Controle de concorrência e uso de bloqueios explícitos no PostgreSQL 9.1 - Revista SQL Magazine 99

Este artigo trata do sistema de controle de concorrência utilizado pelo PostgreSQL versão 9.1, o qual permite que várias seções acessem um mesmo dado em um mesmo tempo sem que isso venha a causar a perda de integridade das informações.





SQL Magazine 99

[Artigo disponível no Leitor Digital DevMedia. Clique aqui para acessá-lo]

> Clique aqui para ler todos os artigos da SQL Magazine 99


Grande parte das organizações, senão todas, do mundo globalizado têm em seus dados o ativo mais valioso. Os dados armazenados e, por conseguinte, as informações processadas são fatores chave para alcançar clientes, bons fornecedores, determinar e antever padrões de consumo e situações futuras de mercado.

A informação é fator estratégico para o sucesso em um mercado altamente competitivo e globalizado. Os processos de negócio devem cada vez mais ser eficientes e eficazes, com alto poder de autonomia e interação entre os envolvidos.

A necessidade por informações vem crescendo nos eixos da quantidade e da complexidade ano após ano. Atualmente é comum, por exemplo, extrair e armazenar dados sociais de clientes, obtidos das mais diversas fontes com a finalidade de estabelecer quais são as necessidades que populam a imaginação dos consumidores para com isso criar um produto que tenha maior sucesso de vendas.

É justamente neste cenário que os SGBDs (Sistemas Gerenciados de Banco de Dados) tem tido papel fundamental a décadas. Toda essa montanha de dados coletados das mais diversas fontes normalmente é armazenada em uma ou mais bases de dados e precisam estar sempre disponíveis e consistentes aos mais diferentes consumidores.

O acesso simultâneo aos dados precisa ser garantido aos mais diversos interessados, sem que qualquer inconsistência seja gerada. Cria-se, assim, um ambiente altamente transacional, onde cada usuário conectado a base de dados precisa ter a impressão de que “é o único” a acessá-la no momento.

Para garantir acesso concorrente aos dados sem gerar qualquer inconsistência aos mesmos, os SGBDs utilizam mecanismos complexos de controle de concorrência, os quais se fundamentam no respeito a um conjunto pré-estabelecido de propriedades, conhecidas pelo acrônimo ACID (Atomicidade, Consistência, Isolamento, Durabilidade).
Em vista da grande importância que o controle de concorrência tem para um SGBD, trataremos especificamente neste artigo de como ele funciona na prática utilizando como caso de estudo o PostgreSQL, versão 9.1. Serão apresentados aspectos teóricos e práticos dos níveis de isolamento transacional e comandos de bloqueio explícitos de dados oferecidos pelo SGBD.


Transação e propriedades ACID
Seria impossível falar sobre controle de concorrência sem apresentar um breve aparato sobre estes dois conceitos fundamentais de qualquer SGBD: transações e propriedades ACID. Na verdade, ambos estão intimamente ligados, de modo que a execução de uma transação deve obrigatoriamente respeitar as quatro propriedades ACID definidas.

Entende-se por transação uma unidade de trabalho enviada ao SGBD que executa de forma atômica, ou seja, efetuando todas as alterações ou nenhuma delas.

Uma transação inicia no primeiro comando que ela contém e acaba quando um comando de commit ou rollback é executado. Ao efetuar um commit, as alterações realizadas pelos comandos encapsulados na transação são persistidas na base de dados. O rollback, por sua vez, descarta toda e qualquer alteração, deixando a base de dados tal qual estava antes da transação iniciar.
"
A exibição deste artigo foi interrompida.

  Este é um post disponível para assinantes MVP
Este post também está disponível para assinantes da SQL Magazine DIGITAL
ou para quem possui Créditos DevMedia.  Clique aqui para saber mais!


Diego Antonio Lusa
Bacharel em Ciência da Computação pela Universidade de Passo Fundo. Desenvolvedor Delphi a 5 anos. Atualmente trabalha com desenvolvimento de integrações de sistemas usando a tecnologia Oracle AIA. Possui sólidos conhecimentos em PL/SQL, programação orientada a objetos e Engenharia de Software.
O que você achou deste post?

    0 COMENTÁRIO

[Fechar]

Este post é fechado - você precisa ter acesso ao post para incluir um comentário.


Nenhum comentário foi postado - seja o primeiro a comentar!
Cursos relacionados
Publicidade
[Fechar]

Você precisa estar logado para dar um feedback.

Clique aqui para efetuar o login
[Fechar]


Este post está fechado. Saiba mais sobre a assinatura MVP!
web-03
DevMedia  |  Anuncie  |  Fale conosco
Hospedagem web por Porta 80 Web Hosting
2013 - Todos os Direitos Reservados a web-03