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.

ArcGIS 9.3.1, ArcInfo. I have some small file geodatabase and SDE featureclasses (few thousand records each, 50 columns) that I am doing attribute joins on. After the joins, drawing of the map is slowed down from sub-second to several seconds each time, sometimes more. Add in some definition queries that reference fields from the join and it's time to go get a cup of coffee while redrawing. Any ideas on why this happens? Anyone else ever experienced this?

share|improve this question
5  
Are your join fields indexed? –  Derek Swingley Oct 15 '10 at 19:02
    
No, they are not indexed. –  Chad Cooper Oct 15 '10 at 19:20
7  
To answer your last question, Chad: yes, I've experienced poor join performance on every version of ArcGIS. Huge advances in computing speed over the last decade still haven't been able to keep up with the routine degradation in performance with each new release. That's one of the main reasons I can't use it for analytical work. (For cartographic work it's a different story.) –  whuber Oct 15 '10 at 22:35
    
@Swingley's question may be the answer to your problem. Joining on a non-indexed column will seriously slow things down. You'll likely get a large increase in speed simply from creating an index on that field. You may also need to move things from a file geodatabase to SDE; Access isn't the fastest thing on the block so switching to SqlServer or Oracle could also help you with speed issues. –  Michael Todd Oct 16 '10 at 3:17
2  
@Jay: yes Swingley was the first to put the key stone in place, and got 3 upvotes for it, however you went further and described a method. Everybody wins. :) We seek to build more than just the right answer, but also the best. They are not always found within a single container simultaneously. –  matt wilkie Oct 18 '10 at 20:27
show 5 more comments

1 Answer 1

Originally a comment:
I regularly need to join to another depts featureclass: SDE featureclass with no indexes on anything. Copying to a local file geodatabase + index builds really speeds things up. Since it's temporary, I'll usually do this on a RAM disk http://t.co/EBTeOem. Depending on your data, indexing fields that you use for symbolizing or fields used in the definition query can help.

share|improve this answer
    
Never thought about indexing fields that symbology is based upon. Do you find that this increases rendering performance on map redraws/refreshes? –  Chad Cooper Oct 18 '10 at 17:31
    
I'll modify the answer--indexing fields used for rendering won't help in every case and I don't know for certain if it helps for file geodatabase. It's more of a habit based on my memory of how sde featureclasses have performed in the past (using se_toolkit). –  Jay Cummins Oct 18 '10 at 17:47
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.