Estou tentando decidir a melhor maneira de organizar meus dados para um aplicativo ArcGIS Engine. Estou particularmente interessado na exibição do mapa e na velocidade da consulta. Atualmente, tenho todos os meus dados separados em geodatabases de arquivos separados com base no tema. Então, eu tenho o Transportation.gdb, o Utilities.gdb, etc. Os dados não precisam necessariamente ser organizados com base em temas, e estou pensando em colocar tudo isso em um geodatabase de arquivo.
Farei meus próprios testes, mas eu queria fazer a pergunta para a comunidade.
Em geral, o uso de um geodatabase de arquivo único é mais rápido do que o uso de vários (aproximadamente 7) menores? Também estou interessado em outros prós / contras.
NOTA: o software e todos os dados estarão na máquina local do cliente. Nenhum dado é exibido na Web ou em uma rede, e a quantidade de dados é bastante pequena (aproximadamente 100.000 recursos).
fonte
Na verdade, é normalmente o contrário; bancos de dados menores consultam mais rapidamente. É como perguntar se você pode encontrar as coisas mais rapidamente se jogar tudo em um grande monte no porão, em vez de classificá-lo em armários individuais. Quando você tem bancos de dados individuais, é como ter 6 arquivos que você pode desconsiderar desde o início e não precisa procurar. Obviamente, isso pressupõe que você saiba qual banco de dados precisa ser consultado - se você precisar examinar todos eles de qualquer maneira, um deles poderá ser mais rápido (porque pode otimizar o conjunto de dados como um todo).
fonte
Ao mesmo tempo, eu tinha uma configuração semelhante com o ArcReader em dispositivos que não eram muito bons para o GIS e tive a sorte de manter uma conexão de rede estável com o servidor GIS ( estamos falando de conexões com fio instáveis ... não sem fio )
Eu tinha vários bancos de dados que geralmente eram quebrados por "tema" e também pela frequência da atualização. Dividi-os diariamente, mensalmente, anualmente ou trienalmente (que era o cronograma de atualização aérea / planimétrica). Como eles foram atualizados via robocopy, eu não queria mover nenhum dado desnecessário para esses dispositivos.
Se você estiver em um ambiente em que não possui capacidade robusta de replicação de banco de dados geográficos ou estiver simplesmente recebendo o banco de dados geográfico de arquivos para distribuição, pode ser mais fácil gerenciar gerenciando o armazenamento de dados dessa maneira.
Para responder à sua pergunta sobre desempenho: nunca notei reduções de velocidade dividindo meus repositórios de dados em geodatabases de arquivos separados. Isso não significa que não havia, mas se havia, não era perceptível ao ser humano. É importante notar que essas configurações tinham todos os bancos de dados geográficos em um disco rígido - você pode obter um ganho de desempenho se os tiver espalhado pelos dispositivos SCSI / SSD.
fonte
Certa vez, eu tinha cerca de cinco aplicativos da Web ArcGIS Server WebADF que cobriam uma área geográfica diferente, mas todos compartilhavam conjuntos de dados comuns. O principal foi que os aplicativos eram todos dinâmicos (nada estava armazenado em cache) e tínhamos poços de petróleo e gás que podiam chegar a centenas de milhares (milhões, na verdade, para todos os EUA). Fazer consultas em todo o conjunto de dados foi doloroso - na verdade, eles normalmente acabavam com o tempo limite. Recortar os dados de cada área e colocá-los em um armazenamento de dados separado manteve nosso desempenho e nossos clientes satisfeitos. Como você, também mantivemos os bancos de dados geográficos de arquivos armazenados no disco rígido do servidor, o que também ajudou MUITO. Tivemos um processo automatizado que cortou os dados em cada geodatabase de arquivo a cada noite.
Não é exatamente uma resposta, mas mais um estudo de caso, algo semelhante ao que você pensa em fazer. Se não tivéssemos tantos recursos dinâmicos para lidar, talvez não precisássemos fazer isso. Às vezes, é necessário fazer coisas um pouco fora do comum.
fonte