144.2. 选项


HDFS 组件支持 2 个选项,如下所列。

Name描述默认值类型

jAASConfiguration (common)

将给定的配置用于 JAAS 的安全性。

 

配置

resolveProperty Placeholders (advanced)

组件是否应在启动时解析属性占位符。只有 String 类型的属性可以使用属性占位符。

true

布尔值

HDFS 端点使用 URI 语法进行配置:

hdfs:hostName:port/path

使用以下路径和查询参数:

144.2.1. 路径参数(3 参数):

Name描述默认值类型

hostName

要使用的 HDFS 主机

 

字符串

port

要使用的 HDFS 端口

8020

int

path

必需 使用的目录路径

 

字符串

144.2.2. 查询参数(38 参数):

Name描述默认值类型

connectOnStartup (common)

是否在启动 producer/consumer 时连接到 HDFS 文件系统。如果为 false,则按需创建连接。请注意,HDFS 可能需要 15 分钟才能建立连接,因为它已重新传送硬编码 45 x 20 sec。通过将此选项设置为 false 可让您的应用程序启动,并且不会阻止 till 15 分钟。

true

布尔值

fileSystemType (common)

设置为 LOCAL 不使用 HDFS,而是使用本地 java.io.File。

HDFS

HdfsFileSystemType

filetype (common)

要使用的文件类型。如需了解更多详细信息,请参阅关于各种文件类型的 Hadoop HDFS 文档。

NORMAL_FILE

HdfsFileType

keyType (common)

序列或映射文件时的键的类型。

NULL

WritableType

owner (common)

文件所有者必须与此所有者匹配,才能选择文件。否则会跳过该文件。

 

字符串

valueType (common)

如果序列或映射文件,键的类型

BYTES

WritableType

bridgeErrorHandler (consumer)

允许将消费者桥接到 Camel 路由错误处理程序,这意味着当消费者试图选择传入消息或类似信息时发生异常,现在将作为消息处理并由路由 Error Handler 处理。默认情况下,使用者将使用 org.apache.camel.spi.ExceptionHandler 来处理例外情况,该处理程序将被记录在 WARN 或 ERROR 级别,并忽略。

false

布尔值

delay (consumer)

目录扫描之间的间隔(毫秒)。

1000

long

initialDelay (consumer)

对于消费者,在开始扫描目录前等待多少(毫秒)。

 

long

pattern (consumer)

用于扫描目录的模式

*

字符串

sendEmptyMessageWhenIdle (consumer)

如果轮询使用者没有轮询任何文件,您可以启用此选项来发送空消息(无正文)。

false

布尔值

ExceptionHandler ( consumer)

要让使用者使用自定义例外处理程序:请注意,如果启用了 bridgeErrorHandler 选项,则此选项不使用。默认情况下,消费者将处理异常,其记录在 WARN 或 ERROR 级别中,并忽略。

 

ExceptionHandler

exchangePattern (consumer)

在消费者创建交换时设置交换模式。

 

ExchangePattern

pollStrategy (consumer)

可插拔 org.apache.camel.PollingConsumerPollingStrategy 允许您提供自定义实施来控制在轮询操作期间通常会发生错误处理,然后再创建交换并在 Camel 中路由。

 

PollingConsumerPoll Strategy

append (producer)

将 附加到现有文件。请注意,并非所有 HDFS 文件系统都支持 append 选项。

false

布尔值

overwrite (producer)

是否覆盖具有相同名称的现有文件

true

布尔值

blockSize (advanced)

HDFS 块的大小

67108864

long

bufferSize (advanced)

HDFS 使用的缓冲区大小

4096

int

checkIdleInterval (advanced)

运行空闲检查器后台任务的频率(以 millis )。只有在 splitter 策略是 IDLE 时,这个选项才被使用。

500

int

CHUNKSIZE (advanced)

在读取普通文件时,这会分割为每块生成消息的块。

4096

int

compressionCodec (advanced)

要使用的压缩代码

DEFAULT

HdfsCompressionCodec

compressionType (advanced)

要使用的压缩类型(默认值不使用)

NONE

CompressionType

openSuffix (advanced)

打开用于读取/写入文件时使用后缀重命名的文件时,以避免在编写阶段读取该文件。

打开

字符串

readSuffix (advanced)

使用此后缀重命名文件后,以避免再次读取该文件。

读取

字符串

复制 (高级)

HDFS 复制因素

3

short

splitStrategy (advanced)

在当前版本的 Hadoop 中,Hadoop 在 append 模式中打开一个文件被禁用,因为它不可靠。因此,目前只能创建新文件。Camel HDFS 端点尝试以这种方式解决此问题:如果定义了 split 策略选项,则 hdfs 路径将用作目录,使用配置的 UuidGenerator 创建文件。每次满足分割条件时,都会创建一个新文件。splitStrategy 选项被定义为一个字符串,语法如下: splitStrategy=ST:value,ST:value,…​ where ST can be be: BYTES a new file is created file, and the old is closed when the written bytes is more than value MESSAGES a new file is created, old is closed when the written messages is more than a new file is more than a new file is in a new file, in last milliseconds

 

字符串

同步 (高级)

设置是否应严格使用同步处理,还是允许 Camel 使用异步处理(如果支持)。

false

布尔值

backoffErrorThreshold (scheduler)

在 backoffMultipler 应该 kick-in 之前发生的后续错误轮询(因为某些错误)的数量。

 

int

backoffIdleThreshold (scheduler)

在 backoffMultipler 应该 kick-in 之前应该发生的后续空闲轮询数量。

 

int

backoffMultiplier (scheduler)

如果一行中有很多后续空闲/errors,则让调度的轮询消费者避退。然后,倍数是在下一次实际尝试再次发生前跳过的轮询数量。当使用这个选项时,还必须配置 backoffIdleThreshold 和/或 backoffErrorThreshold。

 

int

greedy (scheduler)

如果启用了 greedy,如果上一个运行轮询 1 或更多消息,则 ScheduledPollConsumer 将立即运行。

false

布尔值

runLoggingLevel (scheduler)

消费者在轮询时记录 start/complete log 行。这个选项允许您为其配置日志级别。

TRACE

LoggingLevel

scheduledExecutorService (scheduler)

允许配置用于消费者的自定义/共享线程池。默认情况下,每个使用者都有自己的单线程线程池。

 

ScheduledExecutor Service

scheduler (scheduler)

使用 camel-spring 或 camel-quartz2 组件的 cron 调度程序

none

ScheduledPollConsumer Scheduler

schedulerProperties (scheduler)

在使用自定义调度程序或任何基于 Spring 的调度程序时配置附加属性。

 

Map

startScheduler (scheduler)

调度程序是否应自动启动。

true

布尔值

timeUnit (scheduler)

initialDelay 和 delay 选项的时间单位。

MILLISECONDS

TimeUnit

useFixedDelay (scheduler)

控制是否使用固定延迟或固定率。详情请参阅 JDK 中的 ScheduledExecutorService。

true

布尔值

Red Hat logoGithubRedditYoutubeTwitter

学习

尝试、购买和销售

社区

关于红帽文档

通过我们的产品和服务,以及可以信赖的内容,帮助红帽用户创新并实现他们的目标。

让开源更具包容性

红帽致力于替换我们的代码、文档和 Web 属性中存在问题的语言。欲了解更多详情,请参阅红帽博客.

關於紅帽

我们提供强化的解决方案,使企业能够更轻松地跨平台和环境(从核心数据中心到网络边缘)工作。

© 2024 Red Hat, Inc.