【发布时间】:2021-04-21 19:42:49
【问题描述】:
我收到此错误:
DataSetError: Failed while loading data from data set SQLQueryDataSet(load_args={}, sql=select * from table)
当我跑步时(在 kedro jupyter notebook 中):
%reload_kedro
c:\users\name.virtualenvs\pipenv_kedro\lib\site-packages\ipykernel\ipkernel.py:283:DeprecationWarning: should_run_async 以后不会自动调用transform_cell。请将结果传递给transformed_cell 参数以及在IPython 7.17 及更高版本中preprocessing_exc_tuple 转换期间发生的任何异常。
和 should_run_async(code)
2021-04-21 15:29:12,278 - kedro.framework.session.store - 信息 - read() 未针对 BaseSessionStore 实施。假设空店。
2021-04-21 15:29:12,696 - 根 - 信息 - ** Kedro 项目项目
2021-04-21 15:29:12,698 - 根 - 信息 - 定义的全局变量 context、session 和 catalog
2021-04-21 15:29:12,703 - root - INFO - Registered line magic run_viz
然后这个:
catalog.list()
#['table', 'parameters']
catalog.load('table')
我的 catalog.yml 文件包含在哪里:
table:
type: pandas.SQLQueryDataSet
credentials: secret
sql: select * from table
layer: raw
但是,当我运行它时(在同一个 kedro jupyter 笔记本中),我能够拉回预期的结果:
from kedro.extras.datasets.pandas import SQLQueryDataSet
sql = "select * from table"
credentials = {
"con": secret
}
data_set = SQLQueryDataSet(sql=sql,
credentials=credentials)
sql_data = data_set.load()
我该如何解决这个错误?
【问题讨论】:
-
我能够让它工作:catalog.load('table')。从 repo 中删除 notebook 并重新开始之后。
-
我认为问题出在笔记本上。由于某种原因,旧笔记本将无法成功运行 catalog.load()。我必须创建一个新笔记本才能运行它。
标签: kedro