上面的标题描述了工作流,我想在这里验证设计,并讨论如何管理共享S3文件夹的更新。
既然oozie是数据的消费者,kafka是这里数据的生产者,那么我如何维护哪些文件已经被消耗,哪些文件尚未被使用,因为数据的生产者一直在写到这个位置。
有没有任何由Amazon-s3提供的原子性特性来维护这一点?
更新说明:由于网络连接的限制,卡夫卡不能直接写入HDFS。
发布于 2017-11-14 07:11:11
你可以在这里使用Oozie协调员。oozie cordinator可以连续轮询新文件,一旦文件到达,它就可以触发oozie工作流来复制数据。可以根据${baseFsURI}/${YEAR}/${MONTH}/${DAY}/${HOUR}/${MINUTE}.格式创建的文件名/文件夹它将帮助oozie cordinator识别已经到达的新文件。
更多信息在这里:https://oozie.apache.org/docs/3.1.3-incubating/CoordinatorFunctionalSpec.html
要设置oozie cordinator来轮询s3文件,请使用:https://community.cloudera.com/t5/Batch-Processing-and-Workflow/Getting-Oozie-Coordinator-datasets-working-with-S3-after-a-lost/td-p/27233
https://stackoverflow.com/questions/47174329
复制相似问题