gpt4 book ai didi

python - 在 NiFi 中取消透视 csv 并将其摄取到 sql server 中

转载 作者:行者123 更新时间:2023-11-30 22:28:07 26 4
gpt4 key购买 nike

我是 NiFi 新手。尝试将 csv 文件提取到 SQL Server,但需要在提取前取消数据透视。例如:这是原始的 csv

Name, Maths, Science, English
Raghav, 60, 70, 80
Nisha, 77, 56, 89

sql表的最终输出:

Name, subject, marks
Raghav, Maths, 60
Raghav, Science, 70
Raghav, English, 80
Nisha, Maths, 77
Nisha, Science, 56
Nisha, English, 89

我怎样才能在NiFi中实现这一点。不需要临时表

我尝试使用pandas,但NiFi不支持它

最佳答案

Apache NiFi 可以执行此操作,但您需要编写自定义逻辑并使用 ExecuteScript 处理器。

此过程不是通用且可重复的,因为从提供的数据来看,您不知道“列”类型以便在输出中提供新的列名称。您必须对这些值进行硬编码或从单独的数据源读取它们。

有很多使用 Groovy/Ruby/Python 或其他脚本语言来执行转置操作的示例,这正是您想要在此处执行的操作。在 Groovy 中,它是 List 对象的 List 上的方法,如 List#transpose() 中所定义。 。您可以使用简单的 Groovy CSV 处理将 CSV 数据加载到对象中并调用该方法。 Matt Burgess 提供了许多示例 using the ExecuteScript processor从流文件中读取数据,对其进行操作,然后将其写回流文件内容并将其发送到后续连接。

关于python - 在 NiFi 中取消透视 csv 并将其摄取到 sql server 中,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/46719052/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com