第 145 章 HDFS2 组件
从 Camel 版本 2.14 开始提供
hdfs2 组件可让您使用 Hadoop 2.x 从/向 HDFS 文件系统读取和写入消息。HDFS 是分布式文件系统,是 Hadoop 的核心。
Maven 用户需要将以下依赖项添加到这个组件的 pom.xml
中:
<dependency> <groupId>org.apache.camel</groupId> <artifactId>camel-hdfs2</artifactId> <version>x.x.x</version> <!-- use the same version as your Camel core version --> </dependency>
145.1. URI 格式
hdfs2://hostname[:port][/path][?options]
您可以在 URI 中附加查询选项,格式为 ?option =value&option=value&
amp;…
The path is treated:
- 作为消费者,如果文件是文件,则仅读取该文件,否则它将代表一个目录,它会扫描满足配置模式的路径下的所有文件。该目录下的所有文件必须相同类型。
- 作为制作者,如果至少定义了一个分割策略,则路径被视为目录,并在该目录下,生成者使用配置的 UuidGenerator 为每个分割创建不同的文件。
当从 hdfs2 消耗时,在正常模式中,文件被分成块,生成每个块的消息。您可以使用 chunkSize 选项配置块大小。如果要从 hdfs 读取并使用文件组件写入常规文件,您可以使用 fileMode=Append 将每个块一起附加。