PROCESSAMENTO DE INFORMAÇÕES GEOGRÁFICAS DISTRIBUÍDAS: ARQUITETURAS PARA AS REDES DE SERVIÇOS PÚBLICOS
Celso Roberto Perez, Carlos A. Guimarães Ferraz, Ana Carolina Salgado
Departamento de Informática - UFPE
Caixa Postal 7851 - CEP 50732-970 - Recife -PE - Brasil
{crp, cagf, acs}@di.ufpe.br
RESUMO
Os Sistemas de Informações Geográficas possuem as funcionalidades necessárias para a manipulação de dados espaciais, permitindo aos usuários coletar, gerenciar e analisar grandes volumes de dados associados e referenciados espacialmente. No passado, os SIG’s usavam estruturas de dados proprietárias, fechadas, adaptadas para suportar tipos específicos de dados científicos, como mapas ou imagens de sat élites, armazenados no sistema. Assim, entre os requisitos mais importantes dos futuros SIG’s estarão a interconexão entre diferentes sistemas e o compartilhamento de informações de diferentes fontes com o objetivo de n& atilde;o duplicar os dados existentes. Mais precisamente, o caminho está na definição e implementação de arquiteturas apropriadas para o suporte aos Sistemas de Informações Geográficas distribu&iacut e;dos abertos. Por tudo isto, no presente trabalho serão identificadas e classificadas (de acordo com a tecnologia utilizada) as diferentes opções para a definição e implementação desta arquitetura. A segui r, e baseando-nos nestas opções, serão propostas duas soluções possíveis para o problema considerado como estudo de caso neste trabalho, o projeto UNIBASE, que tenta definir uma base única de dados, cartogr áficos e descritivos, para o Sistema de Informações Metropolitanas da região do Recife. Finalmente, serão consideradas as perspectivas e tendências futuras na área de processamento de dados geográfico s distribuídos.
ABSTRACT
GIS has all necessaries functionalities to manipulate spatial data. The users are allowed to collect, to manage and to analise large volume of data, which are spatially associated and referenced. Previously, GIS had use d closed data structures which were adjusted to support specific data types (maps, pictures, etc.) stored in the system. Therefore, the information interchanging and sharing will become one of the more important requeriments of the GIS next generation. Th e goal of this sharing is to avoid the duplication of data. We think the way to reach this goal is to define and to implement an architecture to support open distributed GIS. In this paper, we identify and classify (according the used technology) the diff erents alternatives to define and to implement this architecture. We also propose two manners to solve the UNIBASE project problems, which intents to define an unique database for the Metropolitan Information Systems of Recife City. Finally, we consider p erspectives and tendencies in distributed geographic data processing.
Palavras Chaves: Sistemas de Informações Geográficas, Sistemas Distribuídos, Sistemas Abertos, Bancos de Dados Distribuídos, Internet.
1 Introdução
Atualmente, o número de Sistemas de Informações Geográficas instalados em todo o mundo está aumentando em todos os domínios possíveis, variando desde gerenciamento municipal até ; turismo e arqueologia. Como conseqüência, a disponibilidade de dados espaciais em formatos digitais tem sido um dos maiores obstáculos no desenvolvimento e uso de aplicações de SIG’s [PEU90, STA90].
Entre as características mais importantes dos futuros SIG’s está a necessidade de compartilhar informações de diferentes fontes com o objetivo de não duplicar os dados existentes e de beneficiar-se com as atualizações de outros sistemas. Por isso, conectar e compartilhar os SIG’s será a maior mudança no futuro próximo. Porém, existem várias dificuldades a serem enfrentadas.
No passado, os Sistemas de Informações Geográficas usavam estruturas de dados proprietárias, fechadas, adaptadas para suportar tipos específicos de dados científicos, como mapas ou imagens de sa télite armazenados no sistema [PEU90, STA90]. Esta característica não permite a cooperação e o intercâmbio de dados.
Assim, na atualidade estão em andamento ou em etapas de conclusão várias propostas para o desenvolvimento de arquiteturas e sistemas adequados tanto para o compartilhamento quanto para provisão de dados espac iais digitais[SHA94, ZAJ94].
Uma parte destes esforços, a qual é a área de estudo deste trabalho, se concentrou na definição e implementação de arquiteturas apropriadas para o suporte aos Sistemas de Informaç& otilde;es Geográficas distribuídos abertos [LAU95,GAR96]. Um aspecto importante desta proposta é incorporar aos SIG’s a filosofia de "sistemas abertos", adotada por muitos outros sistemas de informações.
Assim, os objetivos deste trabalho são: a definição de uma arquitetura apropriada para o suporte ao processamento de dados geográficos distribuídos abertos, baseada na identificação e ava liação das diferentes opções tecnológicas existentes na atualidade, e a proposta de duas soluções para os problemas de distribuição de dados geográficos do projeto UNIBASE [LEM95].
O resto do trabalho esta organizado da seguinte forma: na seção 2 apresentamos rapidamente o projeto UNIBASE, seus objetivos, características e requisitos. Na seção 3 são identificadas e classif icadas as diferentes opções encontradas, tanto na literatura quanto em projetos em andamento, para a definição de uma arquitetura para o suporte ao processamento de informações geográficas distribuí das. Na seção 4 são apresentadas duas possíveis soluções propostas para o problema em estudo, o projeto UNIBASE.
Finalmente, na seção 5 são colocadas tanto as conclusões quanto os trabalhos futuros desta importante área de pesquisa.
2 Processamento de dados geográficos distribuídos: o projeto UNIBASE
O Sistema de Informações Metropolitanas (SIM) [LEM95] é um instrumento de vital importância para a gestão dos serviços urbanos e para o planejamento e controle do uso do solo da Região Metropolitana do Recife. A base de informações desse sistema se apóia em dois segmentos informacionais de suma importância para a aplicação dos recursos do geoprocessamento: as informações de naturez a espacial e as de natureza descritiva.
Por isso, uma base cartográfica unificada é a condição primordial para a integração das ações dos diversos agentes atuantes no espaço urbano. Motivados por isto, as secretar ias de Planejamento, Transporte, Energia e Comunicação e Saneamento do governo do estado de Pernambuco, junto com as concessionárias de serviços públicos definiram o projeto UNIBASE [LEM95], através do qual se obj etiva a unificação das bases cadastrais dos diversos sistemas de informação da Região Metropolitana do Recife, principalmente aqueles vinculados à prestação de serviços públicos urbanos e às redes de serviços de infra-estrutura urbana. Desta forma, os objetivos a serem atingidos com esta unificação são:
Assim, uma vez definidos os objetivos do projeto, existem uma série de requisitos e princípios básicos sobre os quais está assentado tal projeto:
Resumindo, o ambiente do projeto pode ser caracterizado da seguinte forma:
3 Arquitetura para o suporte ao processamento de informações geográficas distribuídas.
O primeiro passo na criação de sistemas distribuídos é a interconectividade. Dois ou mais recursos computacionais estão interconectados se podem intercambiar mensagens. O segundo pass o é o objetivo mais ambicioso de interoperabilidade. Dois ou mais recursos são interoperáveis se eles podem interagir para executar tarefas conjuntamente. Interoperabilidade requer entendimento mútuo não so mente a nível do sistema ou de programas, mas também a nível de tipos de dados.
Geralmente, diferentes técnicas para cada um destes assuntos podem ser combinadas para criar uma arquitetura particular para um conjunto de sistemas.
Nesta arquitetura, embora as atualizações das aplicações possam ser propagadas aos sistemas locais, o papel primário dela é criar uma visão unificada dos bancos de dados que estão por baixo, de forma que as aplicações que requerem informação de mais de um deles possam ser escritas sem estar preocupados com a distribuição ou heterogeneidade dos conjuntos de dados locais.
Também é necessário que a arquitetura mantenha e facilite as transações entre os sistemas locais. Neste contexto, o SIG poderá conservar tanto visões integradas de aplicaçõ es de informações geográficas distribuídas assim como facilitar consultas e atualizações de um dos sites componentes que necessita acessar informações em algum outro sistema.
Ou seja, levando em consideração tanto as pesquisas e desenvolvimentos realizados na área de SIG’s quanto os aspectos envolvidos na integração e interoperação de sistemas distribuí dos heterogêneos, podemos dizer que os requisitos fundamentais de um Sistema de Informações Geográficas distribuído aberto podem ser classificados em:
1 -Ambiente de aplicação interoperável: Área de trabalho do usuário configurável para utilizar as ferramentas específicas e os dados distribuídos necessários para res olver um certo problema.
2 - Espaço de dados compartilhado: Modelo de dados genérico que suporte uma variedade de aplicações cartográficas e analíticas.
3 - Navegação através de recursos heterogêneos: Métodos de exploração e acesso a informações e recursos analíticos disponíveis na rede.
Estes três requisitos devem ser ligados dentro de uma arquitetura, coexistindo num framework comum que defina como os componentes do sistema interagem. Uma arquitetura para Sistema de Informações Geográ ;ficas distribuído aberto deve fornecer métodos robustos para o acesso a múltiplos formatos de dados usando múltiplos ambientes de software. Ou seja, qualquer SIG ou outra aplicação que use geodados deve ser capa z de utilizar informações distribuídas de qualquer formato.
Assim, todos os esforços dos grupos de pesquisa e projetos em andamento direcionados à definição e implementação de uma arquitetura distribuída aberta que possibilite o suporte ao proces samento de dados geográficos distribuídos podem ser classificados em três grandes grupos, de acordo com a tecnologia utilizada. Nos, neste trabalho estamos propondo uma quarta opção, como resultado da integraç&atil de;o de outras duas já existentes. A figura 1 apresenta estas diferentes opções:
a. Utilização de arquiteturas de bancos de dados distribuídos heterogêneos, como InterViso [TEM93].
b. Utilização de frameworks para o gerenciamento de objetos distribuídos, tais como CORBA (Commom Object Request Broker Architecture) [COR96], OLE (Object Linking and Embedding) [OLE96] e DIOM (Distributed Interoperable Object Model) [DIO96].
c. Utilização da Internet e tecnologias como WWW (World Wide Web), WAIS (Wide Area Information Servers) , GRASS (Geographic Resource Analysis Support Systems), CGI (Commom Gateway Interface), Java entre outras [BER94, SHK94].
d. A tendência mais recente, e que está sendo objeto de intensas pesquisas, consiste na definição de uma arquitetura que integra a tecnologia de objetos distribuídos como um back-end, com tecnologias do tipo WWW, agentes e Java como front-end [CHA96, MER96]. Embora esta seja uma área muito recente, e ainda não consolidada, acreditamos que ela seja a solução mais conveniente para o problema particul ar do tratamento de dados geográficos distribuídos.
Maiores detalhes sobre as características, requisitos, vantagens e desvantagens de cada uma destas opções poderão ser encontradas em [PER97].
Figura 1: Opções para a definição e implementação de arquitetura para o suporte ao processamento de informações geográficas distribuídas.
4 Soluções ao Projeto UNIBASE
Considerando tanto os objetivos e requisitos do projeto UNIBASE, quanto as características das diferentes opções de suporte ao processamento de dados distribuídos apresentadas na seção anter ior, no que segue desta serão propostas, discutidas e justificadas duas soluções para o projeto UNIBASE, que no nosso entender são as que melhor atendem aos objetivos e requisitos definidos por ele.
Como foi dito em seções anteriores, o modelo de sistemas abertos é uma proposta de engenharia de software e de sistemas distribuídos que possibilita e favorece o compartilhamento de dados, recursos e ferramentas entre diferentes usuários e/ou aplicações. Na área de SIG, isto significa mudar as aplicações fechadas, com estruturas e dados internos, por uma arquitetura aberta, interoperável e que intercone cte diferentes SIG´s a uma base de dados geográfica distribuída.
Por isso, a primeira solução aqui proposta para a realização efetiva do projeto UNIBASE consiste da definição e implementação de uma arquitetura em concordância com o Ope n Geodata Interoperability Services (OGIS) [GAR96]. É importante lembrar que OGIS é um modelo operacional, e não um padrão de dados. Ele consiste de um conjunto específico de ferramentas de software que transl adam dinamicamente geodados a partir de várias fontes para um modelo de dados simples baseado em objetos, que será acessado diretamente pelas aplicações distribuídas usando funções básicas. Mas porq ue optar, como solução para o nosso problema da UNIBASE, por uma arquitetura do tipo OGIS? Basicamente, alguns dos motivos que justificam esta escolha são:
Em resumo, optar por uma solução que tenha como base o OGIS fornecerá um modelo que permitira que as diferentes aplicações, definidas e implementadas pelos integrantes do projeto, possam acessar os dados geográficos heterogêneos distribuídos da rede metropolitana do Recife que formam a UNIBASE. Basicamente, o esquema da solução utilizando o Open Geodata Interoperability Services (OGIS) para o problema da UNIBASE pode ser visto na figura 2.
Nesta proposta, o núcleo de OGIS é baseado em CORBA. Por isso, através dele será feito o envio de requisições e respostas entre os objetos que representarão tanto os dados espaciais (UNIBASE original mais os outros níveis específicos de cada concessionária), quanto os dados não espaciais (cadastros, estatísticos e sócio-econômicos, acervo documental, etc.), fornecendo a comun icação básica e o gerenciamento dos dados da arquitetura.
Dessa forma, será mantido um repositório de interfaces e de classes de objetos de forma que qualquer aplicação a ser definida pelos integrantes do projeto possa criar e usar os objetos da UNIBASE, que podem s er distribuídos.
Por outro lado, cada um dos integrantes do projeto (a Telpe, por exemplo) poderá ter sua própria visão lógica da informação geográfica (e não geográfica) de seu interesse (a rede telefônica, neste caso). Para isso, ela utilizará o Virtual Geodata Model (VGM), que consiste basicamente de uma variedade de formatos e estruturas e, fundamentalmente, de diferentes modelos para a representação dos fenômenos geográficos de interesse para a concessionária específica.
Assim, através do uso de VGM, uma concessionária em particular, integrante do projeto UNIBASE, poderá modelar e gerenciar tanto as informações geográficas da UNIBASE, quanto os dados de scritivos associados a ela, obtendo como resultado uma visão particular da UNIBASE como um todo.
Uma vez definidas estas visões lógicas, específicas para cada concessionária, o seguinte passo será a definição e implementação das diferentes aplicações e ser viços a serem usados pelos integrantes do projeto. Para isso, será utilizado o Application Programming Model (APM). Através dele, poderão ser definidas tanto as novas aplicações, quanto as interfaces que se rão usadas para acessar outras aplicações e serviços existentes.
Finalmente, existe uma série de serviços e aplicações oferecidos pelo OGIS que poderão fornecer funcionalidades específicas para as aplicações definidas pelas concession&aac ute;rias, favorecendo a reusabilidade do código.
Como já foi expressado nas seções anteriores, existe uma tendência de evolução dos sistemas cliente-servidor atuais para a orientação a objetos. Assim, em geral, o modelo CORBA surge bem posicionado para se tornar um padrão de fato da tecnologia emergente de objetos distribuídos. No caso particular do domínio de SIG, o Open Geodata Interoperability Services aparece como a opção mais promissora para a definição e implementação dos futuros SIG’s distribuídos abertos.
Dessa forma, uma solução para o projeto UNIBASE que esteja em concordância com estas tendências certamente terá as seguintes vantagens:
4.2 Segunda solução: utilizando Internet
A Internet suporta múltiplos modos de comunicação (e-mail, login remoto, ftp, buscas hipermídias, etc.). Ela está evoluindo e está se tornando o maior meio de recuperação e com partilhamento de informações, sendo uma ferramenta eficiente tanto para pesquisadores, quanto para usuários novatos.
Por isso, a nossa segunda proposta utiliza Internet, e principalmente WWW, para permitir tanto o acesso e distribuição das informações geográficas da UNIBASE, quanto a exploração d e tópicos relacionados aos serviços SIG e à distribuição de dados usando a WWW.
Basicamente, os motivos que justificam porque utilizar a Internet e suas tecnologias associadas como solução para o nosso problema da UNIBASE são:
Para a implementação efetiva desta proposta, alguns itens específicos exigirão especial atenção, como por exemplo, tamanho de arquivos, tamanhos físicos dos elementos, escolha dos formato s de dados, uso de indicadores de formatos e tamanhos, etc. A não atenção a estes tópicos é uma das principais causas de ineficiência da autoria na Web, a tecnologia a ser utilizada nesta proposta.
A idéia é utilizar a arquitetura cliente-servidor da WWW (implementando um servidor WWW ) em cada concessionária, e fazer que ela se comunique com um servidor de SIG específico (localizado na FIDEM, por exemplo, junto com a UNIBASE), para assim fornecer um método, baseado em GUI, de recuperação e tratamento de dados usando consultas e processamentos gerados a partir das concessionárias participantes do projeto. Para fazer possível a comunicação entre os servidores WWW e o servidor SIG, seria utilizado o padrão Commom Gateway Interface (CGI). Assim, ele facilitará a manipulação de requerimentos de in formações e poderá atuar como uma porta para retornar os documentos apropriados. A figura 3 apresenta a arquitetura desta proposta.
Nela, cada concessionária implementará sua própria Intranet. Isto possibilitará tanto organizar e processar seus próprios dados internos (operacionais, administrativos, financeiros, etc.) garantindo a autonomia do sistema, quanto acessar, consultar e recuperar as informações geográficas da UNIBASE, através da Intranet do projeto. Porém, esta proposta não permite o processamento das informações geográficas próprias de cada concessionária (Celpe, Telpe, por exemplo) por parte delas próprias. Uma solução parcial desta limitação seria a implementação, interligados aos servidores WWW, de servidores SIG em cada uma das concessionárias, mantendo assim a comunicação entre os participantes do projeto através da WWW (ver figura 4).
A utilização de Internet, mais precisamente da WWW, favorecerá a interconectividade e a interoperabilidade dos sistemas e aplicações integrantes do projeto, dado que WWW esta baseada em padrões bem definidos e difundidos.
A definição de dois níveis de Intranets no projeto garante um certo nível de segurança, através da implementação de firewalls tanto nas concessionárias, quanto no pro jeto como um todo. Estas firewalls restringirão o acesso de usuários não autorizados tanto às redes internas das concessionárias, quanto ao projeto UNIBASE.
Como se pode perceber, esta proposta de utilizar a Internet e suas tecnologias associadas só apresenta uma solução parcial tanto ao problema geral do processamento de dados geográficos distribuídos, quanto ao problema específico de implementação do projeto UNIBASE, no sentido que esta arquitetura proposta não permite que qualquer SIG, utilizado pelas concessionárias, possa acessar à UNIBASE. Pelo contrário, aqui é utilizado um SIG específico, que gerencia o acesso à UNIBASE e todas as concessionárias se comunicam com ele. Esta característica certamente prejudicará a heterogeneidade do sistema.
Porém, talvez a maior vantagem desta proposta seja a simplicidade e facilidade de implementação (em relação à primeira proposta, baseada em OGIS), devido a que todas as tecnologias a serem utilizadas (Internet, WWW, CGI, Intranets, etc.) são muito conhecidas e testadas, possibilitando uma rápida implementação da arquitetura.
Ela também possibilitará uma melhor organização das redes internas de cada uma das concessionárias (não somente em termos do projeto UNIBASE), permitindo que elas tenham três níveis de informações: as informações internas próprias de cada concessionária (administrativa, operacional, financeira, estratégica, etc.), as informações do projeto UNIBASE, e as informações gerais, disponíveis na Internet como um todo.
5 Conclusões
No começo deste trabalho, se identificou como uma das principais características dos futuros SIG´s a necessidade de compartilhar informações de diferentes fontes com o objetivo de não duplicar os dados existentes e de beneficiar-se com as atualizações de outros sistemas. Se identificou que conectar e compartilhar os SIG´s será a maior mudança no futuro próximo. Para isso, neste trabalho, primeiro foram identificadas e classificadas as diferentes opções que os projetos de pesquisa e grupos de trabalho escolheram para a definição e implementação desta arquitetura para o suporte ao processamento e tratamento de informações geográficas distribuídas. Esta classificação das diferentes propostas foi baseada no ambiente de suporte ao desenvolvimento de sistemas distribuídos utilizado.
A seguir, e baseando-nos nestas diferentes opções, foram propostas duas soluções possíveis para o problema considerado como o nosso estudo de caso, o projeto UNIBASE, as quais, a nosso entender, são as que melhor atendem tanto aos objetivos definidos pelo projeto, quanto aos requisitos dos futuros Sistemas de Informações Geográficas distribuídos abertos identificados por nós.
Entre as contribuições deste trabalho, podemos mencionar:
Em relação às perspectivas e tendências futuras na área de processamento de dados geográficos distribuídos, podemos dizer que o caminho está no uso das tecnologias associadas &agrav e; Internet. Mas, estas tecnologias ainda têm que amadurecer, tornando a Internet realmente um meio interativo e dinâmico. Mais precisamente, a tendência nas pesquisas e desenvolvimentos de arquiteturas para o suporte ao processamento de dados geográficos distribuídos aponta à integração das tecnologias de objetos distribuídos com a Internet.
Embora existam poucos estudos ou trabalhos tentando definir esta arquitetura que integre WWW e objetos distribuídos para a próxima geração de computação cliente-servidor, e pior ainda, ap esar de não se conhecer trabalhos que proponham esta integração como solução ao problema de processamento de dados geográficos distribuídos, acreditamos (e propomos) que a futura definição e i mplementação de uma arquitetura genérica para os Sistemas de Informações Geográficas distribuídos abertos se baseará na integração destas tecnologias.
Mais precisamente, estão sendo identificados dois caminhos para atingir esta integração: o primeiro propõe que a integração entre WWW e a tecnologia de objetos distribuídos, partic ularmente com CORBA, seja feita através do uso de Java. Nesta tendência, propõe-se a construção dos chamados Java ORB, os quais permitem que os Java Applets possam acessar os serviços fo rnecidos por objetos CORBA. Uma segunda corrente de pesquisa defende o uso de agentes móveis, os quais forneceriam um paradigma novo e alternativo para a computação de objetos distribuídos na WWW. Para isso, uma d as soluções propostas será a construção, uso e adoção de uma Java Virtual Machine [MAR96], por parte de uma ampla variedade de plataformas de hardware e de sistemas operacionais.
6 Bibliografia
[BER94] BERNERS-LEE, T. et.al. "The HARVEST Information discovery and access system". Em Proceedings of 2nd International World Wide Web Conference, pp 763-771, 1994.
[CHA96] CHANG, D. e LANGE, D. "Mobile Agents: A new paradigm for distributed object computing on the web". http://www.ibm.co.jp/trl/ projects/aglets/ma.html.
[COR96] CORBA, http://www.omg.org.
[DIO96] DIOM, "Distributed Interoperable Object Model". http://web.cs.ualberta.ca /~ling/liu/diom-home.html
[GAR96] GARDELS, K. et.al. "Open GeoData Interoperability Services: An object-oriented framework for accessing distributed, heterogeneous geographic information". Em http://epoch.cs.berkeley.edu:8000/sequoia/guernewood/ OGIS/
[LAU95] LAURINI, R. "Distributed Geographic Databases: an overview". The AGI Sourcebook for Geographic Information Systems, pp 45-55, 1995.
[LEM95] LEMOS, I. "Projeto UNIBASE: Base para união de cadastros na região metropolitana do Recife". Em Fator GIS, nro. 9, pp 22-25, 1995.
[MAR96] MARCUS, Bob "WWW and Distributed Objects" Workshop Position Paper. http://www.eng.uci.edu/~peilei/bobmarcus.html
[MER96] MERLE, P. et.al. "CORBAWeb: A Generic object navigator". Em Proceedings of 5th International World Wide Web Conference, Paris, França, Maio 1996. http://www5conf.inria.fr/fich_html/papers/P33/O verview.html.
[OLE96] OLE, "Object Linking and Embedding". http://www.microsoft.com.
[PER97] PEREZ, Celso R. "Suporte ao processamento de dados geográficos distribuídos". Relatório Técnico, DI-UFPE, 1997
[PEU90] PEUQUET, D. et.al. "Introductory readings in Geographic Information Systems". Taylor & Francis, 1990.
[SHA94] SHAW, W. et.al. "Municipal systems integration: An evolutionary approach". Em Proceedings of URISA, pp 1-15, 1994.
[SHK94] SHKLAR, L. et.al. "InfoHarness: Information Integration Plataform". Em Proceedings of 2nd World Wide Web Conference, Chicago, 1994.
[STA90] STAR, J. et.al. "Geographic Information Systems, an introduction". Prentice Hall, Englewood Cliffs, 1990.
[TEM93] TEMPLETON, M. et.al. "InterViso: Dealing with the complexity of federated database access". Em VLDB Journal, vol 4 N. 2, pp287-317, abril 1993.
[ZAJ94] ZAJAC, G. "Integration of GIS applications across múltiple plataform environment". Em Proceedings of URISA ’94, pp 140-153, 1994.