Select to view content in your preferred language

What can you do in arcpy but not in arcgis?

707
1
09-06-2021 07:13 PM
HugoBouckaert1
Occasional Contributor

Hi 

We have to process big data and for that Geoanalytics server seems to be a good solution because it supports a clustered environment. The Geoanalytics server supports arcgis libraries which themselves can make use of clustered computing (just like pyspark). However, it does not support arcpy. At the moment all my scripts are written using arcpy, using an ArcGIS Pro desktop environment and Jupyter notebooks.  The scripts are quite complex and use a lot of arcpy functions. 

Before we invest in implementing a Geoanalytics server, we need to know if my scripts will run only using  the arcgis libraries without access to the arcpy libraries. I know that arcgis is web-focused and is a wrapper for the REST api, and I am happy to translate what I have written using arcpy into arcgis. I also know the two are meant to be complementary to each other rather than "like for like", but nevertheless, for the scripts, I need equivalent functionality in arcgis that is currently available in arcpy.  So my questions are: 

1. Is there a URL with an "equivalence list" and "exclusion list" ? For example there is an append procedure in both, but I could not find a NEAR function in arcgis (could be there of course, but this is just an example).  Going through the documentation function by function comparing arcgis to arcpy is a huge task, so a page that lists equivalent functions would be very helpful. Similarly a page that lists functions supported in arcpy that are not in arcgis would be very useful.  

2. Can we use the Geoanalytics server stand-alone without making reference to ArcGIS Online or a local implementation of Portal?

3. Are File geodatabases supported? I watched a couple of videos about Geoanalytics server and the datastores it can use. Although shapefiles are mentioned File geodatabases were not in the list of supported datasets.  Only being able to use shapefiles would be a limitation, especially because the the lenght limit of column names. 

Any help will be greatly appreciated. 

Thanks

Hugo  

 

0 Kudos
1 Reply
jcarlson
MVP Esteemed Contributor

1. Not that I know of. As you point out, they're meant to be complimentary. I have many scripts that use both libraries, and . If someone were to create a Venn diagram of the two libraries, I suspect that the non-overlapping features would be quite a bit bigger than the overlap.

It's worth pointing out, some arcpy tools have a similar counterpart in arcgis, but function or be named slightly differently. Instead of the Near tool, we have the Find Nearest analysis tool. It's not a perfect replacement, but can perform some of the same tasks.

Trying to explicitly list everything that is specific to one library or the other would end up being a very long list, and would probably duplicate large sections of the existing documentation. Entire modules of arcpy (like the mapping module) are specific to the desktop environment, and do not have any analog in arcgis. The same is true in reverse.

This is not to say that the tasks performed with arcpy are not possible without it, but may require another library in addition to arcgis. For instance, creating a nice, printable layout. This can all be done in arcpy. The arcgis library doesn't directly have anything similar, but you can accomplish it using matplotlib or similar, and still get an attractive map.

3. I'm not sure if this point is specific to Geoanalytics, but the arcgis library does support geodatabases for reading and writing layers. I personally prefer working with Spatially Enabled Dataframes when I use the arcgis library, and these can be created from a featureclass, as well as written to one, in a file geodatabase.

 

I don't know enough to speak to point #2, but hopefully some of this helps.

- Josh Carlson
Kendall County GIS