Using ArcGIS 10.1. I have a large polygon feature class (130,000 records). I need to do an inside/outside buffer (+5 then -5 to fill in some gaps)... the process takes so long, I'm looking for a way to speed it up. Dissolving? Splitting into smaller chunks. Any tips are appreciated.
-
Have you ruled out a system limitation, such as RAM or CPU? If this is just a one time occurrence, I wouldn't spend too much time worrying about decreasing run time.– PaulCommented Aug 8, 2013 at 21:25
-
If you are running against an ArcSDE Geodatabase, I would consider using SQL instead of ArcGIS Desktop.– travisCommented Aug 8, 2013 at 22:14
-
Are the "gaps" actually holes in features (making them donuts) or between polygons that you want to coalesce? If it is the former I would use Union with NO_GAPS.– PolyGeo ♦Commented Aug 8, 2013 at 22:26
-
Are you processing over a network connection--perhaps using a central server? As this is often the case for me, I often copy the FC to my desktop computer hard drive and then do the processing while also writing the buffers to my desktop computer hard drive. I've seen processing times decrease by as much as 10x by writing to a local HD.– Aaron ♦Commented Aug 8, 2013 at 22:56
-
Another thought here: Do not use Multi-ringed buffers. Rather, do two individual buffer operations and merge/dissolve as needed upon completion. If you post a screenshot of the type of vector data you are working with, we may be able to suggest more efficient alternatives than buffering (e.g. topology rules etc.).– Aaron ♦Commented Aug 8, 2013 at 22:58
1 Answer
The Dice tool might be an option, but it can split up your polygons, introducing unwanted vertices. There is a blog post from ESRI, Dicing Godzillas, that discusses this.
Another option, and one that should speed up your process, would be to split up your feature class into multiple feature classes (you could export by OID) and use multiprocessing so that multiple cores are being leveraged. ESRI has a good blog post to get you started. After it's completed, you can use Merge to bring them back together again.
-
Dice ended up working for me. I did not use multiprocessing as the first go at Dice ended up working. Am interested in trying multiprocessing in the future. Commented Aug 14, 2013 at 18:14