Centenas de atributos causarão problemas de desempenho em uma camada do ArcGIS Server?

8

Isso está relacionado ao ArcGIS Server 10.0 SP1, com dados fornecidos a partir de uma classe de recurso de polígono do geodatabase de arquivo.

1) Por motivos de desempenho, é uma má idéia ter uma classe de recurso com centenas de atributos?

2) É uma má idéia criar um serviço de mapa do ArcGIS Server (contendo centenas de atributos) dessa classe de recurso?

3) Existe uma implicação no desempenho se eu criar um featureLayer na API JS e especificar apenas os atributos que preciso atualmente?

por exemplo, o serviço de mapa pode conter 500 atributos, mas eu defino minha camada de recurso usando

featureLayer.fields = [x, y, z]

Obrigado por qualquer conselho e informe-nos se precisar de mais detalhes.

Stephen Lead
fonte
Você realmente quer dizer o ArcGIS Server 10.0 Service Pack 1 ou a versão 10.1 ainda não lançada?
Bjorn Svensson
Desculpe, eu quis dizer 10.0 SP1
Stephen Lead

Respostas:

6

Em suma, não é o ideal, mas também pode não ser tão ruim ...

Em (3) - desde que você sempre especifique os campos específicos que deseja, o único "acerto" extra deve estar na solicitação inicial dos metadados do serviço (que será um pouco maior devido aos muitos campos).

Se você conhece o "conjunto" ou o "tema" dos campos agrupados que seu aplicativo usará (entre os 500), convém criar camadas no serviço de mapas que correspondam de acordo. Mas se sua lista de campos for mais dinâmica, vá em frente como estava pensando.

No entanto, quanto ao desempenho, primeiro concentrei seu tempo em otimizar / generalizar seus polígonos (já que o tamanho destes provavelmente causará mais impacto no tempo de download, no tempo de desenho, na carga etc.). :)

Bjorn Svensson
fonte
Bjorn, obrigado pela informação, o que é tranquilizador. re: generalização, isso ocorre on-the-fly com base na extensão do mapa, e os polígonos aplicáveis ​​a essa escala serão mostrados. Vou postar o link quando o site estiver ativo.
Stephen Lead
2
FWIW, criei uma classe de recurso com cerca de 200 atributos numéricos. Se eu definir um featureLayer usando FIELDS = "*" e executar uma consulta, o resultado será de 4,7 kb. Se eu definir FIELDS como um único campo, o resultado será em torno de 280b. Isso parece indicar que a configuração de featureLayer.fields faz um bom trabalho retornando apenas as informações necessárias.
Stephen Lead