搜索

144.4. 分割策略

download PDF

在当前版本的 Hadoop 中,Hadoop 在 append 模式中打开一个文件被禁用,因为它不可靠。因此,目前只能创建新文件。Camel HDFS 端点尝试以这种方式解决这个问题:

  • 如果定义了 split 策略选项,hdfs 路径将用作目录,使用配置的 UuidGenerator 创建文件
  • 每次满足分割条件时,都会创建一个新文件。
    splitStrategy 选项被定义为一个字符串,语法如下:
    splitStrategy=<ST>:<value>,<ST>:<value>,*

其中 <ST> 可以是:

  • BYTES 创建了一个新文件,当写入字节数超过 <value> 时,旧的将关闭
  • MESSAGES 创建了一个新文件,当写入的消息数量超过 <value> 时,旧旧会被关闭
  • IDLE 创建了一个新文件,当最后一个 <value> 毫秒中没有写时,旧的会被关闭

备注

请注意,这个策略目前需要设置 IDLE 值,或者将 HdfsConstants.HDFS_CLOSE 标头设置为 false 来使用 BYTES/MESSAGES configuration…​otherwise,该文件将关闭每个消息

例如:

hdfs://localhost/tmp/simple-file?splitStrategy=IDLE:1000,BYTES:5

这意味着,当新文件闲置超过 1 秒或写入了 5 字节时,就会创建一个新文件。因此,运行 hadoop fs -ls /tmp/simple-file 您会看到已创建了多个文件。

Red Hat logoGithubRedditYoutubeTwitter

学习

尝试、购买和销售

社区

关于红帽文档

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

让开源更具包容性

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

關於紅帽

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

© 2024 Red Hat, Inc.