Escolar Documentos
Profissional Documentos
Cultura Documentos
Artigo Comparacao SGBDs Geo Oracle PostGIS MySQL
Artigo Comparacao SGBDs Geo Oracle PostGIS MySQL
RESUMO
O artigo inicialmente apresenta um breve relato da histria e evoluo da rea de geoprocessamento, desde a dcada de 60 at os nossos dias, apresentando os principais conceitos e evolues tecnolgicas. Em seguida, ele descreve as arquiteturas bsicas para se implementar a gerncia de dados em sistemas de geoinformaes e conclui, apresentando o resultado de um estudo comparativo realizado na Prodemge, envolvendo os seguintes SGBD objeto-relacionais e suas extenses espaciais: MySQL, Oracle e PostgreSQL.
Palavras-chave: Geoprocessamento, Sistemas de Informaes Geogrficas, SIG, Sistemas de Geoinformaes, SGBD ObjetoRelacionais, Oracle, MySQL, PostgreSQL
do tempo essa coleta de informaes evoluiu, incluindo novos elementos, tais como obstculos naturais e recursos minerais. A evoluo natural do homem
FONTE
para a organizao em sociedade exigiu que essas informaes fossem consolidadas e organizadas, para possibilitar a sua difuso e compartilhamento entre todos os
interessados. Comea a utilizao de papel, escala e notaes especiais para representar graficamente essas informaes, na forma que ficou universalmente conhecida como mapa. Essa forma de representao possua limitaes inerentes como, por exemplo, combinar e analisar informaes provenientes de diversos mapas distintos. A partir de 1960, com a evoluo na tecnologia de informao, tornou-se possvel representar essas informaes em ambiente computacional. Os dados passam a ser organizados de forma a facilitar a anlise de seus inter-relacionamentos, com o objetivo de gerar novos dados e represent-los no espao geogrfico. Surge ento o geoprocessamento. Utilizando tcnicas matemticas e computacionais, o geoprocessamento permite a correlao e a anlise de dados geogrficos e de dados alfanumricos (seus atributos), facilitando a tomada de deciso em diversas reas, tais como planejamento urbano e regional, gesto de recursos naturais, transporte, gesto nas reas de Sade e Educao. No ambiente computacional, as ferramentas de software utilizadas para realizar o geoprocessamento so denominadas Sistemas de Informaes Geogrficas - SIG1 (em ingls:
Geographic Information Systems GIS). Essas ferramentas permitem anlises complexas, combinando dados alfanumricos com dados geogrficos. Os dados geogrficos so denominados temas ou camadas (em ingls: themes ou layers). Um determinado tema pode ser representado por uma ou mais camadas, dependendo da complexidade, da forma de representao dos dados ou de ambos. Exemplificando, a anlise do deslocamento dos alunos para chegar a determinada escola pode envolver trs camadas localizadas geograficamente ou seja, georreferenciadas: 1. a primeira camada contm as escolas existentes; 2. a segunda apresenta os endereos residenciais dos alunos e tambm ser georreferenciada com base no cadastro de quadras e lotes do municpio; 3. a ltima camada representa as linhas de transporte urbano em operao. Uma caracterstica relevante dessa abordagem que os dados em cada camada podem ser originados de diversas fontes distintas. No exemplo anterior, a primeira e segunda camadas seriam geradas pela Secretaria de Educao, a partir do Cadastro Tcnico Municipal da Secretaria da Fazenda, enquanto a terceira
camada poderia ter sido originada da(s) empresa(s) de transporte municipal. A partir de 1980, com a reduo de custo e evoluo da capacidade computacional do hardware, iniciou-se a popularizao do geoprocessamento. Novos recursos foram introduzidos nos SIG, em especial a estatstica e o sensoriamento remoto (SR), o que contribuiu ainda mais para alavancar a sua popularizao. Atravs de sensores orbitais (satlites) ou sensores aerotransportados (ex. aerofotos), tornouse possvel "descobrir", com maior rapidez e preciso, eventos ou fenmenos distncia. Tornou-se vivel a captura de imagens de satlites de uma determinada localizao em intervalos de tempo regulares e ajustveis. Com esse recurso pode-se, por exemplo, monitorar queimadas e desmatamentos de forma mais efetiva e acurada. Outro uso dessa tecnologia suprir informaes de regies onde os dados geogrficos so insuficientes ou mesmo inexistentes. A unio dos SIG com as ferramentas de sensoriamento remoto possibilitou o surgimento de novas aplicaes, como o controle de determinadas endemias, causadas por fatores naturais e ambientais. A estatstica permite determinar a relao de dependncias
A sigla SIG normalmente utilizada tanto para representar o substantivo singular (sistema) quanto plural (sistemas).
FONTE
105
entre variveis indicando as relaes de causa efeito. Agregando ento a geoestatstica aos sistemas de geoprocessamento, variveis geogrficas so includas na
anlise, ampliando assim as possibilidades de indicao das causas de determinado evento ou fenmeno. A comprovao de que o aumento de desmatamento em deter-
minadas regies da Amaznia est associado construo de estradas, ao gerar um aumento da ocupao humana, um bom exemplo da aplicabilidade desses recursos.
baseadas em SGBD: dual, integrada em um SGBD relacional, e integrada utilizando uma extenso espacial sobre um SGBD objeto-relacional. Embora no relacionada com o escopo deste artigo, existe ainda a arquitetura que utiliza
FONTE
exclusivamente o sistema de arquivos do sistema operacional hospedeiro para armazenar tanto os dados alfanumricos quanto as suas representaes geogrficas. Portanto, essa arquitetura no faz uso de nenhum SGBD.
Arquitetura Dual
Nessa abordagem, os atributos ou dados alfanumricos da aplicao so armazenados em tabelas (relaes) de um banco de dados relacional, gerenciado por um SGBD. Os dados geogrficos associados a esses atributos so armazenados isoladamente em arquivos do sistema operacional hospedeiro, em um formato proprietrio do SIG. A associao lgica ou conceitual entre um dado geogrfico e seu atributo alfanumrico (ex. populao de uma cidade) feita atravs do compartilhamento de um valor identificador nico (chave primria) atribudo simultaneamente para ambos. Essa uma arquitetura simples e possibilita a utilizao de qualquer SGBD do mercado, mesmo aqueles mais elementares, que no possuem nenhum suporte para o armazenamento e manipulao de objetos binrios longos (BLOB). No entanto, o armazenamento dos dados geogrficos fora do banco de dados alfanumrico pode comprometer a sua qualidade e a eficincia do processo de consulta e de anlise dos mesmos, pelas seguintes razes: 1. os dados geogrficos esto fora do domnio de atuao dos mecanismos de backup, recuperao, controle de transao e controle de concorrncia do SGBD. Como conseqncia, fica comprometida a garantia de sua prpria consistncia e da integridade referencial em relao aos seus atributos, armazenados no banco de dados relacional; 2. a manipulao (consulta, insero, alterao e remoo) dos dados tende a ser mais lenta, pois efetuada em, geralmente, trs etapas: uma pelo SGBD para a manipulao dos dados no banco de dados relacional, a outra pelo SIG ou componente de software parte sobre os arquivos que armazenam os dados geogrficos e, finalmente, a terceira que ir consolidar, agrupar e relacionar os resultados obtidos nas etapas anteriores; 3. a integrao com outras ferramentas (ex. outro SIG, software estatstico, etc.) torna-se mais complexa devido ao formato proprietrio de armazenamento dos dados geogrficos; 4. a administrao do ambiente operacional torna-se mais complexa e onerosa, visto que usualmente as empresas delegam a profissionais com perfil e capacitao distintos a responsabilidade de administrar cada um desses ambientes: administrador de banco de dados e analista de suporte a sistemas operacionais.
Structured Query Language (SQL): linguagem de dados padro dos SGBD relacionais do mercado e que engloba comandos para definio, insero, consulta, atualizao e remoo de dados, bem como a garantia de sua integridade e segurana de acesso.
FONTE
107
108
FONTE
principal objetivo foi analisar e avaliar, sob o ponto de vista funcional, as caractersticas de alguns dos principais produtos do mercado, com o intuito de identificar aquele que possa ser melhor utilizado no desenvolvimento de sistemas de geoinformao no mbito do Governo do Estado de Minas Gerais. O escopo dessa avaliao ficou limitado aos produtos MySQL, Oracle e PostgreSQL, a fim de satisfazer as seguintes premissas: 1. excluir o DB2 do processo de anlise, por ser um SGBD usado exclusivamente na Prodemge em aplicaes legadas em mainframe; 2. restringir-se aos SGBD j utilizados na Prodemge para evitar uma proliferao excessiva de produtos na empresa e, assim, garantir o nvel de qualidade de suporte tcnico e reduzir os custos com treinamento dos funcionrios; 3. para os produtos com licena de uso proprietria e paga, considerar aquele que possa ser disponibilizado em Linux, que o sistema operacional com licena livre utilizado extensivamente na Prodemge e em seus clientes (vide premissa 1); 4. considerar apenas produtos com ampla divulgao e aceitao no mercado internacional e nacional.
A razo dessa premissa minimizar os riscos de se optar por um produto cuja qualidade tcnica no tenha sido devidamente comprovada por um universo significativo de usurios e, assim, conseqentemente comprometer a qualidade de servio da Prodemge. Esse trabalho teve como principal balizador o documento OpenGIS Simple Features Specification For SQL [4] produzido pelo Open GIS Consortion (OGC). Esse documento, abreviadamente SFSSQL, uma proposta de especificao de um conjunto de geometrias e de operaes topolgicas que geram novas geometrias em tipos de dados vetoriais. O seu principal objetivo, segundo seus realizadores, definir um padro da linguagem SQL que suporte o armazenamento, recuperao, consulta e atualizao de dados geoespaciais, bem como de seus atributos descritivos alfanumricos. O escopo do trabalho se limitou anlise funcional dos produtos. Portanto, no foram realizados testes operacionais, sejam eles de instalao, avaliao de desempenho, de estabilidade e de facilidade de uso. A seguir esto brevemente descritos os produtos analisados, ressaltando algumas de suas caractersticas positivas e negativas. Uma viso mais detalhada est nas Tabelas de 1 a 5.
FONTE
O MySQL [6] um SGBD gratuito e de cdigo aberto, podendo ser distribudo tanto com uma licena comercial quanto com uma integralmente baseada na GNU/GLP. um produto muito utilizado e conhecido como sendo simples, fcil de operar e com excelente desempenho. A sua extenso espacial s foi disponibilizada a partir da verso 4.1.0, lanada em abril de 2003. A Prodemge vem utilizando-o nos ltimos anos em sistemas web de pequeno e mdio portes, porm sem fazer uso de seus recursos espaciais. Embora sua implementao tenha seguido de perto as funcionalidades especificadas na SFSSQL, a sua extenso espacial apresenta algumas limitaes que podem restringir significativamente a sua utilizao, sendo que as principais so: 1. a extenso espacial s est disponvel para o tipo de tabela MyISAM, que a estrutura de armazenamento original e mais simples do MySQL. O problema que, nesse caso, so inexistentes os mecanismos de controle de transao e de integridade referencial, o que limita a sua aplicabilidade a sistemas com baixo requisito de robustez e de complexidade. Essas limitaes, no entanto, nem sempre so condizentes com a realidade da Prodemge e de seus clientes;
109
2. apenas um nmero muito reduzido de produtos da rea de geoprocessamento faz interface atualmente com o MySQL (vide Tabela 5). A sua utilizao fica mais uma vez restrita apenas ao desenvolvimento de sistemas autocontidos, sem interao com outros produtos ou componentes de software correlatos, tais como bibliotecas de software, servidores de exibio de mapas (map servers), exibidores de dados espaciais, etc. O Oracle um SGBD utilizado na Prodemge e em seus clientes desde meados da dcada de 90 e oferece dois tipos de recursos para manipulao de dados espaciais: o Oracle Locator e o Oracle Spatial. [7] O Oracle Locator est includo regularmente e sem custo adicional nas duas principais distribuies do Oracle: Standard Edition e Enterprise Edition. No entanto, ele prov um conjunto limitado de funcionalidades, que so teis apenas em sistemas de geoinformao mais simples. De uma forma geral, ele oferece apenas um conjunto de recursos espaciais bsicos e limitados, o que exclui o referenciamento linear (linear referencing), funes para anlise espacial, transformaes de coordenadas espaciais, entre outros. O Oracle Spatial uma extenso espacial s disponvel na distribuio Oracle Enterprise Edition e representa uma soluo tecnologicamente completa para
110
armazenamento, recuperao e anlise de dados espaciais. Ela tambm adere especificao SFSSQL, embora com total discordncia em relao nomenclatura original das funes e procedimentos. Esse fato, provavelmente por razes histricas e de compatibilidade, no s dificulta a identificao dessas funes e procedimentos perante a especificao original, como tambm limita a interoperabilidade com outras solues baseadas na SFSSQL. Contraditrio, portanto, com os prprios objetivos e premissas da padronizao proposta pela OGC. Essa incoerncia em relao aos padres abertos no seria um obstculo to grande para a maioria dos seus usurios potenciais quanto o valor de sua licena de uso principalmente se comparado com a gratuidade dos outros dois produtos analisados. Alm dos US$ 40.000 por processador necessrios para licenciar o Oracle Enterprise Edition, deve-se ainda desembolsar mais US$ 10.000 por processador para habilitar a Oracle Spatial. O investimento inicial ento de no mnimo US$ 50.000 mais os US$ 11.000 por ano (22%) a ttulo de manuteno (suporte tcnico e atualizao de verses). O PostgreSQL [8] um SGBD objeto-relacional, gratuito e distribudo sob a licena BSD. Ele teve sua origem no SGBD Postgres, que foi desenvolvido entre 1986 e 1993 na Universidade da Califrnia, em Berkeley. Em 1994, foi incorporado o suporte linguagem SQL, visto que
FONTE
curiosamente, at ento, a sua linguagem de dados original era o PostQUEL, diferente da maioria dos produtos concorrentes que seguiram o padro SQL. No mesmo ano, o seu cdigo-fonte foi disponibilizado na web, onde um grupo de desenvolvedores mundialmente distribudos o vem mantendo e atualizando. Apesar de no ser um produto to popular como o MySQL, o PostgreSQL bastante utilizado e reconhecido pela sua origem e qualidade acadmica, bem como pela abrangncia de sua funcionalidade [9]. Embora possua suporte nativo a dados espaciais, seus recursos originais no so muito abrangentes e eficientes. Para suprir essas deficincias e oferecer uma alternativa aos produtos com licena proprietria, a empresa Refractions Research Inc. (http: //www.refractions.net) desenvolveu e mantm a extenso espacial PostGIS, que distribuda gratuitamente sob licena GNU/GPL, e oferece ao PostgreSQL o suporte a objetos espaciais de acordo com a especificao SFSSQL. As funcionalidades dos recursos espaciais foram ento ampliadas e diversos produtos de grande penetrao e renome no mercado de geoprocessamento, com licena livre ou proprietria, possuem algum tipo de interface com essa soluo. Concluindo, essas caractersticas o tornam, de acordo com o escopo e premissas do estudo efetuado, uma excelente alternativa tcnica e econmica ao Oracle Enterprise Edition com a extenso Oracle Spatial.
Oracle Locator
Oracle Corporation
PostgreSQL/PostGIS
PostgreSQL Global Development Group e Refrations Research
Fabricante
MySQL AB
Verso analisada
4.1
10g
10g
Tipo de licena
GNU/GPL
Proprietria
Proprietria
Custo do SGBD
Gratuito
Gratuito
Gratuito
Gratuito
Oracle Locator
Oracle Standard Edition
PostgreSQL/PostGIS
Requisitos de SGBD
Cdigo-fonte do SGBD
GEOS, Proj4
Funcionalidade ou caracterstica: ATENDIDOS INTEGRALMENTE. Funcionalidade ou caracterstica: ATENDIDOS PARCIALMENTE. Funcionalidade ou caracterstica: NO ATENDIDOS.
FONTE
111
Oracle Spatial
Oracle Locator
PostgreSQL/PostGIS
Funcionalidade ou caracterstica: ATENDIDOS INTEGRALMENTE. Funcionalidade ou caracterstica: ATENDIDOS PARCIALMENTE. Funcionalidade ou caracterstica: NO ATENDIDOS.
112
FONTE
Tabela 4: Funcionalidade
MySQL
Tipos de objetos espaciais suportados
Oracle Spatial
Oracle Locator
PostgreSQL/PostGIS
2, 3 e 4
2, 3 e 4
2, 3 e 4
R-Tree (quadratic)
R-Tree e Quad-Tree
R-Tree
R-Tree (linear)
Funcionalidade ou caracterstica: ATENDIDOS INTEGRALMENTE. Funcionalidade ou caracterstica: ATENDIDOS PARCIALMENTE. Funcionalidade ou caracterstica: NO ATENDIDOS.
FONTE
113
Oracle Spatial
Oracle Locator
PostgreSQL/PostGIS
Funcionalidade ou caracterstica: ATENDIDOS INTEGRALMENTE. Funcionalidade ou caracterstica: ATENDIDOS PARCIALMENTE. Funcionalidade ou caracterstica: NO ATENDIDOS.
Referncias
[1] Cmara, G. & Queiroz, G. R. Arquitetura de Sistemas de Informao Geogrfica. In: Banco de Dados Geogrficos. Captulo em livro on-line disponvel em abril/05 no endereo eletrnico: http://www.dpi.inpe.br/gilberto/livro/bdados/ [2] Codd, E. A Relational Model for Large Shared Data Banks. CACM, 13:6, June 1970. [3] Open GIS Consortion, Inc. http://www.opengeospatial.org/ (disponvel em abril/ 05) [4] Open GIS Consortion, Inc. OpenGIS Simple Features Specification For SQL Revision 1.1. OpenGIS Project Document 99-049. May 5, 1999. Disponvel em abril/05 no endereo eletrnico: http://www.opengeospatial.org/docs/99-049.pdf [5] Melo, C.H. Prospeco de SGBD para Geoprocessamento. Relatrio Tcnico Interno. Prodemge, fevereiro de 2005. [6] MySQL AB MySQL Reference Manual - version 4.1. Disponvel em abril/05 no endereo eletrnico: http://dev.mysql.com/doc/mysql/en/index.html [7] Oracle Corporation. Oracle Spatial - Users Guide and Reference 10g Release 1 (10.1). December, 2003. [8] PostgreSQL Global Development Group http://www.postgresql.org (disponvel em abril/ 05) [9] Howard, P. Pervasive joins the open source bandwagon. IT-DIRECTOR.COM, 17th January, 2005. Disponvel em abril/05 no endereo eletrnico: http://it-director.com/article.php?articleid=12506
114
FONTE