首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >烫伤教程: com.twitter.scalding.InvalidSourceException:一个或多个路径中缺少数据

烫伤教程: com.twitter.scalding.InvalidSourceException:一个或多个路径中缺少数据
EN

Stack Overflow用户
提问于 2014-07-03 20:54:52
回答 1查看 591关注 0票数 0

在单个节点上安装了Hadoop 2.2后,我尝试使用以下命令运行烫伤教程,第1部分:

代码语言:javascript
复制
$ yarn jar target/scalding-tutorial-0.8.11.jar Tutorial0 --hdfs

https://github.com/Cascading/scalding-tutorial/

在运行教程之前,我已经将所需的文件hello.txt复制到HDFS:

代码语言:javascript
复制
$ hdfs dfs -ls /data
Found 2 items
drwxr-xr-x   - hdfs hdfs          0 2014-02-04 16:35 /data/10gsort
-rw-r--r--   3 hdfs hdfs         26 2014-07-03 15:07 /data/hello.txt

看起来教程找不到输入文件:

代码语言:javascript
复制
Exception in thread "main" com.twitter.scalding.InvalidSourceException:[TextLine(data/hello.txt)] Data is missing from one or more paths in: List(data/hello.txt)
at com.twitter.scalding.FileSource.validateTaps(FileSource.scala:102)
at com.twitter.scalding.Job$$anonfun$validateSources$1.apply(Job.scala:158)
at com.twitter.scalding.Job$$anonfun$validateSources$1.apply(Job.scala:153)
at scala.collection.Iterator$class.foreach(Iterator.scala:727)
at scala.collection.AbstractIterator.foreach(Iterator.scala:1156)
at scala.collection.IterableLike$class.foreach(IterableLike.scala:72)
at scala.collection.AbstractIterable.foreach(Iterable.scala:54)
at com.twitter.scalding.Job.validateSources(Job.scala:153)
at com.twitter.scalding.Job.buildFlow(Job.scala:91)
at com.twitter.scalding.Job.run(Job.scala:126)
at com.twitter.scalding.Tool.start$1(Tool.scala:109)
at com.twitter.scalding.Tool.run(Tool.scala:125)
at com.twitter.scalding.Tool.run(Tool.scala:72)
at org.apache.hadoop.util.ToolRunner.run(ToolRunner.java:70)
at JobRunner$.main(JobRunner.scala:27)
at JobRunner.main(JobRunner.scala)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
at java.lang.reflect.Method.invoke(Method.java:597)
at org.apache.hadoop.util.RunJar.main(RunJar.java:212)

有什么办法让它工作吗?

EN

回答 1

Stack Overflow用户

发布于 2015-09-18 07:19:04

TextLine根据给定的路径和配置构建Hadoop路径。

Hadoop Path API显示“如果路径字符串以斜杠开头,则它是绝对路径。”

教程I将输入固定为"data/hello.txt",实际上以相对路径结束。当前工作目录将被预置,以形成一个绝对且可靠的路径。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/24554285

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档