Qual é a diferença entre o ArcSDE e os bancos de dados espacialmente ativados?

28

Quando você deseja usar o ArcSDE (disponível como nível de licença do ArcGIS Server Basic) versus um banco de dados espacialmente ativado?

Quais são as compensações de ambos os lados?

Quais são os benefícios de ambos os lados?

TheSteve0
fonte
O que costumava ser o produto ArcSDE agora é chamado ArcGIS Server Basic e vem nas edições Workgroup ou Enterprise.
23710 Chris M

Respostas:

27

SDE [ArcSDE] pode se referir a pelo menos duas coisas: a organização dos seus dados no banco de dados (o Esquema SDE) ou um serviço que atende conexões de clientes (o serviço SDE). Geralmente eles andam de mãos dadas - o serviço SDE está vinculado a um esquema SDE em um banco de dados.

No estado "mais puro" (ou talvez mais sujo), o SDE lida com todos os cálculos espaciais e armazena apenas dados no seu banco de dados como BLOBs e outros tipos nativos de SQL. Algumas funções do banco de dados, como indexação de texto ou XML, são usadas para melhorar o desempenho, mas geralmente o banco de dados não "sabe" que está servindo dados espaciais. Há apenas várias tabelas, visualizações e procedimentos, e eles estão cheios de dados e funções.

Com um banco de dados espacialmente ativado, o banco de dados está ciente de que os dados têm um local. Portanto, você pode colocar consultas de localização diretamente em suas instruções SQL. Talvez isso seja uma coisa boa para você, realmente depende de quem está consumindo seus dados. Se seus consumidores de dados são fluentes em SQL, é ótimo! Se seus consumidores de dados são fluentes no ArcMap, eles provavelmente podem se importar menos.

Mais recentemente, conseguimos combinar os dois, usando o SDE para traduzir para um tipo espacial nativo subjacente. Além disso, podemos usar "conexão direta" para ignorar o serviço SDE e apenas fazer com que o aplicativo do consumidor (ArcMap, servidor ArcGIS, etc.) se conecte diretamente ao banco de dados. Pessoalmente, tive vários níveis de sucesso com conexões diretas.

Benefícios ao usar o ArcSDE:

  • Integração perfeita com clientes ESRI
  • Boa performance
  • Algumas funcionalidades subjacentes do banco de dados podem ser expostas (visualizações espaciais, índices)

Desvantagens do uso do SDE:

  • Pode ser difícil recuperar dados corrompidos
  • A licença está vinculada ao banco de dados
  • Sem acesso fácil à geometria sem usar o software ESRI

Benefícios para um banco de dados espacialmente ativado:

  • Dados facilmente acessíveis a qualquer cliente SQL
  • Os dados podem ser gerenciados usando as ferramentas de banco de dados existentes (backup, restauração, análise)
  • Formatos abertos disponíveis

Desvantagens de usar um banco de dados ativado espacialmente:

  • Os clientes (software) podem não conseguir se conectar diretamente aos seus dados e podem ter que usar protocolos ou exportações ineficientes para vê-los
  • Às vezes, as referências espaciais são difíceis de aplicar ou manter consistentes
  • Pode resultar em custos adicionais de configuração ou gerenciamento

Tenho mais experiência com SDE simples, portanto, provavelmente há mais pontos para o banco de dados espacialmente ativado.

Espero que isto ajude!

mwalker
fonte
1
Você infringiria o licenciamento ESRI se acessar os dados diretamente e não através do serviço SDE.
22610 CrazyEnigma
9
Não há infração. A conexão direta da ESRI não usa serviço SDE (pelo menos no final do servidor). Além disso, eles publicaram muitos artigos sobre o uso de PostGres, MSSQL e WKT como o tipo de armazenamento espacial enquanto usavam o SDE, que permite a comunicação direta com os dados espaciais. Mais uma vez, tive que limpar o SDE acessando os dados diretamente quando eles quebraram. Outro benefício para os bancos de dados espacialmente ativados é que o banco de dados pode fazer o trabalho em vez de trazer todos os dados para um cliente e fazer com que ele faça o trabalho.
westyvw
3
@ CrazyEnigma: citação necessária.
Derek Swingley
grande desciption da SDE vs ST Geometria @mwalker Graças
CDBrown
2
re: spatial references, I think that it is the opposite. Spatial references in PostGIS are standard and the SRIDs are the same as EPSG codes for applicable SRS. With SDE, at least at 9.3x, the SRIDS incorporate extents, etc. so you may have two different SRIDs for the same Spatial Reference System. This causes issues if you want to use spatial SQL.
DavidF
3

Aqui está minha resposta de uma linha: Use SDE quando precisar de acesso multiusuário aos seus dados geoespaciais.

Digamos que você queira que vários usuários editem seus dados: use SDE. Digamos que você queira fornecer dados e permitir que sejam editados na Web: use SDE. Se você é uma loja pequena, com um funcionário de GIS, não use SDE.

Se você é a única pessoa que usa seus dados espaciais, o SDE não é para você. Se você não precisa de edição multiusuário, o SDE não é para você. É melhor usar um arquivo GeoDatabase.

Quanto às compensações ... A SDE não é trivial para configurar ou gerenciar. Você precisa usar um RDBMS.

O SDE é destinado a organizações maiores, onde é necessário um banco de dados, mas vários usuários precisam acessar e atualizar / editar dados.

Derek Swingley
fonte
1
Quero dizer, os produtos Arc são muito ruins quando se trata de ambientes com vários usuários. Parece haver muitas coisas que não podem ser feitas enquanto as pessoas estão conectadas. Se o desempenho e o ambiente robusto para vários usuários forem importantes, é preciso que seja melhor deixar o RDBMS fazer todo o trabalho, sem envolver produtos intermediários sujos, apenas diminuindo a velocidade e bloqueando tudo. Mas parece fantasia Eu tenho que admitir, a caixa quero dizer :-)
Nicklas Aven
2
Eu concordo com Nicklas. Sua comparação faz sentido no mundo do arco, mas o SDE não é ótimo com vários usuários. Um RDBMS espacialmente ativado, como o PostGIS, possui vantagens nessa área. Você já tentou conceder direitos de usuário a um conjunto de dados SDE que outra pessoa está visualizando?
davidf
Sim, encontrei o problema que você está descrevendo com a concessão de privilégios. Não tenho certeza se ainda é um problema, pois não tenho que administrar um SDE GDB há alguns anos. As subvenções não devem ser bloqueadas por bloqueios. Como o postgres / postgis lida com a edição multiusuário?
Derek Swingley
0

Atualmente, a maioria dos dbs espaciais permite várias colunas espaciais em uma tabela, enquanto o SDE adere a uma coluna espacial de uma tabela. Eles também têm dados espaciais integrados às suas ferramentas de gerenciamento de dados flexíveis e poderosas, as quais a SDE não possui, como sachems de usuários, replicação de dados, suporte a SQL e etc.

O ESRI SDEBinary é o executor rápido. Se for ST_GEOMETRY, o SDE pode não ter o melhor desempenho.

Place - Zilla
fonte