用于数据库迁移的 Nifi

Posted

技术标签:

【中文标题】用于数据库迁移的 Nifi【英文标题】:Nifi for database migration 【发布时间】:2019-05-13 16:40:11 【问题描述】:

如果 nifi 所做的只是一遍又一遍地发送相同的数据,为什么它会成为数据库迁移的好用例?(我试图从数据库中提取数据并将它们放入 JSON 文件中,但我看到了多个条目相同的元组。)那不是浪费计算资源吗?

如果我只想迁移一次数据库,有时只更新更改的列,那么 nifi 仍然是一个好用的工具吗?

【问题讨论】:

是什么促使您首先关注 nifi? 【参考方案1】:

这完全取决于您要从哪个数据库迁移到哪个环境。它是您想要迁移到 Hadoop 中的大型企业 Oracle 数据库吗?查看 Sqoop https://sqoop.apache.org/。我建议使用 Sqoop 将大型数据库一次性导入 Hadoop。

您也可以使用 NiFi 进行导入,使用 ExecuteSQL、QueryDatabaseTable、GenerateTableFetch 等处理器...它们都与 JDBC 连接器一起使用,因此根据您的数据库是否支持此功能,您也可以选择此功能。

如果您想获得增量更改,您可以使用 QueryDatabaseTable 处理器并使用它的最大值列属性,Matt Burgess 有一篇文章解释了如何在https://community.hortonworks.com/articles/51902/incremental-fetch-in-nifi-with-querydatabasetable.html 上实现这一点。

【讨论】:

以上是关于用于数据库迁移的 Nifi的主要内容,如果未能解决你的问题,请参考以下文章

Nifi05 Nifi单节点集群部署以及迁移

Nifi05 Nifi单节点集群部署以及迁移

用于更改列数据类型的 EF 迁移

实体框架代码第一次自动迁移不适用于 Oracle 数据库

如何指定Laravel用于迁移表的数据库连接?

在 Go 中用于数据库迁移的包是啥? [关闭]