# ODBC querying Snowflake is super slow

**URL:** <https://discourse.julialang.org/t/odbc-querying-snowflake-is-super-slow/131718>\
**Category:** Performance\
**Created:** [August 19, 2025, 7:55pm UTC](https://discourse.julialang.org/t/odbc-querying-snowflake-is-super-slow/131718 "2025-08-19T19:55:51Z")\
**Posts on this page:** 5\
**Page:** 1

<div class="post-metadata">

**Author:** ![Snowy](https://sea2.discourse-cdn.com/julialang/user_avatar/discourse.julialang.org/snowy/32/36765_2.png) [@Snowy](https://discourse.julialang.org/u/Snowy)\
**Post date:** [August 19, 2025, 7:55pm UTC](https://discourse.julialang.org/t/odbc-querying-snowflake-is-super-slow/131718/1 "2025-08-19T19:55:51Z")

</div>

Hi all,  
I’m trying to use ODBC.jl to query our enterprise’s Snowflake server. Fortunately, it works. Unfortunately, it’s _extremely_ slow. E.g. pulling 1000 rows via ODBC takes 1.5 minutes. Pulling the same 1000 rows in the web app takes about 4 seconds.

ODBC is definitely not my domain of expertise. What can I do to try and troubleshoot this problem? Are there alternative packages I can try using an ODBC connection?

thanks

---

<div class="post-metadata">

**Author:** ![drizk1](https://sea2.discourse-cdn.com/julialang/user_avatar/discourse.julialang.org/drizk1/32/208422_2.png) [@drizk1](https://discourse.julialang.org/u/drizk1)\
**Post date:** [August 19, 2025, 9:14pm UTC](https://discourse.julialang.org/t/odbc-querying-snowflake-is-super-slow/131718/2 "2025-08-19T21:14:46Z")

</div>

The TidierDB.jl package has a [snowflake backend](https://tidierorg.github.io/TidierDB.jl/latest/examples/generated/UserGuide/Snowflake/). I wrote it using http and json3 because I was hitting roadblocks with ODBC.

If you don’t want to use the tidier syntax, you can probably pull what you need from the underlying code to create your own querying functions.

I will point out , I never tested queries on super large tables - just mtcars really so it’s possibly slow/may have some bugs to work out. Happy to work those out if that’s the case

Hope this helps.

---

<div class="post-metadata">

**Author:** ![Snowy](https://sea2.discourse-cdn.com/julialang/user_avatar/discourse.julialang.org/snowy/32/36765_2.png) [@Snowy](https://discourse.julialang.org/u/Snowy)\
**Post date:** [August 19, 2025, 10:11pm UTC](https://discourse.julialang.org/t/odbc-querying-snowflake-is-super-slow/131718/3 "2025-08-19T22:11:25Z")

</div>

Thanks. I saw TidierDB has a Snowflake backend but haven’t given it a try myself yet because I have no idea what our OAuth token is. We use Entra ID, but the Snowflake guide is [rather intimidating](https://docs.snowflake.com/en/user-guide/oauth-azure) and probably seems to be out of the lane I should be swimming within our enterprise. Maybe I’ll give it a shot tomorrow if I can’t find a solution with ODBC.

---

<div class="post-metadata">

**Author:** ![drizk1](https://sea2.discourse-cdn.com/julialang/user_avatar/discourse.julialang.org/drizk1/32/208422_2.png) [@drizk1](https://discourse.julialang.org/u/drizk1)\
**Post date:** [August 19, 2025, 11:10pm UTC](https://discourse.julialang.org/t/odbc-querying-snowflake-is-super-slow/131718/4 "2025-08-19T23:10:15Z")

</div>

sounds good. i get that. I do remember it took me a little bit of time to figure out how to use the oauth tokens as well and i ended up using [this video](https://www.youtube.com/watch?v=JZguyU66UsQ)

---

<div class="post-metadata">

**Author:** ![Snowy](https://sea2.discourse-cdn.com/julialang/user_avatar/discourse.julialang.org/snowy/32/36765_2.png) [@Snowy](https://discourse.julialang.org/u/Snowy)\
**Post date:** [February 11, 2026, 3:11pm UTC](https://discourse.julialang.org/t/odbc-querying-snowflake-is-super-slow/131718/5 "2026-02-11T15:11:11Z")

</div>

Just following up here. I messaged the author of the package and there was a fix in place but a new version had not been created. I was able to pull the latest version of the package with:  
`] add ODBC#main`  
or in my case: `Update ODBC#main`
