问题标签 [kedro]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
1 回答
125 浏览

python - SQLAlchemy Oracle - InvalidRequestError:无法检索隔离级别

我在通过 SQLAlchemy 连接访问 Oracle 数据库中的表时遇到问题。具体来说,我正在使用 Kedrocatalog.load('table_name')并收到错误消息Table table_name not found。所以我决定使用这个答案中列出的方法来测试我的连接:如何验证 SqlAlchemy 引擎对象

错误:InvalidRequestError: could not retrieve isolation level

我已尝试按照文档中的说明显式添加隔离级别,如下所示:

和这个:

和这个:

但在所有情况下我都会遇到同样的错误。

0 投票
2 回答
175 浏览

amazon-s3 - 如何将 .wav 文件目录添加到 Kedro 数据目录?

这是我第一次尝试使用Kedro包。

我有一个 s3 存储桶中的 .wav 文件列表,我很想知道如何让它们在 Kedro 数据目录中可用。

有什么想法吗?

0 投票
0 回答
281 浏览

kedro - Kedro 0.17 用额外的参数覆盖 global.yml

我目前无法使用在运行时传递的额外参数来更新 globals.yml 文件,就像我之前对 Kedro 0.16.x 所做的那样。我通过 run.py 运行 kedro。

尝试上述方法会出现以下错误:

我的管道在不添加它的情况下工作,但我当然不能在运行时覆盖 globals.yml(这是必不可少的)。

0 投票
1 回答
708 浏览

hook - 如何在 kedro 0.17.0 中加载特定的目录数据集实例?

我们使用的是 kedro 版本 0.15.8,我们以这种方式从目录中加载一个特定项目:

现在,我们正在更改为 kedro 0.17.0 并尝试以相同的方式加载目录数据集(使用框架上下文):

现在我们得到错误:

kedro.framework.context.context.KedroContextError: 期望的实例ConfigLoader,得到了NoneType

这是因为项目中的钩子 register_config_loader 没有被调用该函数的 hook_manager 使用。

项目挂钩按以下方式定义:

并且设置被称为以下方式:“”“项目设置。”“”

我们如何配置它以使用钩子调用方法 load_context(_working_dir).catalog.datasets ?

我在 kedro 社区发布了同样的问题:https ://discourse.kedro.community/t/how-to-load-a-specific-catalog-item-in-kedro-0-17-0/310

0 投票
1 回答
1078 浏览

kedro - Jupyter Notebook 中缺少 Kedro 上下文和目录

我可以kedro run毫无问题地使用该命令运行我的管道。出于某种原因,尽管我无法再从 Jupyter Notebook 访问我的上下文和目录。当我在选择“新建”时使用我的项目名称运行kedro jupyter notebook并启动一个新的(或现有的)笔记本时,出现以下错误:

context

catalog.list()

编辑:

运行魔术命令后,%kedro_reload我可以看到我的 ProjectContext init_spark_session 正在查找 project_name/notebooks 中的文件,而不是 project_name/src。我尝试在 Jupyter Notebook 会话中更改工作目录,%cd ../srcos.ch_dir('../src')kedro 仍然在 notebooks 文件夹中查找:

%kedro_reload

_spark_session.sparkContext.addPyFile()正在寻找错误的地方。当我从我的 ProjectContext 中注释掉这一行时,这个错误消失了,但是我收到另一个关于在尝试从目录中加载数据集时无法找到我的 Oracle 驱动程序的消息:

df = catalog.load('dataset')

编辑2:

以供参考:

kedro/src/project_name/context.py

kedro/conf/base/spark.yml:

0 投票
1 回答
161 浏览

python - register_config_loader 中的 TemplatedConfigLoader 未替换 catalog.yml 中的模式(kedro)

我正在使用 kedro 管理一些数据,为此我在同一位置有许多数据集 CSV。如此处所述,我应该能够将此位置的文件路径存储在 globals.yml 文件中,并在我的目录中使用 ${...} 语法,但我似乎无法使其工作。

更具体地说,作为一个简单的示例,我有一个如下所示的 catalog.yml:

和我的 conf/base 文件夹中的 globals.yml 文件:

我还更新了我项目的 hooks.py 中的 register_config_loader,如文档中所述:

如果我是正确的,我认为应该将目录中的 ${directory} 替换为 file/path/to/directory。但是,当我运行kedro jupyter notebook并尝试运行时catalog.load('dataset'),出现错误:

我认为钩子没有正确替换 ${...} 实例 - 我怎样才能使它工作?

0 投票
3 回答
111 浏览

python-3.x - 这个 python 函数签名在 Kedro 教程中意味着什么?

我正在研究 Kedro Library,因为我的团队正在考虑将它用于我们的数据管道。

虽然去官方教程 - 太空飞行。

我遇到了这个功能:

  • 公司是包含数据的 csv 文件的名称

查看函数,我的假设是(companies: pd.Dafarame)将“公司”数据集作为数据框读取的简写。如果是这样,我不明白-> pd.Dataframe最后是什么意思

我尝试查看有关这种代码风格的 python 文档,但我没有找到任何

感谢很多帮助,以帮助我理解这一点。

谢谢

0 投票
1 回答
156 浏览

python - 如何将 xlsb 文件添加到 Kedro 的目录中?

1.我在catalog.yml文件中使用这个代码

  1. 执行 kedro run 命令后出现错误。

` kedro.io.core.DataSetError:从数据集 ExcelDataSet 加载数据时失败(filepath=C:/Users/Akshay Salvi/Desktop/Bizmetrics/kedro-environment/petrocaeRepo/data/01_raw/2。循环数据(每次行程) -20210113T042557Z-001/2. 循环数据(每次行程)/CycleData,2020.xlsb, load_args={'engine': xlrd}, protocol=file, save_args={'index': False}, writer_args={'engine' :xlsxwriter})。

Excel 2007 xlsb 文件;不支持`

0 投票
2 回答
417 浏览

python - Kedro 条件管道(或替代方法)

我目前正在为我们的管道研究不同的设计模式选项。Kedro 框架似乎是一个不错的选择(允许模块化设计模式、可视化方法等)。

管道应该由许多模块创建,这些模块要么将输出写入文件,要么将其传送到下一个模块(取决于条件)。在第二种情况下(到下一个模块的管道),kedro 失败了,因为它将整个输出读入内存然后转发到下一步(或者是否有可能是 unix 类型的管道)?我正在使用大数据,所以这个适合我。为什么这个工作流程与通常的 unix 管道不同?- unix 管道正在读取特定的缓冲区大小并立即转发它(我猜这会被交换到磁盘而不是保存在内存中?)。如果您能指出另一个允许此类功能的框架,我将不胜感激(我也不介意从头开始实现 DP)。

编辑:我的节点主要依赖于外部二进制文件,因此,我想实现类 Unix 管道。

0 投票
1 回答
524 浏览

python - kedro 作为 python 命令而不是命令行运行

我开始使用 Kedro,所以我为默认的 iris 数据集创建了新的 kedro 项目。

我能够使用kedro run命令成功运行它。我现在的问题是如何将它作为 python 命令运行?从文档中我读到该命令kedro run 运行src/project-name/run.py. 但是,如果我运行run.py我得到ModuleNotFoundError: No module named 'iris_workflow'. 如果我runsrc/project-name/cli.py.

kedro run如果我在终端中运行,一切正常。

如何在kedro run没有subprocess.run(). 如果我在脚本中导入run.pyor并运行它,我会得到同样的错误。cli.pyModuleNotFoundError: No module named 'iris_workflow'

这是我创建的默认工作流程kedro new --starter=pandas-iris