{"id":178961,"date":"2012-06-15T23:21:11","date_gmt":"2012-06-16T06:21:11","guid":{"rendered":"http:\/\/www.esri.com\/arcgis-blog\/?post_type=blog&#038;p=178961"},"modified":"2018-12-18T11:35:53","modified_gmt":"2018-12-18T19:35:53","slug":"be-successful-overlaying-large-complex-datasets-in-geoprocessing","status":"publish","type":"blog","link":"https:\/\/www.esri.com\/arcgis-blog\/products\/arcgis-desktop\/analytics\/be-successful-overlaying-large-complex-datasets-in-geoprocessing","title":{"rendered":"Be successful overlaying large, complex datasets in Geoprocessing"},"author":5211,"featured_media":0,"parent":0,"menu_order":0,"comment_status":"closed","ping_status":"closed","template":"","format":"standard","meta":{"_acf_changed":false,"_searchwp_excluded":""},"categories":[23341],"tags":[23241,30321,24341,33151],"industry":[],"product":[36991],"class_list":["post-178961","blog","type-blog","status-publish","format-standard","hentry","category-analytics","tag-best-practices","tag-performance","tag-python","tag-scalability","product-arcgis-desktop"],"acf":{"short_description":"Spatial datasets often have large numbers of features.  Furthermore, these datasets may also contain individual features such as road casings","flexible_content":[{"acf_fc_layout":"content","content":"<p>Spatial datasets often have large numbers of features. \u00a0Furthermore, these datasets may also contain individual features such as road casings that are very large and complex.<\/p>\n<p>As a result of such large datasets, massive amounts of feature overlap (number of features and complexity of the overlapping features) within feature classes can result in a geoprocessing tool failure or poor performance.\u00a0 These failures are often due to system resources limitations, mismanagement of resources, \u201cbad\u201d data, or massive overlap in an area that cannot be processed within the available resources.\u00a0 Failure messages such as \u201cInvalid Topology [4GB_FILE_LIMIT] \u201c, or \u201cOut of memory\u201d can occur.\u00a0 In rare cases, an application crash is possible.<\/p>\n<p>At 10.1, significant work has been done for managing the processing of large complex data.\u00a0 We have removed internal limitations and overhauled our overlay engine\u2019s memory management.\u00a0 Some overlay processes that previously failed can now complete successfully, and with reasonable performance.\u00a0 However, following these guidelines and best practices should ensure your large overlay processes complete successfully.<\/p>\n<ol>\n<li><strong>System Requirements.<\/strong>\u00a0For very large processing, the minimum system requirements specified for running ArcGIS may not be enough. The more RAM\/Virtual memory the more likely your process will be successful and perform adequately.<\/li>\n<li><strong>Large overlay operations should be run without interference from other processes.<\/strong>\u00a0Do not start other applications or processes while an overlay operation is running.\u00a0 Before starting any overlay operation we query the system to see how much memory is available (details\u00a0<a title=\"Tiled processing of large datasets\" href=\"http:\/\/resources.arcgis.com\/en\/help\/main\/10.1\/index.html#\/\/01m10000000r000000\" target=\"_blank\" rel=\"noopener\">here<\/a>).\u00a0 If the amount of available memory changes significantly after the overlay operation has begun (e.g. by starting another application) it could cause the operation to fail.<\/li>\n<li><strong>Input data requirements.\u00a0<\/strong>Your input data should meet the data requirements recommended by the\u00a0<a title=\"Feature class basics\" href=\"http:\/\/resources.arcgis.com\/en\/help\/main\/10.1\/index.html#\/\/003n00000005000000\" target=\"_blank\" rel=\"noopener\">Geodatabase<\/a>.<\/li>\n<li><strong>Check for bad geometry.<\/strong>\u00a0Run the\u00a0<a title=\"Check Geometry (Data Management)\" href=\"http:\/\/resources.arcgis.com\/en\/help\/main\/10.1\/index.html#\/\/001700000034000000\" target=\"_blank\" rel=\"noopener\">CheckGeometry\u00a0<\/a>tool to make sure the geometries contain no errors.\u00a0 The onus is on the data\u2019s consumer to ensure that the feature class contains valid geometries before the data is used in analysis.\u00a0 Unexpected errors or results may be generated if bad geometries are used. \u00a0See \u201c<a title=\"Checking and repairing geometries\" href=\"http:\/\/resources.arcgis.com\/en\/help\/main\/10.1\/index.html#\/\/001700000042000000\" target=\"_blank\" rel=\"noopener\">Checking and repairing geometries<\/a>\u201d for more details.\u00a0 Run the\u00a0<a title=\"Repair Geometry (Data Management)\" href=\"http:\/\/resources.arcgis.com\/en\/help\/main\/10.1\/index.html#\/Repair_Geometry\/00170000003v000000\/\" target=\"_blank\" rel=\"noopener\">RepairGeometry\u00a0<\/a>tool to fix any geometry issues reported by CheckGeometry.<\/li>\n<li><strong>Data format limitations.<\/strong>\u00a0Shapefiles and Personal Geodatabases have fairly small limits on the size of feature class they can store.\u00a0 If the output of your overlay process is larger than the limitations of Shapefiles or the Personal Geodatabase then the operation will fail.\u00a0 A File Geodatabase has larger limits, in terms of the size of feature classes and, is often a better option for your output data.<\/li>\n<li><strong>Do not use\u00a0<\/strong><a title=\"Using in_memory workspace\" href=\"http:\/\/resources.arcgis.com\/en\/help\/main\/10.1\/index.html#\/\/002w0000005s000000\" target=\"_blank\" rel=\"noopener\"><strong>in_memory feature classes<\/strong><\/a><strong>\u00a0for large overlay output<\/strong>.\u00a0 Using the in_memory workspace for storing feature classes may affect the success of overlay operations by using up memory the overlay processing requires to complete successfully.\u00a0 Only use the in_memory workspace for storing feature classes when the data being processed is fairly small.<\/li>\n<li><strong>Check for huge features.<\/strong>\u00a0Check for very large individual features and if necessary break these features up into smaller features using the Dice tool.\u00a0 Some features are so large that they will not fit into memory for processing. The\u00a0<a title=\"Dice (Data Management)\" href=\"http:\/\/resources.arcgis.com\/en\/help\/main\/10.1\/index.html#\/\/001700000037000000\" target=\"_blank\" rel=\"noopener\">Dice\u00a0<\/a>tool (new at ArcGIS 10) can be used to break very large features into smaller features. \u00a0For more information on identifying very large individual features\u00a0<a title=\"Dicing Godzillas\" href=\"http:\/\/blogs.esri.com\/esri\/arcgis\/2010\/07\/23\/dicing-godzillas-features-with-too-many-vertices\/\" target=\"_blank\" rel=\"noopener\">see the Dicing Godzillas blog post<\/a>.<\/li>\n<li><strong>Analyze your feature vertices density<\/strong>. If your features have an extreme number of vertices (e.g. millions) you may want to analyze your workflow to determine if this level of vertex accuracy is required.\u00a0 If it is not required you could realize better performance by\u00a0<a title=\"An overview of the Generalization toolset\" href=\"http:\/\/resources.arcgis.com\/en\/help\/main\/10.1\/index.html#\/\/00700000002r000000\" target=\"_blank\" rel=\"noopener\">simplifying\u00a0<\/a>your data to reduce the number of vertices that will need to be processed.<\/li>\n<li><strong>Analyze your Geodatabase design<\/strong>.\u00a0 A re-design of\u00a0<a title=\"An overview of geodatabase design\" href=\"http:\/\/desktop.arcgis.com\/en\/arcmap\/10.3\/manage-data\/geodatabases\/an-overview-of-geodatabase-design.htm\" target=\"_blank\" rel=\"noopener\">how you store and use your data<\/a>\u00a0(i.e. review all topics in this section of the help documentation) may be very beneficial in avoiding performance and functional issues down the road.\u00a0 Can the data be broken up into many feature classes rather than being all in one feature class?\u00a0 Can the data be simplified for this analysis without affecting the results? Is all the data required for this particular analysis question?<\/li>\n<li><strong>Spatial Reference<\/strong>.\u00a0 Consider the\u00a0<a title=\"The properties of a spatial reference\" href=\"http:\/\/resources.arcgis.com\/en\/help\/main\/10.1\/index.html#\/\/003n0000001v000000\" target=\"_blank\" rel=\"noopener\">Spatial Reference<\/a>\u00a0and ask if it is appropriate for your analysis.\u00a0 See this\u00a0<a title=\"Understanding Coordinate Management in the Geodatabase\" href=\"http:\/\/downloads2.esri.com\/support\/whitepapers\/ao_\/UnderstandingCoordinateManagement_June2007.pdf\" target=\"_blank\" rel=\"noopener\">whitepaper\u00a0<\/a>for how the GDB stores coordinate geometry, and the impacts on storage and analysis your decisions may cause.<\/li>\n<\/ol>\n<h3>Additional Recommendations<\/h3>\n<h4>Use a 64bit operating system with plenty of physical memory<\/h4>\n<p>For very large processing, we recommend that you run ArcGIS on 64bit operating systems with an ample amount of RAM for two reasons.<\/p>\n<p>First, using Windows 7 as an example, the 32bit version of Windows can access up to 3Gb of physical memory (with user memory setting increased. See below.).\u00a0 For Windows 64bit the operating system can access up to 192Gb of physical memory which represents a large difference in the operating system\u2019s ability to handle very large processing loads.<\/p>\n<p>Secondly, when 32bit applications are run on 64bit, Windows can access more memory (See\u00a0<a title=\"Memory Limits for Windows Releases\" href=\"http:\/\/msdn.microsoft.com\/en-us\/library\/aa366778%28VS.85%29.aspx\" target=\"_blank\" rel=\"noopener\">here<\/a>), and 32bit applications, such as ArcGIS Desktop, can access almost twice as memory when run on the 64bit operating system (due to being Large Address Aware, see below for more info).<\/p>\n<h4>Use a 64bit offering of ArcGIS<\/h4>\n<p>Using 64bit applications allow your large processes to take advantage of a much more memory (if available) than using a 32bit version of the application.<\/p>\n<p>ArcGIS for Server is a natively built 64 bit application.\u00a0 Using overlay tools via Python scripts using the ArcGIS for Server binaries will allow you to take advantage of the 64bit application memory architecture.\u00a0 You do not need to start the ArcGIS for Server process or run these scripts as services. You simply need to run your python scripts in an environment where they have access to the ArcGIS for Server 64bit libraries and the Python 64bit install.<\/p>\n<p>Starting at 10.1 SP1, 64 bit background processing will be available in ArcGIS Desktop.\u00a0 Instead of using an ArcGIS Server 64 bit install to run your process you can install the 64 bit background package for ArcGIS Desktop (providing you are on a Windows 64bit install) and run your process using 64 bit background in ArcGIS Desktop.\u00a0 Although background processing allows you to use ArcGIS Desktop while your process is working in the background, you should not perform any other analysis or start any other processes while your large overlay process is running in the background.\u00a0 Doing so may interfere with the overlay operation\u2019s success.<\/p>\n<h4>32bit Python executable \u2013 make it Large Address Aware<\/h4>\n<p>Because the Python installed with ArcGIS Desktop (or any other ArcGIS 32bit application) is 32bit, processing from a command line, either from a script or the Python prompt or some Python IDE, will limit the Python process to using just 2GB of RAM.\u00a0 ArcGIS 32bit applications such as ArcMap take advantage of something called\u00a0<a title=\"\/LARGEADDRESSAWARE (Handle Large Addresses)\" href=\"http:\/\/msdn.microsoft.com\/en-us\/library\/wz223b1z(VS.80).aspx\" target=\"_blank\" rel=\"noopener\">Large Address Aware<\/a>\u00a0(LAA) which allows it to take advantage of addresses larger than 2GB (3GB on Win32, 4GB on Win64).\u00a0 If you want your script to take advantage of this larger address space to possibly improve performance and scalability you can run the script from the ArcMap Python window.\u00a0 Since it\u2019s running from within a parent process that is LAA, it too will take advantage of LAA.<\/p>\n<p><strong>Note:\u00a0<\/strong>On Windows 32bit systems you will also have to modify a boot option in order to allow applications built LAA to take advantage of the larger memory addresses. \u00a0For information on setting up Windows 32bit to take advantage of a Large Address Aware application\u00a0see\u00a0<a title=\"\/3GB \/USERVA boot switch information\" href=\"http:\/\/msdn.microsoft.com\/en-us\/library\/windows\/hardware\/ff556232(v=vs.85).aspx\" target=\"_blank\" rel=\"noopener\">here<\/a>.\u00a0Please be sure to look up the possible side effects of doing so. \u00a0For Windows 64bit systems you do not need to perform any additional setup.<\/p>\n<p>What if you want to continue to run your Python scripts containing large overlay processing from the command line?\u00a0 At this time, Python\u2019s 32bit offerings on windows are not built LAA and python.org has no plans to do so.\u00a0 However, there is a solution.\u00a0 If you would like to be able to run your Python scripts from the command line and not from within an ArcGIS application UI you can alter your installed Python executables to be LAA by building\/editing python.exe and pythonw.exe to be Large Address Aware (LAA).\u00a0 This then will allow the Python process to take advantage of extra memory space for large, complex processing.<\/p>\n<p>Please see\u00a0<a title=\"python.org\" href=\"http:\/\/www.python.org\/\" target=\"_blank\" rel=\"noopener\">www.python.org<\/a>\u00a0for details on rebuilding python.\u00a0 If you want to modify the Python executables rather than rebuild python from scratch to take advantage of LAA the Microsoft COFF Binary File Editor EDITBIN.EXE (see\u00a0<a title=\"EDITBIN Reference\" href=\"http:\/\/msdn.microsoft.com\/en-us\/library\/xd3shwhf.aspx\" target=\"_blank\" rel=\"noopener\">http:\/\/msdn.microsoft.com\/en-us\/library\/xd3shwhf.aspx<\/a>) is recommended. \u00a0\u00a0This will need to be done on python.exe and pythonw.exe under the Python install folder. EDITBIN.EXE comes with Visual Studio. \u00a0Please see the appropriate Microsoft documentation for using EDITBIN.<\/p>\n<h4>Multiprocessing and Overlay tools<\/h4>\n<p>You should not use multiprocessing to break up your data and send overlay processes for each batch of data to a separate core on one machine.\u00a0 The engine that performs the overlay operation checks how much available memory there is and then works within 60% of that to perform the analysis.\u00a0 Since all the cores share the same RAM on a machine, a second overlay operation will ask for the available memory and get an inaccurate estimate of the amount of memory that is available.\u00a0 If process #1 hasn\u2019t used up all the memory it will require, process #2 will get an inflated value for the amount of available RAM.\u00a0 This could cause an out of memory situation for both processes.\u00a0 If process #1 is using its maximum amount of memory for its processing, process #2 will get a very low estimation of the amount of available memory, and only use 60% of this low number.\u00a0 This may cause performance issues (it may have to tile the data more extensively to work within the small amount of memory) and perhaps even cause a failure.<\/p>\n<p>It may be possible to send batches of features to separate nodes for processing there but it is still not recommended that you break up your data to send it to separate overlay operations. Consider the following:<\/p>\n<ol>\n<li>You must merge all the overlay outputs.\u00a0 After all the overlay processing outputs have been generated by each node, use the Merge tool to merge all the results.<\/li>\n<li>After you have merged all the results, you most likely will have to run the overlay operation on the merged results in order to get to a correct overlay output that is as close as possible to having run one overlay on the entire dataset.\u00a0 Overlap within one of the input feature classes may not be complete due to how the batches of features were determined so an additional overlay may be required to discover this overlap.<\/li>\n<\/ol>\n<p>The benefits of breaking up the data to take advantage of multiprocessing are most often lost by these two required steps.\u00a0 If you are interested in finding out the best conditions under which you can take advantage of multiprocessing with GP tools, you can find guidance\u00a0<a title=\"Python Multiprocessing \u2013 Approaches and Considerations\" href=\"http:\/\/blogs.esri.com\/esri\/arcgis\/2011\/08\/29\/multiprocessing\/\" target=\"_blank\" rel=\"noopener\">here<\/a>.<\/p>\n<p><strong><em>This post contributed by Ken Hartling, a product engineer on the Analysis and Geoprocessing team<\/em><\/strong><\/p>\n"}],"authors":[{"ID":5211,"user_firstname":"Ken","user_lastname":"Hartling","nickname":"ken2472","user_nicename":"ken-hartling","display_name":"KenH","user_email":"khartling@esri.com","user_url":"","user_registered":"2018-03-02 00:16:52","user_description":"","user_avatar":"<img alt='' src='https:\/\/secure.gravatar.com\/avatar\/853a4bc0e1bcb61646fa1de63d2a468e5dba40e06221050178aad75e1f2b7fca?s=96&#038;d=blank&#038;r=g' srcset='https:\/\/secure.gravatar.com\/avatar\/853a4bc0e1bcb61646fa1de63d2a468e5dba40e06221050178aad75e1f2b7fca?s=192&#038;d=blank&#038;r=g 2x' class='avatar avatar-96 photo' height='96' width='96' loading='lazy' decoding='async'\/>"}],"related_articles":"","card_image":false,"wide_image":false},"yoast_head":"<!-- This site is optimized with the Yoast SEO Premium plugin v25.9 (Yoast SEO v25.9) - https:\/\/yoast.com\/wordpress\/plugins\/seo\/ -->\n<title>Be successful overlaying large, complex datasets in Geoprocessing<\/title>\n<meta name=\"robots\" content=\"index, follow, max-snippet:-1, max-image-preview:large, max-video-preview:-1\" \/>\n<link rel=\"canonical\" href=\"https:\/\/www.esri.com\/arcgis-blog\/products\/arcgis-desktop\/analytics\/be-successful-overlaying-large-complex-datasets-in-geoprocessing\" \/>\n<meta property=\"og:locale\" content=\"en_US\" \/>\n<meta property=\"og:type\" content=\"article\" \/>\n<meta property=\"og:title\" content=\"Be successful overlaying large, complex datasets in Geoprocessing\" \/>\n<meta property=\"og:url\" content=\"https:\/\/www.esri.com\/arcgis-blog\/products\/arcgis-desktop\/analytics\/be-successful-overlaying-large-complex-datasets-in-geoprocessing\" \/>\n<meta property=\"og:site_name\" content=\"ArcGIS Blog\" \/>\n<meta property=\"article:publisher\" content=\"https:\/\/www.facebook.com\/esrigis\/\" \/>\n<meta property=\"article:modified_time\" content=\"2018-12-18T19:35:53+00:00\" \/>\n<meta name=\"twitter:card\" content=\"summary_large_image\" \/>\n<meta name=\"twitter:site\" content=\"@ESRI\" \/>\n<script type=\"application\/ld+json\" class=\"yoast-schema-graph\">{\"@context\":\"https:\/\/schema.org\",\"@graph\":[{\"@type\":[\"Article\",\"BlogPosting\"],\"@id\":\"https:\/\/www.esri.com\/arcgis-blog\/products\/arcgis-desktop\/analytics\/be-successful-overlaying-large-complex-datasets-in-geoprocessing#article\",\"isPartOf\":{\"@id\":\"https:\/\/www.esri.com\/arcgis-blog\/products\/arcgis-desktop\/analytics\/be-successful-overlaying-large-complex-datasets-in-geoprocessing\"},\"author\":{\"name\":\"KenH\",\"@id\":\"https:\/\/www.esri.com\/arcgis-blog\/#\/schema\/person\/a5b1857859c0a2d5f7bcf148f81f3fe6\"},\"headline\":\"Be successful overlaying large, complex datasets in Geoprocessing\",\"datePublished\":\"2012-06-16T06:21:11+00:00\",\"dateModified\":\"2018-12-18T19:35:53+00:00\",\"mainEntityOfPage\":{\"@id\":\"https:\/\/www.esri.com\/arcgis-blog\/products\/arcgis-desktop\/analytics\/be-successful-overlaying-large-complex-datasets-in-geoprocessing\"},\"wordCount\":8,\"publisher\":{\"@id\":\"https:\/\/www.esri.com\/arcgis-blog\/#organization\"},\"keywords\":[\"Best Practices\",\"Performance\",\"python\",\"Scalability\"],\"articleSection\":[\"Analytics\"],\"inLanguage\":\"en-US\"},{\"@type\":\"WebPage\",\"@id\":\"https:\/\/www.esri.com\/arcgis-blog\/products\/arcgis-desktop\/analytics\/be-successful-overlaying-large-complex-datasets-in-geoprocessing\",\"url\":\"https:\/\/www.esri.com\/arcgis-blog\/products\/arcgis-desktop\/analytics\/be-successful-overlaying-large-complex-datasets-in-geoprocessing\",\"name\":\"Be successful overlaying large, complex datasets in Geoprocessing\",\"isPartOf\":{\"@id\":\"https:\/\/www.esri.com\/arcgis-blog\/#website\"},\"datePublished\":\"2012-06-16T06:21:11+00:00\",\"dateModified\":\"2018-12-18T19:35:53+00:00\",\"breadcrumb\":{\"@id\":\"https:\/\/www.esri.com\/arcgis-blog\/products\/arcgis-desktop\/analytics\/be-successful-overlaying-large-complex-datasets-in-geoprocessing#breadcrumb\"},\"inLanguage\":\"en-US\",\"potentialAction\":[{\"@type\":\"ReadAction\",\"target\":[\"https:\/\/www.esri.com\/arcgis-blog\/products\/arcgis-desktop\/analytics\/be-successful-overlaying-large-complex-datasets-in-geoprocessing\"]}]},{\"@type\":\"BreadcrumbList\",\"@id\":\"https:\/\/www.esri.com\/arcgis-blog\/products\/arcgis-desktop\/analytics\/be-successful-overlaying-large-complex-datasets-in-geoprocessing#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"Home\",\"item\":\"https:\/\/www.esri.com\/arcgis-blog\/\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"Be successful overlaying large, complex datasets in Geoprocessing\"}]},{\"@type\":\"WebSite\",\"@id\":\"https:\/\/www.esri.com\/arcgis-blog\/#website\",\"url\":\"https:\/\/www.esri.com\/arcgis-blog\/\",\"name\":\"ArcGIS Blog\",\"description\":\"Get insider info from Esri product teams\",\"publisher\":{\"@id\":\"https:\/\/www.esri.com\/arcgis-blog\/#organization\"},\"potentialAction\":[{\"@type\":\"SearchAction\",\"target\":{\"@type\":\"EntryPoint\",\"urlTemplate\":\"https:\/\/www.esri.com\/arcgis-blog\/?s={search_term_string}\"},\"query-input\":{\"@type\":\"PropertyValueSpecification\",\"valueRequired\":true,\"valueName\":\"search_term_string\"}}],\"inLanguage\":\"en-US\"},{\"@type\":\"Organization\",\"@id\":\"https:\/\/www.esri.com\/arcgis-blog\/#organization\",\"name\":\"Esri\",\"url\":\"https:\/\/www.esri.com\/arcgis-blog\/\",\"logo\":{\"@type\":\"ImageObject\",\"inLanguage\":\"en-US\",\"@id\":\"https:\/\/www.esri.com\/arcgis-blog\/#\/schema\/logo\/image\/\",\"url\":\"https:\/\/www.esri.com\/arcgis-blog\/app\/uploads\/2018\/04\/Esri.png\",\"contentUrl\":\"https:\/\/www.esri.com\/arcgis-blog\/app\/uploads\/2018\/04\/Esri.png\",\"width\":400,\"height\":400,\"caption\":\"Esri\"},\"image\":{\"@id\":\"https:\/\/www.esri.com\/arcgis-blog\/#\/schema\/logo\/image\/\"},\"sameAs\":[\"https:\/\/www.facebook.com\/esrigis\/\",\"https:\/\/x.com\/ESRI\",\"https:\/\/www.linkedin.com\/company\/5311\/\"]},{\"@type\":\"Person\",\"@id\":\"https:\/\/www.esri.com\/arcgis-blog\/#\/schema\/person\/a5b1857859c0a2d5f7bcf148f81f3fe6\",\"name\":\"KenH\",\"image\":{\"@type\":\"ImageObject\",\"inLanguage\":\"en-US\",\"@id\":\"https:\/\/www.esri.com\/arcgis-blog\/#\/schema\/person\/image\/\",\"url\":\"https:\/\/secure.gravatar.com\/avatar\/853a4bc0e1bcb61646fa1de63d2a468e5dba40e06221050178aad75e1f2b7fca?s=96&d=blank&r=g\",\"contentUrl\":\"https:\/\/secure.gravatar.com\/avatar\/853a4bc0e1bcb61646fa1de63d2a468e5dba40e06221050178aad75e1f2b7fca?s=96&d=blank&r=g\",\"caption\":\"KenH\"},\"url\":\"\"}]}<\/script>\n<!-- \/ Yoast SEO Premium plugin. -->","yoast_head_json":{"title":"Be successful overlaying large, complex datasets in Geoprocessing","robots":{"index":"index","follow":"follow","max-snippet":"max-snippet:-1","max-image-preview":"max-image-preview:large","max-video-preview":"max-video-preview:-1"},"canonical":"https:\/\/www.esri.com\/arcgis-blog\/products\/arcgis-desktop\/analytics\/be-successful-overlaying-large-complex-datasets-in-geoprocessing","og_locale":"en_US","og_type":"article","og_title":"Be successful overlaying large, complex datasets in Geoprocessing","og_url":"https:\/\/www.esri.com\/arcgis-blog\/products\/arcgis-desktop\/analytics\/be-successful-overlaying-large-complex-datasets-in-geoprocessing","og_site_name":"ArcGIS Blog","article_publisher":"https:\/\/www.facebook.com\/esrigis\/","article_modified_time":"2018-12-18T19:35:53+00:00","twitter_card":"summary_large_image","twitter_site":"@ESRI","schema":{"@context":"https:\/\/schema.org","@graph":[{"@type":["Article","BlogPosting"],"@id":"https:\/\/www.esri.com\/arcgis-blog\/products\/arcgis-desktop\/analytics\/be-successful-overlaying-large-complex-datasets-in-geoprocessing#article","isPartOf":{"@id":"https:\/\/www.esri.com\/arcgis-blog\/products\/arcgis-desktop\/analytics\/be-successful-overlaying-large-complex-datasets-in-geoprocessing"},"author":{"name":"KenH","@id":"https:\/\/www.esri.com\/arcgis-blog\/#\/schema\/person\/a5b1857859c0a2d5f7bcf148f81f3fe6"},"headline":"Be successful overlaying large, complex datasets in Geoprocessing","datePublished":"2012-06-16T06:21:11+00:00","dateModified":"2018-12-18T19:35:53+00:00","mainEntityOfPage":{"@id":"https:\/\/www.esri.com\/arcgis-blog\/products\/arcgis-desktop\/analytics\/be-successful-overlaying-large-complex-datasets-in-geoprocessing"},"wordCount":8,"publisher":{"@id":"https:\/\/www.esri.com\/arcgis-blog\/#organization"},"keywords":["Best Practices","Performance","python","Scalability"],"articleSection":["Analytics"],"inLanguage":"en-US"},{"@type":"WebPage","@id":"https:\/\/www.esri.com\/arcgis-blog\/products\/arcgis-desktop\/analytics\/be-successful-overlaying-large-complex-datasets-in-geoprocessing","url":"https:\/\/www.esri.com\/arcgis-blog\/products\/arcgis-desktop\/analytics\/be-successful-overlaying-large-complex-datasets-in-geoprocessing","name":"Be successful overlaying large, complex datasets in Geoprocessing","isPartOf":{"@id":"https:\/\/www.esri.com\/arcgis-blog\/#website"},"datePublished":"2012-06-16T06:21:11+00:00","dateModified":"2018-12-18T19:35:53+00:00","breadcrumb":{"@id":"https:\/\/www.esri.com\/arcgis-blog\/products\/arcgis-desktop\/analytics\/be-successful-overlaying-large-complex-datasets-in-geoprocessing#breadcrumb"},"inLanguage":"en-US","potentialAction":[{"@type":"ReadAction","target":["https:\/\/www.esri.com\/arcgis-blog\/products\/arcgis-desktop\/analytics\/be-successful-overlaying-large-complex-datasets-in-geoprocessing"]}]},{"@type":"BreadcrumbList","@id":"https:\/\/www.esri.com\/arcgis-blog\/products\/arcgis-desktop\/analytics\/be-successful-overlaying-large-complex-datasets-in-geoprocessing#breadcrumb","itemListElement":[{"@type":"ListItem","position":1,"name":"Home","item":"https:\/\/www.esri.com\/arcgis-blog\/"},{"@type":"ListItem","position":2,"name":"Be successful overlaying large, complex datasets in Geoprocessing"}]},{"@type":"WebSite","@id":"https:\/\/www.esri.com\/arcgis-blog\/#website","url":"https:\/\/www.esri.com\/arcgis-blog\/","name":"ArcGIS Blog","description":"Get insider info from Esri product teams","publisher":{"@id":"https:\/\/www.esri.com\/arcgis-blog\/#organization"},"potentialAction":[{"@type":"SearchAction","target":{"@type":"EntryPoint","urlTemplate":"https:\/\/www.esri.com\/arcgis-blog\/?s={search_term_string}"},"query-input":{"@type":"PropertyValueSpecification","valueRequired":true,"valueName":"search_term_string"}}],"inLanguage":"en-US"},{"@type":"Organization","@id":"https:\/\/www.esri.com\/arcgis-blog\/#organization","name":"Esri","url":"https:\/\/www.esri.com\/arcgis-blog\/","logo":{"@type":"ImageObject","inLanguage":"en-US","@id":"https:\/\/www.esri.com\/arcgis-blog\/#\/schema\/logo\/image\/","url":"https:\/\/www.esri.com\/arcgis-blog\/app\/uploads\/2018\/04\/Esri.png","contentUrl":"https:\/\/www.esri.com\/arcgis-blog\/app\/uploads\/2018\/04\/Esri.png","width":400,"height":400,"caption":"Esri"},"image":{"@id":"https:\/\/www.esri.com\/arcgis-blog\/#\/schema\/logo\/image\/"},"sameAs":["https:\/\/www.facebook.com\/esrigis\/","https:\/\/x.com\/ESRI","https:\/\/www.linkedin.com\/company\/5311\/"]},{"@type":"Person","@id":"https:\/\/www.esri.com\/arcgis-blog\/#\/schema\/person\/a5b1857859c0a2d5f7bcf148f81f3fe6","name":"KenH","image":{"@type":"ImageObject","inLanguage":"en-US","@id":"https:\/\/www.esri.com\/arcgis-blog\/#\/schema\/person\/image\/","url":"https:\/\/secure.gravatar.com\/avatar\/853a4bc0e1bcb61646fa1de63d2a468e5dba40e06221050178aad75e1f2b7fca?s=96&d=blank&r=g","contentUrl":"https:\/\/secure.gravatar.com\/avatar\/853a4bc0e1bcb61646fa1de63d2a468e5dba40e06221050178aad75e1f2b7fca?s=96&d=blank&r=g","caption":"KenH"},"url":""}]}},"text_date":"June 15, 2012","author_name":"KenH","author_page":false,"custom_image":"https:\/\/www.esri.com\/arcgis-blog\/app\/uploads\/2025\/08\/Newsroom-Keyart-Wide-1920-x-1080.jpg","primary_product":"ArcMap","tag_data":[{"term_id":23241,"name":"Best Practices","slug":"best-practices","term_group":0,"term_taxonomy_id":23241,"taxonomy":"post_tag","description":"","parent":0,"count":57,"filter":"raw"},{"term_id":30321,"name":"Performance","slug":"performance","term_group":0,"term_taxonomy_id":30321,"taxonomy":"post_tag","description":"","parent":0,"count":29,"filter":"raw"},{"term_id":24341,"name":"python","slug":"python","term_group":0,"term_taxonomy_id":24341,"taxonomy":"post_tag","description":"","parent":0,"count":171,"filter":"raw"},{"term_id":33151,"name":"Scalability","slug":"scalability","term_group":0,"term_taxonomy_id":33151,"taxonomy":"post_tag","description":"","parent":0,"count":4,"filter":"raw"}],"category_data":[{"term_id":23341,"name":"Analytics","slug":"analytics","term_group":0,"term_taxonomy_id":23341,"taxonomy":"category","description":"","parent":0,"count":1325,"filter":"raw"}],"product_data":[{"term_id":36991,"name":"ArcMap","slug":"arcgis-desktop","term_group":0,"term_taxonomy_id":36991,"taxonomy":"product","description":"","parent":36981,"count":325,"filter":"raw"}],"primary_product_link":"https:\/\/www.esri.com\/arcgis-blog\/?s=#&products=arcgis-desktop","_links":{"self":[{"href":"https:\/\/www.esri.com\/arcgis-blog\/wp-json\/wp\/v2\/blog\/178961","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/www.esri.com\/arcgis-blog\/wp-json\/wp\/v2\/blog"}],"about":[{"href":"https:\/\/www.esri.com\/arcgis-blog\/wp-json\/wp\/v2\/types\/blog"}],"author":[{"embeddable":true,"href":"https:\/\/www.esri.com\/arcgis-blog\/wp-json\/wp\/v2\/users\/5211"}],"replies":[{"embeddable":true,"href":"https:\/\/www.esri.com\/arcgis-blog\/wp-json\/wp\/v2\/comments?post=178961"}],"version-history":[{"count":0,"href":"https:\/\/www.esri.com\/arcgis-blog\/wp-json\/wp\/v2\/blog\/178961\/revisions"}],"wp:attachment":[{"href":"https:\/\/www.esri.com\/arcgis-blog\/wp-json\/wp\/v2\/media?parent=178961"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/www.esri.com\/arcgis-blog\/wp-json\/wp\/v2\/categories?post=178961"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/www.esri.com\/arcgis-blog\/wp-json\/wp\/v2\/tags?post=178961"},{"taxonomy":"industry","embeddable":true,"href":"https:\/\/www.esri.com\/arcgis-blog\/wp-json\/wp\/v2\/industry?post=178961"},{"taxonomy":"product","embeddable":true,"href":"https:\/\/www.esri.com\/arcgis-blog\/wp-json\/wp\/v2\/product?post=178961"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}