2016-11-15 3 views
0

VesionsЦеппелин Спарк переводчика (sc.textFile) бросали NoSuchMethodError

Цеппелин версии: 0.7-SNAPSHOT версию.

Спарк 1.6

CDH 5.7.1

Скала 2.10

sc.textFile вызывает

java.lang.NoSuchMethodError: org.apache.hadoop.fs.BlockLocation.<init>([Ljava/lang/String;[Ljava/lang/String;[Ljava/lang/String;[Ljava/lang/String;[Ljava/lang/String;JJZ)V

val dataset=sc.textFile("/tmp/expenses.csv") 
dataset.count() 
dataset.first() 

полный Strack след

dataset: org.apache.spark.rdd.RDD[String] = /tmp/expenses.csv MapPartitionsRDD[1] at textFile at <console>:29 
java.lang.NoSuchMethodError: org.apache.hadoop.fs.BlockLocation.<init>([Ljava/lang/String;[Ljava/lang/String;[Ljava/lang/String;[Ljava/lang/String;[Ljava/lang/String;JJZ)V 
at org.apache.hadoop.hdfs.DFSUtil.locatedBlocks2Locations(DFSUtil.java:522) 
at org.apache.hadoop.hdfs.DFSUtil.locatedBlocks2Locations(DFSUtil.java:486) 
at org.apache.hadoop.hdfs.DFSClient.getBlockLocations(DFSClient.java:1305) 
at org.apache.hadoop.hdfs.DistributedFileSystem$1.doCall(DistributedFileSystem.java:221) 
at org.apache.hadoop.hdfs.DistributedFileSystem$1.doCall(DistributedFileSystem.java:217) 
at org.apache.hadoop.fs.FileSystemLinkResolver.resolve(FileSystemLinkResolver.java:81) 
at org.apache.hadoop.hdfs.DistributedFileSystem.getFileBlockLocations(DistributedFileSystem.java:217) 
at org.apache.hadoop.hdfs.DistributedFileSystem.getFileBlockLocations(DistributedFileSystem.java:209) 
at org.apache.hadoop.mapred.FileInputFormat.getSplits(FileInputFormat.java:343) 
at org.apache.spark.rdd.HadoopRDD.getPartitions(HadoopRDD.scala:199) 
at org.apache.spark.rdd.RDD$$anonfun$partitions$2.apply(RDD.scala:239) 
at org.apache.spark.rdd.RDD$$anonfun$partitions$2.apply(RDD.scala:237) 
at scala.Option.getOrElse(Option.scala:120 

ответ

1

Кажется, что бинарная совместимость нарушена.

Я думаю, вы должны построить, используя соответствующий профиль Hadoop (CDH 5,7)

Вы можете сослаться построить профиль на этой странице

Эти доступные профили Hadoop в 0.7.0-SNAPSHOT

-Phadoop-0.23 -Phadoop-1 -Phadoop-2.2 -Phadoop-2.3 -Phadoop-2.4 -Phadoop-2.6

+0

Спасибо за "бинарная совместимость" ключ @ 1ambda. заменил 'zeppelin-server/target/lib/hadoop-common-2.6.0.jar' с' hadoop-common-2.6.0-cdh5.7.1.jar', и он работает красиво. –

Смежные вопросы