hadoop - Druid 批量索引 inputSpec 类型粒度,错误为 "no input paths specified in job"

标签 hadoop indexing batch-processing druid granularity

我正在按照此处编写的说明进行操作:http://druid.io/docs/0.9.2/ingestion/batch-ingestion.html (滚动到“InputSpec specification”,寻找“granularity”)。

我的索引任务 JSON 中有:

"inputSpec": {
  "type": "granularity",
  "dataGranularity": "DAY",
  "inputPath": "hdfs://hadoop:9000/druid/events/interview",
  "filePattern": ".*",
  "pathFormat": "'y'=yyyy/'m'=MM/'d'=dd"
} 

我已经像这样在 HDFS 中组织了我的文件(我是故意这样做的,认为我会在我的索引任务中使用“粒度”类型):

enter image description here

我不断收到此错误(索引失败):

Caused by: java.io.IOException: No input paths specified in job
    at org.apache.hadoop.mapreduce.lib.input.FileInputFormat.listStatus(FileInputFormat.java:231) ~[?:?]
    at org.apache.hadoop.mapreduce.lib.input.FileInputFormat.getSplits(FileInputFormat.java:340) ~[?:?]
    at org.apache.hadoop.mapreduce.JobSubmitter.writeNewSplits(JobSubmitter.java:493) ~[?:?]
    at org.apache.hadoop.mapreduce.JobSubmitter.writeSplits(JobSubmitter.java:510) ~[?:?]
    at org.apache.hadoop.mapreduce.JobSubmitter.submitJobInternal(JobSubmitter.java:394) ~[?:?]
    at org.apache.hadoop.mapreduce.Job$10.run(Job.java:1285) ~[?:?] 

用谷歌搜索,有两个页面在谈论同一个问题:

两者都提到将“filePattern”的值设置为“.*”。做到了,没有运气。

为了确认我的 Druid-Hadoop 链接有效,我尝试将我的 inputSpec 更改为静态:

"inputSpec": {
  "type": "static",
  "paths": "hdfs://hadoop:9000/druid/events/interview/y=2016/m=11/d=06/event.json,hdfs://hadoop:9000/druid/events/interview/y=2016/m=11/d=07/event.json"
}

它有效。所以,我的 Druid 和 Hadoop 没问题。

Druid(我使用的是 0.9.2)中的这个“粒度”inputSpec 是否被破坏了?因为我在我的 inputSpec(粒度类型一)中没有发现任何错误;至少不是根据我阅读的文档和论坛。

与此同时,我可以使用静态类型(并构建我的冗长路径字符串),但“粒度”类型将是理想的(如果它有效的话)。

任何人都可以在这里阐明一些问题吗?

谢谢。

最佳答案

尝试在路径模式的末尾添加一个/: "pathFormat": "'y'=yyyy/'m'=MM/'d'=dd/"

关于hadoop - Druid 批量索引 inputSpec 类型粒度,错误为 "no input paths specified in job",我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/43005330/

相关文章:

java - 将Jsoup Jar添加到MapReduce

Hadoop - Reducers 花费大量时间写入数据(多个输出)

java - 在没有 key 的情况下从 Spring 从属性文件中读取值

java - 使用 Lucene 索引单个 Xml 文件

c# - 在 C# 中将数据导入 Cassandra Cluster 的最佳方法

Azure DocumentDb 一致性级别建议

caching - 缓存是 spark 相对于 map-reduce 的唯一优势吗?

python : selecting row where y==1 and column is 0 in a matrix

sql - MySQL慢查询分析与索引

amazon-web-services - AWS 批处理数组 - 数组大小?