当前位置: 首页 > 知识库问答 >
问题:

带处理器的NiFi流文件移动

邢勇
2023-03-14

我一直在读关于NiFi的书,很少有疑问。考虑一个用例,我希望将数据从本地移动到HDFS中。我将使用getFile和putHDFS处理器。

>

  • 我看到流文件内容是字节表示,字节转换是由Nifi完成的吗?(如果我的源文件是文本文件)?

    如何将数据从内容回购转移到HDFS

  • 共有1个答案

    欧阳楚
    2023-03-14

    1)实际上没有进行转换...GetFile处理器正在从源文件中读取字节,并将字节写入内容存储库中的目标。无论源文件的内容是什么,内容存储库中的内容都是一样的。此操作以流的方式执行,因此可以将一个大文件移入内容存储库,而无需将整个文件读入内存。

    2)PutHDFS处理器使用Apache Hadoop 2.6.2客户机将内容存储库中的字节流式传输到HDFS中,类似于从命令行执行“HDFS PUT”。

     类似资料:
    • 我正在研究创建一个自定义处理器从一个自定义源中摄取数据,那里没有现有的nifi处理器。 我一直试图理解Nifi组件如何工作的机制,并看到了一些关于如何创建自定义处理器的好文档,然而,我看不到任何关于管理偏移量的内容。假设我有一个运行1秒的处理器,但需要从某个任意偏移量继续进行处理,这可能会每秒钟产生结果,也可能不会产生结果。

    • 我正在尝试使用ExecuteSQL处理器从oracle数据库中提取数据。我有一些查询,例如假设在我的oracle数据库中有15条记录。在这里,当我运行ExecuteSQL处理器时,它将作为一个流进程连续运行,并将整个记录作为一个文件存储在HDFS中,并且重复这样做。因此,在HDFS位置中会有许多文件,这些文件将从oracle db中提取已经提取的记录,并且这些文件包含相同的数据。我如何使该处理器以

    • 我正在使用Tailfile处理器从计划每分钟运行的集群(3个节点)中获取日志。日志文件名每小时都会发生变化,我不知道应该使用哪种跟踪模式。如果我使用单个文件,它不会获取1小时后生成的新文件。如果我使用多文件,它是在文件名更改第三分钟后获取文件,这增加了文件的大小。我的文件的滚动文件名应该是什么,我应该使用哪种模式。你能让我知道吗。谢谢。 tail:retrieve-${now():format(“

    • 我在运行FetchElasticSearch处理器时出现了奇怪的错误,下面是错误。 FetChelasticSearch[ID=F2B2FEE3-B940-4A73-8A28-0436E765C9A2]无法读取到Elasticsearch中,原因是没有配置的节点可用:[{#Transport#-1}{127.0.0.1}{localhost/127.0.0.1:9500}],这可能表示配置错误(主

    • 我想做一个新的处理器,它将是GetFile和EvaluateXpath的重聚。有几个主题我感兴趣: > 现在我的nar文件超过20KB,而我的nifi无法运行它,我该如何缩小它? 我想从文件夹中获取文件,读取它的数据并将其作为一个atribute放入新的flowfile中,然后将配置xml回滚到它的原始文件夹,如何将配置文件回滚到文件夹b代码? 下面是我用来从xml配置文件中获取属性的简单代码:

    • Apache NIFI“ExecutesQL处理器”能否以“X”MB为单位流式传输大量的选择结果?