Amazon s3 水槽HDFS接收器的S3路径错误
我有一个Flume合并器,它在AWS的S3存储桶中写入每个条目 问题在于目录路径 事件应该写在/flume/events/%y-%m-%d/%H%m上,但它们在//flume/events/%y-%m-%d/%H%m上 似乎水槽在开始时又加了一个“/” 对这个问题有什么想法吗?这是我的路径配置的问题吗Amazon s3 水槽HDFS接收器的S3路径错误,amazon-s3,flume,Amazon S3,Flume,我有一个Flume合并器,它在AWS的S3存储桶中写入每个条目 问题在于目录路径 事件应该写在/flume/events/%y-%m-%d/%H%m上,但它们在//flume/events/%y-%m-%d/%H%m上 似乎水槽在开始时又加了一个“/” 对这个问题有什么想法吗?这是我的路径配置的问题吗 master.sources = source1 master.sinks = sink1 master.channels = channel1 master.sources.source1.t
master.sources = source1
master.sinks = sink1
master.channels = channel1
master.sources.source1.type = netcat
# master.sources.source1.type = avro
master.sources.source1.bind = 0.0.0.0
master.sources.source1.port = 4555
master.sources.source1.interceptors = inter1
master.sources.source1.interceptors.inter1.type = timestamp
master.sinks.sink1.type = hdfs
master.sinks.sink1.hdfs.path = s3://KEY:SECRET@BUCKET/flume/events/%y-%m-%d/%H%M
master.sinks.sink1.hdfs.filePrefix = event
master.sinks.sink1.hdfs.round = true
master.sinks.sink1.hdfs.roundValue = 5
master.sinks.sink1.hdfs.roundUnit = minute
master.channels.channel1.type = memory
master.channels.channel1.capacity = 1000
master.channels.channel1.transactionCapactiy = 100
master.sources.source1.channels = channel1
master.sinks.sink1.channel = channel1
Flume NG HDFS接收器没有实现任何特殊的S3支持。Hadoop对S3有一些内置的支持,但我不知道有谁在积极地开发它。据我所知,它有点过时,可能有一些耐久性问题下失败 也就是说,我知道有人使用它,因为它“足够好”
您是说“//xyz”(带有多个相邻的斜杠)是S3上的有效路径名吗?您可能知道,大多数Unix都会折叠相邻的斜杠。Flume NG HDFS接收器没有实现任何特殊的S3支持。Hadoop对S3有一些内置的支持,但我不知道有谁在积极地开发它。据我所知,它有点过时,可能有一些耐久性问题下失败 也就是说,我知道有人使用它,因为它“足够好”
您是说“//xyz”(带有多个相邻的斜杠)是S3上的有效路径名吗?您可能知道,大多数unix都会折叠相邻的斜杠。Yes,“//xyz”是S3上的有效路径。但是看看这个日志条目:[DEBUG-org.jets3t.service.impl.rest.httpclient.RestS3Service.setupConnection(RestS3Service.java:811)]s3url:Solved!将*.hdfs.path从s3://更改为s3n://它工作得非常好!美好的感谢您发布解决方案。是的,“//xyz”是S3上的有效路径。但是看看这个日志条目:[DEBUG-org.jets3t.service.impl.rest.httpclient.RestS3Service.setupConnection(RestS3Service.java:811)]s3url:Solved!将*.hdfs.path从s3://更改为s3n://它工作得非常好!美好的感谢您发布解决方案。