Take the 2-minute tour ×
Geographic Information Systems Stack Exchange is a question and answer site for cartographers, geographers and GIS professionals. It's 100% free, no registration required.

This relates to ArcGIS Server 10.0 SP1, with data served from a file geodatabase polygon featureclass.

1) For performance reasons, is it a bad idea to have a featureclass with hundreds of attributes?

2) Is it a bad idea to create an ArcGIS Server map service (containing hundreds of attributes) from this featureclass?

3) Is there a performance implication if I build a featureLayer in the JS API, and only specify the attributes I currently need?

eg, the map service might contain 500 attributes, but I define my feature layer using

featureLayer.fields = [x, y, z]

Thanks for any advice, and please let me know if you need any further details.

share|improve this question
    
Do you really mean ArcGIS Server 10.0 Service Pack 1, or the not-yet-released 10.1 version? –  Bjorn Svensson May 31 '11 at 0:19
    
Sorry, I meant 10.0 SP1 –  Stephen Lead May 31 '11 at 1:12
add comment

1 Answer 1

up vote 6 down vote accepted

In short, it's not optimal, but it might not be too bad either...

On (3) - as long as you always specify the specific fields you want, the only extra "hit" should be on the initial request for the service metadata (which will be a bit larger due to the many fields).

If you know the "set" or "theme" of grouped fields your app will use (out of the 500), you might want to create layers in the mapservice that correspond accordingly. But if your field list is more dynamic, then go ahead as you were thinking.

However, as for performance, I would first focus your time on optimizing/generalizing your polygons (as the size of these are likely to be more of an impact on both your download time, drawing time, load etc). :)

share|improve this answer
    
Bjorn, thanks for the info, which is reassuring. re: generalisation, this occurs on-the-fly based on the map extent, and the polygons applicable for that scale will be shown. I'll post the link when the site is up. –  Stephen Lead May 31 '11 at 2:44
2  
FWIW, I created a featureclass with about 200 numeric attributes. If I define a featureLayer using FIELDS="*" and perform a query, the result is around 4.7 kb. If I define FIELDS as a single field, the result is around 280b. This seems to indicate that setting featureLayer.fields does a good job of only returning the required info. –  Stephen Lead Jun 8 '11 at 6:56
add comment

Your Answer

 
discard

By posting your answer, you agree to the privacy policy and terms of service.

Not the answer you're looking for? Browse other questions tagged or ask your own question.