Spark中的哈希分区

时间:2016-04-05 07:55:45

标签: apache-spark

我正在使用partitionBy()在Sprk中进行散列分区。但是这个API在RDD类中不可用。但是它显示无法解析partitionBy()。我在独立机器上运行而Spark核心版本是1.2。

import org.apache.spark.{HashPartitioner, SparkConf, SparkContext}

val sparkConf=new SparkConf();
sparkConf.setAppName("ReduceTest");
sparkConf.setMaster("local[2]");

val sparkContext=new SparkContext(sparkConf);
val testrdd = sparkContext.parallelize[Int](List(1,2,3,4,6,8,4,5,6));

testrdd.partitionBy(new HashPartitioner(100))

1 个答案:

答案 0 :(得分:1)

partitionBy方法仅在RDD[(K, V)](通常称为PairRDD)上定义,其中第一个元素被视为键并用于分区。所以这里的问题不是缺少API而是你的数据。