I’m transitioning our data warehouse from on-premise SQL Server to Snowflake. I have a GIS team that uses Esri products and we needed to be able to ensure that ArcGIS could connect to Snowflake. So this is just a quick little How To.
Within your Snowflake instance, you’ll need to go the Help menu and download the latest 32-bit ODBC drivers and install them on the computer that has ArcGIS. Then create a System DSN using the Snowflake driver you just installed. Note that you’ll need to add the role credentials in order to view the Snowflake objects in ArcGIS.
Here’s the part that isn’t as intuitive. ArcGIS just has a list of your traditional relational databases as options for creating a new data connection. They hid the ODBC connection. What you will need to do is right-click in the menu bar and click on Customize. Then click on the Commands tab and search for “OLE”. You’ll need to drag the “Add OLE DB Connection” to the right of the Help menu.
We then were able to select our Snowflake System DSN using the menu item in ArcGIS. However, we didn’t see the connections update within the application. So simply closing and reopening ArcGIS seemed to refresh the data sources and we were able to preview the Snowflake objects.
Did you also connect ArcGIS Enterprise to Snowflake or just the GIS thick clients?
Only the thick client. I’ll talk to our GIS team and see if there’s a way for me to play w/ trying to connect to Enterprise…
Awesome! Thank you for the information and I look forward to hearing back from you after you’ve had a chance to talk with your GIS Team.
We are actually looking at pulling GIS data from a SQL Server environment into Snowflake and that will eventually be used when the Esri connector is working with Snowflake – we are currently bumping into how to Pull GEOMETRY from SQL Server into a field in Snowflake.
You mentioned transitioning from SQL Server to Snowflake – did you bump into this?
We’re kind of moving data in the opposite direction. External data goes to Snowflake and we build out a business key to link to our geodatabase data. I wonder if you could maybe figure out something with ArcPy. Looks like there is a geometry class. https://pro.arcgis.com/en/pro-app/latest/arcpy/classes/geometry.htm