Skip to content

Instantly share code, notes, and snippets.

@blackary
Last active January 9, 2024 06:37
Show Gist options
  • Star 1 You must be signed in to star a gist
  • Fork 0 You must be signed in to fork a gist
  • Save blackary/68d3b31ee5546e4b50862b74f192ed15 to your computer and use it in GitHub Desktop.
Save blackary/68d3b31ee5546e4b50862b74f192ed15 to your computer and use it in GitHub Desktop.
Caching Snowflake queries in Streamlit
def get_pandas_from_sql(sql: str) -> pd.DataFrame:
@st.cache_data(ttl=TTL)
def get_df(sql):
dataframe = session.sql(sql).to_pandas()
return dataframe
dataframe = get_df(sql)
return dataframe
def get_pandas_from_snowpark(df: snowpark.DataFrame) -> pd.DataFrame:
query = df._plan.queries[0].sql # Get the SQL that will be run when .to_pandas() is called
@st.cache_data(ttl=TTL)
def get_df(
_df: snowpark.DataFrame,
query_str: str,
) -> pd.DataFrame:
return _df.to_pandas()
pd_df = get_df(_df=df, query_str=query)
return pd_df
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment