Qual tipo de banco de dados geográficos é mais apropriado para uso em código aberto e ESRI?

22

Pergunta principal: Existe um tipo de geodatabase que funcione perfeitamente com os produtos ESRI e de código aberto?

Detalhes: atualmente, minha empresa repassa dados geográficos em vários formatos de arquivo vetorial e raster e não é particularmente organizada. A maior parte do processamento é feita usando ferramentas de código aberto, mas alguns clientes exigem que hospedemos nossos dados no formato de serviço ESRI Map. Já temos uma instância do servidor ArcGIS que hospeda esses serviços, mas ainda processamos upstream usando ferramentas de código aberto antes de descarregar os resultados em um geodatabase da ESRI arcsde. Pelo que sei, o ogr / gdal tem habilidades limitadas de ler / gravar em um geodatabase do arcsde, mas não o suficiente para armazenar razoavelmente todos os nossos dados em um geodatabase do arcsde e esperar que nossas ferramentas de processamento possam usar o arcsde geodatabase como o principal repositório de dados da empresa. Estou errado? Se eu mudei para um geodatabase de código aberto, como o postgis, nossas ferramentas de processamento funcionariam bem, mas não acho que eu poderia usar um banco de dados postgis como armazenamento de dados para hospedar serviços ESRI. Estou errado? Existe um tipo de geodatabase que pode atender tanto ao código aberto quanto ao ESRI? Se não, é prática comum manter geodatabases paralelos, um para código aberto e outro para ESRI?

Rugas adicionais: A resposta que recebi foi usar o PostgreSQL / PostGIS. A única possível falha nisso é que eu gostaria de hospedar esse banco de dados no Amazon Web Services (AWS) e, se possível, gostaria de usar o Amazon Relational Database Service (RDS) para minimizar nossa sobrecarga de gerenciamento de banco de dados (backups, balanceamento de carga etc). No entanto, atualmente o RDS suporta apenas MySQL, Oracle e SQL Server como mecanismos de banco de dados. Estou pensando que, se o RDS começar a oferecer suporte ao PostgreSQL, esse seria o cenário ideal, mas, apenas para checar, o PostgreSQL é minha única opção para a interoperabilidade de código aberto baseada em ArcGIS + gdal / ogr correta? Nesse caso, provavelmente criarei um banco de dados PostgreSQL na AWS, apenas precisarei gastar mais recursos para gerenciá-lo.

Ethan H
fonte
Na época em que escrevi essa pergunta, o RDS não suportava o PostgreSQL, mas agora é compatível e também é fácil adicionar o PostGIS a um banco de dados do RDS PostgreSQL.
Ethan H

Respostas:

14

Você pode usar um banco de dados PostGIS nativo como um repositório de dados SDE.

http://resources.arcgis.com/en/help/main/10.1/index.html#//002p0000006v000000

Esse link descreve a configuração básica para registrar uma tabela PostGIS nativa no SDE. A desvantagem é que a ESRI suporta apenas uma faixa estreita de versões do Postgres e PostGIS, e aqui está a lista do que elas suportam:

http://resources.arcgis.com/en/help/system-requirements/10.1/index.html#//015100000075000000

HeyOverThere
fonte
1
Obrigado! Ainda tenho muito o que ler nessa seção do manual da ESRI, mas, se estiver entendendo corretamente, devo configurar um geodatabase do PostgreSQL / PostGIS e conectar-me a ele no ArcGIS sem precisar executar um "EnableEnterpriseGeodatabase ( ) "funciona nele do lado do ArcGIS? Além disso, uma vez conectado, eu devo ser capaz de criar todos os tipos de serviço do ArcGIS (serviço de mapa, serviço de recursos etc.) com o PostGIS como armazenamento de dados?
Ethan H
2
Você ainda precisa executar a ferramenta Create Enterprise Geodatabase, mas deseja criar o banco de dados PostGIS primeiro e depois apontar a ferramenta para o banco de dados existente.
HeyOverThere
OK, e a ferramenta Enable / CreateEnterpriseGeodatabase não interfere com a estrutura do banco de dados postgis, de modo que o gdal / ogr tenha dificuldade em ler / escrever corretamente.
Ethan H
1
Corrigir. O que ele fará é criar um novo esquema chamado sde e colocar todo o material relacionado a sde lá. Na verdade, ele não tocará os dados em suas tabelas existentes, eles permanecerão geometrias PostGIS. Ainda é possível visualizar e editar em software não ESRI, no entanto, se você fizer a versão dos dados, o software não ESRI ignorará essas versões e editará a tabela diretamente, o que pode danificar suas versões. Eu acho que sim, mas não testei essa suposição.
HeyOverThere
@HeyOverThere, se você editar a tabela base diretamente, não irá corromper nada, pois os resultados parecerão imprevisíveis. Se você deseja acessar os dados com versão do ArcSDE com outro software, deve registrar-se como com versão com a opção mover para base e as visualizações com versão.
Travis
3

Você não precisa necessariamente configurar seu banco de dados como um geodatabase SDE. No ArcGIS 10.1, o ArcGIS pode ler e gravar bancos de dados nativos do SQL Server e PostGIS (entre outros). Isso significa que você pode configurar seu banco de dados em um dos RDBMSs suportados pelos pacotes de código aberto e pelo ArcGIS (pessoalmente, eu diria MS SQL Server ou PostGIS) e acessá-lo no ArcGIS.

Aqui está um link para o sistema de Ajuda com mais informações:

Um rápido tour pelo trabalho com bancos de dados no ArcGIS

Brian
fonte
Duvido que você consiga editar qualquer banco de dados com o ArcGIS sem registrá-lo como um geodatabase SDE (com a licença apropriada) ... Desde a versão 10.0, a ESRI ofereceu a possibilidade de conectar-se diretamente ao banco de dados sem o SDE, mas apenas para leitura e você não pode usar nenhuma funcionalidade, como topologia, redes ou edição com versão.
Etienne Desgagné
@ EtienneDesgagné - Até onde eu sei, eles aumentaram a funcionalidade não SDE em 10.1 para dar suporte à leitura. No entanto, você está certo de que não há suporte para a funcionalidade Geodatabase, como topologia, versão, conjuntos de dados de recursos, etc. ao usar um banco de dados não SDE no ArcGIS. Por outro lado, a funcionalidade Geodatabase não estará disponível ao usar as ferramentas de código aberto e o uso de um banco de dados SDE fora do ambiente ArcGIS não é tão intuitivo.
Brian