In our company we are working with the Snowflake-JBDC-Driver. Playing around a little bit, we noticed that not the full amount of results came back when executing a query with a large result set. Only after adding another Firewall-rule to access S3 storage were we able to retrieve all the records of a query.
I was then looking into the source code of the JDBC-Driver and there indeed I found code, that seems to communicate with S3, but it seems to me, that this feature has to be used explicitly and is not something that is done behind the scenes.
So my question: Does the Snowflake-JDBC-Driver work with S3 buckets when dealing with large queries?
Snowflake caches all large result sets on the internal stage of the Snowflake Account. For AWS this would be an S3 bucket indeed.
All drivers (this includes JDBC as well) do retrieve the large result sets from the internal stage automatically and this is not something that needs to be configured explicitly. Actually you cannot configure the behavior.
More information also available here.