我在内部知道它使用MapReduce从Hadoop获取输入,但谁可以用更多细节解释这个? 感谢。
答案 0 :(得分:0)
您认为这是正确的。HadoopRDD
RDD提供了读取存储在Hadoop中的数据的核心功能(例如,HDFS中的文件,
* HBase中的来源,或S3)。
它使用HadoopPartition
。
计算HadoopRDD时,您可以看到日志Input split:
示例:INFO HadoopRDD: Input split: file:/Users/jacek/dev/oss/spark/README.md:0+1784
属性:
mapred.tip.id
mapred.task.id
mapred.task.is.map
true
mapred.task.partition
拆分ID mapred.job.id
HadoopRDD
调用此checkpoint()
时无法执行任何操作。
您可以在HadoopRDD.scala中看到评论部分,每个属性都非常明确。
答案 1 :(得分:0)
新的Hadoop RDD使用新的MapReduce API(org.apache.hadoop.mapreduce)提供读取存储在Hadoop中的数据(例如,HDFS中的文件,HBase中的源或S3)的核心功能。
它还提供了各种其他方法来查找有关分区,inputsplits等的配置详细信息。
您可以访问文档以获取更详细的概述 https://spark.apache.org/docs/1.4.0/api/java/org/apache/spark/rdd/NewHadoopRDD.html
希望这会解决您的问题