使用 Nifi 将文件从 SFTP 服务器复制到 HDFS
Copy files from SFTP server to HDFS using Nifi
我正在尝试从 SFTP 服务器加载包含 225 GB(文件数量约为 1,75,000)的庞大数据,并将数据复制到 HDFS。
为了实现上述场景,我们使用了 2 个处理器。
- GetSFTP(从 SFTP 服务器获取文件)
已配置处理器 -> 递归搜索 = true ;使用自然排序 = true ;远程轮询批量大小 = 5000;并发任务 = 3
2.PutHDFS(推送数据到HDFS)
已配置的处理器 -> 并发任务 = 3;冲突解决策略 = replace ; Hadoop 配置资源;目录
但是一段时间后数据复制停止,并且它的大小没有在 HDFS 中更新。
当我在 GetSFTP 中将 Remote Poll Batch Size 配置设置为 5000 -> 推送到 HDFS 的总数据为 6.4 GB,当设置为 20000 -> 推送到 HDFS 的总数据为 25 GB
但我似乎无法弄清楚我做错了什么。
确保你有 scheduled GetSFTP processor
到 运行 基于定时器驱动(或)Cron 驱动。
理想的解决方案是使用 ListSFTP + FetchSFTP
处理器而不是 GetSFTP
处理器。
请参阅 this link 以获取 configuring/usage 的 List+Fetch sftp 处理器。
我正在尝试从 SFTP 服务器加载包含 225 GB(文件数量约为 1,75,000)的庞大数据,并将数据复制到 HDFS。
为了实现上述场景,我们使用了 2 个处理器。
- GetSFTP(从 SFTP 服务器获取文件)
已配置处理器 -> 递归搜索 = true ;使用自然排序 = true ;远程轮询批量大小 = 5000;并发任务 = 3
2.PutHDFS(推送数据到HDFS)
已配置的处理器 -> 并发任务 = 3;冲突解决策略 = replace ; Hadoop 配置资源;目录
但是一段时间后数据复制停止,并且它的大小没有在 HDFS 中更新。 当我在 GetSFTP 中将 Remote Poll Batch Size 配置设置为 5000 -> 推送到 HDFS 的总数据为 6.4 GB,当设置为 20000 -> 推送到 HDFS 的总数据为 25 GB
但我似乎无法弄清楚我做错了什么。
确保你有 scheduled GetSFTP processor
到 运行 基于定时器驱动(或)Cron 驱动。
理想的解决方案是使用 ListSFTP + FetchSFTP
处理器而不是 GetSFTP
处理器。
请参阅 this link 以获取 configuring/usage 的 List+Fetch sftp 处理器。