New answers tagged performance
Have a search in help for the subject "Performance tips for joining data" it offers advice on improving join performance. Your code does not indicate you have added an attribute index which can often improve performance.
There is a good answer in Google Groups by Nelson Minar: Use experimental plugin by Ziggy Jonsson and Nelson Minar that renders GeoJSON with D3: https://github.com/NelsonMinar/vector-river-map/blob/master/clients/lib/TileLayer.d3_geoJSON.js Nicklas Aven recommends TKWB binary format that is 80% more effective bandwidth-wise. There is another D3+Leaflet ...
I ran a few very simple tests using some NHD data coming from an SDE connection and found very little difference between either method. 7 Label Classes in a single layer, also 7 separate symbologies: 36 seconds 7 Separate layers with definition queries, single label class in each with no query: 37 seconds A few caveats: My test was very simple with ...
If you are referencing a file, no matter how it is indexed or what format it is in, it will still be downloading and including features not in your view port. What is needed in this case is to use map server software. A tile server was suggested above but a tile server usually sits between a map server and the user. Try implementing something like mapserver, ...
WFS is not so suitable for on-the-fly visualisation - it does not handle scale/zoom. To improve client-side vector display performance, it should be ensured that (1) only the features in the view are loaded and rendered and (2) the features displayed are properly simplified and aggregated according to each zoom level. To solve 1, spatial indexing is a ...
I would initially look at optimizing the layer at the server level. Here are some options to consider (if your data is coming from GeoServer/PostGIS table): Use "Per-Request Feature Limit" option (in GeoServer web) to limit number of features that will draw Define a spatial index on the table (PostGIS table)
I think the definition query would be faster because it's at the object level and not at the attribute data level. You would still have to test. However I would use definition queries and not label classes.
Assuming the SQL queries on the label classes are the same as the ones on split out layers, the single layer approach with multiple label classes will be faster. Why?: Labeling in ArcMap will execute one query for the layer draw and then one query for each label class. So a layer with 4 label classes will query once for all features drawn and then 4 ...
My quick testing, using ArcGIS 10.2.2 for Desktop on Windows 7 SP1, indicates that Intersect is faster than Spatial Join. This test, run from IDLE: import arcpy,time if not arcpy.Exists(r"C:\temp\test.gdb"): arcpy.CreateFileGDB_management(r"C:\temp","test.gdb") if arcpy.Exists(r"C:\temp\test.gdb\fnPoly100"): ...
Top 50 recent answers are included