Запоминание SQL-запросов
Скажем, у меня есть функция, которая запускает SQL-запрос и возвращает фрейм данных:
import pandas.io.sql as psql
import sqlalchemy
query_string = "select a from table;"
def run_my_query(my_query):
# username, host, port and database are hard-coded here
engine = sqlalchemy.create_engine('postgresql://{username}@{host}:{port}/{database}'.format(username=username, host=host, port=port, database=database))
df = psql.read_sql(my_query, engine)
return df
# Run the query (this is what I want to memoize)
df = run_my_query(my_query)
Я бы хотел:
Иметь возможность запоминать мой запрос выше с одной записью кэша на значениеquery_string
(т.е. на запрос)Быть в состоянии заставитьсброс кеша по запросу (например, на основе некоторого флага), например так что я могу обновить свой кеш, если я думаю, что база данных изменилась.