Bancos de Dados Distribuídos Introdução Fernanda Baião [email protected] Departamento de Informática Aplicada DIA/UNIRIO 2006.2 © 2006 Asterio Tanaka (adaptações de Fernanda Baião) © 2006 Asterio Tanaka (adaptações de Fernanda Baião) Evolução dos Sistemas de Informação Sistema de informação - Organização - Pessoas - Tecnologia - hardware - software - telecomunicações SISTEMA DE INFORMAÇÃO dados e regras SGBD Programa de Programa de Programa de aplicação de aplicação deBD BD aplicação 50-60’s: programas com dados armazenados em memória 60-70’s: sistemas de arquivos em disco 70-90’s: sistemas de bancos de dados 90’s - ? (depois da WWW): sistemas de informações para Web (WIS) Sistema de Banco de Dados Programa com Programa com Programa com dados armazenados dados armazenados dados armazenados em memória (um ambiente simplificado) Usuários / Programadores Sistema de BD arquivos de dados banco de dados Fontes de dados Consultas / Programas de Aplicação Programa com Programa com Programa com gerência de arquivos gerência de arquivos gerência de arquivos Sistema de Gerência de BD Middle Middle Middle Ware Ware Ware SGBD Software para processar consultas / programas Software para acessar dados armazenados Programa de Programa de Programa de aplicação de BD aplicação de BD aplicação de BD Definição do BD (Metadados) Programa Programade de aplicação de Aplicações aplicação deBD BD BD armazenado SBD = BD + SGBD Page 1 Redes de Microcomputadores Bancos de Dados Centralizados (Década de 80) (Década de 70) hardware + sistema operacional Programa de aplicação de BD cabo da rede Programa de aplicação de BD SGBD dados terminais locais Programa de aplicação de BD modem terminais remotos microcomputadores (estações de trabalho) cada vez mais poderosos Arquitetura Cliente/Servidor com Servidor de Arquivos Arquitetura Cliente/Servidor com Servidor de Bancos de Dados SGBD Servidor de Banco de Dados Servidor de Arquivos cabo da rede Programa + SGBD Servidor de Arquivos cabo da rede Servidor de Impressão Programa + SGBD Programa Programa Arquitetura Cliente/Servidor com Múltiplos Servidores de Bancos de Dados Arquitetura de Aplicações de Bancos de Dados (Década de 90 em diante) (MST, 1998) gateway Cliente Aplicativo Lógica da IU Lógica do negócio Gerência dos dados modem BD mainframe Figura 3.1 Page 2 - Componentes de uma aplicação Servidor de Impressão BD Cliente-Servidor com apresentação distribuída Cliente BD Cliente-Servidor com apresentação remota Servidor Aplicativo Cliente Aplicativo Lógica da IU Servidor Aplicativo Lógica da IU Aplicativo Lógica da IU Lógica do negócio Lógica do negócio Gerência dos Gerência dos dados dados BD BD Figura 3.2 - Apresentação distribuída. Esta forma de distribuição pode ser utilizada para fornecer uma interface gráfica para as tradicionais aplicações base das em mainframes, por exemplo. a- Figura 3.3 - Apresentação remota. BD Cliente-Servidor com gerência de dados remota BD Cliente-Servidor com função distribuída Cliente Servidor Aplicativo Cliente Aplicativo Servidor Aplicativo Aplicativo Lógica da IU Lógica da IU Lógica do negócio Lógica do negócio Lógica do negócio Gerência dos dados Gerência dos dados BD BD Figura 3.5 - Gerência de dados remota. Figura 3.4 - Função distribuída. BD Cliente-Servidor com gerência de dados distribuída BD Cliente-Servidor em três níveis (“three-tier architecture) Cliente Cliente Servidor Aplicativo Servidor Aplicativo Aplicativo Servidor Aplicativo Aplicativo Lógica da IU Lógica da IU Lógica do negócio Lógica do negócio Gerência dos dados Lógica do negócio Gerência dos dados BD BD BD Gerência dos dados Figura 3.8 - Programa de aplicação cliente-servidor com arquitetura em três níveis. Figura 3.6 - Gerência de dados distribuída. i- Page 3 Arquitetura 3-tier C/S (na Web) Vantagens da arquitetura 3-tier Legacy applications Cliente universal Padrão, multimidia portabilidade ooo HTTP Application server XML/HTTP/ SOAP Application servers Servidor de aplicações User interface Applications and transactions RDA Database servers © 2006 Asterio Tanaka (adaptações de Fernanda Baião) Page 4 Navegador Web, cliente EJB, cliente COM, cliente CORBA Facilita a manutenção e a implantação de aplicações É escalável (com n servidores de aplicações) Facilita o acesso a servidores de dados heterogêneos Pode ser generalizada para n camadas XML como base para integração universal de dados