SparkConf conf = new SparkConf().setAppName("test");
JavaSparkContext sc = new JavaSparkContext(conf);
JavaPairRDD<Double, String> tempRDD = sc.hadoopFile(
"hdfs://localhost:9000/dsd", TextInputFormat.class,
Double.class, String.class);
写完以上语句后,hadoopFile下面老是会有红线提示错误。不知道为什么,即使把读取的数据类型换成Text还是出错。
<K,V,F extends org.apache.hadoop.mapred.InputFormat<K,V>> RDD<scala.Tuple2<K,V>> | hadoopFile(String path, scala.reflect.ClassTag<K> km, scala.reflect.ClassTag<V> vm, scala.reflect.ClassTag<F> fm) |
不是同一个class,spark中是scala.reflect.ClassTag,而你用的是hadoop中的class
######TextInputFormat extends FileInputFormat<LongWritable, Text>
因此在kClass这里天LongWritable.class
版权声明:本文内容由阿里云实名注册用户自发贡献,版权归原作者所有,阿里云开发者社区不拥有其著作权,亦不承担相应法律责任。具体规则请查看《阿里云开发者社区用户服务协议》和《阿里云开发者社区知识产权保护指引》。如果您发现本社区中有涉嫌抄袭的内容,填写侵权投诉表单进行举报,一经查实,本社区将立刻删除涉嫌侵权内容。