|
Acadêmico(a): João Batista Gianisini Júnior |
Título: Desenvolvimento de um Framework para Replicação de Dados entre Bancos Heterogêneos |
|
Introdução: |
Muitas empresas apresentam sua estrutura física descentralizada, isto é, unidades de produção, vendas, entre outras, geograficamente distantes entre si. Com isto, torna-se complexa a gerência das informações da empresa, principalmente nos aspectos de disponibilidade e compartilhamentos de dados. O compartilhamento dos dados é um fator muito importante para que uma empresa possa analisar e tomar decisões. Portanto, a falta de integração que não viabiliza uma visão concentrada das informações, pode prejudicar as necessidades administrativas de uma empresa. No entanto, este foi um dos grandes motivos para o crescimento e inovações tecnológicas na área de banco de dados distribuídos (CASANOVA; MOURA,1985, p. 1), tendo como característica deste trabalho, o recurso de replicação de dados. Para que possa ocorrer este compartilhamento de informações é necessário um mecanismo que replica os dados mantidos em um banco de dados local para outro remoto, tendo assim uma cópia dos dados atualizada na base em que foi replicada. Este conceito pode definir um cenário em que uma empresa necessita manter os dados replicados em cada filial. Neste caso as aplicações desenvolvidas devem realizar as consultas localmente, mas os comandos Data Manipulation Language (DML) (insert, update e delete) sobre as tabelas replicadas, devem ser obrigatoriamente replicados para as bases associadas (JOHANN; KROTH, 2005, p. 1). Existem algumas características que podem dificultar o processo de replicação, como por exemplo, o caso em que algum dos participantes esteja off-line na rede, podendo ocorrer falhas nos processos de envio e recebimento de dados. Para resolver este problema foi necessário um recurso que garanta que a informação possa ser enviada ou recebida assim que seja restabelecida a comunicação, sendo caracterizado como comunicação assíncrona. A heterogeneidade nos Sistemas Gerenciadores de Bancos de Dados (SGBD) envolvidos é outro fator que pode dificultar a replicação. Para implementar a heterogeneidade, uma das alternativas que pode ser utilizada é o Hibernate que conceitualmente, é um framework de acesso a banco de dados, construído na linguagem Java. O mesmo realiza o mapeamento das tabelas do modelo relacional para classes da linguagem servindo como uma ponte entre a aplicação e o SGBD. Como o Hibernate não é capaz de replicar as informações de um SGBD para outro, uma das alternativas que possibilitou a replicação foi implementar uma integração com algum mecanismo de troca de mensagens como, por exemplo, o Java Message Service (JMS). Segundo Waeny e Numazaki (2004), JMS é uma Application Program Interface (API) que permite aplicações criar, enviar e ler mensagens. Trabalha com a estrutura de filas de mensagens que é gerenciada por um servidor chamado Provider JMS. O Provider tem a funcionalidade de gerenciar as mensagens enviadas pelos clientes na fila, disponibilizando as mensagens para consumo ou enviar diretamente para outros clientes. Integrando as tecnologias supracitadas, é possível criar uma ferramenta que possibilita a replicação de dados. Esta ferramenta pode fornecer recursos como qualidade de serviço mesmo utilizando a comunicação de forma assíncrona e também um certo nível de abstração dos SGBD`s participantes da replicação. |
|
|